diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/EngineeringSingleServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/EngineeringSingleServiceImpl.java index 9c5c0aa..c4ec403 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/EngineeringSingleServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/EngineeringSingleServiceImpl.java @@ -10,6 +10,8 @@ import com.zhgd.xmgl.modules.basicdata.mapper.EngineeringSingleMapper; import com.zhgd.xmgl.modules.basicdata.service.*; import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo; import com.zhgd.xmgl.modules.safety.entity.EnterpriseScore; +import com.zhgd.xmgl.modules.safety.entity.EnterpriseScoreDetail; +import com.zhgd.xmgl.modules.safety.service.IEnterpriseScoreDetailService; import com.zhgd.xmgl.modules.safety.service.IEnterpriseScoreService; import com.zhgd.xmgl.util.ParamEnum; import org.springframework.beans.factory.annotation.Autowired; @@ -43,6 +45,9 @@ public class EngineeringSingleServiceImpl extends ServiceImpllambdaQuery() + .eq(EnterpriseScore::getEnterpriseSn, engineeringMain.getEnterpriseSn()) + .eq(EnterpriseScore::getEngineeringSn, engineeringVo.getEngineeringSn())); + if (scoreServiceOne == null) { + EnterpriseScore enterpriseScore = new EnterpriseScore(); + enterpriseScore.setEnterpriseSn(engineeringMain.getEnterpriseSn()); + enterpriseScore.setEngineeringSn(engineeringVo.getEngineeringSn()); + enterpriseScore.setEnterpriseType(engineeringMain.getType()); + enterpriseScore.setCreateBy(projectService.list().get(0).getGovernmentSn()); + enterpriseScore.setCreateTime(new Date()); + scoreList.add(enterpriseScore); + } } enterpriseScoreService.saveBatch(scoreList); return true; @@ -87,9 +97,20 @@ public class EngineeringSingleServiceImpl extends ServiceImpl engineeringMains = engineeringMainService.list(Wrappers.lambdaQuery() .eq(EngineeringMain::getEngineeringSn, engineeringSn)); List mainIds = engineeringMains.stream().map(m -> m.getId()).collect(Collectors.toList()); + List enterprises = engineeringMains.stream().map(m -> m.getEnterpriseSn()).collect(Collectors.toList()); engineeringMainPersonService.remove(Wrappers.lambdaQuery() .in(EngineeringMainPerson::getMainId, mainIds)); engineeringMainService.removeByIds(mainIds); + List scoreServiceList = enterpriseScoreService.list(Wrappers.lambdaQuery() + .in(EnterpriseScore::getEnterpriseSn, enterprises) + .eq(EnterpriseScore::getEngineeringSn, engineeringSn)); + for (EnterpriseScore enterpriseScore : scoreServiceList) { + int num = enterpriseScoreDetailService.count(Wrappers.lambdaQuery() + .eq(EnterpriseScoreDetail::getScoreId, enterpriseScore.getId())); + if (num == 0) { + enterpriseScoreService.removeById(enterpriseScore.getId()); + } + } return true; }