Explorar el Código

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

qinhouyu hace 1 año
padre
commit
17ce234bac

+ 17 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/ZEngineeringIndustry.java

@@ -5,9 +5,13 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.Version;
 import com.ruoyi.common.core.domain.BaseEntity;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import javax.validation.constraints.NotBlank;
+
 /**
  * 工业工程|市政工程对象 z_engineering_industry
  *
@@ -71,6 +75,17 @@ public class ZEngineeringIndustry extends BaseEntity {
      */
     private String type;
     /**
+     * 工程名称
+     */
+    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String enginName;
+
+    /**
+     * 工程分类
+     */
+    @NotBlank(message = "工程分类不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String enginClassification;
+    /**
      * 乐观锁
      */
     @Version
@@ -85,4 +100,6 @@ public class ZEngineeringIndustry extends BaseEntity {
     @TableLogic
     private String delFlag;
 
+
+
 }

+ 14 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/bo/ZEngineeringIndustryBo.java

@@ -86,6 +86,20 @@ public class ZEngineeringIndustryBo extends BaseEntity {
     private String supervisionPhone;
 
     /**
+     * 工程名称
+     */
+    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String enginName;
+
+    /**
+     * 工程分类
+     */
+    @NotBlank(message = "工程分类不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String enginClassification;
+
+
+
+    /**
      * 类型(工业工程|市政工程)
      */
     @NotBlank(message = "类型(工业工程|市政工程)不能为空", groups = { AddGroup.class, EditGroup.class })

+ 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) {

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

@@ -89,6 +89,8 @@ public class ZEngineeringIndustryServiceImpl implements IZEngineeringIndustrySer
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<ZEngineeringIndustry> lqw = Wrappers.lambdaQuery();
         lqw.eq(StringUtils.isNotBlank(bo.getEnginType()), ZEngineeringIndustry::getEnginType, bo.getEnginType());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginName()), ZEngineeringIndustry::getEnginName, bo.getEnginName());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginClassification()), ZEngineeringIndustry::getEnginClassification, bo.getEnginClassification());
         lqw.like(StringUtils.isNotBlank(bo.getConstructUnit()), ZEngineeringIndustry::getConstructUnit, bo.getConstructUnit());
         lqw.eq(StringUtils.isNotBlank(bo.getProjectHead()), ZEngineeringIndustry::getProjectHead, bo.getProjectHead());
         lqw.eq(StringUtils.isNotBlank(bo.getSceneHead()), ZEngineeringIndustry::getSceneHead, bo.getSceneHead());

+ 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;
+    }
+
     /**
      * 修改用料统计
      */