Prechádzať zdrojové kódy

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

# Conflicts:
#	ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java
刘浩男 1 rok pred
rodič
commit
78be235101
28 zmenil súbory, kde vykonal 372 pridanie a 186 odobranie
  1. 18 10
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringCivilController.java
  2. 13 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringPipeJackingController.java
  3. 17 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringReviewController.java
  4. 7 7
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZMaterialStatisticsController.java
  5. 2 2
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZUnitController.java
  6. 1 1
      ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
  7. 7 6
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/bo/ZEngineeringDangerousBo.java
  8. 10 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/bo/ZEngineeringInfrastructureBo.java
  9. 17 4
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/MaterialStatisticsListVo.java
  10. 2 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/ZEngineeringInfrastructureSelectVo.java
  11. 11 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/ZEngineeringInfrastructureVo.java
  12. 3 5
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZEngineeringCivilMapper.java
  13. 1 1
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZUnitMapper.java
  14. 2 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringCivilService.java
  15. 8 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringNodeService.java
  16. 2 0
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringPipeJackingService.java
  17. 1 1
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZUnitService.java
  18. 37 5
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringCivilServiceImpl.java
  19. 16 16
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringDangerousServiceImpl.java
  20. 25 19
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java
  21. 83 22
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfrastructureServiceImpl.java
  22. 7 6
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringMaterialServiceImpl.java
  23. 19 7
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringNodeServiceImpl.java
  24. 38 59
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringPipeJackingServiceImpl.java
  25. 2 2
      ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZUnitServiceImpl.java
  26. 11 1
      ruoyi-zdsz/src/main/resources/mapper/zdsz/ZEngineeringCivilMapper.xml
  27. 12 8
      ruoyi-zdsz/src/main/resources/mapper/zdsz/ZMaterialStatisticsMapper.xml
  28. 0 3
      ruoyi-zdsz/src/main/resources/mapper/zdsz/ZUnitMapper.xml

+ 18 - 10
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringCivilController.java

@@ -102,16 +102,6 @@ public class ZEngineeringCivilController extends BaseController {
     public R<Void> add(@Validated(AddGroup.class) @RequestBody ZEngineeringCivilBo bo) {
         return toAjax(iZEngineeringCivilService.insertByBo(bo));
     }
-    /**
-     * 新增民用工程
-     */
-    @SaCheckPermission("zdsz:engineeringCivil:add")
-    @Log(title = "民用工程", businessType = BusinessType.INSERT)
-    @RepeatSubmit()
-    @PostMapping("add")
-    public R<Void> addList(@Validated(AddGroup.class) @RequestBody ZEngineeringCivilBo bo) {
-        return toAjax(iZEngineeringCivilService.insertByBo(bo));
-    }
 
     /**
      * 修改民用工程
@@ -147,4 +137,22 @@ public class ZEngineeringCivilController extends BaseController {
     public TableDataInfo getAreaCompletionInformationList(ZEngineeringCivilBo bo,PageQuery pageQuery) {
         return iZEngineeringCivilService.getAreaCompletionInformationList(bo,pageQuery);
     }
+    @Log(title = "民用工程", businessType = BusinessType.DELETE)
+    @GetMapping("/getsumStatus")
+    public R getsumStatus(ZEngineeringCivilBo bo) {
+        return R.ok(iZEngineeringCivilService.getsumStatus(bo));
+    }
+
+    /**
+     * 批量审核
+     * @param bo
+     * @return
+     */
+    @Log(title = "民用工程", businessType = BusinessType.OTHER)
+    @GetMapping("/batchReview")
+    public R BatchReview(ZEngineeringCivilBo bo) {
+        return R.ok(iZEngineeringCivilService.getsumStatus(bo));
+    }
+
+
 }

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

@@ -58,7 +58,7 @@ public class ZEngineeringPipeJackingController extends BaseController {
      * @param bo
      * @return
      */
-    @GetMapping("/nameList")
+    @GetMapping("/queryListNew")
     public R<List<Map<String,Object>>> nameList(ZEngineeringPipeJackingBo bo) {
         return R.ok(iZEngineeringPipeJackingService.nameList(bo));
     }
@@ -114,6 +114,18 @@ public class ZEngineeringPipeJackingController extends BaseController {
     }
 
     /**
+     * 新增顶管工程App
+     */
+    @SaCheckPermission("zdsz:engineeringPipeJacking:add")
+    @Log(title = "顶管工程", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping("/AppAdd")
+    public R<Void> addApp(@Validated(AddGroup.class) @RequestBody ZEngineeringPipeJackingBo bo) {
+        bo.setCreateTime(new Date());
+        return toAjax(iZEngineeringPipeJackingService.insertByBoApp(bo));
+    }
+
+    /**
      * 修改顶管工程
      */
     @SaCheckPermission("zdsz:engineeringPipeJacking:edit")

+ 17 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringReviewController.java

@@ -4,8 +4,12 @@ import java.util.List;
 import java.util.Arrays;
 import java.util.concurrent.TimeUnit;
 
+import com.dtflys.forest.annotation.GetRequest;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
+import com.ruoyi.zdsz.service.IZEngineeringNodeService;
 import lombok.RequiredArgsConstructor;
+
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.constraints.*;
 import cn.dev33.satoken.annotation.SaCheckPermission;
@@ -39,6 +43,8 @@ import com.ruoyi.common.core.page.TableDataInfo;
 public class ZEngineeringReviewController extends BaseController {
 
     private final IZEngineeringReviewService iZEngineeringReviewService;
+   @Resource
+    private IZEngineeringNodeService izEngineeringNodeService;
 
     /**
      * 查询工程审核列表
@@ -105,4 +111,15 @@ public class ZEngineeringReviewController extends BaseController {
                           @PathVariable String[] ids) {
         return toAjax(iZEngineeringReviewService.deleteWithValidByIds(Arrays.asList(ids), true));
     }
+    /**
+     * 批量审核
+     *
+     * @param ids 主键串
+     */
+    //@SaCheckPermission("zdsz:engineeringReview:remove")
+    @Log(title = "工程审核", businessType = BusinessType.DELETE)
+    @GetMapping("/ZEngineeringReview")
+    public R ZEngineeringReview(ZEngineeringNodeBo bo) {
+        return R.ok(izEngineeringNodeService.ZEngineeringReview(bo));
+    }
 }

+ 7 - 7
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZMaterialStatisticsController.java

@@ -53,13 +53,13 @@ public class ZMaterialStatisticsController extends BaseController {
     /**
      * 导出用料统计列表
      */
-//    @SaCheckPermission("zdsz:materialStatistics:export")
-//    @Log(title = "用料统计", businessType = BusinessType.EXPORT)
-//    @PostMapping("/export")
-//    public void export(ZMaterialStatisticsBo bo, HttpServletResponse response) {
-//        List<MaterialStatisticsListVo> list = iZMaterialStatisticsService.queryList(bo);
-//        ExcelUtil.exportExcel(list, "用料统计", ZMaterialStatisticsVo.class, response);
-//    }
+    @SaCheckPermission("zdsz:materialStatistics:export")
+    @Log(title = "用料统计", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(ZMaterialStatisticsBo bo, HttpServletResponse response) {
+        List<MaterialStatisticsListVo> list = iZMaterialStatisticsService.queryList(bo);
+        ExcelUtil.exportExcel(list, "用料统计", MaterialStatisticsListVo.class, response);
+    }
 
     /**
      * 获取用料统计详细信息

+ 2 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZUnitController.java

@@ -51,8 +51,8 @@ public class ZUnitController extends BaseController {
      * @return
      */
     @GetMapping("/getUnitList")
-    public R getUnitList(@RequestParam("areaId") String areaId, @RequestParam("buildingId") String buildingId) {
-        return R.ok(iZUnitService.getUnitList(areaId, buildingId));
+    public R getUnitList(@RequestParam("buildingId") String buildingId) {
+        return R.ok(iZUnitService.getUnitList(buildingId));
     }
 
     /**

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java

@@ -30,7 +30,7 @@ public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
                 Date current = ObjectUtil.isNotNull(baseEntity.getCreateTime())
                     ? baseEntity.getCreateTime() : new Date();
                 baseEntity.setCreateTime(current);
-                baseEntity.setUpdateTime(current);
+                //baseEntity.setUpdateTime(current);
                 String username = StringUtils.isNotBlank(baseEntity.getCreateBy())
                     ? baseEntity.getCreateBy() : getLoginUsername();
                 // 当前已登录 且 创建人为空 则填充

+ 7 - 6
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/bo/ZEngineeringDangerousBo.java

@@ -2,6 +2,7 @@ package com.ruoyi.zdsz.domain.bo;
 
 import com.ruoyi.common.core.validate.AddGroup;
 import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.zdsz.domain.vo.ZEngiineeringPhotoVo;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import javax.validation.constraints.*;
@@ -244,13 +245,13 @@ public class ZEngineeringDangerousBo extends BaseEntity {
         this.zEngineeringNodeBo = zEngineeringNodeBo;
     }
 
-    public List<ZFileBo> getFiles() {
-        return files;
-    }
+    private List<ZEngiineeringPhotoVo> pics;
 
-    public void setFiles(List<ZFileBo> files) {
-        this.files = files;
+    public List<ZEngiineeringPhotoVo> getPics() {
+        return pics;
     }
 
-    private List<ZFileBo> files;
+    public void setPics(List<ZEngiineeringPhotoVo> pics) {
+        this.pics = pics;
+    }
 }

+ 10 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/bo/ZEngineeringInfrastructureBo.java

@@ -101,4 +101,14 @@ public class ZEngineeringInfrastructureBo extends BaseEntity {
     public void setzEngineeringNodeBoList(List<ZEngineeringNodeBo> zEngineeringNodeBoList) {
         this.zEngineeringNodeBoList = zEngineeringNodeBoList;
     }
+
+    private List<ZFileBo> files;
+
+    public List<ZFileBo> getFiles() {
+        return files;
+    }
+
+    public void setFiles(List<ZFileBo> files) {
+        this.files = files;
+    }
 }

+ 17 - 4
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/MaterialStatisticsListVo.java

@@ -1,10 +1,21 @@
 package com.ruoyi.zdsz.domain.vo;
 
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
 import lombok.Data;
 
 @Data
+@ExcelIgnoreUnannotated
 public class MaterialStatisticsListVo {
+//    @ExcelProperty(value = "行政区")
+//    @ExcelDictFormat(dictType = "district")
+//    private String district;
+    /**
+     * 工程周期
+     */
+    @ExcelProperty(value = "小区名称")
+    private String areaName;
     /**
      * 预估材质
      */
@@ -14,24 +25,24 @@ public class MaterialStatisticsListVo {
     /**
      * 预估规格
      */
-    @ExcelProperty(value = "规格")
+    @ExcelProperty(value = "规格用料")
     private String estimatedSpecifications;
 
     /**
      * 预估尺寸
      */
-    @ExcelProperty(value = "预估尺寸")
+    @ExcelProperty(value = "预估用料")
     private Long estimatedSize;
     /**
      * 实际材质
      */
-    @ExcelProperty(value = "材质")
+//    @ExcelProperty(value = "材质")
     private String realityQuality;
 
     /**
      * 实际规格
      */
-    @ExcelProperty(value = "规格")
+//    @ExcelProperty(value = "规格")
     private String realitySpecifications;
 
     /**
@@ -45,4 +56,6 @@ public class MaterialStatisticsListVo {
      */
     @ExcelProperty(value = "工程周期")
     private String enginCycle;
+
+
 }

+ 2 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/ZEngineeringInfrastructureSelectVo.java

@@ -2,6 +2,7 @@ package com.ruoyi.zdsz.domain.vo;
 
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
+import com.fasterxml.jackson.annotation.JsonProperty;
 import com.ruoyi.common.core.domain.BaseEntity;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import lombok.Data;
@@ -32,5 +33,6 @@ public class ZEngineeringInfrastructureSelectVo implements Serializable {
      * 工程名称
      */
     @ExcelProperty(value = "工程名称")
+    @JsonProperty("name")
     private String enginName;
 }

+ 11 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/domain/vo/ZEngineeringInfrastructureVo.java

@@ -8,6 +8,7 @@ import com.ruoyi.common.annotation.ExcelDictFormat;
 import com.ruoyi.common.convert.ExcelDictConvert;
 import com.ruoyi.common.core.domain.BaseEntity;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
+import com.ruoyi.zdsz.service.IZEngiineeringPhotoService;
 import lombok.Data;
 import java.util.Date;
 
@@ -102,4 +103,14 @@ public class ZEngineeringInfrastructureVo extends BaseEntity implements Serializ
     public void setzEngineeringNodeBo(ZEngineeringNodeBo zEngineeringNodeBo) {
         this.zEngineeringNodeBo = zEngineeringNodeBo;
     }
+
+    private List<ZEngiineeringPhotoVo> pics;
+
+    public List<ZEngiineeringPhotoVo> getPics() {
+        return pics;
+    }
+
+    public void setPics(List<ZEngiineeringPhotoVo> pics) {
+        this.pics = pics;
+    }
 }

+ 3 - 5
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZEngineeringCivilMapper.java

@@ -5,11 +5,8 @@ import com.ruoyi.common.core.domain.PageQuery;
 import com.ruoyi.zdsz.domain.ZEngineeringCivil;
 import com.ruoyi.zdsz.domain.bo.ZBuildingBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringCivilBo;
-import com.ruoyi.zdsz.domain.vo.ZBuildingVo;
-import com.ruoyi.zdsz.domain.vo.ZEngineeringCivilVo;
+import com.ruoyi.zdsz.domain.vo.*;
 import com.ruoyi.common.core.mapper.BaseMapperPlus;
-import com.ruoyi.zdsz.domain.vo.areaWillDoneVo;
-import com.ruoyi.zdsz.domain.vo.roomStatusVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -26,6 +23,7 @@ public interface ZEngineeringCivilMapper extends BaseMapperPlus<ZEngineeringCivi
     Page<ZEngineeringCivilVo> queryPageList(@Param("p") ZEngineeringCivilBo bo, Page<?> page);
 
     List<roomStatusVo> getObtainRoomcCompletionInformationList(ZEngineeringCivilBo bo);
-    List<areaWillDoneVo> getAreaCompletionInformationList(List idList,String enginCycle);
+    List<areaWillDoneVo> getAreaCompletionInformationList(@Param("idList") List idList,@Param("enginCycle")String enginCycle);
+    areaStatusVo getsumStatus(String enginCycle);
 
 }

+ 1 - 1
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZUnitMapper.java

@@ -20,5 +20,5 @@ import java.util.List;
 public interface ZUnitMapper extends BaseMapperPlus<ZUnitMapper, ZUnit, ZUnitVo> {
     Page<ZUnitVo> getPageList(@Param("p") ZUnitBo bo, Page<?> page);
 
-    List<ZUnitVo> getUnitList(@Param("areaId")String areaId,@Param("buildingId") String buildingId);
+    List<ZUnitVo> getUnitList(@Param("buildingId") String buildingId);
 }

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

@@ -59,4 +59,6 @@ public interface IZEngineeringCivilService {
     List getObtainRoomcCompletionInformationList(ZEngineeringCivilBo bo);
 
     TableDataInfo<areaStatusVo> getAreaCompletionInformationList(ZEngineeringCivilBo bo,PageQuery po);
+    areaStatusVo getsumStatus(ZEngineeringCivilBo bo);
+    int   batchReview (ZEngineeringCivilBo bo);
 }

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

@@ -2,6 +2,7 @@ package com.ruoyi.zdsz.service;
 
 import com.ruoyi.common.core.domain.PageQuery;
 import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.zdsz.domain.ZEngineeringCivil;
 import com.ruoyi.zdsz.domain.ZEngineeringNode;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
 import com.ruoyi.zdsz.domain.vo.ZEngineeringNodeVo;
@@ -79,4 +80,11 @@ public interface IZEngineeringNodeService {
     Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
 
     String ZEngineeringReview(ZEngineeringNodeBo bo);
+
+    /**
+     * 批量审核
+     * @param zEngineeringCivilList
+     * @return
+     */
+     int batchReview(List<ZEngineeringCivil> zEngineeringCivilList);
 }

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

@@ -38,6 +38,8 @@ public interface IZEngineeringPipeJackingService {
      */
     Boolean insertByBo(ZEngineeringPipeJackingBo bo);
 
+    Boolean insertByBoApp(ZEngineeringPipeJackingBo bo);
+
     /**
      * 修改顶管工程
      */

+ 1 - 1
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZUnitService.java

@@ -21,7 +21,7 @@ public interface IZUnitService {
     /**
      * 单元下拉
      * */
-    List<ZUnitVo> getUnitList(String areaId,String buildingId);
+    List<ZUnitVo> getUnitList(String buildingId);
 
 
     /**

+ 37 - 5
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringCivilServiceImpl.java

@@ -168,8 +168,12 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         } else {
             if (ObjectUtils.isEmpty(bo.getzEngineeringNodeBo())) {
                 for (ZEngineeringNodeBo zEngineeringNodeBo : bo.getzEngineeringNodeBoList()) {
-                    zEngineeringNodeBo.setCivliId(add.getId());
-                    zEngineeringNodeBo.setCreateTime(add.getCreateTime());
+                    zEngineeringNodeBo.setCivliId(zEngineeringCivilVo.getId());
+                    zEngineeringNodeBo.setCreateTime(zEngineeringCivilVo.getCreateTime());
+                    ZEngineeringNodeBo query = zEngineeringNodeService.query(zEngineeringNodeBo);
+                    if (!ObjectUtils.isEmpty(query)){
+                        zEngineeringNodeBo.setId(query.getId());
+                    }
                     zEngineeringNodeService.insert(zEngineeringNodeBo);
                 }
 
@@ -200,9 +204,11 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         if (flag) {
             ZEngineeringCivilVo zEngineeringCivilVo = baseMapper.selectVoById(update.getId());
             ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
-            zEngineeringNodeBo.setCivliId(zEngineeringCivilVo.getId());
-            zEngineeringNodeBo.setCreateTime(zEngineeringCivilVo.getCreateTime());
-            zEngineeringNodeService.update(zEngineeringNodeBo);
+            if (!ObjectUtils.isEmpty(zEngineeringNodeBo)){
+                zEngineeringNodeBo.setCivliId(zEngineeringCivilVo.getId());
+                zEngineeringNodeBo.setCreateTime(zEngineeringCivilVo.getCreateTime());
+                zEngineeringNodeService.update(zEngineeringNodeBo);
+            }
         }
         return flag;
     }
@@ -278,6 +284,8 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
     @Override
     public TableDataInfo<areaStatusVo> getAreaCompletionInformationList(ZEngineeringCivilBo bo,PageQuery po) {
         LambdaQueryWrapper<ZArea> lqw =Wrappers.lambdaQuery();
+        lqw.eq(StringUtils.isNotBlank(bo.getAreaId()), ZArea::getId, bo.getAreaId());
+        lqw.eq(StringUtils.isNotBlank(bo.getDistrict()), ZArea::getDistrict, bo.getDistrict());
         Page<ZBuildingBo> page = new Page<>(po.getPageNum(), po.getPageSize());
         Page<ZAreaVo> result = zAreaMapper.selectVoPage(po.build(),lqw);
          List<ZAreaVo> IdList= result.getRecords();
@@ -305,4 +313,28 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         page2.setRecords(areaList);
         return TableDataInfo.build(page2);
     }
+
+    @Override
+    public areaStatusVo getsumStatus(ZEngineeringCivilBo bo) {
+        areaStatusVo areaStatusVo=  baseMapper.getsumStatus(bo.getEnginCycle());
+        areaStatusVo.setNotstart(String.valueOf(Integer.parseInt(areaStatusVo.getNotstart())-Integer.parseInt(areaStatusVo.getWillDone())-Integer.parseInt(areaStatusVo.getDone())));
+        return areaStatusVo;
+    }
+
+    @Override
+    public int batchReview(ZEngineeringCivilBo bo) {
+        ZEngineeringCivil add = BeanUtil.toBean(bo, ZEngineeringCivil.class);
+        validEntityBeforeSave(add);
+        LambdaQueryWrapper<ZEngineeringCivil> lqw = Wrappers.lambdaQuery();
+//        lqw.eq(StringUtils.isNotBlank(bo.getAreaId()), ZEngineeringCivil::getAreaId, bo.getAreaId());
+//        lqw.eq(ZEngineeringCivil::getBuildingId, bo.getBuildingId());
+//        lqw.eq(ZEngineeringCivil::getUnitId, bo.getUnitId());
+//        lqw.eq(ZEngineeringCivil::getHouseId, bo.getHouseId());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginCycle()), ZEngineeringCivil::getEnginCycle, bo.getEnginCycle());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginClassification()), ZEngineeringCivil::getEnginClassification, bo.getEnginClassification());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginType()), ZEngineeringCivil::getEnginType, bo.getEnginType());
+        List<ZEngineeringCivil> zEngineeringCivilList=baseMapper.selectList(lqw);
+
+        return 0;
+    }
 }

+ 16 - 16
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringDangerousServiceImpl.java

@@ -116,10 +116,10 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
         ZEngineeringNode entity = izEngineeringNodeService.insert(bo.getzEngineeringNodeBo());
         if (!ObjectUtil.isEmpty(entity)) {
             List<ZEngiineeringPhoto> list = new ArrayList<>();
-            bo.getFiles().stream().forEach(o -> {
+            bo.getPics().stream().forEach(o -> {
                 ZEngiineeringPhoto pic = new ZEngiineeringPhoto();
                 pic.setParentId(bo.getId());
-                pic.setPicUrl(o.getUrl());
+                pic.setPicUrl(o.getPicUrl());
                 pic.setUpdateBy(String.valueOf(LoginHelper.getUserId()));
                 pic.setUpdateTime(new Date());
                 pic.setCreateTime(bo.getCreateTime());
@@ -159,12 +159,12 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
                 .collect(Collectors.toList());
 
             // 插入前端传来的新文件
-            for (ZFileBo pic : bo.getFiles()) {
-                if (!existingPhotos.contains(pic.getUrl())) {
+            for (ZEngiineeringPhotoVo pic : bo.getPics()) {
+                if (!existingPhotos.contains(pic.getPicUrl())) {
                     ZEngiineeringPhoto newPhoto = new ZEngiineeringPhoto();
                     newPhoto.setParentId(bo.getId());
-                    newPhoto.setPicUrl(pic.getUrl());
-                    newPhoto.setFileName(pic.getName());
+                    newPhoto.setPicUrl(pic.getPicUrl());
+                    newPhoto.setFileName(pic.getFileName());
                     newPhoto.setCreateBy(String.valueOf(LoginHelper.getUserId()));
                     newPhoto.setCreateTime(new Date());
                     list.add(newPhoto);
@@ -173,7 +173,7 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
 
             // 删除数据库中多余的文件
             List<String> photosToDelete = existingPhotos.stream()
-                .filter(pic -> !bo.getFiles().stream().map(ZFileBo::getUrl).collect(Collectors.toList()).contains(pic))
+                .filter(pic -> !bo.getPics().stream().map(ZEngiineeringPhotoVo::getPicUrl).collect(Collectors.toList()).contains(pic))
                 .collect(Collectors.toList());
             if (!photosToDelete.isEmpty()) {
                 photosToDelete.forEach(item -> {
@@ -242,13 +242,13 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
         if (flag) {
             bo.setId(add.getId());
         }
-        if (!bo.getFiles().isEmpty()) {
+        if (!bo.getPics().isEmpty()) {
             List<ZEngiineeringPhoto> list = new ArrayList<>();
-            bo.getFiles().stream().forEach(o -> {
+            bo.getPics().stream().forEach(o -> {
                 ZEngiineeringPhoto pic = new ZEngiineeringPhoto();
                 pic.setParentId(bo.getId());
-                pic.setPicUrl(o.getUrl());
-                pic.setFileName(o.getName());
+                pic.setPicUrl(o.getPicUrl());
+                pic.setFileName(o.getFileName());
                 pic.setCreateBy(String.valueOf(LoginHelper.getUserId()));
                 pic.setCreateTime(new Date());
                 pic.setUpdateBy(String.valueOf(LoginHelper.getUserId()));
@@ -281,12 +281,12 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
                 .collect(Collectors.toList());
 
             // 插入前端传来的新文件
-            for (ZFileBo pic : bo.getFiles()) {
-                if (!existingPhotos.contains(pic.getUrl())) {
+            for (ZEngiineeringPhotoVo pic : bo.getPics()) {
+                if (!existingPhotos.contains(pic.getPicUrl())) {
                     ZEngiineeringPhoto newPhoto = new ZEngiineeringPhoto();
                     newPhoto.setParentId(bo.getId());
-                    newPhoto.setPicUrl(pic.getUrl());
-                    newPhoto.setFileName(pic.getName());
+                    newPhoto.setPicUrl(pic.getPicUrl());
+                    newPhoto.setFileName(pic.getFileName());
                     newPhoto.setCreateBy(String.valueOf(LoginHelper.getUserId()));
                     newPhoto.setCreateTime(new Date());
                     list.add(newPhoto);
@@ -295,7 +295,7 @@ public class ZEngineeringDangerousServiceImpl implements IZEngineeringDangerousS
 
             // 删除数据库中多余的文件
             List<String> photosToDelete = existingPhotos.stream()
-                .filter(pic -> !bo.getFiles().stream().map(ZFileBo::getUrl).collect(Collectors.toList()).contains(pic))
+                .filter(pic -> !bo.getPics().stream().map(ZEngiineeringPhotoVo::getPicUrl).collect(Collectors.toList()).contains(pic))
                 .collect(Collectors.toList());
             if (!photosToDelete.isEmpty()) {
                 photosToDelete.forEach(item -> {

+ 25 - 19
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java

@@ -27,12 +27,10 @@ import lombok.RequiredArgsConstructor;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 工程详情Service业务层处理
@@ -54,6 +52,7 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
     @Resource
     private IZEngineeringReviewService izEngineeringReviewService;
 
+
     /**
      * 查询工程详情
      */
@@ -71,10 +70,12 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
         zEngineeringInfoVoList.stream().forEach(item -> {
             ZEngineeringInfoBo zEngineeringInfoBo1 = BeanUtil.toBean(item, ZEngineeringInfoBo.class);
             SysUser sysUser = sysUserService.selectUserByUserName(item.getCreateBy());
-            zEngineeringInfoBo1.setHeadName(sysUser.getNickName());
-            zEngineeringInfoBo1.setConstructUser(sysUser.getNickName());
-            zEngineeringInfoBo1.setHeadPhone(sysUser.getPhonenumber());
-            zEngineeringInfoBo1.setConstructPhone(sysUser.getPhonenumber());
+            if (!ObjectUtils.isEmpty(sysUser)) {
+                zEngineeringInfoBo1.setHeadName(sysUser.getNickName());
+                zEngineeringInfoBo1.setConstructUser(sysUser.getNickName());
+                zEngineeringInfoBo1.setHeadPhone(sysUser.getPhonenumber());
+                zEngineeringInfoBo1.setConstructPhone(sysUser.getPhonenumber());
+            }
             List<String> photoList = izEngiineeringPhotoService.queryList(zEngineeringInfoBo1);
             List<ZEngineeringMaterialBo> zEngineeringMaterialBo = izEngineeringMaterialService.query(zEngineeringInfoBo1);
             zEngineeringInfoBo1.setzEngiineeringPhotoBoList(photoList);
@@ -136,6 +137,7 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
         return flag;
     }
 
+
     /**
      * 新增工程详情(节点使用)
      *
@@ -155,13 +157,14 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
         if (flag) {
             bo.setId(add.getId());
         }
-        if (bo.getzEngineeringMaterialBo() != null && bo.getzEngineeringMaterialBo().size() > 0) {
-            bo.getzEngineeringMaterialBo().stream().forEach(item -> {
-                item.setDetailsId(add.getId());
-                item.setCreateTime(bo.getCreateTime());
-                item.setUpdateTime(bo.getUpdateTime());
-                izEngineeringMaterialService.insert(item);
-            });
+        if (bo.getzEngineeringMaterialBo()!=null&&bo.getzEngineeringMaterialBo().size()>0)
+        {
+        bo.getzEngineeringMaterialBo().stream().forEach(item->{
+            item.setDetailsId(add.getId());
+            item.setCreateTime(bo.getCreateTime());
+            item.setUpdateTime(new Date());
+            izEngineeringMaterialService.insert(item);
+        });
         }
         List<ZEngiineeringPhoto> photoList = new ArrayList();
         bo.getzEngiineeringPhotoBoList().forEach(item -> {
@@ -169,12 +172,13 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
             zEngiineeringPhoto.setParentId(add.getId());
             zEngiineeringPhoto.setPicUrl(item);
             zEngiineeringPhoto.setCreateTime(bo.getCreateTime());
-            zEngiineeringPhoto.setUpdateTime(bo.getUpdateTime());
-            photoList.add(zEngiineeringPhoto);
+            zEngiineeringPhoto.setUpdateTime(new Date());
+                photoList.add(zEngiineeringPhoto);
         });
-        if (!photoList.isEmpty()) {
+
+        if (photoList.size() > 0)
             izEngiineeringPhotoService.insertBatch(photoList);
-        }
+
         return add;
     }
 
@@ -199,12 +203,14 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
             zEngiineeringPhoto.setParentId(update.getId());
             zEngiineeringPhoto.setPicUrl(item);
             zEngiineeringPhoto.setCreateTime(bo.getCreateTime());
+            zEngiineeringPhoto.setUpdateTime(new Date());
             photoList.add(zEngiineeringPhoto);
         });
         if (!photoList.isEmpty()) {
             izEngiineeringPhotoService.updateBatch(photoList);
         }
         izEngineeringMaterialService.updateList(bo);
+        update.setUpdateTime(new Date());
         return baseMapper.updateById(update) > 0;
     }
 

+ 83 - 22
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfrastructureServiceImpl.java

@@ -1,31 +1,31 @@
 package com.ruoyi.zdsz.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.helper.LoginHelper;
 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.ZEngiineeringPhoto;
 import com.ruoyi.zdsz.domain.ZEngineeringInfrastructure;
-import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
-import com.ruoyi.zdsz.domain.bo.ZEngineeringInfrastructureBo;
-import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
-import com.ruoyi.zdsz.domain.bo.ZEngineeringReviewBo;
-import com.ruoyi.zdsz.domain.vo.ZEngineeringInfrastructureSelectVo;
-import com.ruoyi.zdsz.domain.vo.ZEngineeringInfrastructureVo;
-import com.ruoyi.zdsz.domain.vo.ZEngineeringNodeVo;
-import com.ruoyi.zdsz.domain.vo.ZEngineeringReviewVo;
+import com.ruoyi.zdsz.domain.ZEngineeringPipeJacking;
+import com.ruoyi.zdsz.domain.bo.*;
+import com.ruoyi.zdsz.domain.vo.*;
 import com.ruoyi.zdsz.mapper.ZEngineeringInfrastructureMapper;
+import com.ruoyi.zdsz.service.IZEngiineeringPhotoService;
 import com.ruoyi.zdsz.service.IZEngineeringInfrastructureService;
 import com.ruoyi.zdsz.service.IZEngineeringNodeService;
 import com.ruoyi.zdsz.service.IZEngineeringReviewService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
 
 import javax.annotation.Resource;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 基建工程Service业务层处理
@@ -42,6 +42,8 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
 
     @Resource
     private final IZEngineeringNodeService izEngineeringNodeService;
+    @Resource
+    private IZEngiineeringPhotoService photoService;
 
     @Resource
     private final IZEngineeringReviewService izEngineeringReviewService;
@@ -57,6 +59,12 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
         zEngineeringNodeBo.setCivliId(vo.getId());
         vo.setzEngineeringNodeBoList(izEngineeringNodeService.queryListDetails(zEngineeringNodeBo));
         List<ZEngineeringNodeBo> nodeList = vo.getzEngineeringNodeBoList();
+        //文件
+        ZEngiineeringPhotoBo bo1 = new ZEngiineeringPhotoBo();
+        bo1.setParentId(vo.getId());
+        bo1.setCreateTime(vo.getCreateTime());
+        vo.setPics(photoService.queryList(bo1));
+
         if(nodeList != null && nodeList.size() > 0){
             for (ZEngineeringNodeBo node : nodeList) {
                 String type = node.getType();
@@ -176,16 +184,80 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
                     izEngineeringNodeService.insert(zEngineeringNodeBo);
                 }
             }else {
+
                 bo.setId(add.getId());
                 ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
                 zEngineeringNodeBo.setCivliId(add.getId());
+                zEngineeringNodeBo.setType(zEngineeringNodeBo.getType());
                 zEngineeringNodeBo.setCreateTime(add.getCreateTime());
-                izEngineeringNodeService.insert(zEngineeringNodeBo);
+                ZEngineeringNodeBo query = izEngineeringNodeService.query(zEngineeringNodeBo);
+                if (!ObjectUtils.isEmpty(query)) {
+                    zEngineeringNodeBo.setId(query.getId());
+                }
+                izEngineeringNodeService.insert(bo.getzEngineeringNodeBo());
+            }
+            //文件集合
+            if (!bo.getFiles().isEmpty()){
+                List<ZEngiineeringPhoto> list = new ArrayList<>();
+                bo.getFiles().forEach(o->{
+                    ZEngiineeringPhoto pic = new ZEngiineeringPhoto();
+                    pic.setParentId(bo.getId());
+                    pic.setPicUrl(o.getUrl());
+                    pic.setFileName(o.getName());
+                    pic.setCreateBy(String.valueOf(LoginHelper.getUserId()));
+                    pic.setCreateTime(new Date());
+                    pic.setUpdateBy(String.valueOf(LoginHelper.getUserId()));
+                    pic.setUpdateTime(new Date());
+                    list.add(pic);
+                });
+                if (!list.isEmpty()) {
+                    photoService.insertBatch(list);
+                }
             }
         }
         return flag;
     }
+    private void doPhotos(ZEngineeringInfrastructure update, ZEngineeringInfrastructureBo bo) {
+        List<ZEngiineeringPhoto> list = new ArrayList<>();
+
+        // 查询数据库中已存在的文件列表
+        ZEngiineeringPhotoBo bo1 = new ZEngiineeringPhotoBo();
+        bo1.setParentId(update.getId());
+        bo1.setCreateTime(update.getCreateTime());
+        List<String> existingPhotos = photoService.queryList(bo1).stream()
+            .map(ZEngiineeringPhotoVo::getPicUrl)
+            .collect(Collectors.toList());
+
+        // 插入前端传来的新文件
+        for (ZFileBo pic : bo.getFiles()) {
+            if (!existingPhotos.contains(pic.getUrl())) {
+                ZEngiineeringPhoto newPhoto = new ZEngiineeringPhoto();
+                newPhoto.setParentId(bo.getId());
+                newPhoto.setPicUrl(pic.getUrl());
+                newPhoto.setFileName(pic.getName());
+                newPhoto.setCreateBy(String.valueOf(LoginHelper.getUserId()));
+                newPhoto.setCreateTime(new Date());
+                newPhoto.setUpdateBy(String.valueOf(LoginHelper.getUserId()));
+                newPhoto.setUpdateTime(new Date());
+                list.add(newPhoto);
+            }
+        }
+
+        // 删除数据库中多余的文件
+        List<String> photosToDelete = existingPhotos.stream()
+            .filter(pic -> !bo.getFiles().stream().map(ZFileBo::getUrl).collect(Collectors.toList()).contains(pic))
+            .collect(Collectors.toList());
+        if (!photosToDelete.isEmpty()) {
+            photosToDelete.forEach(item->{
+                photoService.deleteWithValidByurls(item);
+            });
+        }
 
+        // 批量插入新图片
+        if (!list.isEmpty()) {
+            photoService.insertBatch(list);
+        }
+    }
     /**
      * 新增基建工程审核
      */
@@ -214,15 +286,8 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
         boolean flag = baseMapper.updateById(update) > 0;
         if (flag) {
             ZEngineeringInfrastructureVo vo = baseMapper.selectVoById(update.getId());
-
-//            if (flag) {
-//                ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
-//                zEngineeringNodeBo.setCivliId(vo.getId());
-//                zEngineeringNodeBo.setCreateTime(vo.getCreateTime());
-//                izEngineeringNodeService.update(zEngineeringNodeBo);
-//                return flag;
-//            }
-
+            //文件
+            this.doPhotos(update,bo);
             List<ZEngineeringNodeBo> nodeBoList = bo.getzEngineeringNodeBoList();
             if(nodeBoList != null && nodeBoList.size() != 0){
                 for (ZEngineeringNodeBo nodeBo:nodeBoList) {
@@ -231,8 +296,6 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
                     zEngineeringNodeBo.setCreateTime(vo.getCreateTime());
                     if(zEngineeringNodeBo.getId() != null){
                         izEngineeringNodeService.update(zEngineeringNodeBo);
-                    }else {
-                        izEngineeringNodeService.insert(zEngineeringNodeBo);
                     }
                 }
             }else {
@@ -242,8 +305,6 @@ public class ZEngineeringInfrastructureServiceImpl implements IZEngineeringInfra
                 zEngineeringNodeBo.setCreateTime(vo.getCreateTime());
                 if(zEngineeringNodeBo.getId() != null){
                     izEngineeringNodeService.update(zEngineeringNodeBo);
-                }else {
-                    izEngineeringNodeService.insert(zEngineeringNodeBo);
                 }
             }
         }

+ 7 - 6
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringMaterialServiceImpl.java

@@ -12,6 +12,7 @@ import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
 import com.ruoyi.zdsz.service.IZEnginMaterialQualityService;
 import com.ruoyi.zdsz.service.IZEnginSpecificationsService;
 import lombok.RequiredArgsConstructor;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
@@ -22,10 +23,7 @@ import com.ruoyi.zdsz.mapper.ZEngineeringMaterialMapper;
 import com.ruoyi.zdsz.service.IZEngineeringMaterialService;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -121,10 +119,12 @@ public class ZEngineeringMaterialServiceImpl implements IZEngineeringMaterialSer
     @Override
     @DynamicName(spel = "#bo.createTime")
     @Transactional(rollbackFor = Exception.class)
-    @Async("threadPoolTaskExecutor")
+    //@Async("threadPoolTaskExecutor")
     public ZEngineeringMaterial insert(ZEngineeringMaterialBo bo) {
-        ZEngineeringMaterial add = BeanUtil.toBean(bo, ZEngineeringMaterial.class);
+        ZEngineeringMaterial add = new ZEngineeringMaterial();
+        BeanUtils.copyProperties(bo,add);
         validEntityBeforeSave(add);
+        add.setUpdateTime(new Date());
         boolean flag = baseMapper.insert(add) > 0;
         if (flag) {
             bo.setId(add.getId());
@@ -186,6 +186,7 @@ public class ZEngineeringMaterialServiceImpl implements IZEngineeringMaterialSer
                     if (item.getId() == i) {
                         ZEngineeringMaterial update2 = BeanUtil.toBean(item, ZEngineeringMaterial.class);
                         update2.setDetailsId(Infobo.getId());
+                        update2.setUpdateTime(new Date());
                         zEngineeringMaterialList.add(update2);
                     }
                 });

+ 19 - 7
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringNodeServiceImpl.java

@@ -10,6 +10,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.helper.LoginHelper;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.framework.handler.MonthTableNameHandler;
+import com.ruoyi.zdsz.domain.ZEngineeringCivil;
 import com.ruoyi.zdsz.domain.ZEngineeringNode;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringInfoBo;
 import com.ruoyi.zdsz.domain.bo.ZEngineeringNodeBo;
@@ -129,8 +130,7 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
         String userId=LoginHelper.getLoginUser().getUsername().toString();
         SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");
         Date date = new Date(System.currentTimeMillis());
-
-        List<String>dateList= getMonthBetweenDates("2023-09",formatter.format(date));
+        List<String>dateList= getMonthBetweenDates("2021-12",formatter.format(date));
         dateList.stream().forEach(item->{
             Runnable runnable=new Runnable() {
                 @Override
@@ -148,19 +148,30 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
         });
         return null;
     }
+
+    @Override
+    public int batchReview(List<ZEngineeringCivil> zEngineeringCivilList) {
+
+        zEngineeringCivilList.stream().forEach(item->{
+            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
+           // MonthTableNameHandler.setData();
+
+        });
+        return 0;
+    }
+
     public  List getZEngineeringNodeList(String date,String UserId,ZEngineeringNodeBo bo)
     {
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
         List<ZEngineeringNodeVo> list= new ArrayList<>();
         try {
             Date startdate = format.parse(date);
-            ZEngineeringNodeBo zEngineeringNodeBo=new ZEngineeringNodeBo();
-            zEngineeringNodeBo.setCreateTime(startdate);
-            zEngineeringNodeBo.setType(bo.getType());
+            bo.setCreateTime(startdate);
+
             SimpleDateFormat format2 = new SimpleDateFormat("yyyy_MM");
             MonthTableNameHandler.setData(format2.format(startdate));
             try {
-                list  =queryList(zEngineeringNodeBo);
+                list  =queryList(bo);
             }catch (Exception e)
             {
                 log.info("没有{}该表",format2.format(startdate));
@@ -211,6 +222,7 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
     @DynamicName(spel = "#bo.createTime")
     public ZEngineeringNode insert(ZEngineeringNodeBo bo) {
         ZEngineeringNode add = BeanUtil.toBean(bo, ZEngineeringNode.class);
+        add.setUpdateTime(new Date());
         validEntityBeforeSave(add);
         if (StringUtils.isEmpty(bo.getId())){
             boolean flag = baseMapper.insert(add) > 0;
@@ -221,7 +233,7 @@ public class ZEngineeringNodeServiceImpl implements IZEngineeringNodeService {
         bo.setUpdateTime(new Date());
         bo.getzEngineeringInfoBo().setEngInfoId(add.getId());
         bo.getzEngineeringInfoBo().setCreateTime(bo.getCreateTime());
-        bo.getzEngineeringInfoBo().setUpdateTime(bo.getUpdateTime());
+        bo.getzEngineeringInfoBo().setUpdateTime(new Date());
         izEngineeringInfoService.insert(bo.getzEngineeringInfoBo());
         return add;
     }

+ 38 - 59
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringPipeJackingServiceImpl.java

@@ -133,46 +133,9 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
     public Boolean insertByBo(ZEngineeringPipeJackingBo bo) {
         ZEngineeringPipeJacking add = BeanUtil.toBean(bo, ZEngineeringPipeJacking.class);
         validEntityBeforeSave(add);
-        //民用
-        if ("民用工程".equals(bo.getType())){
-            List<Map<String, Object>> civil = baseMapper.getCivil(bo.getEnginId());
-            if (!civil.isEmpty()){
-                add.setEnginAddre((String) civil.get(0).get("name"));
-            }
-        }
-        //市政
-        else if("市政工程".equals(bo.getType())){
-            List<Map<String, Object>> civil = baseMapper.getSg(bo.getEnginId());
-            if (!civil.isEmpty()){
-                add.setEnginAddre((String) civil.get(0).get("name"));
-            }
-        }
-        //工业
-        else if("工业工程".equals(bo.getType())){
-            List<Map<String, Object>> civil = baseMapper.getSg(bo.getEnginId());
-            if (!civil.isEmpty()){
-                add.setEnginAddre((String) civil.get(0).get("name"));
-            }
-        }
-        // 危险
-        else if("危险作业工程".equals(bo.getType())){
-            List<Map<String, Object>> civil = baseMapper.getDangerous(bo.getEnginId());
-            if (!civil.isEmpty()){
-                add.setEnginName((String) civil.get(0).get("name"));
-                add.setEnginAddre((String) civil.get(0).get("address"));
-            }
-        }
-        //基建
-        else if("基建工程".equals(bo.getType())){
-            List<Map<String, Object>> civil = baseMapper.getInfrastructure(bo.getEnginId());
-            if (!civil.isEmpty()){
-                add.setEnginName((String) civil.get(0).get("name"));
-                add.setEnginAddre((String) civil.get(0).get("address"));
-            }
-        }
-        //
+
         LambdaQueryWrapper<ZEngineeringPipeJacking> lqw = Wrappers.lambdaQuery();
-        lqw.like(StringUtils.isNotBlank(bo.getEnginId()), ZEngineeringPipeJacking::getEnginId, bo.getEnginId());
+        lqw.eq(StringUtils.isNotBlank(bo.getEnginId()), ZEngineeringPipeJacking::getEnginId, bo.getEnginId());
         ZEngineeringPipeJackingVo jackingVo = baseMapper.selectVoOne(lqw);
         boolean flag = false;
         if (ObjectUtil.isEmpty(jackingVo)) {
@@ -181,7 +144,7 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
             if (flag) {
                 bo.setId(add.getId());
                 //多表单
-                if (!bo.getzEngineeringNodeBoList().isEmpty()){
+                if (ObjectUtil.isEmpty(bo.getzEngineeringNodeBo())){
                     for (int i = 0; i < bo.getzEngineeringNodeBoList().size(); i++) {
                         bo.getzEngineeringNodeBoList().get(i).setCivliId(add.getId());
                         bo.getzEngineeringNodeBoList().get(i).setCreateTime(add.getCreateTime());
@@ -215,7 +178,7 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
             }
         }else {
             //多表单
-            if (!bo.getzEngineeringNodeBoList().isEmpty()){
+            if (ObjectUtil.isEmpty(bo.getzEngineeringNodeBo())){
                 for (int i = 0; i < bo.getzEngineeringNodeBoList().size(); i++) {
                     bo.getzEngineeringNodeBoList().get(i).setCivliId(add.getId());
                     bo.getzEngineeringNodeBoList().get(i).setCreateTime(add.getCreateTime());
@@ -225,9 +188,9 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
             //单表单
             else {
                 ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
-                zEngineeringNodeBo.setCivliId(add.getId());
+                zEngineeringNodeBo.setCivliId(jackingVo.getId());
                 zEngineeringNodeBo.setType(zEngineeringNodeBo.getType());
-                zEngineeringNodeBo.setCreateTime(add.getCreateTime());
+                zEngineeringNodeBo.setCreateTime(jackingVo.getCreateTime());
                 ZEngineeringNodeBo query = nodeService.query(zEngineeringNodeBo);
                 if (!ObjectUtils.isEmpty(query)) {
                     zEngineeringNodeBo.setId(query.getId());
@@ -239,6 +202,30 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
         return flag;
     }
 
+    @Transactional(rollbackFor=Exception.class)
+    @Override
+    public Boolean insertByBoApp(ZEngineeringPipeJackingBo bo) {
+        ZEngineeringPipeJacking add = BeanUtil.toBean(bo, ZEngineeringPipeJacking.class);
+        validEntityBeforeSave(add);
+
+        LambdaQueryWrapper<ZEngineeringPipeJacking> lqw = Wrappers.lambdaQuery();
+        lqw.eq(StringUtils.isNotBlank(bo.getId()), ZEngineeringPipeJacking::getId, bo.getId());
+        ZEngineeringPipeJackingVo jackingVo = baseMapper.selectVoOne(lqw);
+        boolean flag = false;
+                ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
+                zEngineeringNodeBo.setCivliId(jackingVo.getId());
+                zEngineeringNodeBo.setType(zEngineeringNodeBo.getType());
+                zEngineeringNodeBo.setCreateTime(jackingVo.getCreateTime());
+                ZEngineeringNodeBo query = nodeService.query(zEngineeringNodeBo);
+                if (!ObjectUtils.isEmpty(query)) {
+                    zEngineeringNodeBo.setId(query.getId());
+                }
+                nodeService.insert(bo.getzEngineeringNodeBo());
+            flag = true;
+
+        return flag;
+    }
+
     private ZEngineeringPipeJacking updateEnginAddre(ZEngineeringPipeJacking update, String type, String enginId) {
         List<Map<String, Object>> civil = new ArrayList<>();
 
@@ -278,23 +265,13 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
     public Boolean updateByBo(ZEngineeringPipeJackingBo bo) {
         ZEngineeringPipeJacking update = BeanUtil.toBean(bo, ZEngineeringPipeJacking.class);
         validEntityBeforeSave(update);
-        // 调用新方法
-        update = updateEnginAddre(update, bo.getType(), bo.getEnginId());
-        //多表单
-        if (!bo.getzEngineeringNodeBoList().isEmpty()){
-            for (int i = 0; i < bo.getzEngineeringNodeBoList().size(); i++) {
-                bo.getzEngineeringNodeBoList().get(i).setCivliId(update.getId());
-                bo.getzEngineeringNodeBoList().get(i).setCreateTime(update.getCreateTime());
-                nodeService.update(bo.getzEngineeringNodeBoList().get(i));
-            }
+        ZEngineeringPipeJackingVo jackingVo = baseMapper.selectVoById(update.getId());
+        ZEngineeringNodeBo zEngineeringNodeBo = bo.getzEngineeringNodeBo();
+        if (!ObjectUtils.isEmpty(zEngineeringNodeBo)){
+            zEngineeringNodeBo.setCivliId(jackingVo.getId());
+            zEngineeringNodeBo.setCreateTime(jackingVo.getCreateTime());
+            nodeService.update(zEngineeringNodeBo);
         }
-        //单表单
-        else {
-            bo.getzEngineeringNodeBo().setCivliId(bo.getId());
-            bo.getzEngineeringNodeBo().setCreateTime(bo.getCreateTime());
-            nodeService.update(bo.getzEngineeringNodeBo());
-        }
-
         int i = baseMapper.updateById(update);
         if (i>0){
             this.doPhotos(update,bo);
@@ -322,6 +299,8 @@ public class ZEngineeringPipeJackingServiceImpl implements IZEngineeringPipeJack
                 newPhoto.setFileName(pic.getName());
                 newPhoto.setCreateBy(String.valueOf(LoginHelper.getUserId()));
                 newPhoto.setCreateTime(new Date());
+                newPhoto.setUpdateBy(String.valueOf(LoginHelper.getUserId()));
+                newPhoto.setUpdateTime(new Date());
                 list.add(newPhoto);
             }
         }

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

@@ -35,8 +35,8 @@ public class ZUnitServiceImpl implements IZUnitService {
     private final ZUnitMapper baseMapper;
 
     @Override
-    public List<ZUnitVo> getUnitList(String areaId, String buildingId) {
-        return baseMapper.getUnitList(areaId,buildingId);
+    public List<ZUnitVo> getUnitList(String buildingId) {
+        return baseMapper.getUnitList(buildingId);
     }
 
     /**

+ 11 - 1
ruoyi-zdsz/src/main/resources/mapper/zdsz/ZEngineeringCivilMapper.xml

@@ -97,10 +97,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             a.del_flag = 0
           AND a.area_id in
-        <foreach collection="list" item="name" open="(" separator="," close=")">
+        <foreach collection="idList" item="name" open="(" separator="," close=")">
             #{name}
         </foreach>
         ORDER BY a.area_id ASC
 
     </select>
+    <select id="getsumStatus" resultType="com.ruoyi.zdsz.domain.vo.areaStatusVo">
+        SELECT
+            COUNT( DISTINCT a.house_id ) AS 'willDone' ,
+            ( SELECT COUNT( DISTINCT a.house_id ) FROM z_engineering_civil a WHERE a.completion_status = '完工' AND a.engin_cycle=a.engin_cycle=#{enginCycle}) AS 'done',
+            ( SELECT COUNT( a.id ) FROM z_house a )  AS 'notstart'
+        FROM
+            z_engineering_civil a
+        WHERE
+            a.completion_status = '未完工'AND a.engin_cycle=#{enginCycle}
+    </select>
 </mapper>

+ 12 - 8
ruoyi-zdsz/src/main/resources/mapper/zdsz/ZMaterialStatisticsMapper.xml

@@ -49,21 +49,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="getZMaterialStatistics" resultType="com.ruoyi.zdsz.domain.vo.MaterialStatisticsListVo" >
         SELECT
         a.area_id,
-        c.name AS reality_specifications,
-        d.name AS  reality_quality,
+        e.`name` AS areaName,
+        e.district AS district,
+        c.NAME AS reality_specifications,
+        d.NAME AS reality_quality,
         a.reality_size,
-        a.engin_cycle,
-        d.name AS material_quality,
-        c.name as estimated_specifications,
-        b.estimated_size
+        d.NAME AS material_quality,
+        c.NAME AS estimated_specifications,
+        b.estimated_size,
+        f.dict_label AS engin_cycle
         FROM
         z_material_statistics a
         LEFT JOIN z_engineering_materials_resets b ON a.reality_specifications = b.estimated_specifications
         AND b.area_id LIKE CONCAT( "%", a.area_id, "%" )
         AND a.engin_cycle = b.engin_cycle
         AND a.del_flag = b.del_flag
-        LEFT JOIN z_engin_specifications c ON b.estimated_specifications=c.id
-        LEFT JOIN z_engin_material_quality d ON d.id= b.material_quality
+        LEFT JOIN z_engin_specifications c ON b.estimated_specifications = c.id
+        LEFT JOIN z_engin_material_quality d ON d.id = b.material_quality
+        LEFT JOIN z_area e ON e.id=a.area_id
+        LEFT JOIN sys_dict_data f ON f.dict_type='engin_cycle' AND f.dict_value=a.engin_cycle
         WHERE
         1=1
         <if test="areaId != null  and areaId != ''">

+ 0 - 3
ruoyi-zdsz/src/main/resources/mapper/zdsz/ZUnitMapper.xml

@@ -23,9 +23,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         name as name
         from z_unit
         where del_flag = '0'
-        <if test="areaId != null and areaId != ''">
-            and area_id = #{areaId}
-        </if>
         <if test="buildingId != null and buildingId != ''">
             and building_id = #{buildingId}
         </if>