From ac5c0ea75ed3606ff675c70c4456241495c2c8a9 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Tue, 17 Apr 2018 13:20:26 +0800 Subject: [PATCH] 组织报警间隔时间 --- src/main/java/com/moral/entity/alarm/AlarmMode.java | 1 src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java | 10 src/main/java/com/moral/common/util/StringUtils.java | 51 ++++++ src/main/resources/system/alarmLevels.json | 374 ++++++++++++++++++++++++---------------------- 4 files changed, 256 insertions(+), 180 deletions(-) diff --git a/src/main/java/com/moral/common/util/StringUtils.java b/src/main/java/com/moral/common/util/StringUtils.java index 670a2c2..b6925d9 100644 --- a/src/main/java/com/moral/common/util/StringUtils.java +++ b/src/main/java/com/moral/common/util/StringUtils.java @@ -81,4 +81,55 @@ return result; } + /** + * ��������������������������� + * @param str + * @param maxLength + * @return + */ + public static String subStringCN(final String str, final int maxLength) { + if (str == null) { + return str; + } + String suffix = "..."; + int suffixLen = suffix.length(); + + final StringBuffer sbuffer = new StringBuffer(); + final char[] chr = str.trim().toCharArray(); + int len = 0; + for (int i = 0; i < chr.length; i++) { + + if (chr[i] >= 0xa1) { + len += 2; + } else { + len++; + } + } + + if(len<=maxLength){ + return str; + } + + len = 0; + for (int i = 0; i < chr.length; i++) { + + if (chr[i] >= 0xa1) { + len += 2; + if (len + suffixLen > maxLength) { + break; + }else { + sbuffer.append(chr[i]); + } + } else { + len++; + if (len + suffixLen > maxLength) { + break; + }else { + sbuffer.append(chr[i]); + } + } + } + sbuffer.append(suffix); + return sbuffer.toString(); + } } diff --git a/src/main/java/com/moral/entity/alarm/AlarmMode.java b/src/main/java/com/moral/entity/alarm/AlarmMode.java index b3d3f76..41ca5da 100644 --- a/src/main/java/com/moral/entity/alarm/AlarmMode.java +++ b/src/main/java/com/moral/entity/alarm/AlarmMode.java @@ -10,6 +10,7 @@ @Data public class AlarmMode { private boolean enable; + private Long interval; private List<AlarmStyle> level1; private List<AlarmStyle> level2; private List<AlarmStyle> level3; diff --git a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java index 24ca266..bea09bf 100644 --- a/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java +++ b/src/main/java/com/moral/service/impl/AlarmConfigServiceImpl.java @@ -47,7 +47,7 @@ @Resource AlarmConfigMapper alarmConfigMapper; @Override - public Optional queryValueByOrganizationId(int organizationId) { + public Optional<AlarmConfigValue> queryValueByOrganizationId(int organizationId) { String key = RedisUtils.getAlarmKey(organizationId); AlarmConfigValue alarmConfigValue = redisUtils.get(key,new TypeReference<AlarmConfigValue>(){}); if(alarmConfigValue==null) { @@ -58,13 +58,17 @@ alarmConfigValue = getDefaultAlarmConfigValue(); } } - return Optional.of(alarmConfigValue); + return Optional.ofNullable(alarmConfigValue); } @Override public Optional<AlarmConfig> queryByOrganizationId(int organizationId) { AlarmConfig alarmConfig = alarmConfigMapper.selectByOrganizationId(organizationId); - return Optional.of(alarmConfig); + if(alarmConfig==null){ + alarmConfig = new AlarmConfig(); + alarmConfig.setValue(getDefaultAlarmConfigValue()); + } + return Optional.ofNullable(alarmConfig); } @Override diff --git a/src/main/resources/system/alarmLevels.json b/src/main/resources/system/alarmLevels.json index 7b1a534..ef409bf 100644 --- a/src/main/resources/system/alarmLevels.json +++ b/src/main/resources/system/alarmLevels.json @@ -1,181 +1,201 @@ { - "alarmMode": { - "enable": 0, - "level1": [], - "level2": [], - "level3": [] + "alarmMode": { + "enable": 0, + "interval":1440, + "level1": [], + "level2": [], + "level3": [] + }, + "alarmLevels": { + "e1": { + "enable": 1, + "increment": [ + 35, + 115, + 250 + ], + "degressEnable": 0, + "degression": [0,0,0] }, - "alarmLevels": { - "e1": { - "enable": 1, - "increment": [ - 35, - 115, - 250 - ], - "degression": null - }, - "e2": { - "enable": 1, - "increment": [ - 50, - 250, - 420 - ], - "degression": null - }, - "e3": { - "enable": 0, - "increment": [ - 20000, - 30000, - 40000 - ], - "degression": null - }, - "e4": { - "enable": 0, - "increment": [ - 30, - 75, - 100 - ], - "degression": null - }, - "e5": { - "enable": 0, - "increment": [ - 0.01, - 0.02, - 0.05 - ], - "degression": null - }, - "e6": { - "enable": 0, - "increment": [ - 60, - 100, - 160 - ], - "degression": null - }, - "e7": { - "enable": 0, - "increment": [ - 25, - 30, - 40 - ], - "degression": null - }, - "e8": { - "enable": 0, - "increment": [ - 30, - 40, - 50 - ], - "degression": null - }, - "e9": { - "enable": 0, - "increment": [ - 0.01, - 0.02, - 0.03 - ], - "degression": null - }, - "e10": { - "enable": 1, - "increment": [ - 2, - 14, - 36 - ], - "degression": null - }, - "e11": { - "enable": 1, - "increment": [ - 50, - 475, - 1600 - ], - "degression": null - }, - "e12": { - "enable": 0, - "increment": [ - 10000, - 15000, - 20000 - ], - "degression": null - }, - "e13": { - "enable": 0, - "increment": [ - 60, - 90, - 120 - ], - "degression": null - }, - "e14": { - "enable": 0, - "increment": [ - 100, - 200, - 300 - ], - "degression": null - }, - "e15": { - "enable": 1, - "increment": [ - 160, - 300, - 800 - ], - "degression": null - }, - "e16": { - "enable": 1, - "increment": [ - 40, - 180, - 565 - ], - "degression": null - }, - "e17": { - "enable": 0, - "increment": [ - 1.5, - 3, - 5 - ], - "degression": null - }, - "e18": { - "enable": 0, - "increment": [ - 5, - 6, - 8 - ], - "degression": null - }, - "e19": { - "enable": 0, - "increment": [ - 3000, - 4000, - 5000 - ], - "degression": null - } + "e2": { + "enable": 1, + "increment": [ + 50, + 250, + 420 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e3": { + "enable": 0, + "increment": [ + 20000, + 30000, + 40000 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e4": { + "enable": 0, + "increment": [ + 30, + 75, + 100 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e5": { + "enable": 0, + "increment": [ + 0.01, + 0.02, + 0.05 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e6": { + "enable": 0, + "increment": [ + 60, + 100, + 160 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e7": { + "enable": 0, + "increment": [ + 25, + 30, + 40 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e8": { + "enable": 0, + "increment": [ + 30, + 40, + 50 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e9": { + "enable": 0, + "increment": [ + 0.01, + 0.02, + 0.03 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e10": { + "enable": 1, + "increment": [ + 2, + 14, + 36 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e11": { + "enable": 1, + "increment": [ + 50, + 475, + 1600 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e12": { + "enable": 0, + "increment": [ + 10000, + 15000, + 20000 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e13": { + "enable": 0, + "increment": [ + 60, + 90, + 120 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e14": { + "enable": 0, + "increment": [ + 100, + 200, + 300 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e15": { + "enable": 1, + "increment": [ + 160, + 300, + 800 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e16": { + "enable": 1, + "increment": [ + 40, + 180, + 565 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e17": { + "enable": 0, + "increment": [ + 1.5, + 3, + 5 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e18": { + "enable": 0, + "increment": [ + 5, + 6, + 8 + ], + "degressEnable": 0, + "degression": [0,0,0] + }, + "e19": { + "enable": 0, + "increment": [ + 3000, + 4000, + 5000 + ], + "degressEnable": 0, + "degression": [0,0,0] } + } } \ No newline at end of file -- Gitblit v1.8.0