Bläddra i källkod

1.机器设备信息表新增索引、查询机器设备过滤条件相关SQL修改返回数量

GouGengquan 7 månader sedan
förälder
incheckning
d23d5b72e1

+ 5 - 4
dao/src/main/java/com/dayou/mapper/AssetsCalculateEqptDataMapper.java

@@ -8,6 +8,7 @@ import com.dayou.entity.AssetsCalculateEqptImpData;
 import com.dayou.entity.AssetsCalculateEqptNonsData;
 import com.dayou.vo.AssetsCalculateEqptImpDataVO;
 import com.dayou.vo.AssetsCalculateEqptNonsDataVO;
+import com.dayou.vo.TableFilterVO;
 import org.apache.ibatis.annotations.Param;
 
 import java.math.BigDecimal;
@@ -121,7 +122,7 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
      * @param equipmentName 设备名称
      * @return EqptTableFilterVO
      */
-    List<String> getEqptTableNameFilters(@Param("calculateId") Long calculateId,@Param("equipmentName") String equipmentName, @Param("eqptType") String eqptType);
+    List<TableFilterVO> getEqptTableNameFilters(@Param("calculateId") Long calculateId, @Param("equipmentName") String equipmentName, @Param("eqptType") String eqptType);
 
     /**
      * 获取机器设备作价table型号的筛选条件
@@ -129,7 +130,7 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
      * @param model 设备型号
      * @return EqptTableFilterVO
      */
-    List<String> getEqptTableModelFilters(@Param("calculateId") Long calculateId,@Param("model") String model, @Param("eqptType") String eqptType);
+    List<TableFilterVO> getEqptTableModelFilters(@Param("calculateId") Long calculateId,@Param("model") String model, @Param("eqptType") String eqptType);
 
     /**
      * 获取机器设备作价table购买日期的筛选条件
@@ -137,7 +138,7 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
      * @param purchaseDate 购买日期
      * @return EqptTableFilterVO
      */
-    List<String> getEqptTablePurchaseDateFilters(@Param("calculateId") Long calculateId,@Param("purchaseDate") String purchaseDate, @Param("eqptType") String eqptType);
+    List<TableFilterVO> getEqptTablePurchaseDateFilters(@Param("calculateId") Long calculateId,@Param("purchaseDate") String purchaseDate, @Param("eqptType") String eqptType);
 
     /**
      * 获取机器设备作价table启用日期的筛选条件
@@ -145,6 +146,6 @@ public interface AssetsCalculateEqptDataMapper extends BaseMapper<AssetsCalculat
      * @param activationDate 启用日期
      * @return EqptTableFilterVO
      */
-    List<String> getEqptTableActivationDateFilters(@Param("calculateId") Long calculateId,@Param("activationDate") String activationDate, @Param("eqptType") String eqptType);
+    List<TableFilterVO> getEqptTableActivationDateFilters(@Param("calculateId") Long calculateId,@Param("activationDate") String activationDate, @Param("eqptType") String eqptType);
 
 }

+ 16 - 12
dao/src/main/resources/mapper/AssetsCalculateEqptDataMapper.xml

@@ -402,9 +402,10 @@
     </insert>
 
     <!--获取机器设备作价table设备名称的筛选条件-->
-    <select id="getEqptTableNameFilters" resultType="java.lang.String">
-        SELECT DISTINCT equipment_name AS equipmentNameFilters
-        FROM assets_calculate_eqpt_data
+    <select id="getEqptTableNameFilters" resultType="com.dayou.vo.TableFilterVO">
+        SELECT DISTINCT equipment_name AS filter,
+        (SELECT COUNT(equipment_name) FROM assets_calculate_eqpt_data AS subquery WHERE subquery.equipment_name = mainquery.equipment_name AND subquery.delete_status = 0) AS count
+        FROM assets_calculate_eqpt_data AS mainquery
         WHERE delete_status = 0
         AND assets_calculate_id = #{calculateId}
         <if test="eqptType != null and eqptType != ''">
@@ -416,9 +417,10 @@
     </select>
 
     <!--获取机器设备作价table型号的筛选条件-->
-    <select id="getEqptTableModelFilters" resultType="java.lang.String">
-        SELECT DISTINCT model AS modelFilters
-        FROM assets_calculate_eqpt_data
+    <select id="getEqptTableModelFilters" resultType="com.dayou.vo.TableFilterVO">
+        SELECT DISTINCT model AS filter,
+        (SELECT COUNT(model) FROM assets_calculate_eqpt_data AS subquery WHERE subquery.model = mainquery.model AND subquery.delete_status = 0) AS count
+        FROM assets_calculate_eqpt_data AS mainquery
         WHERE delete_status = 0
           AND assets_calculate_id = #{calculateId}
         <if test="eqptType != null and eqptType != ''">
@@ -430,9 +432,10 @@
     </select>
 
     <!--获取机器设备作价table购买日期的筛选条件-->
-    <select id="getEqptTablePurchaseDateFilters" resultType="java.lang.String">
-        SELECT DISTINCT purchase_date AS purchaseDateFilters
-        FROM assets_calculate_eqpt_data
+    <select id="getEqptTablePurchaseDateFilters" resultType="com.dayou.vo.TableFilterVO">
+        SELECT DISTINCT purchase_date AS filter,
+        (SELECT COUNT(purchase_date) FROM assets_calculate_eqpt_data AS subquery WHERE subquery.purchase_date = mainquery.purchase_date AND subquery.delete_status = 0) AS count
+        FROM assets_calculate_eqpt_data AS mainquery
         WHERE delete_status = 0
           AND assets_calculate_id = #{calculateId}
         <if test="eqptType != null and eqptType != ''">
@@ -444,9 +447,10 @@
     </select>
 
     <!--获取机器设备作价table启用日期的筛选条件-->
-    <select id="getEqptTableActivationDateFilters" resultType="java.lang.String">
-        SELECT DISTINCT activation_date AS activationDateFilters
-        FROM assets_calculate_eqpt_data
+    <select id="getEqptTableActivationDateFilters" resultType="com.dayou.vo.TableFilterVO">
+        SELECT DISTINCT activation_date AS filter,
+        (SELECT COUNT(activation_date) FROM assets_calculate_eqpt_data AS subquery WHERE subquery.activation_date = mainquery.activation_date AND subquery.delete_status = 0) AS count
+        FROM assets_calculate_eqpt_data AS mainquery
         WHERE delete_status = 0
           AND assets_calculate_id = #{calculateId}
         <if test="eqptType != null and eqptType != ''">

+ 4 - 4
domain/src/main/java/com/dayou/vo/EqptTableFilterVO.java

@@ -13,21 +13,21 @@ public class EqptTableFilterVO {
     /**
      * 机器设备名称筛选条件
      */
-    private List<String> equipmentNameFilters;
+    private List<TableFilterVO> equipmentNameFilters;
 
     /**
      * 机器设备型号筛选条件
      */
-    private List<String> modelFilters;
+    private List<TableFilterVO> modelFilters;
 
     /**
      * 机器设备购买日期筛选条件
      */
-    private List<String> purchaseDateFilters;
+    private List<TableFilterVO> purchaseDateFilters;
 
     /**
      * 机器设备启用日期筛选条件
      */
-    private List<String> activationDateFilters;
+    private List<TableFilterVO> activationDateFilters;
 
 }

+ 17 - 0
domain/src/main/java/com/dayou/vo/TableFilterVO.java

@@ -0,0 +1,17 @@
+package com.dayou.vo;
+
+import lombok.Data;
+
+@Data
+public class TableFilterVO {
+
+    /**
+     * 筛选条件
+     */
+    private String filter;
+
+    /**
+     * 符合条件的数据数量
+     */
+    private Integer count;
+}

+ 10 - 0
sql/update_sql.sql

@@ -953,3 +953,13 @@ CREATE TABLE `house_guaranty_area`  (
                                                    PRIMARY KEY (`id`) USING BTREE
 ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '房地产标的物周边区位信息' ROW_FORMAT = Dynamic;
 
+
+/**
+  日期:2024-12-24
+  修改人:苟耕铨
+  未更新到test-env
+ */
+ALTER TABLE assets_calculate_eqpt_data ADD KEY `equipment_name` (`equipment_name`) USING BTREE;
+ALTER TABLE assets_calculate_eqpt_data ADD KEY `model` (`model`) USING BTREE;
+ALTER TABLE assets_calculate_eqpt_data ADD KEY `purchase_date` (`purchase_date`) USING BTREE;
+ALTER TABLE assets_calculate_eqpt_data ADD KEY `activation_date` (`activation_date`) USING BTREE;