From 58020f3d711d4baa16ef092c2ea826071c7d23b9 Mon Sep 17 00:00:00 2001 From: cuilei <ray_tsu1@163.com> Date: 星期三, 16 七月 2025 18:26:35 +0800 Subject: [PATCH] 消息推送定时任务逻辑调整 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml | 68 +++++++++++++++++++++++++++++++++- 1 files changed, 66 insertions(+), 2 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml index fb16bd6..59506ad 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml @@ -14,7 +14,7 @@ <when test="equipmentIds != null and equipmentIds.size() > 0 "> AND t2.equipment_code IN <foreach collection="equipmentIds" item="equipmentId" index="index" open="(" close=")" separator=","> - {equipmentId} + #{equipmentId} </foreach> </when> <otherwise> @@ -46,6 +46,70 @@ AND t1.fault_start_time BETWEEN #{ eamReportRepair.startTime } AND #{ eamReportRepair.endTime } </if> </where> - ORDER BY t1.fault_start_time DESC + ORDER BY t1.create_time DESC + </select> + + <select id="equipmentRepairStatistics" resultType="org.jeecg.modules.eam.vo.EquipmentRepairStatistics"> + select FORMAT(err.create_time, 'yyyy-MM') as monthStr, + COUNT(1) as reportNumber, + SUM(CASE WHEN err.report_status = 'COMPLETE' THEN 1 ELSE 0 END) as repairedNumber + from eam_report_repair err + inner join eam_equipment e + on err.equipment_id = e.id + where err.report_status != 'ABOLISH' and err.del_flag = 0 and e.del_flag = 0 + <if test="productionIds != null"> + AND e.org_id IN + <foreach collection="productionIds" item="productionId" index="index" open="(" close=")" separator=","> + #{productionId} + </foreach> + </if> + and err.create_time >= #{start} + and err.create_time < #{end} + group by FORMAT(err.create_time, 'yyyy-MM') + </select> + <select id="repairStatusStatistics" resultType="org.jeecg.modules.eam.vo.EquipmentRepairStatusStatistics"> + SELECT + SUM(CASE WHEN t.report_status='WAIT_REPAIR' THEN 1 ELSE 0 END) AS waitRepair, + SUM(CASE WHEN t.report_status='UNDER_REPAIR' THEN 1 ELSE 0 END) AS underRepair, + SUM(CASE WHEN t.report_status='WAIT_SPARES' THEN 1 ELSE 0 END) AS waitSpares, + SUM(CASE WHEN t.report_status='WAIT_CONFIRM' THEN 1 ELSE 0 END) AS waitConfirm + from eam_report_repair t + where t.report_status not in ('ABOLISH', 'COMPLETE') and t.del_flag = 0 + </select> + + <select id="repairList" resultType="org.jeecg.modules.eam.vo.EquipmentRepairListVO"> + select e.equipment_code, + e.equipment_name, + e.org_id, + e.installation_position, + err.create_by as reportOperator, + err.fault_start_time, + ero.repairer as repairOperator, + ero.actual_start_time as repairStartTime, + err.report_status + from eam_report_repair err + left join eam_equipment e + on err.equipment_id = e.id + left join eam_repair_order ero + on ero.report_id = err.id + where err.report_status not in ('ABOLISH', 'COMPLETE') + and err.del_flag = 0 + order by e.org_id, err.fault_start_time + </select> + + <select id="faultTypeStatistics" resultType="org.jeecg.modules.eam.vo.FaultTypeStatisticsVO"> + select t.fault_type, count(1) as faultCount + from eam_report_repair t + where t.report_status != 'ABOLISH' and t.del_flag = 0 + and t.create_time >= #{start} + and t.create_time < #{end} + group by t.fault_type + </select> + <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamReportRepair"> + select wmo.*, e.equipment_code, e.equipment_name, e.installation_position + from eam_report_repair wmo + inner join eam_equipment e + on wmo.equipment_id = e.id + ${ew.customSqlSegment} </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3