wangtong 1 рік тому
батько
коміт
e20be8b4f8

+ 60 - 30
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZMaterialStatisticsServiceImpl.java

@@ -103,40 +103,70 @@ public class ZMaterialStatisticsServiceImpl implements IZMaterialStatisticsServi
     @Async("threadPoolTaskExecutor")
     public Boolean insert(ZEngineeringCivilBo bo) {
 //      List<ZEngineeringMaterialBo> zMaterialStatisticsList= izEngineeringInfoService.getzEngineeringMaterialBoList(bo);
-        bo.getzEngineeringNodeBoList().stream().forEach(item2->{
-        if (item2.getzEngineeringInfoBo().getzEngineeringMaterialBo().size()>0)
-        {
-            item2.getzEngineeringInfoBo().getzEngineeringMaterialBo().stream().forEach(item->{
-                if (!ObjectUtils.isEmpty(item))
-                {
-                LambdaQueryWrapper<ZMaterialStatistics> lqw = Wrappers.lambdaQuery();
-                lqw.eq(StringUtils.isNotBlank(bo.getAreaId()), ZMaterialStatistics::getAreaId, bo.getAreaId());
-                lqw.eq(StringUtils.isNotBlank(bo.getBuildingId()), ZMaterialStatistics::getBuildingId, bo.getBuildingId());
-                lqw.eq(StringUtils.isNotBlank(bo.getUnitId()), ZMaterialStatistics::getUnitId, bo.getUnitId());
-                lqw.eq(StringUtils.isNotBlank(bo.getHouseId()), ZMaterialStatistics::getHouseId, bo.getHouseId());
-                lqw.eq(StringUtils.isNotBlank(item.getMaterialQuality()), ZMaterialStatistics::getRealityQuality, item.getMaterialQuality());
-                lqw.eq(StringUtils.isNotBlank(item.getSpecifications()), ZMaterialStatistics::getRealitySpecifications, item.getSpecifications());
-                lqw.eq(StringUtils.isNotBlank(bo.getEnginCycle()), ZMaterialStatistics::getEnginCycle, bo.getEnginCycle());
-                ZMaterialStatistics zMaterialStatistics= baseMapper.selectOne(lqw);
-                if (zMaterialStatistics!=null)
-                {
-                    zMaterialStatistics.setRealitySize(Math.toIntExact(zMaterialStatistics.getRealitySize())+item.getNumber());
-                    baseMapper.updateById(zMaterialStatistics);
-                }else {if (!ObjectUtils.isEmpty(item.getMaterialQuality())&&!ObjectUtils.isEmpty(item.getSpecifications())) {
-                    ZMaterialStatistics zMaterialStatistics1 = new ZMaterialStatistics();
-                    BeanUtils.copyProperties(bo, zMaterialStatistics1);
-                    zMaterialStatistics1.setRealityQuality(item.getMaterialQuality());
-                    zMaterialStatistics1.setRealitySpecifications(item.getSpecifications());
-                    zMaterialStatistics1.setRealitySize(item.getNumber());
-                    zMaterialStatistics1.setEnginCycle(bo.getEnginCycle());
-                    baseMapper.insert(zMaterialStatistics1);
-                }
-                }
+        if (ObjectUtils.isEmpty(bo.getzEngineeringNodeBo())) {
+            bo.getzEngineeringNodeBoList().stream().forEach(item2 -> {
+                if (item2.getzEngineeringInfoBo().getzEngineeringMaterialBo().size() > 0) {
+                    item2.getzEngineeringInfoBo().getzEngineeringMaterialBo().stream().forEach(item -> {
+                        if (!ObjectUtils.isEmpty(item)) {
+                            LambdaQueryWrapper<ZMaterialStatistics> lqw = Wrappers.lambdaQuery();
+                            lqw.eq(StringUtils.isNotBlank(bo.getAreaId()), ZMaterialStatistics::getAreaId, bo.getAreaId());
+                            lqw.eq(StringUtils.isNotBlank(bo.getBuildingId()), ZMaterialStatistics::getBuildingId, bo.getBuildingId());
+                            lqw.eq(StringUtils.isNotBlank(bo.getUnitId()), ZMaterialStatistics::getUnitId, bo.getUnitId());
+                            lqw.eq(StringUtils.isNotBlank(bo.getHouseId()), ZMaterialStatistics::getHouseId, bo.getHouseId());
+                            lqw.eq(StringUtils.isNotBlank(item.getMaterialQuality()), ZMaterialStatistics::getRealityQuality, item.getMaterialQuality());
+                            lqw.eq(StringUtils.isNotBlank(item.getSpecifications()), ZMaterialStatistics::getRealitySpecifications, item.getSpecifications());
+                            lqw.eq(StringUtils.isNotBlank(bo.getEnginCycle()), ZMaterialStatistics::getEnginCycle, bo.getEnginCycle());
+                            ZMaterialStatistics zMaterialStatistics = baseMapper.selectOne(lqw);
+                            if (zMaterialStatistics != null) {
+                                zMaterialStatistics.setRealitySize(Math.toIntExact(zMaterialStatistics.getRealitySize()) + item.getNumber());
+                                baseMapper.updateById(zMaterialStatistics);
+                            } else {
+                                if (!ObjectUtils.isEmpty(item.getMaterialQuality()) && !ObjectUtils.isEmpty(item.getSpecifications())) {
+                                    ZMaterialStatistics zMaterialStatistics1 = new ZMaterialStatistics();
+                                    BeanUtils.copyProperties(bo, zMaterialStatistics1);
+                                    zMaterialStatistics1.setRealityQuality(item.getMaterialQuality());
+                                    zMaterialStatistics1.setRealitySpecifications(item.getSpecifications());
+                                    zMaterialStatistics1.setRealitySize(item.getNumber());
+                                    zMaterialStatistics1.setEnginCycle(bo.getEnginCycle());
+                                    baseMapper.insert(zMaterialStatistics1);
+                                }
+                            }
+                        }
+
+                    });
                 }
 
             });
+        }else
+        {
+            bo.getzEngineeringNodeBo().getzEngineeringInfoBo().getzEngineeringMaterialBo().stream().forEach(item->{
+                if (!ObjectUtils.isEmpty(item)) {
+                    LambdaQueryWrapper<ZMaterialStatistics> lqw = Wrappers.lambdaQuery();
+                    lqw.eq(StringUtils.isNotBlank(bo.getAreaId()), ZMaterialStatistics::getAreaId, bo.getAreaId());
+                    lqw.eq(StringUtils.isNotBlank(bo.getBuildingId()), ZMaterialStatistics::getBuildingId, bo.getBuildingId());
+                    lqw.eq(StringUtils.isNotBlank(bo.getUnitId()), ZMaterialStatistics::getUnitId, bo.getUnitId());
+                    lqw.eq(StringUtils.isNotBlank(bo.getHouseId()), ZMaterialStatistics::getHouseId, bo.getHouseId());
+                    lqw.eq(StringUtils.isNotBlank(item.getMaterialQuality()), ZMaterialStatistics::getRealityQuality, item.getMaterialQuality());
+                    lqw.eq(StringUtils.isNotBlank(item.getSpecifications()), ZMaterialStatistics::getRealitySpecifications, item.getSpecifications());
+                    lqw.eq(StringUtils.isNotBlank(bo.getEnginCycle()), ZMaterialStatistics::getEnginCycle, bo.getEnginCycle());
+                    ZMaterialStatistics zMaterialStatistics = baseMapper.selectOne(lqw);
+                    if (zMaterialStatistics != null) {
+                        zMaterialStatistics.setRealitySize(Math.toIntExact(zMaterialStatistics.getRealitySize()) + item.getNumber());
+                        baseMapper.updateById(zMaterialStatistics);
+                    } else {
+                        if (!ObjectUtils.isEmpty(item.getMaterialQuality()) && !ObjectUtils.isEmpty(item.getSpecifications())) {
+                            ZMaterialStatistics zMaterialStatistics1 = new ZMaterialStatistics();
+                            BeanUtils.copyProperties(bo, zMaterialStatistics1);
+                            zMaterialStatistics1.setRealityQuality(item.getMaterialQuality());
+                            zMaterialStatistics1.setRealitySpecifications(item.getSpecifications());
+                            zMaterialStatistics1.setRealitySize(item.getNumber());
+                            zMaterialStatistics1.setEnginCycle(bo.getEnginCycle());
+                            baseMapper.insert(zMaterialStatistics1);
+                        }
+                    }
+                }
+            });
         }
-        });
         return null;
     }