diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java index 572e233e..b4207375 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java @@ -2,6 +2,7 @@ package com.jero.modules.activiti.process.esAnnualInit.service.impl; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.CommonAPI; import com.jero.common.constant.enums.YesOrNoEnum; @@ -235,19 +236,25 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl dataList; + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + wrapper.eq(ProcessEsAnnualInit::getProcessInstanceId, processInstanceId); + wrapper.eq(ProcessEsAnnualInit::getDelFlag, YesOrNoEnum.NO.getValue()); + updateWrapper.eq(ProcessEsAnnualInit::getProcessInstanceId, processInstanceId); + updateWrapper.eq(ProcessEsAnnualInit::getDelFlag, YesOrNoEnum.NO.getValue()); switch (taskName) { case CONTACT_USER_SELECT: dataList = annualInitData.getDataList(); @@ -257,9 +264,19 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl approvalUserList = new ArrayList<>(); dataList.forEach(d -> approvalUserList.add(d.getApprovalUser())); taskService.setVariable(taskId, "approvalUserList", approvalUserList); + dataList.forEach(data -> data.setExecutionId(executionId)); + saveOrUpdateBatch(dataList); + } else { + if (dataList == null) { + // 找到所有数据,然后设置驳回标志位 + updateWrapper.eq(ProcessEsAnnualInit::getContactUser, userId); + updateWrapper.set(ProcessEsAnnualInit::getRejectFlag, YesOrNoEnum.YES.getValue()); + update(updateWrapper); + } else { + dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.YES.getValue())); + saveOrUpdateBatch(dataList); + } } - dataList.forEach(data -> data.setExecutionId(executionId)); - saveOrUpdateBatch(dataList); break; case STANDARD_ENGINEER_EDIT: dataList = annualInitData.getDataList(); @@ -274,6 +291,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl mainDraftUserList = new ArrayList<>(); dataList.forEach(d -> mainDraftUserList.add(d.getPrcMainDraftUser())); + dataList.forEach(data -> data.setExecutionId(executionId)); taskService.setVariable(taskId, "mainDraftUserList", mainDraftUserList); } else { dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.YES.getValue())); @@ -306,8 +324,6 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(ProcessEsAnnualInit::getProcessInstanceId, processInstanceId); remove(wrapper); saveBatch(dataList); break; @@ -325,9 +341,24 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessEsAnnualInit::getProcessInstanceId, processInstanceId); + wrapper.eq(ProcessEsAnnualInit::getDelFlag, YesOrNoEnum.NO.getValue()); + wrapper.eq(ProcessEsAnnualInit::getContactUser, userId); + wrapper.in(ProcessEsAnnualInit::getId, Arrays.asList(ids.split(","))); + List list = list(wrapper); + annualInitData.setDataList(list); + // 将对应数据找出来 + this.approvalProcess(annualInitData, false); } @Override @@ -435,7 +466,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl