package com.doumee.core.device.model; import com.doumee.core.utils.Constants; import java.util.ArrayList; import java.util.List; public class ElectronicConstant { // 授权码 登录 后台获取, 联系你的甲方或者是销售 public static String auth_code = "1f29d378fc6792d5d2b735877993ffb7"; // 随机字符串 后台获取 public static String nonce = "lvyOY7fcun719WkxF8ToVYatStgt"; public static String debug_meter = "000066660942"; // 异步通知地址(服务如果部署在内网,在公网无法直接访问到,需要在路由器上配置端口映射,或者配置内网穿透工具来实现访问) 此处仅为测试 示例 public static String notify_url = "http://115.221.15.8:8055/electronic/electricalNotify"; public static String api_url = "http://api1.tqdianbiao.com"; public static String api2_url = "http://api2.tqdianbiao.com"; /** * 报警事件id查询表 */ public enum warningDefId{ w1001(1001,"A相有功功率反向",0,"指示电流方向是否正常,进出线接反时触发报警。"), w1002(1002,"B相有功功率反向",0,"指示电流方向是否正常,进出线接反时触发报警。"), w1003(1003,"C相有功功率反向",0,"指示电流方向是否正常,进出线接反时触发报警。"), w1004(1004,"断电报警",0,"指示线路通断状态,表端拉闸状态时触发报警,拉闸原因通常包含余额不足,手动拉闸,超负荷,开表盖。"), w1005(1005,"开盖报警",0,"支持开盖检测的设备表盖打开时触发报警,可防止非法打开电表盖的偷电行为。"), w1006(1006,"A相过载",0,"设备运行期间长时间超过设定的负荷限制,通常会引起电表跳闸断电。"), w1007(1007,"B相过载",0,"设备运行期间B相线路长时间超过设定的负荷限制,通常会引起电表跳闸断电。"), w1008(1008,"C相过载",0,"设备运行期间C相线路长时间超过设定的负荷限制,通常会引起电表跳闸断电。"), w1009(1009,"计量故障",0,"设备因电网剧烈波动或内部元器件损坏原因导致无法正常计量。"), w1010(1010,"电费透支",0,"开启预付费模式的电表余额欠费超过1元。"), w1011(1011,"余额不足一级报警",0,"开启预付费模式的电表余额小于设定的一级报警金额阈值。"), w1012(1012,"余额不足二级报警",0,"开启预付费模式的电表余额小于设定的二级报警金额阈值。"), w1013(1013,"电表连续通讯异常",0,"后台与设备连续通讯失败超过10次以上。"), w1014(1014,"设备信号弱",0,"设备信号完全无法保障通讯时报警。"), w1015(1015,"连续用电量过低",0,"系统设置一定时间段内用电量低于阈值触发报警,可用于检查用户异常或窃电行为。"), w1016(1016,"连续用电量过高",0,"系统设置一定时间段内用电量高于阈值触发报警,可用于检查用户异常用电行为。"), w1017(1017,"A相无功功率反向",0,"指示三相电表A相无功电能方向是否正常,进出线接反或负荷异常时触发报警。"), w1018(1018,"B相无功功率反向",0,"指示三相电表B相无功电能方向是否正常,进出线接反或负荷异常时触发报警。"), w1019(1019,"C相无功功率反向",0,"指示三相电表C相无功电能方向是否正常,进出线接反或负荷异常时触发报警。"), w1020(1020,"A相失压",0,"指示电表计量是否异常或三相电表A相是否存在不平衡现象。"), w1021(1021,"A相欠压",0,"指示电表计量是否异常或三相电表A相电网参数异常。"), w1022(1022,"A相过压",0,"指示电表计量是否异常或三相电表A相电网参数异常。"), w1023(1023,"B相失压",0,"指示电表计量是否异常或三相电表B相是否存在不平衡现象。"), w1024(1024,"B相欠压",0,"指示电表计量是否异常或三相电表B相电网参数异常。"), w1025(1025,"B相过压",0,"指示电表计量是否异常或三相电表B相是否存在不平衡现象。"), w1026(1026,"C相失压",0,"指示电表计量是否异常或三相电表C相电网参数异常。"), w1027(1027,"C相欠压",0,"指示电表计量是否异常或三相电表C相是否存在不平衡现象。"), w1028(1028,"C相过压",0,"指示电表计量是否异常或三相电表C相电网参数异常。"), w1043(1043,"温度异常",0,"指示电表是否检测到温度异常。"), w1044(1044,"总功率因数超下限",0,"指示三相电表总功率因数过低,用电质量差。(需特定款表支持)"), w1045(1045,"电流不平衡",0,"指示三相电表三相负荷不平衡,增加线路损耗。(需特定款表支持)"), w1046(1046,"电压不平衡",0,"指示三相电表三相负荷不平衡,增加线路损耗。(需特定款表支持)"), w1047(1047,"电流逆相序",0,"指示三相电表交流电电流的相位与电压相反。(需特定款表支持)"), w1048(1048,"电压逆相序",0,"指示三相电表三相电压的相序与正常顺序相反。(需特定款表支持)"), w1049(1049,"恶性负载",0,"又称阻性负载,指示电表负载中出现大功率直热式电器,易造成火灾等情况。(需特定款表支持)"), w1050(1050,"电动车充电检测",0,"识别特定类型电器接入负载端,提高用电安全。(需特定款表支持)"), w1051(1051,"漏电检测",0,"识别电路中是否存在漏电情况,提高用电安全。(需特定款表支持)"), w1052(1052,"调压器检测",0,"识别电路中是否存在调压器等装置绕过恶性负载检测。(需特定款表支持)"), w1053(1053,"电弧检测",0,"识别电路中是否存在电弧情况,防止引起火灾,提高用电安全。(需特定款表支持)"), w1029(1029,"关阀",0,"指示阀门通断状态,表端关阀状态时触发报警,关阀原因通常包含余额不足,手动关阀,电池耗尽,磁干扰等原因。"), w1030(1030,"阀门异常",0,"指示设备电子计量传感器部分是否正常工作或存在外部干扰。"), w1031(1031,"传感器异常",0,"指示设备电子计量传感器部分是否正常工作或存在外部干扰。"), w1032(1032,"磁干扰",0,"指示设备电子计量部分是否正常工作或存在外部干扰。"), w1033(1033,"电池欠压",0,"指示电池是否即将耗尽,电池完全耗尽后电子部分无法同步机械部分数据,无法通讯,不能正常扣减余额和关阀。"), w1034(1034,"通讯信号弱",0,"指示设备与采集器或服务器通讯能力减弱或无法通讯。"), w1035(1035,"水费透支",0,"开启预付费模式的水费余额欠费超过1元或0.1m³。"), w1036(1036,"余额不足一级报警",0,"开启预付费模式的水表余额小于设定的一级报警阈值。"), w1037(1037,"余额不足二级报警",0,"开启预付费模式的水表余额小于设定的二级报警阈值。"), w1038(1038,"水表连续通讯异常",0,"后台与设备连续通讯失败超过10次以上。"), w1039(1039,"连续用水量过低",0,"系统设置一定时间段内用水量低于阈值触发报警,可用于检查用户异常行为或窃水行为。"), w1041(1041,"设备信号弱",0,"设备信号完全无法保障通讯时报警。"), w1042(1042,"通讯设备长时间离线",0,"设备长时间离线,后台无法正常采集数据。"), ; // 成员变量 private int key; private int type;// 0表示电表,1表示水表,9表示采集器 private String name; private String info; // 构造方法 warningDefId(int key,String name ,int type,String info) { this.key = key; this.type = type; this.info = info; this.name = name; } public static warningDefId getByKey(int key) { for (warningDefId c : values()) { if (c.getKey() == key) { return c; } } return null; } public static List listByDeviceType(int deviceType) { List list = new ArrayList<>(); for (warningDefId c : values()) { if (c.getType() == deviceType) { list.add(c); } } return list; } public int getKey() { return key; } public void setKey(int key) { this.key = key; } public int getType() { return type; } public void setType(int type) { this.type = type; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getInfo() { return info; } public void setInfo(String info) { this.info = info; } } }