Эх сурвалжийг харах

预案演练待办 判断是否超过限制 查询时添加当前季度的时间范围判断

zhulu 1 жил өмнө
parent
commit
4d5a661205

+ 18 - 4
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java

@@ -1085,9 +1085,14 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
             if (sysConfig == null || ObjectUtil.isEmpty(sysConfig.getConfigValue())) {
                 return true;
             }
+
+            DateRange range = DateUtils.getStartAndEnd(new Date(), CycleCommonEnum.QUARTERLY);
+
             final Long count = coreDrillTaskMapper.selectCount(new LambdaQueryWrapper<CoreDrillTask>()
                     .in(CoreDrillTask::getRecStatus, Arrays.asList(DrillRecStatus.HS_EXCELLENT_CASE.getCode(), DrillRecStatus.REC_REGION_EXCELLENT_CASE.getCode()))
-                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath()));
+                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath())
+                    .ge(CoreDrillTask::getStartDate,range.getStartTime())
+                    .le(CoreDrillTask::getEndDate,range.getEndTime()));
             //如果 小于设置推荐上限则返回true,反之false
             return count < Integer.parseInt(sysConfig.getConfigValue());
         }
@@ -1099,9 +1104,12 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
             if (sysConfig == null || ObjectUtil.isEmpty(sysConfig.getConfigValue())) {
                 return true;
             }
+            DateRange range = DateUtils.getStartAndEnd(new Date(), CycleCommonEnum.QUARTERLY);
             final int count = coreDrillTaskMapper.selectCount(new LambdaQueryWrapper<CoreDrillTask>()
                     .in(CoreDrillTask::getRecStatus, Arrays.asList(DrillRecStatus.REGION_EXCELLENT_CASE.getCode(), DrillRecStatus.REC_PROVINCE_EXCELLENT_CASE.getCode()))
-                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath())).intValue();
+                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath())
+                    .ge(CoreDrillTask::getStartDate,range.getStartTime())
+                    .le(CoreDrillTask::getEndDate,range.getEndTime())).intValue();
             //如果 小于设置推荐上限则返回true,反之false
             return count < Integer.parseInt(sysConfig.getConfigValue());
         }
@@ -1128,9 +1136,12 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
             SysOrg sysOrg = sysOrgList.stream().filter(org -> ObjectUtil.equal(org.getType(), OrgTypeEnum.HANG_SHE.getCode()))
                     .findFirst().orElseThrow(() -> new SystemException(ErrorMsgConstants.QUERY_ORG_DATA_ERROR));
 
+            DateRange range = DateUtils.getStartAndEnd(new Date(), CycleCommonEnum.QUARTERLY);
             List<CoreDrillTask> coreDrillTasks = coreDrillTaskMapper.selectList(new LambdaQueryWrapper<CoreDrillTask>()
                     .eq(CoreDrillTask::getRecStatus, DrillRecStatus.REC_REGION_EXCELLENT_CASE.getCode())
-                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath()).select(CoreDrillTask::getId, CoreDrillTask::getOrgId));
+                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath())
+                    .ge(CoreDrillTask::getStartDate,range.getStartTime())
+                    .le(CoreDrillTask::getEndDate,range.getEndTime()).select(CoreDrillTask::getId, CoreDrillTask::getOrgId));
             List<Long> list = coreDrillTasks.stream().map(CoreDrillTask::getId).collect(Collectors.toList());
             //判断重复推优评优
             if ((!list.contains(drillTask.getId())) && coreDrillTasks.size() >= Integer.parseInt(sysConfig.getConfigValue())) {
@@ -1146,9 +1157,12 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
             SysOrg sysOrg = sysOrgList.stream().filter(org -> ObjectUtil.equal(org.getType(), OrgTypeEnum.BAN_SHI_CHU.getCode()))
                     .findFirst().orElseThrow(() -> new SystemException(ErrorMsgConstants.QUERY_ORG_DATA_ERROR));
 
+            DateRange range = DateUtils.getStartAndEnd(new Date(), CycleCommonEnum.QUARTERLY);
             List<CoreDrillTask> coreDrillTasks = coreDrillTaskMapper.selectList(new LambdaQueryWrapper<CoreDrillTask>()
                     .eq(CoreDrillTask::getRecStatus, DrillRecStatus.REC_PROVINCE_EXCELLENT_CASE.getCode())
-                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath()).select(CoreDrillTask::getId, CoreDrillTask::getOrgId));
+                    .likeRight(CoreDrillTask::getOrgPath, sysOrg.getPath())
+                    .ge(CoreDrillTask::getStartDate,range.getStartTime())
+                    .le(CoreDrillTask::getEndDate,range.getEndTime()).select(CoreDrillTask::getId, CoreDrillTask::getOrgId));
             List<Long> list = coreDrillTasks.stream().map(CoreDrillTask::getId).collect(Collectors.toList());
             //判断重复推优评优
             if ((!list.contains(drillTask.getId())) && coreDrillTasks.size() >= Integer.parseInt(sysConfig.getConfigValue())) {