邱宇豪
2023-11-03 2896d6fa447cf6a678ba27ba2e19224379f14dd4
hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/pipeoutplan/service/impl/PipeOutPlanServiceImpl.java
@@ -16,6 +16,7 @@
import java.util.List;
import java.util.Map;
import java.util.stream.Stream;
/**
 * @Author QiuYuHao
@@ -32,18 +33,18 @@
   @Transactional(rollbackFor = Exception.class)
   public BasicResult insert(PipeOutPlanEntity pipeOutPlanEntity) {
      PipeOutPlanEntity isExit = pipeOutPlanMapper.selectInfoByProIdAndYear(pipeOutPlanEntity.getProId(), pipeOutPlanEntity.getPlanYear());
      if (isExit == null){
      if (isExit != null){
         return BasicResult.faild("500","同一项目、年份有且只有一个计划",null);
      }
      String planOutId = UUIDUtils.create();
      pipeOutPlanEntity.setPlanOutId(planOutId);
      pipeOutPlanMapper.insert(pipeOutPlanEntity);
      List<PipeOutPlanMothEntity> monthList = pipeOutPlanEntity.getMonthList();
      monthList.forEach(vo->{
      for (PipeOutPlanMothEntity vo : monthList) {
         vo.setPipeOutPlanId(planOutId);
         vo.setId(UUIDUtils.create());
         pipeOutPlanMapper.insertMoth(vo);
      });
      }
      return BasicResult.success();
   }
@@ -59,18 +60,19 @@
   @Transactional(rollbackFor = Exception.class)
   public BasicResult update(PipeOutPlanEntity pipeOutPlanEntity) {
      PipeOutPlanEntity isExit = pipeOutPlanMapper.selectInfoByProIdAndYear(pipeOutPlanEntity.getProId(), pipeOutPlanEntity.getPlanYear());
      if (isExit == null){
      if (!pipeOutPlanEntity.getPlanOutId().equals(isExit.getPlanOutId()) && isExit != null){
         return BasicResult.faild("500","同一项目、年份有且只有一个计划",null);
      }
      pipeOutPlanMapper.update(pipeOutPlanEntity);
      String planOutId = pipeOutPlanEntity.getPlanOutId();
      pipeOutPlanMapper.deleteMoth(planOutId);
      List<PipeOutPlanMothEntity> monthList = pipeOutPlanEntity.getMonthList();
      monthList.forEach(vo->{
      for (PipeOutPlanMothEntity vo : monthList) {
         vo.setPipeOutPlanId(planOutId);
         vo.setId(UUIDUtils.create());
         pipeOutPlanMapper.insertMoth(vo);
      });      return BasicResult.success();
      }
      return BasicResult.success();
   }
   @Override
@@ -92,7 +94,15 @@
      all.forEach(obj->{
         String proId = obj.getProId();
         Integer planYear = obj.getPlanYear();
         obj.setMonthList(pipeOutPlanMapper.findMothListByProIdAndYear(proId,planYear.toString()));
         String planOutId = obj.getPlanOutId();
         List<PipeOutPlanMothEntity> mothListByProIdAndYear = pipeOutPlanMapper.findMothListByProIdAndYear(proId, planYear.toString(), planOutId);
         Integer completePlanProductNum = 0;
         for (PipeOutPlanMothEntity pipeOutPlanMothEntity : mothListByProIdAndYear) {
            Integer completePlanProduct = pipeOutPlanMothEntity.getCompletePlanProduct();
            completePlanProductNum+=completePlanProduct;
         }
         obj.setMonthList(mothListByProIdAndYear);
         obj.setCompletePipeNum(completePlanProductNum);
      });
      return BasicResult.success(new PageInfo<>(all));
   }