فهرست منبع

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

qinhouyu 11 ماه پیش
والد
کامیت
debcfc003b

+ 46 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zdsz/ZEnginMaterialQualityController.java

@@ -2,6 +2,7 @@ package com.ruoyi.web.controller.zdsz;
 
 import java.util.List;
 import java.util.Arrays;
+import java.util.Map;
 import java.util.concurrent.TimeUnit;
 
 import lombok.RequiredArgsConstructor;
@@ -116,4 +117,49 @@ public class ZEnginMaterialQualityController extends BaseController {
         }
         return R.ok("删除成功");
     }
+
+    /**
+     * 测试用无用功能
+     * @param tableName
+     * @param id
+     * @return
+     */
+    @GetMapping("/selectEnginQualty")
+    public R selectEnginQualty(String tableName,String id) {
+        tableName = "z_engineering_gy";
+        id = "1801086568078761986";
+        List<Map> select1 = iZEnginMaterialQualityService.selectEnginQualty(tableName,id);//工业室内管线
+        tableName = "z_engineering_gy";
+        id = "1801130856355454978";
+        List<Map> select2 = iZEnginMaterialQualityService.selectEnginQualty(tableName,id);//工业室外管线
+        tableName = "z_engineering_industry";
+        id = "1801146254913916929";
+        List<Map> select3 = iZEnginMaterialQualityService.selectEnginQualty(tableName,id);//市政工程
+        tableName = "z_engineering_pipe_jacking";
+        id = "1796373004682428418";
+        List<Map> select4 = iZEnginMaterialQualityService.selectEnginQualty(tableName,id);//顶管工程
+        return R.ok(select1);
+    }
+    /**
+     * 测试用无用功能
+     * @param tableName
+     * @param id
+     * @return
+     */
+    @GetMapping("/selectEnginQualtyShenhe")
+    public R selectEnginQualtyShenhe(String tableName,String id) {
+        tableName = "z_engineering_gy";
+        id = "1801086568078761986";
+        List<Map> select1 = iZEnginMaterialQualityService.selectEnginQualtyShenhe(tableName,id);//工业室内管线
+        tableName = "z_engineering_gy";
+        id = "1801130856355454978";
+        List<Map> select2 = iZEnginMaterialQualityService.selectEnginQualtyShenhe(tableName,id);//工业室外管线
+        tableName = "z_engineering_industry";
+        id = "1801146254913916929";
+        List<Map> select3 = iZEnginMaterialQualityService.selectEnginQualtyShenhe(tableName,id);//市政工程
+        tableName = "z_engineering_pipe_jacking";
+        id = "1796373004682428418";
+        List<Map> select4 = iZEnginMaterialQualityService.selectEnginQualtyShenhe(tableName,id);//顶管工程
+        return R.ok(select1);
+    }
 }

+ 6 - 4
ruoyi-admin/src/main/resources/application-dev.yml

@@ -50,10 +50,12 @@ spring:
           # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
           # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
 #          url: jdbc:mysql://192.168.10.15:63306/sj_zdsz?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
-          url: jdbc:mysql://192.168.10.15:63306/zdsz_xstb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
+          url: jdbc:mysql://192.168.10.15:63306/zdsz_xstb?allowMultiQueries=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
           username: root
           password: sooka1a2b3c4d%...
-
+#          url: jdbc:mysql://123.249.95.134:13306/zdsz?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
+#          username: root
+#          password: ZDSZ1a2b3c4d%...
         # 从库数据源
 #        slave:
 #          lazy: true
@@ -102,11 +104,11 @@ spring:
     # 地址
     host: 127.0.0.1
     # 端口,默认为6379
-    port: 6379
+    port: 16379
     # 数据库索引
     database: 0
     # 密码(如没有密码请注释掉)
-#    password: sooka123456
+    password: sooka123456
     # 连接超时时间
     timeout: 10s
     # 是否开启ssl

+ 4 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/mapper/ZEnginMaterialQualityMapper.java

@@ -4,8 +4,10 @@ import com.ruoyi.zdsz.domain.ZEnginMaterialQuality;
 import com.ruoyi.zdsz.domain.bo.ZEnginMaterialQualityBo;
 import com.ruoyi.zdsz.domain.vo.ZEnginMaterialQualityVo;
 import com.ruoyi.common.core.mapper.BaseMapperPlus;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 工程材质Mapper接口
@@ -16,4 +18,6 @@ import java.util.List;
 public interface ZEnginMaterialQualityMapper extends BaseMapperPlus<ZEnginMaterialQualityMapper, ZEnginMaterialQuality, ZEnginMaterialQualityVo> {
 
     List<ZEnginMaterialQualityVo> getEnginMaterialQualityList(ZEnginMaterialQualityBo enginType);
+    List<Map> selectEnginQualty(@Param("tableName") String tableName,@Param("id") String id);
+    List<Map> selectEnginQualtyShenhe(@Param("tableName") String tableName,@Param("id") String id);
 }

+ 4 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/IZEnginMaterialQualityService.java

@@ -9,6 +9,7 @@ import com.ruoyi.common.core.domain.PageQuery;
 
 import java.util.Collection;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 工程材质Service接口
@@ -49,4 +50,7 @@ public interface IZEnginMaterialQualityService {
     Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
 
     List<ZEnginMaterialQualityVo> getEnginMaterialQualityList(ZEnginMaterialQualityBo enginType);
+
+    List<Map> selectEnginQualty(String tableName,String id);
+    List<Map> selectEnginQualtyShenhe(String tableName,String id);
 }

+ 10 - 0
ruoyi-zdsz/src/main/java/com/ruoyi/zdsz/service/impl/ZEnginMaterialQualityServiceImpl.java

@@ -153,4 +153,14 @@ public class ZEnginMaterialQualityServiceImpl implements IZEnginMaterialQualityS
     public List<ZEnginMaterialQualityVo> getEnginMaterialQualityList(ZEnginMaterialQualityBo enginType) {
         return baseMapper.getEnginMaterialQualityList(enginType);
     }
+
+    @Override
+    public List<Map> selectEnginQualty(String tableName,String id) {
+        return baseMapper.selectEnginQualty(tableName,id);
+    }
+
+    @Override
+    public List<Map> selectEnginQualtyShenhe(String tableName, String id) {
+        return baseMapper.selectEnginQualtyShenhe(tableName,id);
+    }
 }

+ 103 - 0
ruoyi-zdsz/src/main/resources/mapper/zdsz/ZEnginMaterialQualityMapper.xml

@@ -42,4 +42,107 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         order by zc.create_time desc
     </select>
 
+    <select id="selectEnginQualty" parameterType="java.lang.String" resultType="java.util.Map">
+        SET @nodeType = (select
+            CASE
+                #{tableName}
+                WHEN 'z_engineering_gy' THEN (SELECT CASE engin_classification WHEN '室内管线' THEN '焊接' WHEN '室外管线' THEN '下管' END FROM z_engineering_gy  WHERE id = #{id} )
+                WHEN 'z_engineering_industry' THEN '下管'
+                WHEN 'z_engineering_pipe_jacking' THEN '回拖'
+            END
+        FROM
+        dual);
+        SET @table_name_last = (select DATE_FORMAT(create_time, '%Y_%m') from ${tableName} where id = #{id});
+        SET @query = CONCAT("
+        SELECT
+            f.dict_label,
+            sum( number ) AS actual,
+            a.pe_preset AS expect,
+            concat( round( sum( number )/ a.pe_preset * 100, 2 ), '%' ) AS proportion
+        FROM
+            ",#{tableName}," a
+            LEFT JOIN z_engineering_node_",@table_name_last," b ON a.id = b.civli_id
+            LEFT JOIN z_engineering_info_",@table_name_last," c ON b.id = c.eng_info_id
+            LEFT JOIN z_engineering_material_",@table_name_last," d ON c.id = d.details_id
+            LEFT JOIN z_engin_material_quality e ON e.id = d.material_quality
+            LEFT JOIN sys_dict_data f ON f.dict_value = e.material_type
+            AND f.dict_type = 'material_type'
+        WHERE
+            a.id = ",#{id},"
+            AND b.type = '",@nodeType,"'
+            AND a.del_flag = 0
+            AND b.del_flag = 0
+            AND c.del_flag = 0
+            AND d.del_flag = 0
+            AND e.del_flag = 0
+            AND f.dict_value = 0
+        UNION ALL
+        SELECT
+            f.dict_label,
+            sum( number ) AS actual,
+            a.gc_preset AS expect,
+            concat( round( sum( number )/ a.pe_preset * 100, 2 ), '%' ) AS proportion
+        FROM
+            ",#{tableName}," a
+            LEFT JOIN z_engineering_node_",@table_name_last," b ON a.id = b.civli_id
+            LEFT JOIN z_engineering_info_",@table_name_last," c ON b.id = c.eng_info_id
+            LEFT JOIN z_engineering_material_",@table_name_last," d ON c.id = d.details_id
+            LEFT JOIN z_engin_material_quality e ON e.id = d.material_quality
+            LEFT JOIN sys_dict_data f ON f.dict_value = e.material_type
+            AND f.dict_type = 'material_type'
+        WHERE
+            a.id = ",#{id},"
+            AND b.type = '",@nodeType,"'
+            AND a.del_flag = 0
+            AND b.del_flag = 0
+            AND c.del_flag = 0
+            AND d.del_flag = 0
+            AND e.del_flag = 0
+            AND f.dict_value = 1
+        ");
+        PREPARE stmt FROM @query;
+        EXECUTE stmt;
+        DEALLOCATE PREPARE stmt;
+    </select>
+
+    <select id="selectEnginQualtyShenhe" parameterType="java.lang.String" resultType="java.util.Map">
+        SET @table_name_last = (select DATE_FORMAT(create_time, '%Y_%m') from ${tableName} where id = #{id});
+        SET @nodeType = (select
+            CASE
+                #{tableName}
+                WHEN 'z_engineering_gy' THEN (SELECT CASE engin_classification WHEN '室内管线' THEN 'gy_inner' WHEN '室外管线' THEN 'gy_out' WHEN '调压柜' THEN 'gy_tyg' END FROM z_engineering_gy  WHERE id = #{id})
+                WHEN 'z_engineering_industry' THEN 'municipal_node_types'
+                WHEN 'z_engineering_pipe_jacking' THEN 'pipe_jack'
+                WHEN 'z_touch_operation_engineering' THEN (SELECT b.dict_type FROM z_touch_operation_engineering a JOIN sys_dict_type b ON a.mode_operation = b.dict_name WHERE id = #{id})
+            END
+        FROM
+        dual);
+        SET @QUERY = CONCAT( "
+        SELECT
+            d.dict_label as name,
+            CASE
+                IFNULL(c.id,0)
+                    WHEN 0 THEN '未上传'
+                    ELSE
+                    CASE
+                        c.state
+                        WHEN 0 THEN '未通过'
+                        WHEN 1 THEN '通过'
+                        ELSE '未审核'
+                    END
+            END as value
+            FROM
+            sys_dict_data d
+            LEFT JOIN z_engineering_node_",@table_name_last," b ON d.dict_value = b.type AND b.del_flag =0
+            LEFT JOIN z_engineering_info_",@table_name_last," c ON b.id = c.eng_info_id and c.del_flag =0
+            LEFT JOIN ",#{tableName}," a ON a.id = b.civli_id and a.del_flag =0 AND a.id = ",#{id},"
+            WHERE
+            d.dict_type = '",@nodeType,"'
+            GROUP BY
+            d.dict_label
+        ORDER BY dict_sort" );
+        PREPARE stmt FROM @QUERY;
+        EXECUTE stmt;
+        DEALLOCATE PREPARE stmt;
+    </select>
 </mapper>