Browse Source

统计接口

wangtong 1 năm trước cách đây
mục cha
commit
f3860e3002

+ 13 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEngineeringCivilController.java

@@ -152,4 +152,17 @@ public class ZEngineeringCivilController extends BaseController {
     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));
+    }
+
+
 }

+ 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);
+    }
 
     /**
      * 获取用料统计详细信息

+ 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;
+
+
 }

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

@@ -23,7 +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 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEngineeringCivilService.java

@@ -60,4 +60,5 @@ public interface IZEngineeringCivilService {
 
     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);
 }

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

@@ -278,6 +278,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();
@@ -312,4 +314,21 @@ public class ZEngineeringCivilServiceImpl implements IZEngineeringCivilService {
         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;
+    }
 }

+ 3 - 6
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEngineeringInfoServiceImpl.java

@@ -29,10 +29,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 工程详情Service业务层处理
@@ -157,7 +154,7 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
         bo.getzEngineeringMaterialBo().stream().forEach(item->{
             item.setDetailsId(add.getId());
             item.setCreateTime(bo.getCreateTime());
-            item.setUpdateTime(bo.getUpdateTime());
+            item.setUpdateTime(new Date());
             izEngineeringMaterialService.insert(item);
         });
         }
@@ -167,7 +164,7 @@ public class ZEngineeringInfoServiceImpl implements IZEngineeringInfoService {
             zEngiineeringPhoto.setParentId(add.getId());
             zEngiineeringPhoto.setPicUrl(item);
             zEngiineeringPhoto.setCreateTime(bo.getCreateTime());
-            zEngiineeringPhoto.setUpdateTime(bo.getUpdateTime());
+            zEngiineeringPhoto.setUpdateTime(new Date());
                 photoList.add(zEngiineeringPhoto);
         });
         izEngiineeringPhotoService.insertBatch(photoList);

+ 18 - 5
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;
@@ -147,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));
@@ -210,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;
@@ -220,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;
     }

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

@@ -97,7 +97,7 @@ 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

+ 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 != ''">