diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/listener/ProcessESInitChangeEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/listener/ProcessESInitChangeEndListener.java index 69838019..57e003e6 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/listener/ProcessESInitChangeEndListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/listener/ProcessESInitChangeEndListener.java @@ -8,6 +8,9 @@ import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPChangeType import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectStatus; import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectType; import com.jero.modules.activiti.process.esInitChange.service.ProcessEsInitChangeService; +import com.jero.modules.activiti.process.esRevision.entity.ProcessEsRevision; +import com.jero.modules.activiti.process.esRevision.entity.vo.ESRevisionDataVO; +import com.jero.modules.activiti.process.esRevision.service.EsRevisionService; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan; import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService; import com.jero.modules.laws.enterprise.util.BeanCopyUtils; @@ -17,7 +20,9 @@ import org.activiti.engine.delegate.ExecutionListener; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @author: Mzaxd @@ -33,6 +38,9 @@ public class ProcessESInitChangeEndListener implements ExecutionListener { @Resource private ProcessEsInitChangeService esInitChangeService; + @Resource + private EsRevisionService esRevisionService; + /** * 企标立项变更流程结束之后需要把数据存入企标计划数据库 然后自动发起企标制修订流程 * @param delegateExecution @@ -60,6 +68,9 @@ public class ProcessESInitChangeEndListener implements ExecutionListener { // 转换为企标计划数据并入库 enterpriseStandardPlans = BeanCopyUtils.copyBeanList(processEsInitChanges, EnterpriseStandardPlan.class); espService.saveBatch(enterpriseStandardPlans); + log.info("自动发起企标制修订流程"); + EnterpriseStandardPlan esp = enterpriseStandardPlans.get(0); + esRevisionService.autoStartProcess(getRevisionDataVO(esp)); } else { // 将Id设为企标计划的Id for (ProcessEsInitChange processEsInitChange : processEsInitChanges) { @@ -109,19 +120,26 @@ public class ProcessESInitChangeEndListener implements ExecutionListener { processEsInitChange.setProjectStatus(ESPProjectStatus.IN_PROGRESS.getValue()); processEsInitChange.setChangeStatus(ESPChangeType.CHANGE.getValue()); } + ProcessEsInitChange processEsInitChange = processEsInitChanges.get(0); // 删除两个老企标计划 - espService.deleteById(processEsInitChanges.get(0).getStandardIdOne()); - espService.deleteById(processEsInitChanges.get(0).getStandardIdTwo()); + espService.deleteById(processEsInitChange.getStandardIdOne()); + espService.deleteById(processEsInitChange.getStandardIdTwo()); // 生成新企标计划 - enterpriseStandardPlans = BeanCopyUtils.copyBeanList(processEsInitChanges, EnterpriseStandardPlan.class); - espService.saveOrUpdateBatch(enterpriseStandardPlans); + EnterpriseStandardPlan plan = BeanCopyUtils.copyBean(processEsInitChange, EnterpriseStandardPlan.class); + espService.save(plan); + //发起制修订流程 + esRevisionService.autoStartProcess(getRevisionDataVO(plan)); + log.info("自动发起企标制修订流程"); } } log.info("数据存入企标计划数据库"); - // 软删除流程数据 - esInitChangeService.removeByProcessInstanceId(processInstanceId); - log.info("软删除流程数据"); - //TODO 发起制修订流程 - log.info("自动发起企标制修订流程"); + } + + public ESRevisionDataVO getRevisionDataVO(EnterpriseStandardPlan esp) { + ESRevisionDataVO revisionDataVO = new ESRevisionDataVO(); + ProcessEsRevision revision = new ProcessEsRevision(); + revision.setEspId(esp.getId()); + revisionDataVO.setData(revision); + return revisionDataVO; } }