|
|
@@ -106,76 +106,81 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
|
|
|
@Override
|
|
|
public void distributeToOrg(DistributeDto dto) {
|
|
|
+ CoreSafecheckPlan byId = baseMapper.selectById(dto.getId());
|
|
|
for (DistributeStatusDto d :
|
|
|
dto.getOrgAndStatus()) {
|
|
|
CoreSafecheckPlan plan = baseMapper.selectOne(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getPlanOfOrgId, d.getOrgId()).eq(CoreSafecheckPlan::getParentId, dto.getId()));
|
|
|
- //如果子计划计划已存在
|
|
|
+ //如果子计划已存在
|
|
|
if (plan != null) {
|
|
|
plan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
|
|
|
plan.setDistributePlanStatus(d.getStatus().toString());
|
|
|
plan.setDistributeStatus("1");
|
|
|
baseMapper.updateById(plan);
|
|
|
- }else{
|
|
|
-
|
|
|
- CoreSafecheckPlan coreSafecheckPlan = baseMapper.selectById(dto.getId());
|
|
|
- coreSafecheckPlan.setDistributeStatus("1");
|
|
|
- coreSafecheckPlan.setPlanOfOrgId(d.getOrgId());
|
|
|
- coreSafecheckPlan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
|
|
|
- coreSafecheckPlan.setDistributePlanStatus(d.getStatus().toString());
|
|
|
- coreSafecheckPlan.setCreateTime(new Date());
|
|
|
- //下发所属机构类型
|
|
|
- coreSafecheckPlan.setPlanOfOrgType(orgService.selectSysOrgById(coreSafecheckPlan.getPlanOfOrgId(), SecurityConstants.INNER).getType());
|
|
|
- coreSafecheckPlan.setId(null);
|
|
|
+ } else {
|
|
|
+
|
|
|
+ CoreSafecheckPlan coreSafecheckPlan = baseMapper.selectById(dto.getId());
|
|
|
+ coreSafecheckPlan.setDistributeStatus("1");
|
|
|
+ coreSafecheckPlan.setPlanOfOrgId(d.getOrgId());
|
|
|
+ coreSafecheckPlan.setPlanStatus((long) (d.getStatus() > 0 ? 1 : 2));
|
|
|
+ coreSafecheckPlan.setDistributePlanStatus(d.getStatus().toString());
|
|
|
+ coreSafecheckPlan.setCreateTime(new Date());
|
|
|
+ //下发所属机构类型
|
|
|
+ coreSafecheckPlan.setPlanOfOrgType(orgService.selectSysOrgById(coreSafecheckPlan.getPlanOfOrgId(), SecurityConstants.INNER).getType());
|
|
|
+ coreSafecheckPlan.setId(null);
|
|
|
// if (coreSafecheckPlan.getPlanCycle()==6){
|
|
|
// coreSafecheckPlan.setStartDate();
|
|
|
// }
|
|
|
// plan.setPlanName(plan.getPlanName()+"下发"+orgService.selectOrgById(d.getOrgId(),SecurityConstants.INNER).getName());
|
|
|
- coreSafecheckPlan.setPlanName(coreSafecheckPlan.getPlanName());
|
|
|
- coreSafecheckPlan.setParentId(dto.getId());
|
|
|
- baseMapper.insert(coreSafecheckPlan);
|
|
|
+ coreSafecheckPlan.setPlanName(coreSafecheckPlan.getPlanName());
|
|
|
+ coreSafecheckPlan.setParentId(dto.getId());
|
|
|
+ baseMapper.insert(coreSafecheckPlan);
|
|
|
|
|
|
- List<CoreSafecheckPlanToRole> roleList = coreSafecheckPlanToRoleMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToRole>().eq(CoreSafecheckPlanToRole::getPlanId, dto.getId()));
|
|
|
- //再处理角色关系
|
|
|
- if (roleList != null) {
|
|
|
- coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanId(coreSafecheckPlan.getId());
|
|
|
- for (CoreSafecheckPlanToRole r :
|
|
|
- roleList) {
|
|
|
- coreSafecheckPlanToRoleMapper.insert(new CoreSafecheckPlanToRole(coreSafecheckPlan.getId(), r.getRoleId()));
|
|
|
+ List<CoreSafecheckPlanToRole> roleList = coreSafecheckPlanToRoleMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToRole>().eq(CoreSafecheckPlanToRole::getPlanId, dto.getId()));
|
|
|
+ //再处理角色关系
|
|
|
+ if (roleList != null) {
|
|
|
+ coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanId(coreSafecheckPlan.getId());
|
|
|
+ for (CoreSafecheckPlanToRole r :
|
|
|
+ roleList) {
|
|
|
+ coreSafecheckPlanToRoleMapper.insert(new CoreSafecheckPlanToRole(coreSafecheckPlan.getId(), r.getRoleId()));
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- //再处理检查机构关系
|
|
|
- List<CoreSafecheckPlanToExecOrg> execOrgList = coreSafecheckPlanToExecOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToExecOrg>().eq(CoreSafecheckPlanToExecOrg::getPlanId, dto.getId()));
|
|
|
- if (execOrgList != null) {
|
|
|
- coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanId(coreSafecheckPlan.getId());
|
|
|
- for (CoreSafecheckPlanToExecOrg org :
|
|
|
- execOrgList) {
|
|
|
- coreSafecheckPlanToExecOrgMapper.insert(new CoreSafecheckPlanToExecOrg(coreSafecheckPlan.getId(), org.getOrgId()));
|
|
|
+ //再处理检查机构关系
|
|
|
+ List<CoreSafecheckPlanToExecOrg> execOrgList = coreSafecheckPlanToExecOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToExecOrg>().eq(CoreSafecheckPlanToExecOrg::getPlanId, dto.getId()));
|
|
|
+ if (execOrgList != null) {
|
|
|
+ coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanId(coreSafecheckPlan.getId());
|
|
|
+ for (CoreSafecheckPlanToExecOrg org :
|
|
|
+ execOrgList) {
|
|
|
+ coreSafecheckPlanToExecOrgMapper.insert(new CoreSafecheckPlanToExecOrg(coreSafecheckPlan.getId(), org.getOrgId()));
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- //再处理受检机构关系
|
|
|
- List<CoreSafecheckPlanToCheckOrg> checkOrgList = coreSafecheckPlanToCheckOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToCheckOrg>().eq(CoreSafecheckPlanToCheckOrg::getPlanId, dto.getId()));
|
|
|
- if (checkOrgList != null) {
|
|
|
- coreSafecheckPlanToCheckOrgMapper.deleteCoreSafecheckPlanToCheckOrgByPlanId(coreSafecheckPlan.getId());
|
|
|
- for (CoreSafecheckPlanToCheckOrg org :
|
|
|
- checkOrgList) {
|
|
|
- coreSafecheckPlanToCheckOrgMapper.insert(new CoreSafecheckPlanToCheckOrg(coreSafecheckPlan.getId(), org.getOrgId()));
|
|
|
+ //再处理受检机构关系
|
|
|
+ List<CoreSafecheckPlanToCheckOrg> checkOrgList = coreSafecheckPlanToCheckOrgMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToCheckOrg>().eq(CoreSafecheckPlanToCheckOrg::getPlanId, dto.getId()));
|
|
|
+ if (checkOrgList != null) {
|
|
|
+ coreSafecheckPlanToCheckOrgMapper.deleteCoreSafecheckPlanToCheckOrgByPlanId(coreSafecheckPlan.getId());
|
|
|
+ for (CoreSafecheckPlanToCheckOrg org :
|
|
|
+ checkOrgList) {
|
|
|
+ coreSafecheckPlanToCheckOrgMapper.insert(new CoreSafecheckPlanToCheckOrg(coreSafecheckPlan.getId(), org.getOrgId()));
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- //再处理检查要点关系
|
|
|
- List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, dto.getId()));
|
|
|
- if (rpList != null) {
|
|
|
- coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(coreSafecheckPlan.getId());
|
|
|
- for (CoreSafecheckPlanToPoint s :
|
|
|
- rpList) {
|
|
|
- coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getPointId(), s.isPointScan(), s.isRequired()));
|
|
|
+ //再处理检查要点关系
|
|
|
+
|
|
|
+ //查询父计划的所有检查要点
|
|
|
+ List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, dto.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, byId.getPlanOfOrgId()));
|
|
|
+ if (rpList != null) {
|
|
|
+ //删除父计划创建的检查要点
|
|
|
+ coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, byId.getPlanOfOrgId()));
|
|
|
+ for (CoreSafecheckPlanToPoint s :
|
|
|
+ rpList) {
|
|
|
+ //插入父计划的所有检查要点
|
|
|
+ coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getPointId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
//更改下发状态
|
|
|
CoreSafecheckPlan coreSafecheckPlan = new CoreSafecheckPlan();
|
|
|
coreSafecheckPlan.setId(dto.getId());
|
|
|
@@ -214,20 +219,6 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
@Override
|
|
|
public int distributeCheHui(Long id) {
|
|
|
CoreSafecheckPlan plan = baseMapper.selectById(id);
|
|
|
- //修改所有子计划
|
|
|
- List<CoreSafecheckPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, id));
|
|
|
- //如果不存在子计划直接返回
|
|
|
- if (appPlans == null || appPlans.size() == 0) {
|
|
|
- return 0;
|
|
|
- }
|
|
|
- for (CoreSafecheckPlan ap :
|
|
|
- appPlans) {
|
|
|
-//修改计划状态为停用
|
|
|
- ap.setPlanStatus(1L);
|
|
|
- baseMapper.updateById(ap);
|
|
|
- }
|
|
|
- //设置下发状态为下发
|
|
|
- plan.setDistribute("1");
|
|
|
plan.setPlanStatus(1L);
|
|
|
baseMapper.updateById(plan);
|
|
|
return 1;
|
|
|
@@ -243,7 +234,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
@Override
|
|
|
public CoreSafecheckPlan selectCoreSafecheckPlanById(Long id) {
|
|
|
CoreSafecheckPlan coreSafecheckPlan = coreSafecheckPlanMapper.selectCoreSafecheckPlanById(id);
|
|
|
- Long sum=coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, id).in(CoreSafetyTask::getStatus, 3,4));
|
|
|
+ Long sum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, id).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
if (sum > 0) {
|
|
|
//如果存在完成或者逾期的任务设置编辑状态为1
|
|
|
coreSafecheckPlan.setHasEdit(1);
|
|
|
@@ -252,7 +243,7 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
List<CoreSafecheckPlan> appPlans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, id));
|
|
|
for (CoreSafecheckPlan p :
|
|
|
appPlans) {
|
|
|
- Long csum=coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, p.getId()).in(CoreSafetyTask::getStatus, 3,4));
|
|
|
+ Long csum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, p.getId()).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
if (csum > 0) {
|
|
|
//如果存在完成或者逾期的任务设置编辑状态为1
|
|
|
coreSafecheckPlan.setHasEdit(1);
|
|
|
@@ -334,10 +325,11 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
}
|
|
|
//再处理检查要点关系
|
|
|
if (coreSafecheckPlan.getRulePointList() != null) {
|
|
|
- coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(coreSafecheckPlan.getId());
|
|
|
+ //删除计划id为当前计划并且所属机构id为当前计划所属
|
|
|
+ coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
|
|
|
for (SafetyCheckRulePointVo s :
|
|
|
coreSafecheckPlan.getRulePointList()) {
|
|
|
- coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getId(), s.isPointScan(), s.isRequired()));
|
|
|
+ coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(coreSafecheckPlan.getId(), s.getId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
|
|
|
|
|
|
}
|
|
|
}
|
|
|
@@ -419,13 +411,14 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
|
|
|
}
|
|
|
}
|
|
|
- //再处理检查要点关系
|
|
|
- List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()));
|
|
|
+ //再处理子计划检查要点关系
|
|
|
+ //查询计划id为当前父计划的id,所属机构id为当前父计划所属机构id的数据
|
|
|
+ List<CoreSafecheckPlanToPoint> rpList = coreSafecheckPlanToPointMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
|
|
|
if (rpList != null) {
|
|
|
- coreSafecheckPlanToPointMapper.deleteCoreSafecheckPlanToPointByPlanId(p.getId());
|
|
|
+ coreSafecheckPlanToPointMapper.delete(new LambdaQueryWrapper<CoreSafecheckPlanToPoint>().eq(CoreSafecheckPlanToPoint::getPlanId, coreSafecheckPlan.getId()).eq(CoreSafecheckPlanToPoint::getOfOrgId, coreSafecheckPlan.getPlanOfOrgId()));
|
|
|
for (CoreSafecheckPlanToPoint s :
|
|
|
rpList) {
|
|
|
- coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(p.getId(), s.getPointId(), s.isPointScan(), s.isRequired()));
|
|
|
+ coreSafecheckPlanToPointMapper.insert(new CoreSafecheckPlanToPoint(p.getId(), s.getPointId(), s.isPointScan(), s.isRequired(), s.getOfOrgId()));
|
|
|
|
|
|
}
|
|
|
}
|
|
|
@@ -467,6 +460,20 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
|
|
|
@Override
|
|
|
public int deleteCoreSafecheckPlanByIds(Long[] ids) {
|
|
|
List<Long> list = Arrays.asList((ids));
|
|
|
+ for (Long l :
|
|
|
+ list) {
|
|
|
+ Long num = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, l).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
+ if (num > 0) {
|
|
|
+ throw new RuntimeException("计划有已完成或者已逾期的任务,不能被删除。");
|
|
|
+ }
|
|
|
+ List<CoreSafecheckPlan> plans = baseMapper.selectList(new LambdaQueryWrapper<CoreSafecheckPlan>().eq(CoreSafecheckPlan::getParentId, l));
|
|
|
+ for (CoreSafecheckPlan plan : plans) {
|
|
|
+ Long cnum = coreSafetyTaskMapper.selectCount(new LambdaQueryWrapper<CoreSafetyTask>().eq(CoreSafetyTask::getPlanId, plan.getId()).in(CoreSafetyTask::getStatus, 3, 4));
|
|
|
+ if (cnum > 0) {
|
|
|
+ throw new RuntimeException("子计划有已完成或者已逾期的任务,不能被删除。");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
//清理关联数据
|
|
|
coreSafecheckPlanToRoleMapper.deleteCoreSafecheckPlanToRoleByPlanIds(ids);
|
|
|
coreSafecheckPlanToExecOrgMapper.deleteCoreSafecheckPlanToExecOrgByPlanIds(ids);
|