From 7f0fcee97eb8415fca76c12942cb641ef125a5f3 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 31 七月 2024 17:15:47 +0800 Subject: [PATCH] 通信中间件对报警的取水口间隔发送消息实现 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java | 31 ++++++++++++++++++++++++++++++- 1 files changed, 30 insertions(+), 1 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java index a29a46a..6e9cbe3 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java @@ -1,8 +1,11 @@ package com.dy.rtuMw.server.rtuData.p206V1_0_0; import com.dy.common.mw.protocol.p206V1_0_0.upVos.*; +import com.dy.common.springUtil.SpringContextUtil; import com.dy.common.util.DateTime; +import com.dy.pipIrrGlobal.config.DingTalk; import com.dy.pipIrrGlobal.pojoRm.RmAlarmStateHistory; +import com.dy.rtuMw.server.ServerProperties; import com.dy.rtuMw.server.rtuData.TaskSurpport; import com.dy.rtuMw.server.rtuData.dbSv.DbSv; import com.dy.common.mw.protocol.Data; @@ -92,8 +95,23 @@ po.intakeId = controller==null?null:controller.getIntakeId() ; po.rtuAddr = rtuAddr ; po.valueFrom(dV1_0_1, rtuDt, alarmVo, stateVo); + if(alarmVo.hasAlarm()){ + po.sendMsTime = System.currentTimeMillis() ; + this.sendMessage(controller, alarmVo); + } sv.saveRmAlarmStateLast(po) ; }else{ + if(po.sendMsTime == null){ + po.sendMsTime = System.currentTimeMillis() ; + this.sendMessage(controller, alarmVo); + }else{ + Long now = System.currentTimeMillis() ; + if(((now - po.sendMsTime) / (1000 * 60)) > ServerProperties.sendDingDingAlarmMsInterval){ + //澶т簬瑙勫畾鐨勯棿闅旀椂闂� + po.sendMsTime = System.currentTimeMillis() ; + this.sendMessage(controller, alarmVo); + } + } po = this.update(controller, po, rtuDt, dV1_0_1, alarmVo, stateVo) ; sv.updateRmAlarmStateLast(po); } @@ -129,7 +147,7 @@ /** - * 铏氭嫙鍗″湪鍙栨按涓殑鍗犵敤鐘舵�佹敼涓洪潪搴旂敤鐘舵�� + * 铏氭嫙鍗″湪鍙栨按鍙d笂鐨勫崰鐢ㄧ姸鎬佹敼涓洪潪搴旂敤鐘舵�� */ private void updateVirCardNoUseState(DbSv sv, PrController controller, @@ -146,4 +164,15 @@ } + /** + * 鍚戦拤閽夊彂閫佹秷鎭� + * @param controller + * @param alarmVo + */ + private void sendMessage(PrController controller, DataAlarmVo alarmVo){ + String ms = "鍙栨按鍙�" + controller.getIntakeName() + "浜х敓鎶ヨ锛�" + alarmVo.alarmContent() ; + DingTalk dingTalk = SpringContextUtil.getBean(DingTalk.class) ; + dingTalk.sendMessage(ms); + } + } -- Gitblit v1.8.0