|
@@ -124,6 +124,56 @@ public class ReportExportController {
|
|
|
|
|
|
|
|
|
|
|
|
+ // /**
|
|
|
+ // * 结算报告管理--导出汇总或详情
|
|
|
+ // * @param wmReport
|
|
|
+ // * @return
|
|
|
+ // * @throws IOException
|
|
|
+ // */
|
|
|
+ // @GetMapping("/exportNbReport")
|
|
|
+ // public R exportNbReport(WmReport wmReport ) throws IOException {
|
|
|
+ // wmReport=wmReportService.getById(wmReport.getId());
|
|
|
+ // List<WmTask> taskList=new ArrayList<>();//该报告关联的所有未提交的任务
|
|
|
+ // //更新任务表审批意见
|
|
|
+ // WmScorePackage scorePackage=wmScorePackageService.getById(wmReport.getScoreId());
|
|
|
+ // WmTask wmTask=new WmTask();
|
|
|
+ // wmTask.setDelFlag("0");
|
|
|
+ // wmTask.setEnableFlag("0");
|
|
|
+ // wmTask.setRealFlag("0");
|
|
|
+ //
|
|
|
+ // SysDept sysDept = sysDeptService.getById(scorePackage.getSendPackageDeptId());
|
|
|
+ //
|
|
|
+ //
|
|
|
+ // if("0".equals(scorePackage.getTypeid())){//药企
|
|
|
+ // wmTask.setReportDrugId(wmReport.getId());
|
|
|
+ // wmTask.setReportDrugApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
+ // taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
+ // }else if("1".equals(scorePackage.getTypeid())){//一级代理商类型
|
|
|
+ // wmTask.setReportOneId(wmReport.getId());
|
|
|
+ // if(sysDept.getLevel() == 2){
|
|
|
+ // wmTask.setReportDrugApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
+ // }else {
|
|
|
+ // wmTask.setReportOneApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
+ // }else if("2".equals(scorePackage.getTypeid())){//二级代理商类型
|
|
|
+ // wmTask.setReportSecondId(wmReport.getId());
|
|
|
+ // wmTask.setReportSecondApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
+ // taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
+ // }
|
|
|
+ // if(null==taskList||taskList.size()<=0){
|
|
|
+ // return R.failed("未查询到该报告关联的审批通过的任务");
|
|
|
+ // }
|
|
|
+ // String ids = taskList.stream().map(WmTask::getId).collect(Collectors.joining("," ));
|
|
|
+ // wmTask.setScorePackageId(wmReport.getScoreId().toString());
|
|
|
+ // wmTask.setId(ids);
|
|
|
+ //
|
|
|
+ // return reportExportService.exportNb(wmTask,wmReport);//报告汇总
|
|
|
+ //
|
|
|
+ //
|
|
|
+ // }
|
|
|
+
|
|
|
/**
|
|
|
* 结算报告管理--导出汇总或详情
|
|
|
* @param wmReport
|
|
@@ -132,44 +182,30 @@ public class ReportExportController {
|
|
|
*/
|
|
|
@GetMapping("/exportNbReport")
|
|
|
public R exportNbReport(WmReport wmReport ) throws IOException {
|
|
|
- wmReport=wmReportService.getById(wmReport.getId());
|
|
|
- List<WmTask> taskList=new ArrayList<>();//该报告关联的所有未提交的任务
|
|
|
- //更新任务表审批意见
|
|
|
- WmScorePackage scorePackage=wmScorePackageService.getById(wmReport.getScoreId());
|
|
|
- WmTask wmTask=new WmTask();
|
|
|
- wmTask.setDelFlag("0");
|
|
|
- wmTask.setEnableFlag("0");
|
|
|
- wmTask.setRealFlag("0");
|
|
|
|
|
|
- SysDept sysDept = sysDeptService.getById(scorePackage.getSendPackageDeptId());
|
|
|
|
|
|
+ String key = String.format(CacheConstants.EXPORT_NB_REPORT_CACHE, wmReport.getId());
|
|
|
|
|
|
- if("0".equals(scorePackage.getTypeid())){//药企
|
|
|
- wmTask.setReportDrugId(wmReport.getId());
|
|
|
- wmTask.setReportDrugApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
- taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
- }else if("1".equals(scorePackage.getTypeid())){//一级代理商类型
|
|
|
- wmTask.setReportOneId(wmReport.getId());
|
|
|
- if(sysDept.getLevel() == 2){
|
|
|
- wmTask.setReportDrugApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
- }else {
|
|
|
- wmTask.setReportOneApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
- }
|
|
|
+ String o = redisTemplate.opsForValue().get(key);
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(o) && WmReportOpt.WmReportOptStatus.GENERATING.name().equals(o)){
|
|
|
+
|
|
|
+ return R.failed("已有在途生成记录,能耐心等待");
|
|
|
|
|
|
- taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
- }else if("2".equals(scorePackage.getTypeid())){//二级代理商类型
|
|
|
- wmTask.setReportSecondId(wmReport.getId());
|
|
|
- wmTask.setReportSecondApprovalOpinion(ReportEnum.APPROVAL_OPINION_YES.getType());//审核通过的状态
|
|
|
- taskList=wmTaskService.list(Wrappers.query(wmTask));
|
|
|
- }
|
|
|
- if(null==taskList||taskList.size()<=0){
|
|
|
- return R.failed("未查询到该报告关联的审批通过的任务");
|
|
|
}
|
|
|
- String ids = taskList.stream().map(WmTask::getId).collect(Collectors.joining("," ));
|
|
|
- wmTask.setScorePackageId(wmReport.getScoreId().toString());
|
|
|
- wmTask.setId(ids);
|
|
|
|
|
|
- return reportExportService.exportNb(wmTask,wmReport);//报告汇总
|
|
|
+
|
|
|
+ HnqzUser user = SecurityUtils.getUser();
|
|
|
+ BaseMap map = new BaseMap();
|
|
|
+ map.put("requestBody", JSONUtil.toJsonStr(wmReport));
|
|
|
+ map.put("username",user.getUsername());
|
|
|
+ map.put("deptId",user.getDeptId());
|
|
|
+
|
|
|
+ rabbitMqClient.sendMessage(MqConstants.DIRECT_MODE_REPORT_EXPORT_NB_QUEUE,map);
|
|
|
+
|
|
|
+ redisTemplate.opsForValue().set(key, WmReportOpt.WmReportOptStatus.GENERATING.name());
|
|
|
+
|
|
|
+ return R.ok("开始导出,请耐心等待");
|
|
|
|
|
|
|
|
|
}
|