Ver Fonte

feat: 企业批量任务审核

lixuesong há 2 anos atrás
pai
commit
b23b68a782

+ 6 - 5
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmReportController.java

@@ -243,7 +243,7 @@ public class WmReportController {
 	 * @return R
 	 */
 	@SysLog("批量任务类型结算报告--审批" )
-	@GetMapping("/approvalReportByTaskType" )
+	@PostMapping("/approval-report-by-task")
 	public R approvalReport(@RequestParam(value = "taskIds") List<String> taskIds,
 							String approvalOpinion,String approvalInfo) {
 		if(CollUtil.isEmpty(taskIds)){
@@ -274,14 +274,15 @@ public class WmReportController {
 	/**
 	 * 根据任务类型查询任务
 	 *
-	 * @param page
-	 * @param taskTypeName
+	 * @param page 分页参数
+	 * @param taskTypeName 任务类型名称
+	 * @param entTaskStatus 企业审核状态
 	 * @return
 	 */
 	@GetMapping("/task-page-by-type")
-	public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName) {
+	public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String entTaskStatus) {
 
-		return wmReportService.taskPageByTaskType(page, taskTypeName);
+		return wmReportService.taskPageByTaskType(page, taskTypeName, entTaskStatus);
 	}
 
 

+ 5 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/entity/WmReport.java

@@ -160,4 +160,9 @@ public class WmReport extends Model<WmReport> {
 	 */
 	@TableField(exist = false)
 	private List<String> taskTypeIdList;
+
+	/**
+	 * 报告审批状态:1通过,2不通过
+	 */
+	private String entTaskStatus;
 }

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

@@ -21,7 +21,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qunzhixinxi.hnqz.admin.entity.WmReport;
-import com.qunzhixinxi.hnqz.admin.entity.WmTask;
 import com.qunzhixinxi.hnqz.admin.entity.vo.WmTaskVO;
 import com.qunzhixinxi.hnqz.common.core.util.R;
 
@@ -60,9 +59,10 @@ public interface WmReportService extends IService<WmReport> {
 	 *
 	 * @param page
 	 * @param taskTypeName
+	 * @param entTaskStatus
 	 * @return
 	 */
-	R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName);
+	R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String entTaskStatus);
 
 
 }

+ 10 - 4
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmReportServiceImpl.java

@@ -422,13 +422,15 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
 				.collect(Collectors.groupingBy(wmTask -> wmTask.getReportDrugId() != null ?
 						wmTask.getReportDrugId() : wmTask.getReportOneId()));
 
-		// 调用原有审核方法
 		AtomicBoolean successFlag = new AtomicBoolean(true);
 		reportIdMap.forEach((reportId, wmTasks) -> {
 			WmReport queryReport = this.getById(reportId);
 			List<String> taskIdList = wmTasks.stream().map(WmTask::getId).collect(Collectors.toList());
 			log.info("企业批量审核任务reportId={}, taskIds={}", reportId, taskIdList);
+
+			// 调用原有审核方法
 			R approvalReportResult = this.approvalReport(queryReport, taskIdList, approvalOpinion, approvalInfo);
+
 			if (approvalReportResult.getCode() != 0) {
 				successFlag.set(false);
 			}
@@ -508,12 +510,13 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
 	/**
 	 * 根据任务类型查询任务
 	 *
-	 * @param page
-	 * @param taskTypeName
+	 * @param page 分页参数
+	 * @param taskTypeName 任务类型名称
+	 * @param entTaskStatus 审核状态 0待审核 1通过,2不通过
 	 * @return
 	 */
 	@Override
-	public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName) {
+	public R<?> taskPageByTaskType(Page<WmTaskVO> page, String taskTypeName, String entTaskStatus) {
 
 		LambdaQueryWrapper<WmTaskType> queryWrapper = Wrappers.<WmTaskType>lambdaQuery()
 				.eq(WmTaskType::getTaskTypeLevel, "1")
@@ -538,6 +541,9 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
 		WmReport queryReport = new WmReport();
 		queryReport.setDrugEntId(SecurityUtils.getUser().getDeptId());
 		queryReport.setTaskTypeIdList(baseTaskTypeList.stream().map(WmTaskType::getId).collect(Collectors.toList()));
+		if (StrUtil.isNotBlank(entTaskStatus)) {
+			queryReport.setEntTaskStatus(entTaskStatus);
+		}
 		IPage<WmTaskVO> pages = wmTaskMapper.entTaskPageByTaskType(page, queryReport);
 
 		Page<Map<String, Object>> mapPage = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal());

+ 9 - 0
hnqz-upms/hnqz-upms-biz/src/main/resources/mapper/WmTaskMapper.xml

@@ -1344,8 +1344,17 @@ FROM
 		<foreach collection="query.taskTypeIdList" item="item" index="index" separator="," open="(" close=")">
 			#{item}
 		</foreach>
+		  /* 状态为审核通过、不通过 */
+	  	<if test="query.entTaskStatus != null and (query.entTaskStatus == '1' or query.entTaskStatus == '2')">
+		  and (p.typeid = 0 and t.report_drug_approval_opinion = #{query.entTaskStatus}
+		  or p.typeid = 1 and t.report_drug_approval_opinion = #{query.entTaskStatus}
+		  or p.typeid = 2 and t.report_one_approval_opinion = #{query.entTaskStatus})
+	  	</if>
+		 /* 状态为待审核的 */
+		<if test="query.entTaskStatus != null and query.entTaskStatus == '0'">
 		  and (p.typeid = 0 and t.report_drug_approval_opinion is null
 			or p.typeid = 1 and t.report_drug_approval_opinion is null
 			or p.typeid = 2 and t.report_one_approval_opinion is null)
+		</if>
 	</select>
 </mapper>