Просмотр исходного кода

init: init project step4: biz code support

shc 1 год назад
Родитель
Сommit
c4ecb8d367

+ 1 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/SysUserController.java

@@ -120,6 +120,7 @@ public class SysUserController {
                 || Arrays.asList(roles).contains(37)
                 || Arrays.asList(roles).contains(37)
                 || Arrays.asList(roles).contains(38)
                 || Arrays.asList(roles).contains(38)
                 || Arrays.asList(roles).contains(39)
                 || Arrays.asList(roles).contains(39)
+                || Arrays.asList(roles).contains(40)
                 || Arrays.asList(roles).contains(41)
                 || Arrays.asList(roles).contains(41)
                 || Arrays.asList(roles).contains(42)
                 || Arrays.asList(roles).contains(42)
                 || Arrays.asList(roles).contains(43)
                 || Arrays.asList(roles).contains(43)

+ 407 - 401
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmReportController.java

@@ -52,408 +52,414 @@ import java.util.stream.Collectors;
 @Slf4j
 @Slf4j
 @RestController
 @RestController
 @AllArgsConstructor
 @AllArgsConstructor
-@RequestMapping("/wmreport" )
+@RequestMapping("/wmreport")
 public class WmReportController {
 public class WmReportController {
 
 
-	private final  WmReportService wmReportService;
-	private final WmScorePackageService wmScorePackageService;
-	private final WmTaskService wmTaskService;
-	private final WmTaskTypeService wmTaskTypeService;
-	private final RedisTemplate redisTemplate;
-	/**
-	 * 分页查询
-	 * @param page 分页对象
-	 * @param wmReport 报告审核表
-	 * @return
-	 */
-	@GetMapping("/page" )
-	@PreAuthorize("@pms.hasPermission('admin_wmreport_view')" )
-	public R getWmReportPage(Page page, WmReport wmReport) {
-		return R.ok(wmReportService.page(page, Wrappers.query(wmReport)));
-	}
-
-
-	/**
-	 * 通过id查询报告审核表
-	 * @param id id
-	 * @return R
-	 */
-	@GetMapping("/{id}" )
-	@PreAuthorize("@pms.hasPermission('admin_wmreport_view')" )
-	public R getById(@PathVariable("id" ) Integer id) {
-		return R.ok(wmReportService.getById(id));
-	}
-
-	/**
-	 * 新增报告审核表
-	 * @param wmReport 报告审核表
-	 * @return R
-	 */
-	@SysLog("新增报告审核表" )
-	@PostMapping
-	@PreAuthorize("@pms.hasPermission('admin_wmreport_add')" )
-	public R save(@RequestBody WmReport wmReport) {
-		return R.ok(wmReportService.save(wmReport));
-	}
-
-	/**
-	 * 修改报告审核表
-	 * @param wmReport 报告审核表
-	 * @return R
-	 */
-	@SysLog("修改报告审核表" )
-	@PutMapping
-	@PreAuthorize("@pms.hasPermission('admin_wmreport_edit')" )
-	public R updateById(@RequestBody WmReport wmReport) {
-		return R.ok(wmReportService.updateById(wmReport));
-	}
-
-	/**
-	 * 通过id删除报告审核表
-	 * @param id id
-	 * @return R
-	 */
-	@SysLog("通过id删除报告审核表" )
-	@DeleteMapping("/{id}" )
-	public R removeById( @PathVariable("id")Integer id) {
-		WmReport wmReport=wmReportService.getById(id);
-		if(null==wmReport){
-			return R.failed("未查询到报告信息");
-		}
-		wmReport.setDelFlag("1");
-		wmReportService.updateById(wmReport);
-		WmScorePackage scorePackage=wmScorePackageService.getById(wmReport.getScoreId());
-		//typeid  0 药企  1一级代理商 2二级代理商 3全职学术推广员 4兼职学术推广员
-		LambdaUpdateWrapper<WmTask> updateWrapper=new LambdaUpdateWrapper<>();
-
-		if("0".equals(scorePackage.getTypeid())){//药企
-			if("1".equals(wmReport.getDelFlag())){
-				updateWrapper.set(WmTask::getReportDrugId,null);
-				updateWrapper.set(WmTask::getReportDrugApprovalOpinion,null);
-				updateWrapper.set(WmTask::getReportDrugApprovalInfo,null);
-			}
-			updateWrapper.set(WmTask::getReportDrugApprovalStatus,"0");
-			updateWrapper.eq(WmTask::getReportDrugId,wmReport.getId());
-		}else if("1".equals(scorePackage.getTypeid())){//一级代理商类型
-			if("1".equals(wmReport.getDelFlag())){
-				updateWrapper.set(WmTask::getReportOneId,null);
-				updateWrapper.set(WmTask::getReportOneApprovalOpinion,null);
-				updateWrapper.set(WmTask::getReportOneApprovalInfo,null);
-			}
-			if(SecurityUtils.getRoles().contains(3)){//药企
-				updateWrapper.set(WmTask::getReportDrugApprovalStatus,"0");
-			}
-			updateWrapper.set(WmTask::getReportOneApprovalStatus,"0");
-			updateWrapper.eq(WmTask::getReportOneId,wmReport.getId());
-		}else if("2".equals(scorePackage.getTypeid())){//二级代理商类型
-			if("1".equals(wmReport.getDelFlag())){
-				updateWrapper.set(WmTask::getReportSecondId,null);
-				updateWrapper.set(WmTask::getReportSecondApprovalOpinion,null);
-				updateWrapper.set(WmTask::getReportSecondApprovalInfo,null);
-			}
-			if(SecurityUtils.getRoles().contains(4)){// 一级CSO
-				updateWrapper.set(WmTask::getReportOneApprovalStatus,"0");
-			}
-			updateWrapper.set(WmTask::getReportSecondApprovalStatus,"0");
-			updateWrapper.eq(WmTask::getReportSecondId,wmReport.getId());
-		}
-		return R.ok(wmTaskService.update(updateWrapper));
-	}
-
-
-
-
-
-	/**
-	 * 结算报告管理--列表查询
-	 * @param page 分页对象
-	 * @param wmReport 报告审核表
-	 * @param  type   固定值,1结算报告管理,2结算报告审批
-	 * @return
-	 */
-	@GetMapping("/reportPage" )
-	public R reportPage(Page page, WmReport wmReport,String type,String queryScoreId,String queryName) {
-		HnqzUser user=SecurityUtils.getUser();
-		wmReport.setDelFlag("0");
-		if("1".equals(type)){//1结算报告管理,当前用户是申请结算企业
-			wmReport.setDrugEntId(null);
-			wmReport.setApplyDrugEntId(user.getDeptId());
-		}else{//2结算报告审批,当前用户是结算企业
-			wmReport.setApplyDrugEntId(null);
-			wmReport.setDrugEntId(user.getDeptId());
-		}
-
-		return R.ok(wmReportService.getReportListPage(page,wmReport,queryScoreId,queryName));
-	}
-
-	/**
-	 * 报告审核状态修改--提交,结单,退回
-	 * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
-	 * @param wmReport 报告审核表
-	 * @return R
-	 */
-	@SysLog("报告审核状态修改--提交或结单(结算报告管理-提交)" )
-	@PostMapping("/updateReportStatus" )
-	public R updateReportStatus(@RequestBody WmReport wmReport) {
-		WmReport wmReport1=wmReportService.getById(wmReport.getId());
-		if(null==wmReport1){
-			return R.failed("未查询到报告信息");
-		}
-		wmReport.setScoreId(wmReport1.getScoreId());
-		if(StringUtil.isEmpty(wmReport.getReportStatus())){
-			return R.failed("缺少状态参数");
-		}
-
-		WmScorePackage scorePackage = wmScorePackageService.getById(wmReport1.getScoreId());
-		if (LocalDate.now().isAfter(scorePackage.getEndTime())) {
-			throw new BizException("当前积分包已过截止日期");
-		}
-
-		return wmReportService.updateReportStatus(wmReport);
-	}
-
-
-
-	/**
-	 * 结算报告--审批
-	 * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
-	 * @param wmReport 报告审核表
-	 * @param taskIds 所选任务id
-	 * @return R
-	 */
-	@SysLog("结算报告--审批" )
-	@GetMapping("/approvalReport" )
-	public R approvalReport(WmReport wmReport, @RequestParam(value = "taskIds") List<String> taskIds,
-							String approvalOpinion,String approvalInfo) {
-		log.info("结算报告--审批 请求参数:taskIds={},approvalOpinion={},approvalInfo={} 操作人:{},操作时间:{}",
-				taskIds, approvalOpinion, approvalInfo, SecurityUtils.getUser().getId(), LocalDateTime.now());
-		WmReport wmReport1=wmReportService.getById(wmReport.getId());
-		if(null==wmReport1){
-			return R.failed("未查询到报告信息");
-		}
-		if(taskIds.isEmpty()){
-			return R.failed("缺少参数:任务id");
-		}
-
-		taskIds.forEach(taskId -> {
-			String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
-			Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_approval_report_%s", taskId), 3, TimeUnit.SECONDS);
-			if (Boolean.FALSE.equals(absent)) {
-				throw new RuntimeException("正在处理");
-			}
-		});
-
-		R r = wmReportService.approvalReport(wmReport1, taskIds, approvalOpinion, approvalInfo);
-
-		Set<String> cahceKeys = taskIds.stream()
-				.map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
-		redisTemplate.delete(cahceKeys);
-
-		return r;
-	}
-
-	/**
-	 * 快速批量任务审核
-	 *
-	 * @return 审核结果
-	 * @param1 reportId        报告id
-	 * @param1 taskIds         任务id 多个逗号分隔
-	 * @param1 approvalOpinion 审核状态(1-通过,2-不通过)
-	 * @param1 approvalInfo    审批说明
-	 */
-	@SysLog("快速批量任务审核")
-	@PostMapping("/batch-approval-task")
-	public R<?> batchApprovalTask(@RequestBody Map<String, String> requestMap) {
-		log.info("快速批量任务审核 请求参数:{}, 操作人:{},操作时间:{}",
-				requestMap, SecurityUtils.getUser().getId(), LocalDateTime.now());
-		String reportId = requestMap.get("reportId");
-		String taskIds = requestMap.get("taskIds");
-		String approvalOpinion = requestMap.get("approvalOpinion");
-		String approvalInfo = requestMap.get("approvalInfo");
-
-		if (!StrUtil.isAllNotBlank(reportId, taskIds, approvalOpinion)) {
-			return R.failed("必填参数为空");
-		}
-		if (!CollUtil.toList("1", "2").contains(approvalOpinion)) {
-			return R.failed("approvalOpinion不正确");
-		}
-
-		List<String> sortedIdList = StrUtil.split(taskIds, StrUtil.COMMA)
-				.stream()
-				.sorted(Comparator.comparingInt(Integer::parseInt))
-				.collect(Collectors.toList());
-
-		sortedIdList.forEach(taskId -> {
-			String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
-			Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_batch_%s", taskId), 3, TimeUnit.SECONDS);
-			if (Boolean.FALSE.equals(absent)) {
-				throw new RuntimeException("正在处理");
-			}
-		});
-
-		Boolean approvalTask = wmReportService.batchApprovalTask(reportId, sortedIdList, approvalOpinion, approvalInfo);
-
-		Set<String> cahceKeys = sortedIdList.stream()
-				.map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
-		redisTemplate.delete(cahceKeys);
-
-		return R.ok(approvalTask);
-	}
-
-	/**
-	 * 结算报告审批-任务复审
-	 *
-	 * @param1 reportId        报告id
-	 * @param1 taskId          任务id
-	 * @param1 approvalOpinion 审核状态(1-通过,2-不通过)
-	 * @param1 approvalInfo    审批说明
-	 * @return 复审结果
-	 */
-	@SysLog("结算报告审批-任务复审")
-	@PostMapping("/review-task")
-	public R<?> reviewTask(@RequestBody Map<String, String> requestMap) {
-		log.info("结算报告审批-任务复审 请求参数:{}, 操作人:{},操作时间:{}",
-				requestMap, SecurityUtils.getUser().getId(), LocalDateTime.now());
-		String reportId = requestMap.get("reportId");
-		String taskId = requestMap.get("taskId");
-		String approvalOpinion = requestMap.get("approvalOpinion");
-		String approvalInfo = requestMap.get("approvalInfo");
-
-		if (!StrUtil.isAllNotBlank(reportId, taskId, approvalOpinion)) {
-			return R.failed("必填参数为空");
-		}
-		if (!CollUtil.toList("1", "2").contains(approvalOpinion)) {
-			return R.failed("approvalOpinion不正确");
-		}
-
-		String cacheKey = CacheConstants.TASK_REVIEW_KEY + taskId;
-		Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, JSONUtil.toJsonStr(requestMap), 3, TimeUnit.SECONDS);
-		if (Boolean.FALSE.equals(absent)) {
-			return R.failed("正在处理");
-		}
-
-		return R.ok(wmReportService.reviewTask(reportId, taskId, approvalOpinion, approvalInfo));
-	}
-
-	/**
-	 * 结算报告--审批
-	 * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
-	 * @param taskIds 所选任务id
-	 * @return R
-	 */
-	@SysLog("批量任务类型结算报告--审批" )
-	@PostMapping("/approval-report-by-task")
-	public R approvalReportByTask(@RequestParam(value = "taskIds") List<String> taskIds,
-							String approvalOpinion,String approvalInfo) {
-		log.info("批量任务类型结算报告--审批 请求参数:taskIds={},approvalOpinion={},approvalInfo={} 操作人:{},操作时间:{}",
-				taskIds, approvalOpinion, approvalInfo, SecurityUtils.getUser().getId(), LocalDateTime.now());
-		if(CollUtil.isEmpty(taskIds)){
-			return R.failed("taskIds必填");
-		}
-
-		taskIds.forEach(taskId -> {
-			String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
-			Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_approval_report_by_task_%s", taskId), 3, TimeUnit.SECONDS);
-			if (Boolean.FALSE.equals(absent)) {
-				throw new RuntimeException("正在处理");
-			}
-		});
-
-		R<?> r = wmReportService.approvalReportByTaskType(taskIds, approvalOpinion, approvalInfo);
-
-		Set<String> cahceKeys = taskIds.stream()
-				.map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
-		redisTemplate.delete(cahceKeys);
-
-		return r;
-	}
-
-
-	/**
-	 * 结算报告--查看
-	 *
-	 * @param page                  分页对象
-	 * @param reportTaskListPageDTO 报告任务列表页面 DTO
-	 * @return {@link R}
-	 */
-	@GetMapping("/getTaskListPage" )
-	public R getTaskListPage(Page page, @Validated ReportTaskListPageDTO reportTaskListPageDTO) {
-		WmReport wmReport1=wmReportService.getById(reportTaskListPageDTO.getId());
-		if(null==wmReport1){
-			return R.failed("未查询到报告信息");
-		}
-
-		reportTaskListPageDTO.setWmReport(wmReport1);
-
-		return wmReportService.getTaskListPage(page, reportTaskListPageDTO);
-	}
-
-	/**
-	 * 根据积分包id查询待审核任务详情列表
-	 *
-	 * @param1 id  报告id
-	 * @param1 scoreId  报告积分包id
-	 * @param taskTypeId 任务类型id
-	 * @return 列表结果
-	 */
-	@GetMapping("/list-review-task-info")
-	public R<?> listTaskInfo(WmReport wmReport, String taskTypeId) {
-		if (wmReport.getId() == null) {
-			return R.failed("必填参数为空");
-		}
-
-		return R.ok(wmReportService.listTaskInfo(wmReport.getId(), taskTypeId));
-	}
-
-	/**
-	 * 根据任务类型查询任务
-	 *
-	 * @param page 分页参数
-	 * @param taskTypeName 任务类型名称
-	 * @param entTaskStatus 企业审核状态
-	 * @return
-	 */
-	@GetMapping("/task-page-by-type")
-	public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String[] entTaskStatus) {
-
-		return wmReportService.taskPageByTaskType(page, taskTypeName, entTaskStatus);
-	}
-
-	/**
-	 * 查询待审核的任务类型
-	 *
-	 * @param reportId       报告id
-	 * @return 列表数据
-	 */
-	@GetMapping("/list-package-task-type")
-	public R<?> listPackageTaskType(@RequestParam("id") String reportId, Integer isApprovalPage) {
-		WmReport wmReport1 = wmReportService.getById(reportId);
-		if(null == wmReport1){
-			return R.failed("未查询到报告信息");
-		}
-		// 获取待审核的任务
-		WmScorePackage scorePackage = wmScorePackageService.getById(wmReport1.getScoreId());
-		LambdaQueryWrapper<WmTask> lambdaQueryWrapper= Wrappers.<WmTask>query().lambda();
-		lambdaQueryWrapper.and(wrapper -> wrapper.eq(WmTask::getReportDrugId, reportId)
-				.or().eq(WmTask::getReportOneId, reportId)
-				.or().eq(WmTask::getReportSecondId, reportId));
-		// 如果是审批页面,则过滤掉通过和不通过的数据(reportDrugApprovalOpinion或reportOneApprovalOpinion:1通过,2不通过)
-		if (isApprovalPage != null && isApprovalPage.equals(1)) {
-			if ("0".equals(scorePackage.getTypeid())) {//药企
-				lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportDrugApprovalOpinion));
-			} else if ("1".equals(scorePackage.getTypeid())) {//一级代理商类型
-				lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportDrugApprovalOpinion));
-			} else if ("2".equals(scorePackage.getTypeid())) {//二级代理商类型
-				lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportOneApprovalOpinion));
-			}
-		}
-		lambdaQueryWrapper.select(WmTask::getTaskTypeId);
-		List<WmTask> wmTasks = wmTaskService.list(lambdaQueryWrapper);
-		if (CollUtil.isEmpty(wmTasks)) {
-			return R.ok(Collections.emptyList());
-		}
-		Set<String> taskTypes = wmTasks.stream().map(WmTask::getTaskTypeId).collect(Collectors.toSet());
-		return R.ok(wmTaskTypeService.listByIds(taskTypes));
-	}
+    private final WmReportService wmReportService;
+    private final WmScorePackageService wmScorePackageService;
+    private final WmTaskService wmTaskService;
+    private final WmTaskTypeService wmTaskTypeService;
+    private final RedisTemplate redisTemplate;
+
+    /**
+     * 分页查询
+     *
+     * @param page     分页对象
+     * @param wmReport 报告审核表
+     * @return
+     */
+    @GetMapping("/page")
+    @PreAuthorize("@pms.hasPermission('admin_wmreport_view')")
+    public R getWmReportPage(Page page, WmReport wmReport) {
+        return R.ok(wmReportService.page(page, Wrappers.query(wmReport)));
+    }
+
+
+    /**
+     * 通过id查询报告审核表
+     *
+     * @param id id
+     * @return R
+     */
+    @GetMapping("/{id}")
+    @PreAuthorize("@pms.hasPermission('admin_wmreport_view')")
+    public R getById(@PathVariable("id") Integer id) {
+        return R.ok(wmReportService.getById(id));
+    }
+
+    /**
+     * 新增报告审核表
+     *
+     * @param wmReport 报告审核表
+     * @return R
+     */
+    @SysLog("新增报告审核表")
+    @PostMapping
+    @PreAuthorize("@pms.hasPermission('admin_wmreport_add')")
+    public R save(@RequestBody WmReport wmReport) {
+        return R.ok(wmReportService.save(wmReport));
+    }
+
+    /**
+     * 修改报告审核表
+     *
+     * @param wmReport 报告审核表
+     * @return R
+     */
+    @SysLog("修改报告审核表")
+    @PutMapping
+    @PreAuthorize("@pms.hasPermission('admin_wmreport_edit')")
+    public R updateById(@RequestBody WmReport wmReport) {
+        return R.ok(wmReportService.updateById(wmReport));
+    }
+
+    /**
+     * 通过id删除报告审核表
+     *
+     * @param id id
+     * @return R
+     */
+    @SysLog("通过id删除报告审核表")
+    @DeleteMapping("/{id}")
+    public R removeById(@PathVariable("id") Integer id) {
+        WmReport wmReport = wmReportService.getById(id);
+        if (null == wmReport) {
+            return R.failed("未查询到报告信息");
+        }
+        wmReport.setDelFlag("1");
+        wmReportService.updateById(wmReport);
+        WmScorePackage scorePackage = wmScorePackageService.getById(wmReport.getScoreId());
+        //typeid  0 药企  1一级代理商 2二级代理商 3全职学术推广员 4兼职学术推广员
+        LambdaUpdateWrapper<WmTask> updateWrapper = new LambdaUpdateWrapper<>();
+
+        if ("0".equals(scorePackage.getTypeid())) {//药企
+            if ("1".equals(wmReport.getDelFlag())) {
+                updateWrapper.set(WmTask::getReportDrugId, null);
+                updateWrapper.set(WmTask::getReportDrugApprovalOpinion, null);
+                updateWrapper.set(WmTask::getReportDrugApprovalInfo, null);
+            }
+            updateWrapper.set(WmTask::getReportDrugApprovalStatus, "0");
+            updateWrapper.eq(WmTask::getReportDrugId, wmReport.getId());
+        } else if ("1".equals(scorePackage.getTypeid())) {//一级代理商类型
+            if ("1".equals(wmReport.getDelFlag())) {
+                updateWrapper.set(WmTask::getReportOneId, null);
+                updateWrapper.set(WmTask::getReportOneApprovalOpinion, null);
+                updateWrapper.set(WmTask::getReportOneApprovalInfo, null);
+            }
+            if (SecurityUtils.getRoles().contains(3)) {//药企
+                updateWrapper.set(WmTask::getReportDrugApprovalStatus, "0");
+            }
+            updateWrapper.set(WmTask::getReportOneApprovalStatus, "0");
+            updateWrapper.eq(WmTask::getReportOneId, wmReport.getId());
+        } else if ("2".equals(scorePackage.getTypeid())) {//二级代理商类型
+            if ("1".equals(wmReport.getDelFlag())) {
+                updateWrapper.set(WmTask::getReportSecondId, null);
+                updateWrapper.set(WmTask::getReportSecondApprovalOpinion, null);
+                updateWrapper.set(WmTask::getReportSecondApprovalInfo, null);
+            }
+            if (SecurityUtils.getRoles().contains(4)) {// 一级CSO
+                updateWrapper.set(WmTask::getReportOneApprovalStatus, "0");
+            }
+            updateWrapper.set(WmTask::getReportSecondApprovalStatus, "0");
+            updateWrapper.eq(WmTask::getReportSecondId, wmReport.getId());
+        }
+        return R.ok(wmTaskService.update(updateWrapper));
+    }
+
+
+    /**
+     * 结算报告管理--列表查询
+     *
+     * @param page     分页对象
+     * @param wmReport 报告审核表
+     * @param type     固定值,1结算报告管理,2结算报告审批
+     * @return
+     */
+    @GetMapping("/reportPage")
+    public R reportPage(Page page, WmReport wmReport, String type, String queryScoreId, String queryName) {
+        HnqzUser user = SecurityUtils.getUser();
+        wmReport.setDelFlag("0");
+        if ("1".equals(type)) {//1结算报告管理,当前用户是申请结算企业
+            wmReport.setDrugEntId(null);
+            wmReport.setApplyDrugEntId(user.getDeptId());
+        } else {//2结算报告审批,当前用户是结算企业
+            wmReport.setApplyDrugEntId(null);
+            wmReport.setDrugEntId(user.getDeptId());
+        }
+
+        return R.ok(wmReportService.getReportListPage(page, wmReport, queryScoreId, queryName));
+    }
+
+    /**
+     * 报告审核状态修改--提交,结单,退回
+     * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
+     *
+     * @param wmReport 报告审核表
+     * @return R
+     */
+    @SysLog("报告审核状态修改--提交或结单(结算报告管理-提交)")
+    @PostMapping("/updateReportStatus")
+    public R updateReportStatus(@RequestBody WmReport wmReport) {
+        WmReport wmReport1 = wmReportService.getById(wmReport.getId());
+        if (null == wmReport1) {
+            return R.failed("未查询到报告信息");
+        }
+        wmReport.setScoreId(wmReport1.getScoreId());
+        if (StringUtil.isEmpty(wmReport.getReportStatus())) {
+            return R.failed("缺少状态参数");
+        }
+
+        WmScorePackage scorePackage = wmScorePackageService.getById(wmReport1.getScoreId());
+        if (LocalDate.now().isAfter(scorePackage.getEndTime())) {
+            throw new BizException("当前积分包已过截止日期");
+        }
+
+        return wmReportService.updateReportStatus(wmReport);
+    }
+
+
+    /**
+     * 结算报告--审批
+     * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
+     *
+     * @param wmReport 报告审核表
+     * @param taskIds  所选任务id
+     * @return R
+     */
+    @SysLog("结算报告--审批")
+    @GetMapping("/approvalReport")
+    public R approvalReport(WmReport wmReport, @RequestParam(value = "taskIds") List<String> taskIds,
+                            String approvalOpinion, String approvalInfo) {
+        log.info("结算报告--审批 请求参数:taskIds={},approvalOpinion={},approvalInfo={} 操作人:{},操作时间:{}",
+                taskIds, approvalOpinion, approvalInfo, SecurityUtils.getUser().getId(), LocalDateTime.now());
+        WmReport wmReport1 = wmReportService.getById(wmReport.getId());
+        if (null == wmReport1) {
+            return R.failed("未查询到报告信息");
+        }
+        if (taskIds.isEmpty()) {
+            return R.failed("缺少参数:任务id");
+        }
+
+        taskIds.forEach(taskId -> {
+            String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
+            Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_approval_report_%s", taskId), 3, TimeUnit.SECONDS);
+            if (Boolean.FALSE.equals(absent)) {
+                throw new RuntimeException("正在处理");
+            }
+        });
+
+        R r = wmReportService.approvalReport(wmReport1, taskIds, approvalOpinion, approvalInfo);
+
+        Set<String> cahceKeys = taskIds.stream()
+                .map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
+        redisTemplate.delete(cahceKeys);
+
+        return r;
+    }
+
+    /**
+     * 快速批量任务审核
+     *
+     * @return 审核结果
+     * @param1 reportId        报告id
+     * @param1 taskIds         任务id 多个逗号分隔
+     * @param1 approvalOpinion 审核状态(1-通过,2-不通过)
+     * @param1 approvalInfo    审批说明
+     */
+    @SysLog("快速批量任务审核")
+    @PostMapping("/batch-approval-task")
+    public R<?> batchApprovalTask(@RequestBody Map<String, String> requestMap) {
+        log.info("快速批量任务审核 请求参数:{}, 操作人:{},操作时间:{}",
+                requestMap, SecurityUtils.getUser().getId(), LocalDateTime.now());
+        String reportId = requestMap.get("reportId");
+        String taskIds = requestMap.get("taskIds");
+        String approvalOpinion = requestMap.get("approvalOpinion");
+        String approvalInfo = requestMap.get("approvalInfo");
+
+        if (!StrUtil.isAllNotBlank(reportId, taskIds, approvalOpinion)) {
+            return R.failed("必填参数为空");
+        }
+        if (!CollUtil.toList("1", "2").contains(approvalOpinion)) {
+            return R.failed("approvalOpinion不正确");
+        }
+
+        List<String> sortedIdList = StrUtil.split(taskIds, StrUtil.COMMA)
+                .stream()
+                .sorted(Comparator.comparingInt(Integer::parseInt))
+                .collect(Collectors.toList());
+
+        sortedIdList.forEach(taskId -> {
+            String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
+            Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_batch_%s", taskId), 3, TimeUnit.SECONDS);
+            if (Boolean.FALSE.equals(absent)) {
+                throw new RuntimeException("正在处理");
+            }
+        });
+
+        Boolean approvalTask = wmReportService.batchApprovalTask(reportId, sortedIdList, approvalOpinion, approvalInfo);
+
+        Set<String> cahceKeys = sortedIdList.stream()
+                .map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
+        redisTemplate.delete(cahceKeys);
+
+        return R.ok(approvalTask);
+    }
+
+    /**
+     * 结算报告审批-任务复审
+     *
+     * @return 复审结果
+     * @param1 reportId        报告id
+     * @param1 taskId          任务id
+     * @param1 approvalOpinion 审核状态(1-通过,2-不通过)
+     * @param1 approvalInfo    审批说明
+     */
+    @SysLog("结算报告审批-任务复审")
+    @PostMapping("/review-task")
+    public R<?> reviewTask(@RequestBody Map<String, String> requestMap) {
+        log.info("结算报告审批-任务复审 请求参数:{}, 操作人:{},操作时间:{}",
+                requestMap, SecurityUtils.getUser().getId(), LocalDateTime.now());
+        String reportId = requestMap.get("reportId");
+        String taskId = requestMap.get("taskId");
+        String approvalOpinion = requestMap.get("approvalOpinion");
+        String approvalInfo = requestMap.get("approvalInfo");
+
+        if (!StrUtil.isAllNotBlank(reportId, taskId, approvalOpinion)) {
+            return R.failed("必填参数为空");
+        }
+        if (!CollUtil.toList("1", "2").contains(approvalOpinion)) {
+            return R.failed("approvalOpinion不正确");
+        }
+
+        String cacheKey = CacheConstants.TASK_REVIEW_KEY + taskId;
+        Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, JSONUtil.toJsonStr(requestMap), 3, TimeUnit.SECONDS);
+        if (Boolean.FALSE.equals(absent)) {
+            return R.failed("正在处理");
+        }
+
+        return R.ok(wmReportService.reviewTask(reportId, taskId, approvalOpinion, approvalInfo));
+    }
+
+    /**
+     * 结算报告--审批
+     * reportStatus 1:待提交,2:已提交待审批 3:已部分审批  4:已退回 5:已审批待结单 6:已结单
+     *
+     * @param taskIds 所选任务id
+     * @return R
+     */
+    @SysLog("批量任务类型结算报告--审批")
+    @PostMapping("/approval-report-by-task")
+    public R approvalReportByTask(@RequestParam(value = "taskIds") List<String> taskIds,
+                                  String approvalOpinion, String approvalInfo) {
+        log.info("批量任务类型结算报告--审批 请求参数:taskIds={},approvalOpinion={},approvalInfo={} 操作人:{},操作时间:{}",
+                taskIds, approvalOpinion, approvalInfo, SecurityUtils.getUser().getId(), LocalDateTime.now());
+        if (CollUtil.isEmpty(taskIds)) {
+            return R.failed("taskIds必填");
+        }
+
+        taskIds.forEach(taskId -> {
+            String cacheKey = CacheConstants.TASK_APPROVAL_KEY + taskId;
+            Boolean absent = redisTemplate.opsForValue().setIfAbsent(cacheKey, String.format("report_approval_report_by_task_%s", taskId), 3, TimeUnit.SECONDS);
+            if (Boolean.FALSE.equals(absent)) {
+                throw new RuntimeException("正在处理");
+            }
+        });
+
+        R<?> r = wmReportService.approvalReportByTaskType(taskIds, approvalOpinion, approvalInfo);
+
+        Set<String> cahceKeys = taskIds.stream()
+                .map(taskId -> CacheConstants.TASK_APPROVAL_KEY + taskId).collect(Collectors.toSet());
+        redisTemplate.delete(cahceKeys);
+
+        return r;
+    }
+
+
+    /**
+     * 结算报告--查看
+     *
+     * @param page                  分页对象
+     * @param reportTaskListPageDTO 报告任务列表页面 DTO
+     * @return {@link R}
+     */
+    @GetMapping("/getTaskListPage")
+    public R<?> getTaskListPage(Page page, @Validated ReportTaskListPageDTO reportTaskListPageDTO) {
+        WmReport wmReport1 = wmReportService.getById(reportTaskListPageDTO.getId());
+        if (null == wmReport1) {
+            return R.failed("未查询到报告信息");
+        }
+
+        reportTaskListPageDTO.setWmReport(wmReport1);
+
+        return wmReportService.getTaskListPage(page, reportTaskListPageDTO);
+    }
+
+    /**
+     * 根据积分包id查询待审核任务详情列表
+     *
+     * @param taskTypeId 任务类型id
+     * @return 列表结果
+     * @param1 id  报告id
+     * @param1 scoreId  报告积分包id
+     */
+    @GetMapping("/list-review-task-info")
+    public R<?> listTaskInfo(WmReport wmReport, String taskTypeId) {
+        if (wmReport.getId() == null) {
+            return R.failed("必填参数为空");
+        }
+
+        return R.ok(wmReportService.listTaskInfo(wmReport.getId(), taskTypeId));
+    }
+
+    /**
+     * 根据任务类型查询任务
+     *
+     * @param page          分页参数
+     * @param taskTypeName  任务类型名称
+     * @param entTaskStatus 企业审核状态
+     * @return
+     */
+    @GetMapping("/task-page-by-type")
+    public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String[] entTaskStatus) {
+
+        return wmReportService.taskPageByTaskType(page, taskTypeName, entTaskStatus);
+    }
+
+    /**
+     * 查询待审核的任务类型
+     *
+     * @param reportId 报告id
+     * @return 列表数据
+     */
+    @GetMapping("/list-package-task-type")
+    public R<?> listPackageTaskType(@RequestParam("id") String reportId, Integer isApprovalPage) {
+        WmReport wmReport1 = wmReportService.getById(reportId);
+        if (null == wmReport1) {
+            return R.failed("未查询到报告信息");
+        }
+        // 获取待审核的任务
+        WmScorePackage scorePackage = wmScorePackageService.getById(wmReport1.getScoreId());
+        LambdaQueryWrapper<WmTask> lambdaQueryWrapper = Wrappers.<WmTask>query().lambda();
+        lambdaQueryWrapper.and(wrapper -> wrapper.eq(WmTask::getReportDrugId, reportId)
+                .or().eq(WmTask::getReportOneId, reportId)
+                .or().eq(WmTask::getReportSecondId, reportId));
+        // 如果是审批页面,则过滤掉通过和不通过的数据(reportDrugApprovalOpinion或reportOneApprovalOpinion:1通过,2不通过)
+        if (isApprovalPage != null && isApprovalPage.equals(1)) {
+            if ("0".equals(scorePackage.getTypeid())) {//药企
+                lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportDrugApprovalOpinion));
+            } else if ("1".equals(scorePackage.getTypeid())) {//一级代理商类型
+                lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportDrugApprovalOpinion));
+            } else if ("2".equals(scorePackage.getTypeid())) {//二级代理商类型
+                lambdaQueryWrapper.and(wrapper -> wrapper.isNull(WmTask::getReportOneApprovalOpinion));
+            }
+        }
+        lambdaQueryWrapper.select(WmTask::getTaskTypeId);
+        List<WmTask> wmTasks = wmTaskService.list(lambdaQueryWrapper);
+        if (CollUtil.isEmpty(wmTasks)) {
+            return R.ok(Collections.emptyList());
+        }
+        Set<String> taskTypes = wmTasks.stream().map(WmTask::getTaskTypeId).collect(Collectors.toSet());
+        return R.ok(wmTaskTypeService.listByIds(taskTypes));
+    }
 
 
 }
 }

+ 1 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmTaskController.java

@@ -1630,6 +1630,7 @@ public class WmTaskController {
 
 
     }
     }
 
 
+    @SysLog("任务审核(审批流)")
     @PostMapping(value = "/task/check/node/history/create")
     @PostMapping(value = "/task/check/node/history/create")
     public R<Boolean> doCheck(@RequestBody WmTask wmTask) {
     public R<Boolean> doCheck(@RequestBody WmTask wmTask) {
 
 

+ 94 - 29
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/SysCheckChainManager.java

@@ -1,7 +1,6 @@
 package com.qunzhixinxi.hnqz.admin.manager;
 package com.qunzhixinxi.hnqz.admin.manager;
 
 
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.util.StrUtil;
 import com.qunzhixinxi.hnqz.admin.api.dto.SysCheckChainNodeCheckHistoryDTO;
 import com.qunzhixinxi.hnqz.admin.api.dto.SysCheckChainNodeCheckHistoryDTO;
 import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNode;
 import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNode;
 import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNodeCheckHistory;
 import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNodeCheckHistory;
@@ -37,7 +36,7 @@ public class SysCheckChainManager {
     private final SysCheckChainNodeCheckHistoryService checkChainNodeCheckHistoryService;
     private final SysCheckChainNodeCheckHistoryService checkChainNodeCheckHistoryService;
 
 
 
 
-    public Boolean doCheck(Collection<SysCheckChainNodeCheckHistoryDTO.OnCreate> resources, HnqzUser operator){
+    public Boolean doCheck(Collection<SysCheckChainNodeCheckHistoryDTO.OnCreate> resources, HnqzUser operator) {
 
 
 
 
         List<SysCheckChainNodeCheckHistory> collect = resources.stream().map(resource -> {
         List<SysCheckChainNodeCheckHistory> collect = resources.stream().map(resource -> {
@@ -58,7 +57,6 @@ public class SysCheckChainManager {
     }
     }
 
 
 
 
-
     /**
     /**
      * 获取目标的最新的审核状态
      * 获取目标的最新的审核状态
      */
      */
@@ -87,59 +85,126 @@ public class SysCheckChainManager {
         Map<Integer, Map<String, Object>> res = new HashMap<>(targetIds.size());
         Map<Integer, Map<String, Object>> res = new HashMap<>(targetIds.size());
         for (Integer tid : targetIds) {
         for (Integer tid : targetIds) {
 
 
-            Boolean checkResult;
-            String checkMsg;
+            Boolean checkResult = null;
+            String checkMsg = null;
             String displayInfo = null;
             String displayInfo = null;
-            String nextNodeId = null;
+            Integer curNodeId = null;
+            Integer nextNodeId = null;
+            Integer roleId = null;
 
 
             // 任务的审核记录
             // 任务的审核记录
             List<SysCheckChainNodeCheckHistory> histories = hisMap.get(tid);
             List<SysCheckChainNodeCheckHistory> histories = hisMap.get(tid);
 
 
-            Integer nodeId;
+            int nodeId;
             if (CollUtil.isNotEmpty(histories)) {
             if (CollUtil.isNotEmpty(histories)) {
+
+                // 最新的审核结果(当前级别)
                 SysCheckChainNodeCheckHistory history = histories.get(0);
                 SysCheckChainNodeCheckHistory history = histories.get(0);
 
 
                 nodeId = history.getNodeId();
                 nodeId = history.getNodeId();
 
 
-                // 如果是服务组别
-                if (nodeId == 4) {
-                    nextNodeId = "8,9";
+                if (nodeId == 1 ) {
+                    checkResult = history.getCheckResult();
+                    checkMsg = history.getCheckMsg();
+                    displayInfo = nodeMap.get(2).getDisplayInfo();
+                    curNodeId = nodeId;
+                    nextNodeId = nodeMap.get(1).getNextNodeId();
+                    roleId = nodeMap.get(1).getExecRoleId();
+
+                } else if (nodeId == 2) {
+                    checkResult = history.getCheckResult();
+                    checkMsg = history.getCheckMsg();
+                    displayInfo = nodeMap.get(3).getDisplayInfo();
+                    curNodeId = nodeId;
+                    nextNodeId = nodeMap.get(2).getNextNodeId();
+                    roleId = nodeMap.get(2).getExecRoleId();
+
+                } else if (nodeId == 3) {
+                    checkResult = history.getCheckResult();
+                    checkMsg = history.getCheckMsg();
+                    displayInfo = nodeMap.get(4).getDisplayInfo();
+                    curNodeId = nodeId;
+                    nextNodeId = nodeMap.get(3).getNextNodeId();
+                    roleId = nodeMap.get(3).getExecRoleId();
+
+                } else if (nodeId == 5) {
+                    checkResult = history.getCheckResult();
+                    checkMsg = history.getCheckMsg();
+                    displayInfo = nodeMap.get(6).getDisplayInfo();
+                    curNodeId = nodeId;
+                    nextNodeId = nodeMap.get(5).getNextNodeId();
+                    roleId = nodeMap.get(5).getExecRoleId();
+
+                } else if (nodeId == 6) {
+                    checkResult = history.getCheckResult();
+                    checkMsg = history.getCheckMsg();
+                    displayInfo = nodeMap.get(6).getDisplayInfo();
+                    curNodeId = nodeId;
+                    roleId = nodeMap.get(6).getExecRoleId();
+
+
                 }
                 }
-                // 如果最新提交的是市场组
+                //  如果最新提交的是市场组
                 else if (nodeId == 8) {
                 else if (nodeId == 8) {
-                    history = histories.get(1);
                     // 证明服务组已经审核完毕了
                     // 证明服务组已经审核完毕了
-                    if (history.getNodeId() == 9) {
-                        nextNodeId = "5";
-                        displayInfo = nodeMap.get(4).getDisplayInfo();
+                    if (histories.get(1).getNodeId() == 9) {
+                        displayInfo = nodeMap.get(5).getDisplayInfo();
+                        checkResult = history.getCheckResult();
+                        checkMsg = history.getCheckMsg();
+                        curNodeId = nodeId;
+                        nextNodeId = 5;
+                        roleId = nodeMap.get(nodeId).getExecRoleId();
+                    }
+                    // 等待服务组审批
+                    else {
+                        displayInfo = nodeMap.get(9).getDisplayInfo();
+                        checkResult = history.getCheckResult();
+                        checkMsg = history.getCheckMsg();
+                        curNodeId = nodeId;
+                        nextNodeId = 9;
+                        roleId = nodeMap.get(9).getExecRoleId();
                     }
                     }
                 }
                 }
                 // 如果最信提交的是服务组
                 // 如果最信提交的是服务组
                 else if (nodeId == 9) {
                 else if (nodeId == 9) {
-                    history = histories.get(1);
                     // 证明服务组已经审核完毕了
                     // 证明服务组已经审核完毕了
-                    if (history.getNodeId() == 8) {
-                        nextNodeId = "5";
-                        displayInfo = nodeMap.get(4).getDisplayInfo();
+                    if (histories.get(1).getNodeId() == 8) {
+                        nextNodeId = 5;
+                        checkResult = history.getCheckResult();
+                        checkMsg = history.getCheckMsg();
+                        curNodeId = nodeId;
+                        displayInfo = nodeMap.get(5).getDisplayInfo();
+                        roleId = nodeMap.get(nodeId).getExecRoleId();
+                    }
+                    // 等待市场组审批
+                    else {
+                        nextNodeId = 8;
+                        checkResult = history.getCheckResult();
+                        checkMsg = history.getCheckMsg();
+                        curNodeId = nodeId;
+                        displayInfo = nodeMap.get(8).getDisplayInfo();
+                        roleId = nodeMap.get(8).getExecRoleId();
                     }
                     }
-                }
-                checkMsg = history.getCheckMsg();
-                checkResult = history.getCheckResult();
 
 
+                }
 
 
-            } else {
-                nodeId = 1;
+            }
+            // 不存在审核记录的时候初始化
+            else {
                 checkMsg = "";
                 checkMsg = "";
-                checkResult = null;
+                nextNodeId = 1;
+                curNodeId = 1;
+                displayInfo = nodeMap.get(1).getDisplayInfo();
+                roleId = nodeMap.get(1).getExecRoleId();
             }
             }
 
 
-            SysCheckChainNode chainNode = nodeMap.get(nodeId);
             Map<String, Object> temp = new HashMap<>(5);
             Map<String, Object> temp = new HashMap<>(5);
             temp.put("checkResult", checkResult);
             temp.put("checkResult", checkResult);
             temp.put("checkMsg", checkMsg);
             temp.put("checkMsg", checkMsg);
-            temp.put("roleId", chainNode.getExecRoleId());
-            temp.put("displayInfo", StrUtil.isBlank(displayInfo) ? chainNode.getDisplayInfo() : displayInfo);
-            temp.put("nextNodeId", StrUtil.isBlank(nextNodeId) ? nodeMap.get(nodeId).getNextNodeId().toString() : nextNodeId);
+            temp.put("roleId", roleId);
+            temp.put("displayInfo", displayInfo);
+            temp.put("nextNodeId", nextNodeId);
+            temp.put("curNodeId", curNodeId);
             res.put(tid, temp);
             res.put(tid, temp);
         }
         }
 
 

+ 66 - 67
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/WmReportService.java

@@ -20,73 +20,72 @@ import java.util.Map;
  */
  */
 public interface WmReportService extends IService<WmReport> {
 public interface WmReportService extends IService<WmReport> {
 
 
-	public R updateReportStatus(WmReport wmReport);
-
-	R del(WmReport wmReport);
-
-	/**
-	 * 结算报告审批-任务复审
-	 *
-	 * @param reportId        报告id
-	 * @param taskId          任务id
-	 * @param approvalOpinion 审核状态(1-通过,2-不通过)
-	 * @param approvalInfo    审批说明
-	 * @return 复审结果
-	 */
-	Boolean reviewTask(String reportId, String taskId, String approvalOpinion, String approvalInfo);
-
-	/**
-	 * 结算报告审批-快速批量任务审核
-	 *
-	 * @param reportId        报告id
-	 * @param taskIdList      任务id列表
-	 * @param approvalOpinion 审核状态(1-通过,2-不通过)
-	 * @param approvalInfo    审批说明
-	 * @return 审核结果
-	 */
-	Boolean batchApprovalTask(String reportId, List<String> taskIdList, String approvalOpinion, String approvalInfo);
-
-	R approvalReport(WmReport wmReport, List<String> taskIds, String approvalOpinion, String approvalInfo);
-
-	/**
-	 * 企业根据任务类型审核任务
-	 *
-	 * @param taskIds
-	 * @param approvalOpinion
-	 * @param approvalInfo
-	 * @return
-	 */
-	R<?> approvalReportByTaskType(List<String> taskIds, String approvalOpinion, String approvalInfo);
-
-	/**
-	 * 报告管理--查看
-	 *
-	 * @param page                  页
-	 * @param reportTaskListPageDTO 报告任务列表DTO
-	 * @return {@link R}
-	 */
-	R getTaskListPage(Page page, ReportTaskListPageDTO reportTaskListPageDTO);
-
-	/**
-	 * 根据积分包id查询待审核任务详情列表
-	 *
-	 * @param reportId 报告id
-	 * @param taskTypeId 任务类型id
-	 * @return 列表结果
-	 */
-	List<Map<String, Object>> listTaskInfo(Integer reportId, String taskTypeId);
-
-	IPage<WmReport> getReportListPage(Page page, WmReport wmReport, String scoreId, String name);
-
-	/**
-	 * 根据任务类型查询任务
-	 *
-	 * @param page
-	 * @param taskTypeName
-	 * @param entTaskStatus
-	 * @return
-	 */
-	R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String[] entTaskStatus);
+    R updateReportStatus(WmReport wmReport);
+
+
+    /**
+     * 结算报告审批-任务复审
+     *
+     * @param reportId        报告id
+     * @param taskId          任务id
+     * @param approvalOpinion 审核状态(1-通过,2-不通过)
+     * @param approvalInfo    审批说明
+     * @return 复审结果
+     */
+    Boolean reviewTask(String reportId, String taskId, String approvalOpinion, String approvalInfo);
+
+    /**
+     * 结算报告审批-快速批量任务审核
+     *
+     * @param reportId        报告id
+     * @param taskIdList      任务id列表
+     * @param approvalOpinion 审核状态(1-通过,2-不通过)
+     * @param approvalInfo    审批说明
+     * @return 审核结果
+     */
+    Boolean batchApprovalTask(String reportId, List<String> taskIdList, String approvalOpinion, String approvalInfo);
+
+    R approvalReport(WmReport wmReport, List<String> taskIds, String approvalOpinion, String approvalInfo);
+
+    /**
+     * 企业根据任务类型审核任务
+     *
+     * @param taskIds
+     * @param approvalOpinion
+     * @param approvalInfo
+     * @return
+     */
+    R<?> approvalReportByTaskType(List<String> taskIds, String approvalOpinion, String approvalInfo);
+
+    /**
+     * 报告管理--查看
+     *
+     * @param page                  页
+     * @param reportTaskListPageDTO 报告任务列表DTO
+     * @return {@link R}
+     */
+    R getTaskListPage(Page page, ReportTaskListPageDTO reportTaskListPageDTO);
+
+    /**
+     * 根据积分包id查询待审核任务详情列表
+     *
+     * @param reportId   报告id
+     * @param taskTypeId 任务类型id
+     * @return 列表结果
+     */
+    List<Map<String, Object>> listTaskInfo(Integer reportId, String taskTypeId);
+
+    IPage<WmReport> getReportListPage(Page page, WmReport wmReport, String scoreId, String name);
+
+    /**
+     * 根据任务类型查询任务
+     *
+     * @param page
+     * @param taskTypeName
+     * @param entTaskStatus
+     * @return
+     */
+    R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String[] entTaskStatus);
 
 
 
 
 }
 }

Разница между файлами не показана из-за своего большого размера
+ 924 - 935
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmReportServiceImpl.java


Некоторые файлы не были показаны из-за большого количества измененных файлов