diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java index 24f05326..9a5c381e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRecheck/service/impl/ProcessEsRecheckServiceImpl.java @@ -8,6 +8,8 @@ import com.jero.common.aspect.TranslationAspect; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.LoginUser; +import com.jero.modules.activiti.entity.ProcessAll; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.enums.ProcessType; @@ -19,6 +21,7 @@ import com.jero.modules.activiti.process.esRecheck.service.ProcessEsRecheckServi import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO; import com.jero.modules.activiti.process.fb.service.IProcessHandleService; import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessNodeLinkService; import com.jero.modules.laws.common.util.CurrentUserUtil; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardRecheckPlan; @@ -38,6 +41,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.Date; import java.util.HashMap; +import java.util.List; import java.util.Map; import static com.jero.modules.activiti.process.esRecheck.entity.RecheckTaskNameConstant.*; @@ -83,6 +87,9 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl processAlls = processAllService.list(new LambdaQueryWrapper() + .eq(ProcessAll::getPrcType, ProcessTypeEnum.ES_RECHECK.getValue()) + .like(ProcessAll::getPrcName, recheckPlan.getStandardNo()) + .ne(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue())); + if (!processAlls.isEmpty()) { + log.error("企标编号为{}的企标已经有复审流程在运行中", standardNo); + throw new JeroBootException("企标编号为" + standardNo + "的企标已经有复审流程在运行中"); } // 构建发起流程数据 ESRecheckDataVO esRecheckDataVO = getEsRecheckDataVO(es, standardizationUser, standardEngineer, recheckPlan); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESRecheckPlanJob.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESRecheckPlanJob.java index 6dbb0d32..3ce3ebb1 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESRecheckPlanJob.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESRecheckPlanJob.java @@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.constant.enums.YesOrNoEnum; -import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.enums.StandardStateEnum; -import com.jero.modules.activiti.process.esRecheck.entity.ProcessEsRecheck; -import com.jero.modules.activiti.process.esRecheck.entity.vo.ESRecheckDataVO; import com.jero.modules.activiti.process.esRecheck.service.ProcessEsRecheckService; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardRecheckPlan; import com.jero.modules.laws.enterprise.entity.dto.ESQueryCommonDTO; @@ -18,7 +15,6 @@ import com.jero.modules.laws.enterprise.service.EnterpriseStandardRecheckPlanSer import com.jero.modules.laws.enterprise.util.BeanCopyUtils; import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; -import com.jero.modules.laws.system.service.ILawsContactManageService; import lombok.extern.slf4j.Slf4j; import org.quartz.Job; import org.quartz.JobExecutionContext; @@ -28,7 +24,10 @@ import javax.annotation.Resource; import java.time.LocalDate; import java.time.ZoneId; import java.time.ZonedDateTime; -import java.util.*; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.jero.modules.activiti.process.esRecheck.entity.ProcessRecheckConstants.*; @@ -121,7 +120,11 @@ public class ESRecheckPlanJob implements Job { recheckPlan.setRecheckDate(recheckDate); esRecheckPlanService.save(recheckPlan); // 自动发起流程 - recheckService.autoStartProcess(es, recheckPlan); + try { + recheckService.autoStartProcess(es, recheckPlan); + } catch (Exception e) { + log.error("企标编号{}复审流程发起失败,原因:{}", es.getStandardNumber(), e.getMessage()); + } log.info("企标编号为{}的企标已经达到35个月,已经自动发起复审流程", es.getStandardNumber()); } else { // 如果已经有复审计划,则需要判断是否到达复审日期前一个月,如果到达则需要发起流程,已经发起过流程的不能重复发送 @@ -140,7 +143,11 @@ public class ESRecheckPlanJob implements Job { continue; } if (now.isAfter(minusMonths) && now.isBefore(recheckLocalDate)) { - recheckService.autoStartProcess(es, recheckPlan); + try { + recheckService.autoStartProcess(es, recheckPlan); + } catch (Exception e) { + log.error("企标编号{}复审流程发起失败,原因:{}", es.getStandardNumber(), e.getMessage()); + } log.info("企标编号为{}的企标已经达到复审日期前一个月,已经自动发起复审流程", es.getStandardNumber()); } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardRecheckPlanServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardRecheckPlanServiceImpl.java index 3fb8d989..95eab3ab 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardRecheckPlanServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardRecheckPlanServiceImpl.java @@ -94,7 +94,7 @@ public class EnterpriseStandardRecheckPlanServiceImpl extends ServiceImpl", errMsgList)); } } }