浏览代码

Merge remote-tracking branch 'origin/zdsz3.0' into zdsz3.0

刘浩男 1 年之前
父节点
当前提交
88de8920e2

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringInfrastructureController.java

@@ -34,7 +34,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
 @Validated
 @RequiredArgsConstructor
 @RestController
-@RequestMapping("/system/engineeringInfrastructure")
+@RequestMapping("/zdsz/engineeringInfrastructure")
 public class ZEngineeringInfrastructureController extends BaseController {
 
     private final IZEngineeringInfrastructureService iZEngineeringInfrastructureService;

+ 2 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringInfoService.java

@@ -1,6 +1,7 @@
 package com.ruoyi.zdsz.service;
 
 import com.ruoyi.zdsz.domain.ZEngineeringInfo;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringMaterialBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.domain.vo.ZEngineeringInfoVo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
@@ -69,5 +70,6 @@ public interface IZEngineeringInfoService {
      */
     Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
     Boolean delete(ZEngineeringNodeBo bo);
+    List<ZEngineeringMaterialBo> getzEngineeringMaterialBoList(ZEngineeringNodeBo bo);
 
 }

+ 3 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZMaterialStatisticsService.java

@@ -1,6 +1,8 @@
 package com.ruoyi.zdsz.service;
 
 import com.ruoyi.zdsz.domain.ZMaterialStatistics;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.domain.vo.ZMaterialStatisticsVo;
 import com.ruoyi.zdsz.domain.bo.ZMaterialStatisticsBo;
 import com.ruoyi.common.core.page.TableDataInfo;
@@ -36,6 +38,7 @@ public interface IZMaterialStatisticsService {
      * 新增用料统计
      */
     Boolean insertByBo(ZMaterialStatisticsBo bo);
+    Boolean insert(ZEngineeringCivilBo bo);
 
     /**
      * 修改用料统计

+ 8 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringCivilServiceImpl.java

@@ -15,6 +15,7 @@ import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.service.IZEngineeringInfoService;
 import com.ruoyi.zdsz.service.IZEngineeringNodeService;
+import com.ruoyi.zdsz.service.IZMaterialStatisticsService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -26,6 +27,7 @@ import com.ruoyi.zdsz.service.IZEngineeringCivilService;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
 
+import javax.annotation.Resource;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -45,6 +47,8 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
 
     @Autowired
     private IZEngineeringNodeService izEngineeringNodeService;
+    @Resource
+    private IZMaterialStatisticsService izMaterialStatisticsService;
 
     /**
      * 查询民用工程
@@ -137,6 +141,10 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         lqw.eq(StringUtils.isNotBlank(bo.getHouseId()), ZEngineeringCivil::getHouseId, bo.getHouseId());
         lqw.eq(StringUtils.isNotBlank(bo.getEnginCycle()), ZEngineeringCivil::getEnginCycle, bo.getEnginCycle());
         ZEngineeringCivilVo zEngineeringCivilVo = baseMapper.selectVoOne(lqw);
+        if(bo.getEnginType().equals("室内工程"))
+        {
+            izMaterialStatisticsService.insert(bo);
+        }
         if (ObjectUtils.isEmpty(zEngineeringCivilVo)) {
             boolean flag = baseMapper.insert(add) > 0;
             if (flag) {

+ 22 - 5
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java

@@ -227,10 +227,27 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
     public Boolean delete(ZEngineeringNodeBo bo) {
         LambdaQueryWrapper<ZEngineeringInfo> lqw = Wrappers.lambdaQuery();
         lqw.eq(StringUtils.isNotBlank(bo.getId()), ZEngineeringInfo::getEngInfoId, bo.getId());
-        ZEngineeringInfo zEngineeringInfo= baseMapper.selectOne(lqw);
-        ZEngineeringInfoBo zEngineeringInfobo = BeanUtil.toBean(zEngineeringInfo, ZEngineeringInfoBo.class);
-        izEngiineeringPhotoService.delete(zEngineeringInfobo);
-        izEngineeringMaterialService.delete(zEngineeringInfobo);
-        return baseMapper.deleteById(zEngineeringInfo.getId())>0;
+        List<ZEngineeringInfo> zEngineeringInfo= baseMapper.selectList(lqw);
+        zEngineeringInfo.stream().forEach(item->{
+            ZEngineeringInfoBo zEngineeringInfobo = BeanUtil.toBean(item, ZEngineeringInfoBo.class);
+            izEngiineeringPhotoService.delete(zEngineeringInfobo);
+            izEngineeringMaterialService.delete(zEngineeringInfobo);
+            baseMapper.deleteById(item.getId());
+        });
+        return null;
+    }
+
+    @Override
+    public List<ZEngineeringMaterialBo> getzEngineeringMaterialBoList(ZEngineeringNodeBo bo) {
+        LambdaQueryWrapper<ZEngineeringInfo> lqw = Wrappers.lambdaQuery();
+        lqw.eq(StringUtils.isNotBlank(bo.getId()), ZEngineeringInfo::getEngInfoId, bo.getId());
+        List<ZEngineeringInfo> zEngineeringInfo= baseMapper.selectList(lqw);
+        List<ZEngineeringMaterialBo> zEngineeringMaterialBoList=new ArrayList<>();
+
+        zEngineeringInfo.stream().forEach(item->{
+            ZEngineeringInfoBo zEngineeringInfoBo = BeanUtil.toBean(item, ZEngineeringInfoBo.class);
+            zEngineeringMaterialBoList.addAll(izEngineeringMaterialService.query(zEngineeringInfoBo));
+        });
+        return zEngineeringMaterialBoList;
     }
 }

+ 0 - 1
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringNodeServiceImpl.java

@@ -218,7 +218,6 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
         }
         bo.getzEngineeringInfoBo().setEngInfoId(add.getId());
         bo.getzEngineeringInfoBo().setCreateTime(bo.getCreateTime());
-
         izEngineeringInfoService.insert(bo.getzEngineeringInfoBo());
         return add;
     }

+ 46 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZMaterialStatisticsServiceImpl.java

@@ -1,13 +1,20 @@
 package com.ruoyi.zdsz.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.BeanCopyUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.core.domain.PageQuery;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zdsz.domain.ZEngineeringCivil;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
+import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
+import com.ruoyi.zdsz.service.IZEngineeringInfoService;
 import lombok.RequiredArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import com.ruoyi.zdsz.domain.bo.ZMaterialStatisticsBo;
 import com.ruoyi.zdsz.domain.vo.ZMaterialStatisticsVo;
@@ -15,9 +22,11 @@ import com.ruoyi.zdsz.domain.ZMaterialStatistics;
 import com.ruoyi.zdsz.mapper.ZMaterialStatisticsMapper;
 import com.ruoyi.zdsz.service.IZMaterialStatisticsService;
 
+import javax.annotation.Resource;
 import java.util.List;
 import java.util.Map;
 import java.util.Collection;
+import java.util.concurrent.atomic.AtomicInteger;
 
 /**
  * 用料统计Service业务层处理
@@ -30,6 +39,8 @@ import java.util.Collection;
 public class ZMaterialStatisticsServiceImpl implements IZMaterialStatisticsService {
 
     private final ZMaterialStatisticsMapper baseMapper;
+    @Resource
+    private IZEngineeringInfoService izEngineeringInfoService;
 
     /**
      * 查询用料统计
@@ -86,6 +97,41 @@ public class ZMaterialStatisticsServiceImpl implements IZMaterialStatisticsServi
         return flag;
     }
 
+    @Override
+    @Async("threadPoolTaskExecutor")
+    public Boolean insert(ZEngineeringCivilBo bo) {
+//      List<ZEngineeringMaterialBo> zMaterialStatisticsList= izEngineeringInfoService.getzEngineeringMaterialBoList(bo);
+        if (bo.getzEngineeringNodeBo().getzEngineeringInfoBo().getzEngineeringMaterialBo().size()>0)
+        {
+            bo.getzEngineeringNodeBo().getzEngineeringInfoBo().getzEngineeringMaterialBo().stream().forEach(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());
+                ZMaterialStatistics zMaterialStatistics= baseMapper.selectOne(lqw);
+
+                if (zMaterialStatistics!=null)
+                {
+                    zMaterialStatistics.setRealityQuality(String.valueOf(Math.toIntExact(zMaterialStatistics.getRealitySize())+item.getNumber()));
+                    baseMapper.updateById(zMaterialStatistics);
+                }else {
+                    ZMaterialStatistics zMaterialStatistics1=new ZMaterialStatistics();
+                    BeanUtils.copyProperties(item,zMaterialStatistics1);
+                    zMaterialStatistics1.setRealityQuality(item.getMaterialQuality());
+                    zMaterialStatistics1.setRealitySpecifications(item.getMaterialQuality());
+                    zMaterialStatistics1.setRealitySize(item.getNumber());
+                    zMaterialStatistics1.setEnginCycle(bo.getEnginCycle());
+                    baseMapper.insert(zMaterialStatistics1);
+                }
+
+            });
+        }
+        return null;
+    }
+
     /**
      * 修改用料统计
      */