From c208c3ac325eee2d07b4e4f4af9a525e8511aee0 Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期二, 07 一月 2025 09:35:06 +0800
Subject: [PATCH] top10 error

---
 pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml              |   12 ++++++++++++
 pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java             |    6 ++++++
 pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java           |   11 ++++++++++-
 pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoSta/StaDeviceProductionLogMapper.java |    2 ++
 4 files changed, 30 insertions(+), 1 deletions(-)

diff --git a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoSta/StaDeviceProductionLogMapper.java b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoSta/StaDeviceProductionLogMapper.java
index 22eed32..9f0ef29 100644
--- a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoSta/StaDeviceProductionLogMapper.java
+++ b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoSta/StaDeviceProductionLogMapper.java
@@ -1,5 +1,6 @@
 package com.dy.pmsGlobal.daoSta;
 
+import cn.hutool.json.JSONObject;
 import com.dy.pmsGlobal.pojoSta.StaDeviceProductionLog;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -32,4 +33,5 @@
 
     int updateByPrimaryKey(StaDeviceProductionLog record);
 
+    List<JSONObject> queryTopError();
 }
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 93a9da0..30f80e6 100644
--- a/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml
+++ b/pms-parent/pms-global/src/main/resources/mapper/StaDeviceProductionLogMapper.xml
@@ -98,6 +98,18 @@
         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 ('%涓嶅悎鏍�%')
+        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">
         delete from sta_device_production_log
diff --git a/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java b/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java
index bc5fdf7..83ea87f 100644
--- a/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java
+++ b/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java
@@ -54,6 +54,7 @@
         List<JSONObject> list = sv.queryPlanList();
         return BaseResponseUtils.buildSuccess(list);
     }
+
     /**
      * 浠诲姟鐪嬫澘  鏌ヨ宸ョ珯浣跨敤鎯呭喌
      * */
@@ -63,7 +64,15 @@
         List<JSONObject> list = sv.queryWorkList();
         return BaseResponseUtils.buildSuccess(list);
     }
-
+    /**
+     * 浠诲姟鐪嬫澘  鏌ヨ鍦ㄤ骇浠诲姟鐪嬫澘
+     * */
+    @GetMapping(path="queryTopError")
+    @Log("鏌ヨtop10涓嶈壇")
+    public BaseResponse<List<JSONObject>> queryTopError(){
+        List<JSONObject> list = sv.queryTopError();
+        return BaseResponseUtils.buildSuccess(list);
+    }
     /**
      * 浠诲姟鐪嬫澘  鏌ヨ鍦ㄤ骇浠诲姟鐪嬫澘
      * */
diff --git a/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java b/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java
index 3520071..a97e7e4 100644
--- a/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java
+++ b/pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java
@@ -94,6 +94,7 @@
         this.workloadDao = workloadDao;
     }
 
+
     public Map<String, Object> getDeviceInfo(String deviceNo) {
         if (StringUtils.isBlank(deviceNo)) {
             return null;
@@ -205,4 +206,9 @@
             }
         }
     }
+
+    public List<JSONObject> queryTopError() {
+        List<JSONObject> list = deviceProductionLogDao.queryTopError();
+        return list;
+    }
 }

--
Gitblit v1.8.0