From 4e7a30ed6112dd69e735343aa723f8ea0c2b3927 Mon Sep 17 00:00:00 2001 From: gaoyutao Date: Fri, 19 Dec 2025 18:45:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8F=96=E6=B6=88=E5=91=8A?= =?UTF-8?q?=E8=AD=A6=E9=97=AA=E7=83=81=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RmResourceRegistrationController.java | 10 +++++++ .../system/domain/RmResourceRegistration.java | 3 ++ .../mapper/RmResourceRegistrationMapper.java | 2 ++ .../IRmResourceRegistrationService.java | 7 +++++ .../RmResourceRegistrationServiceImpl.java | 28 +++++++++++++++++-- .../system/RmResourceRegistrationMapper.xml | 12 +++++++- 6 files changed, 59 insertions(+), 3 deletions(-) diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/controller/RmResourceRegistrationController.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/controller/RmResourceRegistrationController.java index dadf007..33b2bcb 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/controller/RmResourceRegistrationController.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/controller/RmResourceRegistrationController.java @@ -159,6 +159,7 @@ public class RmResourceRegistrationController extends BaseController { List list = rmResourceRegistrationService.selectRmResourceRegistrationList(new RmResourceRegistration()); for (RmResourceRegistration item : list) { + boolean isAlarm = (item.getCpuUtil() != null && item.getCpuUtil().compareTo(BigDecimal.valueOf(80)) >= 0) || (item.getMemUtil() != null && item.getMemUtil().compareTo(BigDecimal.valueOf(60)) >= 0); @@ -262,5 +263,14 @@ public class RmResourceRegistrationController extends BaseController { return toAjax(rmResourceRegistrationService.addReportedBandwidth(rmResourceRegistration)); } + /** + * 取消闪烁 + */ + @Log(title = "取消闪烁", businessType = BusinessType.UPDATE) + @PostMapping("/removeAlarmFlag") + public AjaxResult removeAlarmFlag(@RequestBody RmResourceRegistration rmResourceRegistration) + { + return toAjax(rmResourceRegistrationService.removeAlarmFlag(rmResourceRegistration)); + } } diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmResourceRegistration.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmResourceRegistration.java index cf32815..3b4a1aa 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmResourceRegistration.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/domain/RmResourceRegistration.java @@ -263,4 +263,7 @@ public class RmResourceRegistration extends BaseEntity private BigDecimal memUtil; /** 是否告警 */ private boolean alarmFlag; + /** 取消告警时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date delAlarmTime; } \ No newline at end of file diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/mapper/RmResourceRegistrationMapper.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/mapper/RmResourceRegistrationMapper.java index 734174c..d4fe53d 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/mapper/RmResourceRegistrationMapper.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/mapper/RmResourceRegistrationMapper.java @@ -126,4 +126,6 @@ public interface RmResourceRegistrationMapper List getCpuUtil(@Param("clientIdsStr") String clientIdsStr); List getMemUtil(@Param("clientIdsStr") String clientIdsStr); + + int removeAlarmFlag(RmResourceRegistration rmResourceRegistration); } diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/IRmResourceRegistrationService.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/IRmResourceRegistrationService.java index 19c4425..9c847b8 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/IRmResourceRegistrationService.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/IRmResourceRegistrationService.java @@ -139,4 +139,11 @@ public interface IRmResourceRegistrationService * @return */ int addReportedBandwidth(RmResourceRegistration rmResourceRegistration); + + /** + * 取消告警闪烁 + * @param rmResourceRegistration + * @return + */ + int removeAlarmFlag(RmResourceRegistration rmResourceRegistration); } diff --git a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java index 6819a6e..0e4bd96 100644 --- a/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java +++ b/tongran-modules/tongran-system/src/main/java/com/tongran/system/service/impl/RmResourceRegistrationServiceImpl.java @@ -24,6 +24,8 @@ import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.math.RoundingMode; +import java.time.Duration; +import java.time.Instant; import java.util.*; import java.util.concurrent.CompletableFuture; import java.util.stream.Collectors; @@ -286,8 +288,21 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio } } private boolean isAlarm(RmResourceRegistration item) { - return (item.getCpuUtil() != null && item.getCpuUtil().compareTo(BigDecimal.valueOf(80)) >= 0) || - (item.getMemUtil() != null && item.getMemUtil().compareTo(BigDecimal.valueOf(60)) >= 0); + Date delAlarmTime = item.getDelAlarmTime(); + boolean alarmFlag = true; + + if (delAlarmTime != null) { + // 将Date转换为Instant + Instant delAlarmInstant = delAlarmTime.toInstant(); + Instant now = Instant.now(); + + // 如果当前时间-delAlarmTime<24小时,设置alarmFlag=false + if (Duration.between(delAlarmInstant, now).toHours() < 24) { + alarmFlag = false; + } + } + return alarmFlag && ((item.getCpuUtil() != null && item.getCpuUtil().compareTo(BigDecimal.valueOf(80)) >= 0) || + (item.getMemUtil() != null && item.getMemUtil().compareTo(BigDecimal.valueOf(60)) >= 0)); } private BigDecimal getMaxUtilization(RmResourceRegistration item) { @@ -1232,4 +1247,13 @@ public class RmResourceRegistrationServiceImpl implements IRmResourceRegistratio return rows; } + @Override + public int removeAlarmFlag(RmResourceRegistration rmResourceRegistration) { + if(rmResourceRegistration.getId() == null){ + throw new RuntimeException("id不可为null"); + } + int rows = rmResourceRegistrationMapper.removeAlarmFlag(rmResourceRegistration); + return 1; + } + } diff --git a/tongran-modules/tongran-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml b/tongran-modules/tongran-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml index eb077ce..0d9f43b 100644 --- a/tongran-modules/tongran-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml +++ b/tongran-modules/tongran-system/src/main/resources/mapper/system/RmResourceRegistrationMapper.xml @@ -24,10 +24,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select id, client_id, hardware_sn, business_name, logical_node_id, multi_public_ip_status, registration_status, online_status, resource_type, agent_version, create_time, update_time, heartbeat_count, heartbeat_interval, onboard_time, remark, create_by, update_by, reported_bandwidth from rm_resource_registration + select id, client_id, hardware_sn, business_name, logical_node_id, multi_public_ip_status, registration_status, online_status, resource_type, agent_version, create_time, update_time, heartbeat_count, heartbeat_interval, onboard_time, remark, create_by, update_by, reported_bandwidth, del_alarm_time from rm_resource_registration + + update rm_resource_registration set del_alarm_time = now() + where id =#{id} + \ No newline at end of file