From 36fdd5fcdd57dc67c7728c572b8423bc0d3c9c88 Mon Sep 17 00:00:00 2001 From: Fancy <Fancy.fx@outlook.com> Date: 星期二, 07 一月 2025 10:10:20 +0800 Subject: [PATCH] top10 error add time --- pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml | 97 +++++++++++++++++++++++++++++------------------- 1 files changed, 58 insertions(+), 39 deletions(-) diff --git a/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml b/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml index 40c6859..a61c09f 100644 --- a/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml +++ b/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml @@ -72,10 +72,10 @@ <if test="deviceNo != null and deviceNo !=''"> and device_no = #{deviceNo,jdbcType=VARCHAR} </if> - <if test="startTime != null and startTime !=''"> + <if test="startTime != null"> and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP} </if> - <if test="endTime != null and endTime !=''"> + <if test="endTime != null"> and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP} </if> </where> @@ -85,10 +85,10 @@ <if test="deviceNo != null and deviceNo !=''"> and device_no = #{deviceNo,jdbcType=VARCHAR} </if> - <if test="startTime != null and startTime !=''"> + <if test="startTime != null"> and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP} </if> - <if test="endTime != null and endTime !=''"> + <if test="endTime != null"> and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP} </if> </where> @@ -97,6 +97,25 @@ left join plt_station s on s.id = t.station_id left JOIN ba_user u on u.id=t.updated_by ORDER BY t.id DESC + </select> + <select id="queryTopError" resultType="cn.hutool.json.JSONObject"> + WITH total AS ( SELECT + DISTINCT u.device_no, + SUBSTRING_INDEX( SUBSTRING_INDEX( u.error_msg, '锛�', b.help_topic_id + 1 ), '锛�', -1 ) AS error_msg + FROM + ( SELECT device_no, error_msg FROM sta_device_production_log_past WHERE error_msg LIKE ('%涓嶅悎鏍�%') + <if test="startTime != null"> + and out_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP} + </if> + <if test="endTime != null"> + and out_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP} + </if> + <!-- AND out_time BETWEEN '2024-08-01 00:00:00' AND '2024-08-30 23:59:59' --> + UNION + SELECT device_no, error_msg FROM sta_device_production_log WHERE error_msg LIKE ('%涓嶅悎鏍�%') + ) u, + mysql.help_topic b WHERE b.help_topic_id <![CDATA[ < ]]>((( LENGTH( u.error_msg ) - LENGTH( REPLACE(u.error_msg,'锛�','') ))/3) + 1 )) + SELECT error_msg, COUNT(error_msg) num FROM total WHERE error_msg LIKE ('%涓嶅悎鏍�%') GROUP BY error_msg ORDER BY num DESC LIMIT 10 </select> <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> @@ -123,44 +142,44 @@ <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog" useGeneratedKeys="true"> insert into sta_device_production_log <trim prefix="(" suffix=")" suffixOverrides=","> - <if test="id != null and id !=''">id,</if> + <if test="id != null">id,</if> <if test="deviceNo != null and deviceNo !=''">device_no,</if> - <if test="workId != null and workId !=''">work_id,</if> - <if test="repairId != null and repairId !=''">repair_id,</if> - <if test="planId != null and planId !=''">plan_id,</if> - <if test="stationId != null and stationId !=''">station_id,</if> - <if test="currNode != null and currNode !=''">curr_node,</if> + <if test="workId != null">work_id,</if> + <if test="repairId != null">repair_id,</if> + <if test="planId != null">plan_id,</if> + <if test="stationId != null">station_id,</if> + <if test="currNode != null">curr_node,</if> <if test="nodeContent != null and nodeContent !=''">node_content,</if> <if test="deviceCycleContent != null and deviceCycleContent !=''">device_cycle_content,</if> - <if test="status != null and status !=''">status,</if> - <if test="result != null and result !=''">result,</if> + <if test="status != null">status,</if> + <if test="result != null">result,</if> <if test="errorMsg != null and errorMsg !=''">error_msg,</if> <if test="assistants != null and assistants !=''">assistants,</if> - <if test="inTime != null and inTime !=''">in_time,</if> - <if test="outTime != null and outTime !=''">out_time,</if> - <if test="updatedBy != null and updatedBy !=''">updated_by,</if> + <if test="inTime != null">in_time,</if> + <if test="outTime != null">out_time,</if> + <if test="updatedBy != null">updated_by,</if> <if test="memo != null and memo !=''">memo,</if> - <if test="number != null and number !=''">number,</if> + <if test="number != null">number,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> - <if test="id != null and id !=''">#{id,jdbcType=BIGINT},</if> + <if test="id != null">#{id,jdbcType=BIGINT},</if> <if test="deviceNo != null and deviceNo !=''">#{deviceNo,jdbcType=VARCHAR},</if> - <if test="workId != null and workId !=''">#{workId,jdbcType=BIGINT},</if> - <if test="repairId != null and repairId !=''">#{repairId,jdbcType=BIGINT},</if> - <if test="planId != null and planId !=''">#{planId,jdbcType=BIGINT},</if> - <if test="stationId != null and stationId !=''">#{stationId,jdbcType=BIGINT},</if> - <if test="currNode != null and currNode !=''">#{currNode,jdbcType=BIGINT},</if> + <if test="workId != null">#{workId,jdbcType=BIGINT},</if> + <if test="repairId != null">#{repairId,jdbcType=BIGINT},</if> + <if test="planId != null">#{planId,jdbcType=BIGINT},</if> + <if test="stationId != null">#{stationId,jdbcType=BIGINT},</if> + <if test="currNode != null">#{currNode,jdbcType=BIGINT},</if> <if test="nodeContent != null and nodeContent !=''">#{nodeContent,jdbcType=VARCHAR},</if> <if test="deviceCycleContent != null and deviceCycleContent !=''">#{deviceCycleContent,jdbcType=VARCHAR},</if> - <if test="status != null and status !=''">#{status,jdbcType=TINYINT},</if> - <if test="result != null and result !=''">#{result,jdbcType=TINYINT},</if> + <if test="status != null">#{status,jdbcType=TINYINT},</if> + <if test="result != null">#{result,jdbcType=TINYINT},</if> <if test="errorMsg != null and errorMsg !=''">#{errorMsg,jdbcType=VARCHAR},</if> <if test="assistants != null and assistants !=''">#{assistants,jdbcType=VARCHAR},</if> - <if test="inTime != null and inTime !=''">#{inTime,jdbcType=TIMESTAMP},</if> - <if test="outTime != null and outTime !=''">#{outTime,jdbcType=TIMESTAMP},</if> - <if test="updatedBy != null and updatedBy !=''">#{updatedBy,jdbcType=BIGINT},</if> + <if test="inTime != null">#{inTime,jdbcType=TIMESTAMP},</if> + <if test="outTime != null">#{outTime,jdbcType=TIMESTAMP},</if> + <if test="updatedBy != null">#{updatedBy,jdbcType=BIGINT},</if> <if test="memo != null and memo !=''">#{memo,jdbcType=VARCHAR},</if> - <if test="number != null and number !=''">#{number,jdbcType=INTEGER},</if> + <if test="number != null">#{number,jdbcType=INTEGER},</if> </trim> </insert> <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog"> @@ -169,19 +188,19 @@ <if test="deviceNo != null and deviceNo !=''"> device_no = #{deviceNo,jdbcType=VARCHAR}, </if> - <if test="workId != null and workId !=''"> + <if test="workId != null"> work_id = #{workId,jdbcType=BIGINT}, </if> - <if test="repairId != null and repairId !=''"> + <if test="repairId != null"> repair_id = #{repairId,jdbcType=BIGINT}, </if> - <if test="planId != null and planId !=''"> + <if test="planId != null"> plan_id = #{planId,jdbcType=BIGINT}, </if> - <if test="stationId != null and stationId !=''"> + <if test="stationId != null"> station_id = #{stationId,jdbcType=BIGINT}, </if> - <if test="currNode != null and currNode !=''"> + <if test="currNode != null"> curr_node = #{currNode,jdbcType=BIGINT}, </if> <if test="nodeContent != null and nodeContent !=''"> @@ -190,10 +209,10 @@ <if test="deviceCycleContent != null and deviceCycleContent !=''"> device_cycle_content = #{deviceCycleContent,jdbcType=VARCHAR}, </if> - <if test="status != null and status !=''"> + <if test="status != null"> status = #{status,jdbcType=TINYINT}, </if> - <if test="result != null and result !=''"> + <if test="result != null"> result = #{result,jdbcType=TINYINT}, </if> <if test="errorMsg != null and errorMsg !=''"> @@ -202,19 +221,19 @@ <if test="assistants != null and assistants !=''"> assistants = #{assistants,jdbcType=VARCHAR}, </if> - <if test="inTime != null and inTime !=''"> + <if test="inTime != null"> in_time = #{inTime,jdbcType=TIMESTAMP}, </if> - <if test="outTime != null and outTime !=''"> + <if test="outTime != null"> out_time = #{outTime,jdbcType=TIMESTAMP}, </if> - <if test="updatedBy != null and updatedBy !=''"> + <if test="updatedBy != null"> updated_by = #{updatedBy,jdbcType=BIGINT}, </if> <if test="memo != null and memo !=''"> memo = #{memo,jdbcType=VARCHAR}, </if> - <if test="number != null and number !=''"> + <if test="number != null"> number = #{number,jdbcType=INTEGER}, </if> </set> -- Gitblit v1.8.0