|
|
@@ -72,8 +72,8 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
CoreSafecheckPlan checkPlan = planMapper.selectById(planId);
|
|
|
Integer planCycle = Math.toIntExact(checkPlan.getPlanCycle());
|
|
|
CycleCommonEnum code = CycleCommonEnum.getEnum(0);
|
|
|
- if(checkPlan.getPlanCycle()!=6L){
|
|
|
- code=CycleCommonEnum.getEnum( Math.toIntExact(checkPlan.getPlanCycle())+2);
|
|
|
+ if (checkPlan.getPlanCycle() != 6L) {
|
|
|
+ code = CycleCommonEnum.getEnum(Math.toIntExact(checkPlan.getPlanCycle()) + 2);
|
|
|
}
|
|
|
if (!planCycle.equals(6)) {
|
|
|
DateRange map = DateUtils.getStartAndEnd(new Date(), code);
|
|
|
@@ -175,9 +175,9 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
DateTime datetime = new DateTime();
|
|
|
datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
|
|
|
CycleCommonEnum code = CycleCommonEnum.getEnum(0);
|
|
|
- DateRange dateRange = new DateRange(plans.get(0).getStartDate(),plans.get(0).getEndDate());
|
|
|
- if(plans.get(0).getPlanCycle()!=6L){
|
|
|
- code=CycleCommonEnum.getEnum( Math.toIntExact(plans.get(0).getPlanCycle())+2);
|
|
|
+ DateRange dateRange = new DateRange(plans.get(0).getStartDate(), plans.get(0).getEndDate());
|
|
|
+ if (plans.get(0).getPlanCycle() != 6L) {
|
|
|
+ code = CycleCommonEnum.getEnum(Math.toIntExact(plans.get(0).getPlanCycle()) + 2);
|
|
|
dateRange = DateUtils.getStartAndEnd(new Date(), code);
|
|
|
}
|
|
|
List<PlanTaskBuildVo> tasks = new ArrayList<>();
|
|
|
@@ -237,7 +237,12 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
List<SysOrg> checkOrgs = null;
|
|
|
if (ObjectUtil.isEmpty(checkOrg)) {
|
|
|
//如果没有选择具体受检的机构,则根据受检机构类型查询
|
|
|
- checkOrgs = orgService.findByOrgTypeAndParent(checkOrgType, org.getPath(), SecurityConstants.INNER);
|
|
|
+ if (ObjectUtil.equal(plan.getCheckOrgType(), plan.getExecOrgType())) {
|
|
|
+ //如果检查机构类型与被检机构类型一致,则表示查自己
|
|
|
+ checkOrgs = Arrays.asList(org);
|
|
|
+ } else {
|
|
|
+ checkOrgs = orgService.findByOrgTypeAndParent(checkOrgType, org.getPath(), SecurityConstants.INNER);
|
|
|
+ }
|
|
|
} else {
|
|
|
//选择了具体的受检机构
|
|
|
List<Long> ids = checkOrg.stream().map(CoreSafecheckPlanToCheckOrg::getOrgId).collect(Collectors.toList());
|
|
|
@@ -329,7 +334,11 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
List<SysOrg> checkOrgs = null;
|
|
|
if (ObjectUtil.isEmpty(checkOrg)) {
|
|
|
//如果没有选择具体受检的机构,则根据受检机构类型查询
|
|
|
- checkOrgs = orgService.findByOrgTypeAndParent(checkOrgType, org.getPath(), SecurityConstants.INNER);
|
|
|
+ if (ObjectUtil.equal(plan.getCheckOrgType(), plan.getExecOrgType())) {
|
|
|
+ checkOrgs = Arrays.asList(org);
|
|
|
+ } else {
|
|
|
+ checkOrgs = orgService.findByOrgTypeAndParent(checkOrgType, org.getPath(), SecurityConstants.INNER);
|
|
|
+ }
|
|
|
} else {
|
|
|
//选择了具体的受检机构
|
|
|
List<Long> ids = checkOrg.stream().map(CoreSafecheckPlanToCheckOrg::getOrgId).collect(Collectors.toList());
|
|
|
@@ -381,9 +390,9 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
DateTime datetime = new DateTime();
|
|
|
datetime.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
|
|
|
CycleCommonEnum code = CycleCommonEnum.getEnum(0);
|
|
|
- DateRange dateRange = new DateRange(plan.getStartDate(),plan.getEndDate());
|
|
|
- if(plan.getPlanCycle()!=6L){
|
|
|
- code=CycleCommonEnum.getEnum( Math.toIntExact(plan.getPlanCycle())+2);
|
|
|
+ DateRange dateRange = new DateRange(plan.getStartDate(), plan.getEndDate());
|
|
|
+ if (plan.getPlanCycle() != 6L) {
|
|
|
+ code = CycleCommonEnum.getEnum(Math.toIntExact(plan.getPlanCycle()) + 2);
|
|
|
dateRange = DateUtils.getStartAndEnd(new Date(), code);
|
|
|
}
|
|
|
//获取当前受检机构当前周期营业中的作息
|
|
|
@@ -392,7 +401,7 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
short coun = Short.parseShort(plan.getCount().toString());
|
|
|
//划分时间
|
|
|
Map<Short, StartEndTime> rangeMap = splitTaskTime(coun, CycleCommonEnum.getEnum(cycleCode),
|
|
|
- dateRange.getStartTime(), dateRange.getEndTime(), workTimes);
|
|
|
+ dateRange.getStartTime(), dateRange.getEndTime(), workTimes);
|
|
|
for (short i = 1; i <= coun; i++) {
|
|
|
//如果不存在当前次数的时间划分结果
|
|
|
if (!rangeMap.containsKey(i)) {
|
|
|
@@ -511,7 +520,7 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
}
|
|
|
checkTask.setBatchId(batchId);
|
|
|
//变更,如果当前计划当前机构当前YmdDate已存在已完成或者已逾期的任务则跳过,否则删除
|
|
|
- List<CoreSafetyTask> coreSafetyTasks = checkTaskService.list(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getOrgId, checkTask.getOrgId()).eq(CoreSafetyTask::getYmdDate, checkTask.getYmdDate()).eq(CoreSafetyTask::getPlanId,checkTask.getPlanId()).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
+ List<CoreSafetyTask> coreSafetyTasks = checkTaskService.list(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getOrgId, checkTask.getOrgId()).eq(CoreSafetyTask::getYmdDate, checkTask.getYmdDate()).eq(CoreSafetyTask::getPlanId, checkTask.getPlanId()).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
if (coreSafetyTasks.size() > 0) {
|
|
|
//如果存在同批次的已完成或者已逾期的任务需要同步批次id
|
|
|
checkTask.setBatchId(coreSafetyTasks.get(0).getBatchId());
|
|
|
@@ -553,7 +562,7 @@ public class SafetyCheckJobBusiness extends TaskCreatingServiceImplBase<CoreSafe
|
|
|
plans = new ArrayList<>();
|
|
|
CoreSafecheckPlan coreSafecheckPlan = planMapper.selectById(safetyTaskBuildDto.getPlanId());
|
|
|
plans.add(coreSafecheckPlan);
|
|
|
- map = DateHelper.getStartAndEnd(safetyTaskBuildDto.getDate(), Math.toIntExact(coreSafecheckPlan.getPlanCycle())+2);
|
|
|
+ map = DateHelper.getStartAndEnd(safetyTaskBuildDto.getDate(), Math.toIntExact(coreSafecheckPlan.getPlanCycle()) + 2);
|
|
|
} else {
|
|
|
LambdaUpdateWrapper<CoreSafecheckPlan> qw = new LambdaUpdateWrapper<>();
|
|
|
qw.eq(CoreSafecheckPlan::getPlanCycle, safetyTaskBuildDto.getPlanCycle());
|