소스 검색

1.机器设备测算信息查询SQL新增多个条件

GouGengquan 6 달 전
부모
커밋
d596fefd4b

+ 138 - 0
dao/src/main/resources/mapper/AssetsCalculateEqptDataMapper.xml

@@ -107,6 +107,144 @@
                 #{item}
             </foreach>
         </if>
+        <if test="dto != null and dto.storageLocationFilters.size() > 0">
+            AND storage_location IN
+            <foreach item="item" collection="dto.storageLocationFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        <if test="dto != null and dto.usageSituationFilters.size() > 0">
+            AND (usage_situation IN
+            <foreach item="item" collection="dto.usageSituationFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.usageSituationFilters.contains("空")'>
+                OR usage_situation IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.quantityFilters.size() > 0">
+            AND (quantity IN
+            <foreach item="item" collection="dto.quantityFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>)
+        </if>
+        <if test="dto != null and dto.unitOfMeasurementFilters.size() > 0">
+            AND (unit_of_measurement IN
+            <foreach item="item" collection="dto.unitOfMeasurementFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>)
+        </if>
+        <if test="dto != null and dto.bookOriginalValueFilters.size() > 0">
+            AND (book_original_value IN
+            <foreach item="item" collection="dto.bookOriginalValueFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>)
+        </if>
+        <if test="dto != null and dto.bookNetValueFilters.size() > 0">
+            AND (book_net_value IN
+            <foreach item="item" collection="dto.bookNetValueFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.bookNetValueFilters.contains("空")'>
+                OR book_net_value IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.taxedUnitPriceFilters.size() > 0">
+            AND (taxed_unit_price IN
+            <foreach item="item" collection="dto.taxedUnitPriceFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.taxedUnitPriceFilters.contains("空")'>
+                OR taxed_unit_price IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.taxRateFilters.size() > 0">
+            AND (tax_rate IN
+            <foreach item="item" collection="dto.taxRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.taxRateFilters.contains("空")'>
+                OR tax_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.economicServiceLifeFilters.size() > 0">
+            AND (economic_service_life IN
+            <foreach item="item" collection="dto.economicServiceLifeFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.economicServiceLifeFilters.contains("空")'>
+                OR economic_service_life IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.equipmentTypeFilters.size() > 0">
+            AND (equipment_type IN
+            <foreach item="item" collection="dto.equipmentTypeFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>)
+        </if>
+        <if test="dto != null and dto.valuationMethodFilters.size() > 0">
+            AND (valuation_method IN
+            <foreach item="item" collection="dto.valuationMethodFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.valuationMethodFilters.contains("空")'>
+                OR valuation_method IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.freightAndMiscellaneousFeeRateFilters.size() > 0">
+            AND (freight_and_miscellaneous_fee_rate IN
+            <foreach item="item" collection="dto.freightAndMiscellaneousFeeRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.freightAndMiscellaneousFeeRateFilters.contains("空")'>
+                OR freight_and_miscellaneous_fee_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.baseRateFilters.size() > 0">
+            AND (base_rate IN
+            <foreach item="item" collection="dto.baseRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.baseRateFilters.contains("空")'>
+                OR base_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.installationRateFilters.size() > 0">
+            AND (installation_rate IN
+            <foreach item="item" collection="dto.installationRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.installationRateFilters.contains("空")'>
+                OR installation_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.installationRateFilters.size() > 0">
+            AND (installation_rate IN
+            <foreach item="item" collection="dto.installationRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.installationRateFilters.contains("空")'>
+                OR installation_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.directObservationDepreciationRateFilters.size() > 0">
+            AND (direct_observation_depreciation_rate IN
+            <foreach item="item" collection="dto.directObservationDepreciationRateFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.directObservationDepreciationRateFilters.contains("空")'>
+                OR direct_observation_depreciation_rate IS NULL
+            </if>)
+        </if>
+        <if test="dto != null and dto.priceFilters.size() > 0">
+            AND (price IN
+            <foreach item="item" collection="dto.priceFilters" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            <if test='dto.priceFilters.contains("空")'>
+                OR price IS NULL
+            </if>)
+        </if>
         ORDER BY sort_id
     </select>
 

+ 79 - 0
domain/src/main/java/com/dayou/dto/calculate/equipment/EqptQueryDTO.java

@@ -52,5 +52,84 @@ public class EqptQueryDTO {
      */
     private List<String> manufacturerFilters;
 
+    /**
+     * 机器设备存储地点筛选条件
+     */
+    private List<String> storageLocationFilters;
+
+    /**
+     * 机器设备使用情况筛选条件
+     */
+    private List<String> usageSituationFilters;
+
+    /**
+     * 机器设备数量筛选条件
+     */
+    private List<String> quantityFilters;
+
+    /**
+     * 机器设备计量单位筛选条件
+     */
+    private List<String> unitOfMeasurementFilters;
+
+    /**
+     * 机器设备账面原值筛选条件
+     */
+    private List<String> bookOriginalValueFilters;
+
+    /**
+     * 机器设备账面净值筛选条件
+     */
+    private List<String> bookNetValueFilters;
+
+    /**
+     * 机器设备合同/发票含税单价筛选条件
+     */
+    private List<String> taxedUnitPriceFilters;
+
+    /**
+     * 机器设备购置时税率%筛选条件
+     */
+    private List<String> taxRateFilters;
+
+    /**
+     * 机器设备经济使用年数筛选条件
+     */
+    private List<String> economicServiceLifeFilters;
+
+    /**
+     * 机器设备设备类型筛选条件
+     */
+    private List<String> equipmentTypeFilters;
+
+    /**
+     * 机器设备作价方法筛选条件
+     */
+    private List<String> valuationMethodFilters;
+
+    /**
+     * 机器设备运杂费率筛选条件
+     */
+    private List<String> freightAndMiscellaneousFeeRateFilters;
+
+    /**
+     * 机器设备基础费率筛选条件
+     */
+    private List<String> baseRateFilters;
+
+    /**
+     * 机器设备安装费率筛选条件
+     */
+    private List<String> installationRateFilters;
+
+    /**
+     * 机器设备直接观察成新率筛选条件
+     */
+    private List<String> directObservationDepreciationRateFilters;
+
+    /**
+     * 机器设备单价筛选条件
+     */
+    private List<String> priceFilters;
 
 }