From cc273f0fb102a905033641fdd4e9fc325c52e086 Mon Sep 17 00:00:00 2001
From: VVT789 <sdxt_0802@163.com>
Date: 星期五, 18 四月 2025 16:36:20 +0800
Subject: [PATCH] 报警代码优化

---
 zhitan-system/src/main/java/com/zhitan/alarm/services/IHistoryAlarmService.java           |    4 -
 zhitan-system/src/main/java/com/zhitan/alarm/services/impl/HistoryAlarmServiceImpl.java   |   28 ++-------
 zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/HistoryAlarmController.java    |    5 -
 zhitan-vue/vite.config.js                                                                 |    6 +-
 zhitan-framework/src/main/java/com/zhitan/framework/web/service/SysLoginService.java      |    2 
 zhitan-system/src/main/java/com/zhitan/alarm/mapper/HistoryAlarmMapper.java               |   47 ++++++++-------
 zhitan-vue/src/views/alarmmanage/measuremen/measuremen.vue                                |   32 ++++++----
 zhitan-system/src/main/resources/mapper/alarm/HistoryAlarmMapper.xml                      |   15 +++--
 zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/AlarmAnalysisController.java   |    4 -
 zhitan-vue/src/views/alarmmanage/alarmrecord/alarmRecord.vue                              |    2 
 zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java |   17 +++--
 11 files changed, 78 insertions(+), 84 deletions(-)

diff --git a/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/AlarmAnalysisController.java b/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/AlarmAnalysisController.java
index 64aa96f..7b55dae 100644
--- a/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/AlarmAnalysisController.java
+++ b/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/AlarmAnalysisController.java
@@ -32,9 +32,7 @@
 
     @GetMapping("/getCountInfo")
     public AjaxResult getCountInfo(@Validated AlarmAnalysisDTO alarmAnalysisDTO){
-        if(ObjectUtils.isEmpty(alarmAnalysisDTO.getNodeId())){
-            return AjaxResult.error("鑺傜偣id涓嶈兘涓虹┖");
-        }
+
         if(ObjectUtils.isEmpty(alarmAnalysisDTO.getModelCode())){
             return AjaxResult.error("妯″瀷缂栫爜涓嶈兘涓虹┖");
         }
diff --git a/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/HistoryAlarmController.java b/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/HistoryAlarmController.java
index 1e26f86..4d2c776 100644
--- a/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/HistoryAlarmController.java
+++ b/zhitan-admin/src/main/java/com/zhitan/web/controller/alarm/HistoryAlarmController.java
@@ -57,10 +57,7 @@
     @GetMapping("/list")
     public TableDataInfo list(JkHistoryAlarm jkHistoryAlarm)
     {
-        startPage();
-        List<JkHistoryAlarm> list = historyAlarmService.selectHistoryAlarmPageList(jkHistoryAlarm);
-//        Page<JkHistoryAlarm> list = historyAlarmService.selectJkHistoryAlarmPage(jkHistoryAlarm);
-        return getDataTable(list);
+        return getDataTable(historyAlarmService.selectHistoryAlarmPageList(jkHistoryAlarm));
     }
     /**
      * 瀵煎嚭鍘嗗彶鎶ヨ鐩戞帶鍒楄〃
diff --git a/zhitan-framework/src/main/java/com/zhitan/framework/web/service/SysLoginService.java b/zhitan-framework/src/main/java/com/zhitan/framework/web/service/SysLoginService.java
index be2716a..89ddfce 100644
--- a/zhitan-framework/src/main/java/com/zhitan/framework/web/service/SysLoginService.java
+++ b/zhitan-framework/src/main/java/com/zhitan/framework/web/service/SysLoginService.java
@@ -61,7 +61,7 @@
     public String login(String username, String password, String code, String uuid)
     {
         // 楠岃瘉鐮佹牎楠�
-        validateCaptcha(username, code, uuid);
+//        validateCaptcha(username, code, uuid);
         // 鐧诲綍鍓嶇疆鏍¢獙
         loginPreCheck(username, password);
         // 鐢ㄦ埛楠岃瘉
diff --git a/zhitan-system/src/main/java/com/zhitan/alarm/mapper/HistoryAlarmMapper.java b/zhitan-system/src/main/java/com/zhitan/alarm/mapper/HistoryAlarmMapper.java
index b0a16c3..719be0b 100644
--- a/zhitan-system/src/main/java/com/zhitan/alarm/mapper/HistoryAlarmMapper.java
+++ b/zhitan-system/src/main/java/com/zhitan/alarm/mapper/HistoryAlarmMapper.java
@@ -18,33 +18,34 @@
  */
 public interface HistoryAlarmMapper {
 
-  /**
-   * 鑾峰彇鍘嗗彶鎶ヨ闆嗗悎
-   *
-   * @param jkHistoryAlarm 鎶ヨ鍙傛暟
-   * @return 棰勬姤璀﹁缃泦鍚�
-   */
-  List<JkHistoryAlarm> selectJkHistoryAlarmList(JkHistoryAlarm jkHistoryAlarm);
+    /**
+     * 鑾峰彇鍘嗗彶鎶ヨ闆嗗悎
+     *
+     * @param jkHistoryAlarm 鎶ヨ鍙傛暟
+     * @return 棰勬姤璀﹁缃泦鍚�
+     */
+    List<JkHistoryAlarm> selectJkHistoryAlarmList(JkHistoryAlarm jkHistoryAlarm);
 
-  List<JkHistoryAlarm> selectJkHistoryAlarmListExcel(JkHistoryAlarm jkHistoryAlarm);
+    List<JkHistoryAlarm> selectJkHistoryAlarmListExcel(JkHistoryAlarm jkHistoryAlarm);
 
-  /**
-   * 瀹炴椂妫�娴� 鍔熻兘 鐨勫 sheet椤�  灞曠ず 缁勬�佸浘  娴嬬偣 鎶ヨ淇℃伅
-   *
-   * @param jkHistoryAlarm
-   * @return
-   */
-  List<JkHistoryAlarm> selectHistoryAlarmNoteList(JkHistoryAlarm jkHistoryAlarm);
+    /**
+     * 瀹炴椂妫�娴� 鍔熻兘 鐨勫 sheet椤�  灞曠ず 缁勬�佸浘  娴嬬偣 鎶ヨ淇℃伅
+     *
+     * @param jkHistoryAlarm
+     * @return
+     */
+    List<JkHistoryAlarm> selectHistoryAlarmNoteList(JkHistoryAlarm jkHistoryAlarm);
 
-  void updateHistoryAlarm(@Param("alarmCode") String alarmCode, @Param("historyAlarm") HistoryAlarm historyAlarm);
+    void updateHistoryAlarm(@Param("alarmCode") String alarmCode, @Param("historyAlarm") HistoryAlarm historyAlarm);
 
-  Page<JkHistoryAlarm> selectJkHistoryAlarmPage(@Param("jkHistoryAlarm") JkHistoryAlarm jkHistoryAlarm,@Param("page")Page<?> page);
+    Page<JkHistoryAlarm> selectJkHistoryAlarmPage(@Param("jkHistoryAlarm") JkHistoryAlarm jkHistoryAlarm, @Param("page") Page<?> page);
 
-  Integer selectCountByTime(@Param("beginTime") DateTime beginTime,
-                            @Param("endTime") DateTime endTime,
-                            @Param("nodeIdList") List<String> nodeIdList);
+    Integer selectCountByTime(@Param("beginTime") DateTime beginTime,
+                              @Param("endTime") DateTime endTime,
+                              @Param("indexIdList") List<String> indexIdList);
 
-    List<JkHistoryAlarm> getHistoryAlarmList(@Param("indexIdList") List<String> indexIdList,
-                                             @Param("beginTime") Date beginTime,
-                                             @Param("endTime")Date endTime);
+    Page<JkHistoryAlarm> getHistoryAlarmList(@Param("beginTime") Date beginTime,
+                                             @Param("endTime") Date endTime,
+                                             @Param("indexIdList") List<String> indexIdList,
+                                             Page<JkHistoryAlarm> pageInfo);
 }
diff --git a/zhitan-system/src/main/java/com/zhitan/alarm/services/IHistoryAlarmService.java b/zhitan-system/src/main/java/com/zhitan/alarm/services/IHistoryAlarmService.java
index bc6792f..78e58ec 100644
--- a/zhitan-system/src/main/java/com/zhitan/alarm/services/IHistoryAlarmService.java
+++ b/zhitan-system/src/main/java/com/zhitan/alarm/services/IHistoryAlarmService.java
@@ -32,12 +32,10 @@
 
   void updateHistoryAlarm(String alarmCode, HistoryAlarm historyAlarm);
 
-  Page<JkHistoryAlarm> selectJkHistoryAlarmPage(JkHistoryAlarm jkHistoryAlarm, Long pageNum, Long pageSize);
-
   /**
    * 鍘嗗彶鎶ヨ鍒嗛〉鏌ヨ
    * @param jkHistoryAlarm
    * @return
    */
-  List<JkHistoryAlarm> selectHistoryAlarmPageList(JkHistoryAlarm jkHistoryAlarm);
+  Page<JkHistoryAlarm> selectHistoryAlarmPageList(JkHistoryAlarm jkHistoryAlarm);
 }
diff --git a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java
index 53d8c83..b416f28 100644
--- a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java
+++ b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java
@@ -2,6 +2,7 @@
 
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.zhitan.alarm.domain.JkHistoryAlarm;
 import com.zhitan.alarm.domain.dto.AlarmAnalysisDTO;
 import com.zhitan.alarm.domain.vo.AlarmAnalysisVO;
@@ -53,7 +54,7 @@
     private final SysEnergyMapper sysEnergyMapper;
 
     /**
-     * 鏍规嵁鑺傜偣id鑾峰彇鎶ヨ鍒嗘瀽淇℃伅(搴熷純)
+     * 鏍规嵁鑺傜偣id鑾峰彇鎶ヨ鍒嗘瀽淇℃伅
      *
      * @param alarmAnalysisDTO
      * @return
@@ -198,23 +199,27 @@
 
         AlarmAnalysisVO alarmAnalysisVO = new AlarmAnalysisVO();
 
+        ModelNode parentNode = modelNodeMapper.selectModelNodeById(alarmAnalysisDTO.getNodeId());
+        if(ObjectUtils.isEmpty(parentNode)){
+            return alarmAnalysisVO;
+        }
+
         // 鏌ヨ妯″瀷涓嬬殑鐐逛綅鏁版嵁
-        ModelNode modelNode = modelNodeMapper.selectModelNodeById(alarmAnalysisDTO.getNodeId());
-        List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.getAllModelNodeIndexByAddress(modelNode.getModelCode(), modelNode.getAddress());
+        List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.getAllModelNodeIndexByAddress(parentNode.getModelCode(), parentNode.getAddress());
         alarmAnalysisVO.setIndexCount(nodeIndexInfoList.size());
         if (CollectionUtils.isEmpty(nodeIndexInfoList)) {
             return alarmAnalysisVO;
         }
 
         // 鑾峰彇鏈堟姤璀︽暟銆佸勾鎶ヨ鏁�
-        List<String> nodeIdList = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList());
+        List<String> indexIdList = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList());
 
         DateTime beginOfMonth = DateUtil.beginOfMonth(new Date());
         DateTime endOfMonth = DateUtil.endOfMonth(new Date());
         DateTime beginOfYear = DateUtil.beginOfYear(new Date());
         DateTime endOfYear = DateUtil.endOfYear(new Date());
-        Integer monthCount = historyAlarmMapper.selectCountByTime(beginOfMonth,endOfMonth, nodeIdList);
-        Integer yearCount = historyAlarmMapper.selectCountByTime(beginOfYear,endOfYear, nodeIdList);
+        Integer monthCount = historyAlarmMapper.selectCountByTime(beginOfMonth,endOfMonth, indexIdList);
+        Integer yearCount = historyAlarmMapper.selectCountByTime(beginOfYear,endOfYear, indexIdList);
 
         alarmAnalysisVO.setMonthCount(monthCount);
         alarmAnalysisVO.setYearCount(yearCount);
diff --git a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/HistoryAlarmServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/HistoryAlarmServiceImpl.java
index 0a1f8ec..da5e081 100644
--- a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/HistoryAlarmServiceImpl.java
+++ b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/HistoryAlarmServiceImpl.java
@@ -13,6 +13,7 @@
 import com.zhitan.basicdata.mapper.MeterImplementMapper;
 import com.zhitan.common.enums.TimeType;
 import com.zhitan.common.utils.DateUtils;
+import com.zhitan.common.utils.PageUtils;
 import com.zhitan.common.utils.StringUtils;
 import com.zhitan.model.domain.EnergyIndex;
 import com.zhitan.model.domain.ModelNode;
@@ -91,23 +92,6 @@
         historyAlarmMapper.updateHistoryAlarm(alarmCode, historyAlarm);
     }
 
-    // 搴熷純
-    @Override
-    public Page<JkHistoryAlarm> selectJkHistoryAlarmPage(JkHistoryAlarm jkHistoryAlarm, Long pageNum, Long pageSize) {
-        final Page<JkHistoryAlarm> jkHistoryAlarmPage = historyAlarmMapper.selectJkHistoryAlarmPage(jkHistoryAlarm, new Page<>(pageNum, pageSize));
-        jkHistoryAlarmPage.getRecords().forEach(alarm -> {
-            final String indexType = alarm.getIndexType();
-            final String indexId = alarm.getIndexId();
-            if ("COLLECT".equals(indexType) && StringUtils.isEmpty(alarm.getEnergyId())) {
-                //鏍规嵁nodeId鍜宨ndexId 鍘绘煡璇㈣閲忓櫒鍏�
-                EnergyIndex energyIndex = energyIndexMapper.selectEnergyIndexById(indexId);
-                final MeterImplement meterImplement = meterImplementMapper.selectMeterImplementById(energyIndex.getMeterId());
-                alarm.setEnergyId(meterImplement.getEnergyType());
-            }
-        });
-        return jkHistoryAlarmPage;
-    }
-
     /**
      * 鑾峰彇鍘嗗彶鎶ヨ鍒嗛〉鏁版嵁
      *
@@ -115,7 +99,8 @@
      * @return
      */
     @Override
-    public List<JkHistoryAlarm> selectHistoryAlarmPageList(JkHistoryAlarm historyAlarm) {
+    public Page<JkHistoryAlarm> selectHistoryAlarmPageList(JkHistoryAlarm historyAlarm) {
+        Page<JkHistoryAlarm> pageInfo = PageUtils.getPageInfo(JkHistoryAlarm.class);
 
         List<String> indexIdList = new ArrayList<>();
         if ("ALL".equals(historyAlarm.getEierarchyFlag())) {
@@ -154,7 +139,7 @@
         }
 
         if (ObjectUtils.isEmpty(indexIdList)) {
-            return new ArrayList<>();
+            return pageInfo;
         }
 
         //鏃堕棿澶勭悊 濡傛灉涓嶄紶鏃堕棿榛樿鏌ヨ褰撳ぉ鐨勬暟鎹�
@@ -162,13 +147,12 @@
         if (ObjectUtils.isEmpty(endTime)) {
             endTime = DateUtil.endOfDay(DateUtils.getNowDate());
         }
-        Date beginTime = DateUtils.parseDate(historyAlarm.getEndTime());
+        Date beginTime = DateUtils.parseDate(historyAlarm.getBeginTime());
         if (ObjectUtils.isEmpty(beginTime)) {
             beginTime = DateUtil.beginOfDay(DateUtils.getNowDate());
         }
 
-        List<JkHistoryAlarm> historyAlarmList = historyAlarmMapper.getHistoryAlarmList(indexIdList, beginTime, endTime);
-        return historyAlarmList;
+        return historyAlarmMapper.getHistoryAlarmList(beginTime, endTime,indexIdList, pageInfo);
     }
 
 }
diff --git a/zhitan-system/src/main/resources/mapper/alarm/HistoryAlarmMapper.xml b/zhitan-system/src/main/resources/mapper/alarm/HistoryAlarmMapper.xml
index 68ca059..49eab74 100644
--- a/zhitan-system/src/main/resources/mapper/alarm/HistoryAlarmMapper.xml
+++ b/zhitan-system/src/main/resources/mapper/alarm/HistoryAlarmMapper.xml
@@ -338,9 +338,9 @@
       <if test="endTime != null ">
         and begin_time &lt;= #{endTime}
       </if>
-      <if test="nodeIdList != null and nodeIdList.size() > 0">
-        and node_id in
-        <foreach collection="nodeIdList" item="item" open="(" separator="," close=")">
+      <if test="indexIdList != null and indexIdList.size() > 0">
+        and index_id in
+        <foreach collection="indexIdList" item="item" open="(" separator="," close=")">
             #{item}
         </foreach>
       </if>
@@ -348,19 +348,22 @@
   </select>
     <select id="getHistoryAlarmList" resultType="com.zhitan.alarm.domain.JkHistoryAlarm">
       SELECT
+        mn.node_id nodeId,
         mn."name" modelName,
         mi.meter_name meterName,
+        mi.energy_type energyId,
         his.index_id indexId,
         ei."name" indexName,
+        ei.index_type indexType,
         ei.code code,
         ei.unit_id unitId,
         ai.alarm_level alarmLevel,
         ai.limit_type limitType,
         his.limiting_value limitingValue,
         his.alarm_value alarmValue,
-        his.begin_time beginTime,
-        his.end_time endTime,
-        his.duration
+        his.begin_time alarmBeginTime,
+        his.end_time alarmEndTime,
+        his.duration duration
       FROM
         history_alarm his
           LEFT JOIN alarm_item ai ON his.item_id = ai."id"
diff --git a/zhitan-vue/src/views/alarmmanage/alarmrecord/alarmRecord.vue b/zhitan-vue/src/views/alarmmanage/alarmrecord/alarmRecord.vue
index 1ff3b79..57a7400 100644
--- a/zhitan-vue/src/views/alarmmanage/alarmrecord/alarmRecord.vue
+++ b/zhitan-vue/src/views/alarmmanage/alarmrecord/alarmRecord.vue
@@ -70,7 +70,7 @@
                 show-overflow-tooltip
                 :formatter="(row, column) => formatterLabel(energyTypeList, row.energyId)"
               />
-              <el-table-column label="棰勮鍊�" prop="energyType" align="center" show-overflow-tooltip />
+              <el-table-column label="棰勮鍊�" prop="limitingValue" align="center" show-overflow-tooltip />
               <el-table-column label="鎶ヨ鍊�" prop="alarmValue" align="center" show-overflow-tooltip />
               <el-table-column label="鎶ヨ鏃堕棿" prop="alarmBeginTime" align="center" show-overflow-tooltip />
             </el-table>
diff --git a/zhitan-vue/src/views/alarmmanage/measuremen/measuremen.vue b/zhitan-vue/src/views/alarmmanage/measuremen/measuremen.vue
index cbd3852..d831208 100644
--- a/zhitan-vue/src/views/alarmmanage/measuremen/measuremen.vue
+++ b/zhitan-vue/src/views/alarmmanage/measuremen/measuremen.vue
@@ -97,10 +97,13 @@
   timeType: null,
   dataTime: null,
   nodeId: null,
+  modelCode: ''
 })
 
 import { getByNodeId, getCountInfo } from "@/api/alarmManage/alarmManage"
 import { el } from "element-plus/es/locales.mjs"
+import { useRoute } from "vue-router"
+const route = useRoute()
 let form = ref({})
 let currentNode = ref()
 
@@ -114,6 +117,7 @@
   handleTimeType(period.value[0].value)
 
   getByNodeIdFun()
+  getCountInfoFun()
 }
 
 function getByNodeIdFun() {
@@ -155,10 +159,12 @@
 // getByNodeIdFun()
 function handleQuery() {
   getByNodeIdFun()
+  getCountInfoFun()
 }
 function resetQuery() {
   handleTimeType("YEAR")
   getByNodeIdFun()
+  getCountInfoFun()
 }
 let dataArray = ref({
   indexCount: 0,
@@ -166,14 +172,16 @@
   monthCount: 0,
 })
 function getCountInfoFun() {
-  getCountInfo(queryParams.value).then((res) => {
+  getCountInfo({
+    ...queryParams.value,
+    modelCode: route.query.modelCode,
+  }).then((res) => {
     if (res.code == 200) {
       dataArray.value = res.data
     }
   })
 }
 
-getCountInfoFun()
 function pieChart(Id, data, name) {
   console.log(data)
   let total = 0
@@ -274,11 +282,11 @@
       axisPointer: {
         type: "shadow",
       },
-      axisTick: {
-        show: false,
-        alignWithLabel: true,
-        length: 5,
-      },
+      // axisTick: {
+      //   show: false,
+      //   alignWithLabel: true,
+      //   length: 5,
+      // },
       // 鍧愭爣杞村埢搴︾嚎鏍峰紡
       axisTick: {
         show: false,
@@ -313,11 +321,11 @@
         padding: [0, 0, 5, 0],
       },
       // 鍧愭爣杞村埢搴�
-      axisTick: {
-        show: false,
-        alignWithLabel: true,
-        length: 5,
-      },
+      // axisTick: {
+      //   show: false,
+      //   alignWithLabel: true,
+      //   length: 5,
+      // },
       // 鍧愭爣杞村埢搴︾嚎鏍峰紡
       axisTick: {
         show: false,
diff --git a/zhitan-vue/vite.config.js b/zhitan-vue/vite.config.js
index b9d01a0..d7726c7 100644
--- a/zhitan-vue/vite.config.js
+++ b/zhitan-vue/vite.config.js
@@ -33,12 +33,12 @@
       proxy: {
         // https://cn.vitejs.dev/config/#server-proxy
         "/dev-api": {
-          target: "https://demo-ems.zhitancloud.com",
+          target: "http://localhost:8080",
           changeOrigin: true,
-          rewrite: (p) => p.replace(/^\/dev-api/, "/prod-api"),
+          rewrite: (p) => p.replace(/^\/dev-api/, "/"),
         },
         "/prod-api": {
-          target: "https://demo-ems.zhitancloud.com",
+          target: "http://localhost:8080",
           changeOrigin: true,
           secure: true,
         },

--
Gitblit v1.9.3