From 9b015b51b72ba050b4c38a6ba79eb45b7065e67d Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期四, 25 七月 2024 10:11:52 +0800 Subject: [PATCH] 调整sql --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml | 81 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 78 insertions(+), 3 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml index e85db73..73d3381 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml @@ -25,6 +25,18 @@ WHERE t1.the_date <= #{ vo.endTime } AND t1.the_date >= #{ vo.startTime } + <if test="vo.equipmentType != null and vo.equipmentType != '' "> + AND t2.equipment_type = #{ vo.equipmentType } + </if> + <if test="vo.driveType != null and vo.driveType != '' "> + AND t2.drive_type = #{ vo.driveType } + </if> + <if test="vo.deviceLevel != null and vo.deviceLevel != '' "> + AND t2.device_level = #{vo.deviceLevel} + </if> + <if test="vo.deviceCategory != null and vo.deviceCategory != '' "> + AND t2.device_category = #{vo.deviceCategory} + </if> <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 "> AND t2.equipment_id IN <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> @@ -60,6 +72,18 @@ WHERE t1.the_date <= #{ vo.endTime } AND t1.the_date >= #{ vo.startTime } + <if test="vo.equipmentType != null and vo.equipmentType != '' "> + AND t2.equipment_type = #{ vo.equipmentType } + </if> + <if test="vo.driveType != null and vo.driveType != '' "> + AND t2.drive_type = #{ vo.driveType } + </if> + <if test="vo.deviceLevel != null and vo.deviceLevel != '' "> + AND t2.device_level = #{vo.deviceLevel} + </if> + <if test="vo.deviceCategory != null and vo.deviceCategory != '' "> + AND t2.device_category = #{vo.deviceCategory} + </if> <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 "> AND t2.equipment_id IN <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> @@ -81,13 +105,14 @@ SUM ( t1.process_long ) processLong, SUM ( t1.open_long ) openLong, SUM ( t1.wait_long ) waitLong, - SUM ( t1.close_long ) closeLong + SUM ( t1.close_long ) closeLong, + sum ( t1.total_long ) totalLong FROM mdc_equipment t2 LEFT JOIN mdc_equipment_statistical_shift_info t1 ON t1.equipment_id = t2.equipment_id <where> - AND t1.the_date <= #{ endTime } - AND t1.the_date >= #{ startTime } + AND t1.the_date <= #{ vo.endTime } + AND t1.the_date >= #{ vo.startTime } <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 "> AND t2.equipment_id IN <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> @@ -100,6 +125,18 @@ <if test="vo.shiftSubId != null and vo.shiftSubId != ''"> AND t1.shift_sub_id = #{ vo.shiftSubId } </if> + <if test="vo.equipmentType != null and vo.equipmentType != '' "> + AND t2.equipment_type = #{ vo.equipmentType } + </if> + <if test="vo.driveType != null and vo.driveType != '' "> + AND t2.drive_type = #{ vo.driveType } + </if> + <if test="vo.deviceLevel != null and vo.deviceLevel != '' "> + AND t2.device_level = #{vo.deviceLevel} + </if> + <if test="vo.deviceCategory != null and vo.deviceCategory != '' "> + AND t2.device_category = #{vo.deviceCategory} + </if> </where> GROUP BY t2.equipment_id, @@ -111,4 +148,42 @@ ORDER BY t1.the_date </select> + + <!--鏌ヨ鍘熷鏁版嵁--> + <select id="comparativeAnalysis" resultType="org.jeecg.modules.mdc.dto.MdcComAnaDto"> + SELECT + mesi.equipment_id equipmentId, + SUM ( mesi.open_long ) openLong, + SUM ( mesi.close_long ) closeLong, + SUM ( mesi.wait_long ) waitLong, + SUM ( mesi.process_long ) processLong + FROM + mdc_equipment_statistical_info mesi + LEFT JOIN mdc_equipment me ON mesi.equipment_id = me.equipment_id + <where> + <if test="vo.equipmentIdList != null and vo.equipmentIdList.size() > 0 "> + AND mesi.equipment_id IN + <foreach collection="vo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + <if test="vo.driveType != null and vo.driveType != null"> + AND me.drive_type = #{ vo.driveType } + </if> + AND mesi.the_date BETWEEN #{ vo.startTime } AND #{ vo.endTime } + </where> + GROUP BY + mesi.equipment_id + </select> + + + <select id="getEfficiencyRate" resultType="java.math.BigDecimal"> + SELECT + process_long + FROM + mdc_equipment_statistical_info + WHERE + equipment_id = #{ equipmentId } AND the_date >= #{ date } + ORDER BY the_date ASC + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3