| package com.doumee.core.haikang.model; | 
|   | 
| import com.doumee.core.utils.Constants; | 
| import lombok.Data; | 
| import org.slf4j.Logger; | 
| import org.slf4j.LoggerFactory; | 
|   | 
| import java.util.ArrayList; | 
| import java.util.List; | 
|   | 
| @Data | 
| public class HKConstants { | 
|     public static final String IMG_INDEX ="HKIMG=" ; | 
|     public static final String IMG_INDEX_ERROR ="HKIMG_ERROR=" ; | 
|     public static final String RES_ORG_INDEX = "DMO"; | 
|     public static final String RES_ORG_NAME_INDEX = "_ERP"; | 
|     public static final String RES_USER_INDEX = "DMU"; | 
|     private Logger logger = LoggerFactory.getLogger(HKConstants.class); | 
|     //海康平台根据现场环境配置http还是https | 
|     public static final String RESPONSE_SUCCEE = "0"; | 
|     public static final String RESPONSE_DOWNLOAD_ERROR= "0x15406001"; | 
|     public static final String RESPONSE_FACE_ERROR= "0x1540350c";//回调错误:人脸建模失败 | 
|     public static final String RESPONSE_FACE_ERROR2= "0x1540350d";//回调错误:人脸眼间距太小 | 
|   | 
|     public static String https ; | 
|     /** | 
|      * 能力开放平台的网站路径   路径不用修改,就是/artemis | 
|      */ | 
|     public static final String ARTEMIS_PATH = "/artemis"; | 
|   | 
|     public static void main(String[] args) { | 
|         System.out.println(); | 
|     } | 
|   | 
|     public  enum CarsEventType { | 
|         type0(0,"里程",-30,100), | 
|         type1(1,"超速报警(设备围栏)",-30,8), | 
|         type2(2,"进出区域/路线报警(设备围栏)",-30,2), | 
|         type3(3,"人脸考勤",-30,11), | 
|         type4(4,"IC卡考勤",-30,11), | 
|         type5(5,"人脸比对结果",-30,10), | 
|         type6(6,"特殊异常报警",-30,12), | 
|         type7(7,"前向碰撞报警",100,1), | 
|         type8(8,"车道偏向报警",100,2), | 
|         type9(9,"车距过近报警",100,3), | 
|         type10(10,"行人碰撞报警",100,4), | 
|         type11(11,"频繁变道报警",100,5), | 
|         type12(12,"道路标识超限报警",100,6), | 
|         type13(13,"道路标志超速报警",100,16), | 
|         type14(14,"主动抓拍事件",100,17), | 
|         type15(15,"车厢过道行人检测",100,19), | 
|         type16(16,"车道偏离右",100,20), | 
|         type17(17,"车道偏离左",100,21), | 
|         type18(18,"路口报警",100,30), | 
|         type19(19,"超速报警",100,31), | 
|         type20(20,"斑马线超速",100,32), | 
|         type21(21,"未礼让行人",100,33), | 
|         type22(22,"违规占道行驶",100,34), | 
|         type23(23,"闯红灯",100,35), | 
|         type24(24,"疲劳驾驶报警",101,1), | 
|         type25(25,"接打电话报警",101,2), | 
|         type26(26,"抽烟报警",101,3), | 
|         type27(27,"分神驾驶报警",101,4), | 
|         type28(28,"驾驶员异常(包括驾驶员离岗)",101,5), | 
|         type29(29,"遮挡",101,6), | 
|         type30(30,"驾驶员人脸身份识别事件(驾驶员检测异常,人脸不在库中)",101,9), | 
|         type31(31,"未系安全带",101,17), | 
|         type32(32,"未系安全带报警工程车",101,10), | 
|         type33(33,"红外阻断墨镜",101,11), | 
|         type34(34,"双手脱离方向盘",101,18), | 
|         type35(35,"单手脱离方向盘",101,13), | 
|         type36(36,"未戴安全帽",101,14), | 
|         type37(37,"自动抓拍",101,16), | 
|         type38(38,"非法关门",101,29), | 
|         type39(39,"非法开门",101,30), | 
|         type40(40,"玩手机",101,31), | 
|         type41(41,"饮酒驾驶",101,32), | 
|         type42(42,"醉酒驾驶",101,33), | 
|         type43(43,"多人脸报警",101,48), | 
|         type44(44,"闭眼",101,34), | 
|         type45(45,"前AEB报警",101,101), | 
|         type46(46,"不戴口罩报警",101,100), | 
|         type47(47,"后方接近报警",102,1), | 
|         type48(48,"左侧后方接近报警",102,2), | 
|         type49(49,"右侧后方接近报警",102,3), | 
|         type50(50,"前向接近报警",102,4), | 
|         type51(51,"疑似非法注水报警",102,5), | 
|         type52(52,"前超声波报警",102,238), | 
|         type53(53,"后超声波报警",102,239), | 
|         type54(54,"紧急报警",102,240), | 
|         type55(55,"急加速",104,1), | 
|         type56(56,"急减速",104,2), | 
|         type57(57,"碰撞",104,3), | 
|         type58(58,"侧翻",104,4), | 
|         type59(59,"急左转弯",104,5), | 
|         type60(60,"急右转弯",104,6), | 
|         type61(61,"急转弯(不区分左和右)",104,7), | 
|         type62(62,"剧烈颠簸",104,255), | 
|         type63(63,"驾驶员证件",163,163), | 
|         type64(64,"右转弯超速",238,1), | 
|         type65(65,"右转弯不停车",238,2), | 
|         type66(66,"举升事件",172,1), | 
|         type67(67,"密闭事件",172,2), | 
|         type68(68,"载重事件",172,3), | 
|         type69(69,"前视盲区制动",249 ,1), | 
|         type70(70,"后视盲区制动",249,2), | 
|         type71(71,"前超声波制动",249,3), | 
|         type72(72,"后超声波制动",249,4), | 
|         type73(73,"左视盲区制动",249,5), | 
|         type74(74,"右视盲区制动",249,6), | 
|         type75(75,"前AEB制动",249,7), | 
|         type76(76,"前视盲区预警",249,21), | 
|         type77(77,"后视盲区预警",249,22), | 
|         type78(78,"前超声波预警",249,23), | 
|         type79(79,"后超声波预警",249,24), | 
|         type80(80,"左视盲区预警",249,25), | 
|         type81(81,"右视盲区预警",249,26), | 
|         type82(82,"前AEB预警",249,27), | 
|         type83(83,"主动上报报警事件",160,0), | 
|         type84(84,"巡检上报事件",160,1), | 
|         type85(85,"紧急报警",25,1), | 
|         type86(86,"紧急报警",-32,0), | 
|         type87(87,"超速报警",-32,16), | 
|         type88(88,"疲劳驾驶",-32,32), | 
|         type89(89,"危险预警",-32,33), | 
|         type90(90,"GNSS模块故障",-32,2), | 
|         type91(91,"GNSS天线未接入",-32,3), | 
|         type92(92,"GNSS天线短路",-32,4), | 
|         type93(93,"终端主电源欠压",-32,5), | 
|         type94(94,"终端主电源掉电",-32,6), | 
|         type95(95,"LCD或者显示屏故障",-32,7), | 
|         type96(96,"TTS模块故障",-32,46), | 
|         type97(97,"摄像头故障",-32,9), | 
|         type98(98,"道路运输证IC卡模块故障",-32,34), | 
|         type99(99,"超速预警",-32,43), | 
|         type100(100,"疲劳驾驶预警",-32,35), | 
|         type101(101,"违规行驶报警(2019)",-32,45), | 
|         type102(102,"胎压(2019)",-32,44), | 
|         type103(103,"当天累计驾驶超时",-32,18), | 
|         type104(104,"超时停车",-32,19), | 
|         type105(105,"进出区域",-32,20), | 
|         type106(106,"进出路线",-32,20), | 
|         type107(107,"路段行驶时间不足/过长",-32,21), | 
|         type108(108,"路线偏离报警",-32,36), | 
|         type109(109,"车辆VSS故障",-32,37), | 
|         type110(110,"车辆油量异常",-32,38), | 
|         type111(111,"车辆被盗",-32,39), | 
|         type112(112,"车辆非法点火",-32,24), | 
|         type113(113,"车辆非法位移",-32,25), | 
|         type114(114,"碰撞报警",-32,40), | 
|         type115(115,"侧翻预警",-32,41), | 
|         type116(116,"人脸通知",-30,13), | 
|         type117(117,"上班打卡",-30,14), | 
|         type118(118,"存储器故障报警",-30,23), | 
|         type119(119,"司机拔了TF卡",-30,50), | 
|         type120(120,"剩余油量百分比",-30,102), | 
|         type121(121,"平均油耗",-30,103), | 
|         type122(122,"海拔高度",-30,104), | 
|         type123(123,"敏感词事件",-30,900), | 
|         type124(124,"载客不打表",-33,0), | 
|         type125(125,"空转重",-33,2), | 
|         type126(126,"急加速",104,1), | 
|         type127(127,"急减速",104,2), | 
|         type128(128,"碰撞",104,3), | 
|         type129(129,"侧翻",104,4), | 
|         type130(130,"急左转弯",104,5), | 
|         type131(131,"急右转弯",104,6), | 
|         type132(132,"违规运营报警",-33,1), | 
|         type133(133,"异常交接班",0,1), | 
|         type134(134,"载客状态长时间停留",0,2), | 
|         type135(135,"超速",0,3), | 
|         type136(136,"老虎表",0,5), | 
|         type137(137,"劫持报警",1,0), | 
|         type138(138,"设备破坏报警",1,1), | 
|         type139(139,"生理疲劳报警",101,1), | 
|         type140(140,"开车打电话报警",101,2), | 
|         type141(141,"开车抽烟报警",101,3), | 
|         type142(142,"注意力分散",101,4), | 
|         type143(143,"超时驾驶",101,8), | 
|         type144(144,"驾驶员检测异常(人脸不在库中)",101,9), | 
|         type145(145,"未系安全带",101,17), | 
|         type146(146,"双手脱离方向盘",101,18), | 
|         type147(147,"驾驶员检测异常(未检测到驾驶员)",101,5), | 
|         type148(148,"探头遮挡",101,6), | 
|         type149(149,"不戴口罩报警",101,100), | 
|         type150(150,"其他",101,255), | 
|         type151(151,"路口超速",100,7), | 
|         type152(152,"不礼让行人",100,18), | 
|         type153(153,"行人防撞",100,19), | 
|         type154(154,"车距离过近",100,3), | 
|         type155(155,"车道偏离右",100,20), | 
|         type156(156,"车道偏离左",100,21), | 
|         type157(157,"前向碰撞",100,1), | 
|         type158(158,"其他",100,255), | 
|         type159(159,"紧急报警",-32,0), | 
|         type160(160,"预警",-32,1), | 
|         type161(161,"卫星定位模块发生故障",-32,2), | 
|         type162(162,"卫星定位天线未接或者被剪断",-32,3), | 
|         type163(163,"卫星定位天线短路",-32,4), | 
|         type164(164,"ISU主电源欠压",-32,5), | 
|         type165(165,"ISU主电源掉电",-32,6), | 
|         type166(166,"LCD显示ISU故障",-32,7), | 
|         type167(167,"语音合成模块故障",-32,8), | 
|         type168(168,"摄像头故障",-32,9), | 
|         type169(169,"计价器故障",-32,10), | 
|         type170(170,"服务评价器故障",-32,11), | 
|         type171(171,"LED广告屏幕故障",-32,12), | 
|         type172(172,"LCD显示屏故障",-32,13), | 
|         type173(173,"安全访问模块故障",-32,14), | 
|         type174(174,"LED预灯故障",-32,15), | 
|         type175(175,"超速报警",-32,16), | 
|         type176(176,"连续驾驶超时",-32,17), | 
|         type177(177,"当天累计驾驶超时",-32,18), | 
|         type178(178,"超时停车",-32,19), | 
|         type179(179,"进出区域/路线",-32,20), | 
|         type180(180,"路段行驶时间不足",-32,21), | 
|         type181(181,"禁行路段行驶",-32,22), | 
|         type182(182,"车速传感器故障",-32,23), | 
|         type183(183,"车辆非法点火",-32,24), | 
|         type184(184,"胎压报警",103,null), | 
|         type185(185,"测温报警",170,null), | 
|         type186(187,"视频信号丢失",-30,21) | 
|         ; | 
|   | 
|         // 成员变量 | 
|         private int key; | 
|         private  Integer type    ; | 
|         private  Integer subType    ; | 
|         private String name; | 
|         public static String getName(Integer type,Integer subType) { | 
|             for (CarsEventType c : CarsEventType.values()) { | 
|                 if (Constants.equalsInteger(c.getType(),type) && Constants.equalsInteger(c.getSubType(),subType)) { | 
|                     return c.getName(); | 
|                 } | 
|             } | 
|             return null; | 
|         } | 
|         // 构造方法 | 
|         CarsEventType(int key, String name,  Integer type,Integer subType) { | 
|             this.key = key; | 
|             this.subType = subType; | 
|             this.type = type; | 
|             this.name = name; | 
|         } | 
|   | 
|         public Integer getType() { | 
|             return type; | 
|         } | 
|   | 
|         public Integer getSubType() { | 
|             return subType; | 
|         } | 
|   | 
|         public void setSubType(Integer subType) { | 
|             this.subType = subType; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public void setType(Integer type) { | 
|             this.type = type; | 
|         } | 
|     } | 
|     /** | 
|      单点登录模块菜单标识: | 
|      1、安防中心:afzx | 
|      2、消控中心:xkzx | 
|      3、能管中心:ngzx | 
|      4、驾驶舱:jsc | 
|      5、考勤管理:kqgl | 
|      * | 
|      * 1、安防中心:afzx | 
|      * 2、消控中心:xkzx | 
|      * 3、能管中心:ngzx | 
|      */ | 
|     public interface MenuPageId{ | 
|         String[] componentIds = new String[]{"Infovision iPark Platform","dfe","cems"}; | 
|         String afzx = "afzx";//安防中心 | 
|         String xkzx = "xkzx";//消控中心 | 
|         String ngzx = "ngzx";//能管中心 | 
|         String jsc = "jsc";//物业后勤 | 
|         String kqgzt = "attendance_workstand";//考勤管理 | 
|         String kqdbcl = "process_apply";//考勤代办处理 | 
|         String stxf = "010320"; //食堂 | 
|         String hqzx = "0e0bca3c-4b0f-47d7-abea-f69a7a9893f2"; //后勤中心 | 
|     } | 
|   | 
|     /** | 
|      * 接口地址集合 | 
|      */ | 
|     public interface InterfacePath{ | 
| //        String doorEvents = new String[]{"/api/acs/v2/door/events",""};//门禁事件查询 | 
| //        String visitEvents = new String[]{"/api/visitor/v1/event/turnover/search",""};//访客事件查询 | 
|         String[] parkCrossRecords =new String[]{"/api/pms/v1/crossRecords/page","停车场过程记录"};//停车场过程记录 | 
|         String[] rootOrg = new String[]{"/api/resource/v1/org/rootOrg","获取跟组织"};//获取跟组织 | 
|         String[] orgAllList = new String[]{"/api/resource/v1/org/orgList","获取全量组织信息"};//获取全量组织信息 | 
|         String[] userAllList = new String[]{"/api/resource/v2/person/personList","获取全量用户列表"};//获取全量用户列表 | 
|         String[] personList = new String[]{"/api/resource/v2/person/advance/personList","查询人员列表v2"};//查询人员列表v2 | 
|         String[] orgTimeRangeList = new String[]{"/api/resource/v1/org/timeRange","增量获取组织信息"};//增量获取组织信息 | 
|         String[] userTimeRangeList = new String[]{"/api/resource/v1/person/personList/timeRange","增量获取用户列表"};//增量获取用户列表 | 
|         String[] addBatchOrg = new String[]{"/api/resource/v1/org/batch/add","批量新增组织"};//批量新增组织 | 
|         String[] delBatchOrg = new String[]{"/api/resource/v1/org/batch/delete","批量删除组织"};//批量删除组织 | 
|         String[] editOrg = new String[]{"/api/resource/v1/org/single/update","修改组织"};//修改组织 | 
|         String[] addUser = new String[]{"/api/resource/v2/person/single/add","添加人员"};//添加人员 | 
|         String[] addBatchUser = new String[]{"/api/resource/v1/person/batch/add","批量添加人员"};//批量添加人员 | 
|         String[] editUser = new String[]{"/api/resource/v1/person/single/update","修改人员"};//修改人员 | 
|         String[] delBatchUser = new String[]{"/api/resource/v1/person/batch/delete","批量删除人员"};//批量删除人员 | 
|         String[] addFace = new String[]{"/api/resource/v1/face/single/add","添加人脸"};//添加人脸 | 
|         String[] editFace = new String[]{"/api/resource/v1/face/single/update","修改人脸"};//修改人脸 | 
|         String[] delFace = new String[]{"/api/resource/v1/face/single/delete","删除人脸"};//删除人脸 | 
|         String[] acsDeviceList = new String[]{"/api/resource/v2/acsDevice/search","查询门禁设备列表v2"};//查询门禁设备列表v2 | 
|         String[] acsDeviceTimeRangeList = new String[]{"/api/resource/v1/acsDevice/timeRange","增量获取门禁设备数据"};//增量获取门禁设备数据 | 
|         String[] parkAddition = new String[]{"/api/pms/v2/parkingSpace/reservations/addition","车位预约v2"};//车位预约v2 | 
|         String[] parkDeletion= new String[]{"/api/pms/v1/parkingSpace/reservations/deletion","车位取消预约v2"};//车位取消预约v2 | 
|         String[] carChargeAddtion= new String[]{"/api/pms/v1/car/charge","固定车充值包期"};//固定车充值包期 | 
|         String[] carChargeDeletion= new String[]{"/api/pms/v1/car/charge/deletion","固定车取消包期"};//固定车取消包期 | 
|         String[] getParkList= new String[]{"/api/resource/v1/park/parkList","获取停车库列表"};//获取停车库列表 | 
|         String[] getEntranceList= new String[]{"/api/resource/v1/entrance/entranceList","获取出入口列表"};//获取出入口列表 | 
|         String[] visitAppiontment= new String[]{"/api/visitor/v2/appointment","访客预约v2"};//访客预约v2 | 
|         String[] visitAppiontmentMDJ= new String[]{"/api/visitor/v1/appointment/registration","访客预约免登记v2"};//访客预约免登记v2 | 
|         String[] visitCancel= new String[]{"/api/visitor/v1/appointment/cancel","取消访客预约"};//取消访客预约 | 
|         String[] visitOut= new String[]{"/api/visitor/v1/visitor/out","签离访客预约"};//签离访客预约 | 
|         String[] facePicture= new String[]{"/api/resource/v1/person/picture","提取用户人脸照片"};//提取用户人脸照片 | 
|         String[] privilegeGroup= new String[]{"/api/visitor/v1/privilege/group","查询访客权限组"};//查询访客权限组 | 
|         String[] eventSub= new String[]{"/api/eventService/v1/eventSubscriptionByEventTypes","事件订阅"};//事件订阅 | 
|         String[] doorSearch= new String[]{"/api/resource/v2/door/search","查询门禁点列表v2"};//查询门禁点列表v2 | 
|         String[] cancelEventSub= new String[]{"/api/eventService/v1/eventUnSubscriptionByEventTypes","取消事件订阅"};//取消事件订阅 | 
|         String[] visitPicture= new String[]{"/api/visitor/v1/record/pictures","获取访客记录中的图片"};//获取访客记录中的图片 | 
|         String[] devicePicture= new String[]{"/api/acs/v1/event/pictures","获取门禁事件的图片"};//获取门禁事件的图片 | 
|         String[] carPicture= new String[]{"/api/pms/v1/image","查询车辆抓拍图片"};//查询车辆抓拍图片 | 
|         String[] taskAddition= new String[]{"/api/acps/v1/authDownload/task/addition","创建下载任务_根据人员与设备通道指定下载"};//创建下载任务_根据人员与设备通道指定下载 | 
|         String[] taskDataAddition= new String[]{"/api/acps/v1/authDownload/data/addition","下载任务中添加数据_根据人员与设备通道指定下载"};//下载任务中添加数据_根据人员与设备通道指定下载 | 
|         String[] taskStart= new String[]{"/api/acps/v1/authDownload/task/start","开始下载任务"};//开始下载任务 | 
|         String[] taskProgressNum= new String[]{"/api/acps/v1/authDownload/task/progress","查詢下载任务进度"};//查詢下载任务进度 | 
|         String[] taskProgress= new String[]{"/api/acps/v2/download_record/person/detail/search","查询设备通道的人员权限下载详情总数v2"};//查询设备通道的人员权限下载详情总数v2 | 
|         String[] authItemList= new String[]{"/api/acps/v1/auth_item/list/search","查询权限条目列表"};//查询权限条目列表 | 
|         String[] cardBingding= new String[]{"/api/cis/v1/card/bindings","批量开卡"};//批量开卡 | 
|         String[] cardDeletion= new String[]{"/api/cis/v1/card/deletion","卡片退卡"};//卡片退卡 | 
|         String[] cardLoss= new String[]{"/api/cis/v1/card/batch/loss","批量挂失"};//批量挂失 | 
|         String[] cardUnloss= new String[]{"/api/cis/v1/card/batch/unLoss","批量解挂"};//批量解挂 | 
|         String[] taskPersoDetail= new String[]{"/api/acps/v1/download_record/person/detail/search","查询设备通道的人员权限下载详情"};//查询设备通道的人员权限下载详情 | 
|         String[] appointmentRecords= new String[]{"/api/visitor/v2/appointment/records","查询访客预约记录v2"};//查询访客预约记录v2 | 
|         String[] visitingRecords= new String[]{"/api/visitor/v2/visiting/records","查询访客来访记录v2"};//查询访客来访记录v2 | 
|         String[] vehicleList= new String[]{"/api/resource/v2/vehicle/advance/vehicleList","查询车辆列表v2"};//查询车辆列表v2 | 
|         String[] vehicleTimeRangeList= new String[]{"/api/resource/v1/vehicle/timeRange","增量获取车辆数据"};//增量获取车辆数据 | 
|         String[] facePictureCheck= new String[]{"/api/frs/v1/face/picture/check","人脸评分"};//人脸评分 | 
|         String[] acsDeviceStatus= new String[]{"/api/nms/v1/online/acs_device/get","获取门禁设备在线状态"};//获取门禁设备在线状态 | 
|         String[] tempCarInRecords= new String[]{"/api/pms/v1/tempCarInRecords/page","查询场内车停车信息"};//查询场内车停车信息 | 
|         String[] applyCTGT= new String[]{"/api/lsm/ssoService/v1/applyCTGT","根据用户标识获取客户端TGC接口"};//根据用户标识获取客户端TGC接口 | 
|         String[] applyST= new String[]{"/api/lsm/ssoService/v1/applyST","根据登录标识TGC申请登录凭证ST接口"};//根据登录标识TGC申请登录凭证ST接口 | 
|         String[] tokenLoginUrl= new String[]{"/lsm/ssoService/v1/tokenLogin?token=${st}&service=${service}","组件授权登录拼接地址"};//组件授权登录拼接地址 | 
|         String[] fetchAudioChannel= new String[]{"/api/ibas/resource/v1/fetchAudioChannel","分页获取广播点"};//1.1.4.1分页获取广播点 | 
|         String[] fetchAudioDevice= new String[]{"/api/ibas/resource/v1/fetchAudioDevice","2分页获取广播设备列表"};//1.1.4.2分页获取广播设备列表 | 
|         String[] fetchAudioChannelByDevice= new String[]{"/api/ibas/resource/v1/fetchAudioChannelByDevice","3根据设备信息获取广播点"};//1.1.4.3根据设备信息获取广播点 | 
|         String[] ledRecords= new String[]{"/api/v1/model/tb_led_info/records","获取月台组件配置的LED设备清单"};//获取月台组件配置的LED设备清单 | 
|         String[] transparentchannel= new String[]{"/api/v1/transparentchannel","发送消息给LED"};//发送消息给LED | 
|         String[] platformsList= new String[]{"/api/platformService/v1/platforms","获取全部月台信息"};//获取全部月台信息 | 
|         String[] platformStatus= new String[]{"/api/platformService/v1/platform/status","获取月台状态"};//获取月台状态 | 
|         String[] customBroadcast= new String[]{"/api/ibas/v1/customBroadcast","用于设置广播的自定播放和停止"};//用于设置广播的自定播放和停止 | 
|         String[] iccmAppointment= new String[]{"/api/iccm/v2/appointment/","iccm访客登记添加"};//iccm访客登记添加 | 
|         String[] iccmUpdateAppointment= new String[]{"/api/iccm/v2/appointment/update","iccm访客登记修改"};//iccm访客登记修改 | 
|         String[] iccmCancelAppointment= new String[]{"/api/iccm/v1/appointment/cancel","iccm访客登记取消"};//iccm访客登记取消 | 
|         String[] iccmAppointmentMDJ= new String[]{"/api/iccm/v1/appointment/free/registration","iccm访客预约免登记"};//iccm访客预约免登记 | 
|         String[] privilegIccmeGroup= new String[]{"/api/iccm/v1/privilege/groups","查询访客权限组"};//查询访客权限组 | 
|         String[] iccmAppointmentRecords= new String[]{"/api/iccm/v2/appointment/records","iccm查询已预约登记"};//iccm查询已预约登记 | 
|         String[] wxAccessToken= new String[]{"/api/wx/v1/oa/get/accessToken","根据微信公众号信息获取AccessToken"};//1.9.1根据微信公众号信息获取AccessToken | 
|         String[] getWxConfig= new String[]{"/api/wx/v1/oa/get/config","根据配置微信公众号编号查询微信公众号信息"};//根据配置微信公众号编号查询微信公众号信息 | 
|         String[] goMenuUrl= new String[]{"/xauthplus-plugin/thirdLogin?type=third&componentId=${componentId}&componentMenuId=${menuId}&token=${token}","工作台菜单跳转地址"}; | 
| //        String[] goNoticeMenuUrl= new String[]{"/xauthplus-plugin/thirdLogin?type=third&componentId=dfe&componentMenuId={menuId}&token=${token}","工作台考勤代办处理跳转地址"}; | 
|         String[] nhEventPageList= new String[]{"/api/ecm/warning/event/v1/pageList","分页获取告警事件"};//分页获取告警事件 | 
|         String[] nhRegionDataRanking= new String[]{"/api/ecm/v1/energy/regionDataRanking","根据时间维度获取区域用量排名"};//1.8.5根据时间维度获取区域用量排名 | 
|         String[] nhEnergyDistribution= new String[]{"/api/ecm/v1/energy/energyDistribution","根据时间维度获取能耗分布"};// 根据时间维度获取能耗分布 | 
|         String[] fireDeviceSearch= new String[]{"/api/resource/v1/fireDevice/search","询消防设备列表"};// 1.12.1.1询消防设备列表 | 
|         String[] fireChannelSearch= new String[]{"/api/resource/v1/fireChannel/search","查询消防传感器列表"};//查询消防传感器列表 | 
|         String[] sensorStatusSearch= new String[]{"/api/fpnms/v2/sensor/status/search","分页查询消防传感器部件状态"};//分页查询消防传感器部件状态 | 
|         String[] fireDeviceStatusSearch= new String[]{"/api/fpnms/v2/device/status/search","查询消防设备部件状态"};//查询消防设备部件状态 | 
|         String[] findDeviceAlarmPage= new String[]{"/api/v1/alarm/findDeviceAlarmPage","分页查询设备下的所有报警记录"};//分页查询设备下的所有报警记录 | 
|         String[] getTodoListPage= new String[]{"/api/v3/todo/getTodoListPage","分页获取待办列表"};//1.10.1分页获取待办列表 | 
|         String[] loginOut= new String[]{"/xauthplus-plugin/logout","退出登录"};//退出登录 | 
|         String[] sendSms= new String[]{"/api/v1/smsService/sms","短信验证码"};//短信验证码 | 
|         String[] getMenus= new String[]{"/api/privilegeService/v1/menus/list","获取用户有权限的菜单功能项"};//获取用户有权限的菜单功能项 | 
|         String[] rootRegion= new String[]{"/api/resource/v1/regions/root","获取根区域信息接口"};//获取根区域信息接口 | 
|         String[] subRegions= new String[]{"/api/resource/v1/regions/subRegions","根据区域编号获取下一级区域列表"};//根据区域编号获取下一级区域列表 | 
|         String[] pageRegions= new String[]{"/api/resource/v1/regions","分页获取区域列表"};//分页获取区域列表 | 
|         String[] pageCameras= new String[]{"/api/resource/v1/cameras","分页获取监控点资源"};//分页获取监控点资源 | 
|         String[] cameraPreviewURLs= new String[]{"/api/video/v1/cameras/previewURLs","获取监控点预览取流URL"};//获取监控点预览取流URL | 
|         String[] pageFireChannel= new String[]{"/api/resource/v1/fireChannel/get","分页获取消防传感器列表"};//分页获取消防传感器列表 | 
|         String[] pageSensorStatus= new String[]{"/api/fpnms/v2/sensor/status/search","分页查询消防传感器部件状态v2"};//分页查询消防传感器部件状态v2 | 
|         String[] ruleEventSearch= new String[]{"/api/v2/ruleEvent/search","安防看板-今日告警事件-根据eventType字段3"};//安防看板-今日告警事件-根据eventType字段3[图片] | 
|         String[] getSecureDevStatusList= new String[]{"/api/secureDataService/v2/getSecureDevStatusList","安防看板-园区安防设备-各类型设备状态数据列表"};//安防看板-园区安防设备-各类型设备状态数据列表 | 
|         String[] getSecureDevStatusTotal= new String[]{"/api/secureDataService/v2/getSecureDevStatusTotal","统计园区总体的安防设备数量,在线数、在线率、离线数、离线率"};//统计园区总体的安防设备数量,在线数、在线率、离线数、离线率 | 
|         String[] getParkingStatistics= new String[]{"/api/dataBoardService/v1/getParkingStatistics","安防看板--园区实时车数量4"};//安防看板--园区实时车数量4 | 
|         String[] getCurrentMonthDataByMeterType= new String[]{"/api/board/v1/getCurrentMonthDataByMeterType","能耗看板-1.获取本月用能总量-自然月"};//能耗看板-1.获取本月用能总量-自然月 | 
|         String[] regionTopPower= new String[]{"/api/board/v1/region/topPower","能耗看板-2.获取区域用能前N位"};//能耗看板-2.获取区域用能前N位 | 
|         String[] regionEnergyList= new String[]{"/api/board/v1/getRegionEnergyList","能耗看板-3.获取各区域用能及总能耗"};//能耗看板-3.获取各区域用能及总能耗 | 
|         String[] lastMonthFeeByMeterType= new String[]{"/api/board/v1/getLastMonthFeeByMeterType","能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷"};//能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷 | 
|         String[] energyTodayLoadData= new String[]{"/api/v1/exhibition/energy/getTodayLoadData","能耗看板-5.园区实时负荷曲线"};//能耗看板-5.园区实时负荷曲线 | 
|         String[] energyTrend= new String[]{"/api/v1/report/energyTrend","能耗看板-6按月查询近12个月的用电总量数据"};//能耗看板-6按月查询近12个月的用电总量数据 | 
|         String[] fireStatistic= new String[]{"/api/v1/fireStatistic","消防维保统计"};//消防维保统计 | 
|         String[] fireStatisticMonth= new String[]{"/api/v1/fireStatisticMonth","消防维保统计每月新增"};//消防维保统计每月新增 | 
|         String[] getFireDevStatusTotal= new String[]{"/api/dataBoardService/v2/getFireDevStatusTotal","消防看板-消防设备在离线1"};//消防看板-消防设备在离线1 | 
|         String[] getFireDevStatusList= new String[]{"/api/dataBoardService/v2/getFireDevStatusList","消防看板-各类型设备在线率2"};//消防看板-各类型设备在线率2 | 
|         String[] findAlarmBaseDataStatistic= new String[]{"/api/v1/alarm/findAlarmBaseDataStatistic","消防看板-4报警信息统计"};//消防看板-4报警信息统计 | 
|         String[] findHomeAlarmInfoPage= new String[]{"/api/v1/alarm/findHomeAlarmInfoPage","安防看板-- 分页查询未处理报警信息6"};//安防看板-- 分页查询未处理报警信息6 | 
|         String[] minitorDataSearchV1= new String[]{"/api/fem/v1/minitor/data/search","分页查询设备监测历史数据"};//分页查询设备监测历史数据 | 
|         String[] minitorDataSearch= new String[]{"/api/fpms/v2/minitor/data/search","分页查询设备监测历史数据"};//分页查询设备监测历史数据 | 
|         String[] monitorDataSearch= new String[]{"/api/fpms/v2/monitor/data/search","分页查询设备监测历史数据"};//分页查询设备监测历史数据 | 
|         String[] fireMonitorData= new String[]{"/api/v2/monitor/fireMonitorData","分页查询设备监测历史数据"};//分页查询设备监测历史数据 | 
|   | 
|         String[] userOpenidSave= new String[]{"/api/v1/oa/userOpenId/saveV2","保存用户及openId绑定信息微信公众号"};//保存用户及openId绑定信息微信公众号 | 
|         String[] userOpenidDel= new String[]{"/api/v1/oa/userOpenId/delete","通过openId或userName等删除绑定信息"};//通过openId或userName等删除绑定信息 | 
|         String[] temperatureHumidityDataStatistic= new String[]{"/api/v2/public/monitor/sensor/list","消防看板-4温湿度统计"};//消防看板-温湿度 | 
|         String[] regionDataRanking= new String[]{"/api/ecm/v1/energy/regionDataRanking","消防看板-4获取区域用量排名-能耗看板"};//消防看板-获取区域用量排名 - 能耗看板 | 
|         String[] energyTotal= new String[]{"/api/ecm/v1/energy/energyTotal","消防看板-4根据时间和时间维度获取园区能耗数据"};//消防看板-根据时间和时间维度获取园区能耗数据 | 
|         String[] findDeviceStatistics= new String[]{"/api/v1/device/findDeviceStatistics","分页查询设备的以及下属传感器数据的状态统计"};// 分页查询设备的以及下属传感器数据的状态统计 | 
|         String[] resourcesByParams= new String[]{"/api/irds/v2/resource/resourcesByParams","【海康消防看板】根据条件查询目录下有权限的资源列表"};// 【海康消防看板】根据条件查询目录下有权限的资源列表 | 
|         String[] iccmSignoff= new String[]{"/api/iccm/v1/signoff","iccm访客签离"};// iccm访客签离 | 
|         String[] wxAuthUrl= new String[]{"dps/web/wxAuth/loginV2?oaId=atwl&redirectUrl=","待办考勤跳转地址"};// 待办考勤跳转地址 | 
|     } | 
|     /** | 
|      * 附录A.55消防设备类型 | 
|      */ | 
|   | 
|     public interface  XiaofangCGQType{ | 
|         String[] hzbjzj = new String[]{"1020001" ,    "火灾报警主机"     }     ; | 
|         String[] gycgq = new String[]{"1020002" ,    "感烟传感器"     }     ; | 
|         String[] gwcgs = new String[]{"1020003" ,    "感温传感器"     }     ; | 
|         String[] sdbjan = new String[]{"1020004" ,    "手动报警按钮"     }     ; | 
|         String[] krqtcgq = new String[]{"1020005" ,    "可燃气体传感器"     }     ; | 
|         String[] dqwdcgq = new String[]{"1020007" ,    "电气温度传感器"     }     ; | 
|         String[] sydlcgq = new String[]{"1020008" ,    "剩余电流传感器"     }     ; | 
|         String[] ywcgq = new String[]{"1020009" ,    "液位传感器"     }     ; | 
|         String[] sycgq = new String[]{"1020010" ,    "水压传感器"     }     ; | 
|         String[] tycgq = new String[]{"1020011" ,    "通用传感器"     }     ; | 
|         String[] sgbjq = new String[]{"1020015" ,    "声光报警器"     }     ; | 
|   | 
|     } | 
|     /** | 
|      * 附录A.55消防设备类型 | 
|      */ | 
|     public interface  XiaofangDeviceType{ | 
|         String[] uitDevice = new String[]{"20001" ,    "uitDevice","用户信息传输装置"    }     ; | 
|         String[] electricDevice = new String[]{"20002" ,    "electricDevice","用电主机"    }     ; | 
|         String[] wirelessWaterDevice = new String[]{"20003" ,    "wirelessWaterDevice","用水主机"    }     ; | 
|         String[] independentGasDevice = new String[]{"20004" ,    "independentGasDevice","独立式可燃气体报警器"    }     ; | 
|         String[] independentSmokeDevice = new String[]{"20005" ,    "independentSmokeDevice","独立式感烟报警器"    }     ; | 
|         String[] iogDTUDevice = new String[]{"20008" ,    "iogDTUDevice","物联网网关(DTU)"    }     ; | 
|         String[] siterwell433gwDevice = new String[]{"20009" ,    "siterwell433gwDevice","物联网消防报警网关(433)"    }     ; | 
|         String[] outdoorHydrantDevice = new String[]{"20010" ,    "outdoorHydrantDevice","室外消火栓"    }     ; | 
|         String[] cameraSmokeDevice = new String[]{"20011" ,    "cameraSmokeDevice","视频烟感"    }     ; | 
|         String[] cameraTempDevice = new String[]{"20012" ,    "cameraTempDevice","视频温感"    }     ; | 
|         String[] intelligentAnalyzer = new String[]{"20013" ,    "intelligentAnalyzer","智能分析仪"    }     ; | 
|         String[] chargingPile = new String[]{"20014" ,    "chargingPile","充电桩"    }     ; | 
|         String[] iPCVideoGateway = new String[]{"20015" ,    "IPCVideoGateway","IPC视频网关"    }     ; | 
|         String[] smartElectricityGateway = new String[]{"20016" ,    "smartElectricityGateway","智能用电网关"    }     ; | 
|     } | 
|   | 
|   | 
|     /** | 
|      * 任務類型 | 
|      */ | 
|     public  enum TASK_TYPE { | 
|   | 
|         CARD(1, "卡片"  ), | 
|         FACE(4, "人脸"  ), | 
|         CARD_FACE(5, "卡片+人脸(组合)"  ), | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         TASK_TYPE(int key, String name ) { | 
|             this.name = name;this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|     /** | 
|      * 卡类型,为空时默认正常普通卡 | 
|      * 1: 普通卡 | 
|      * 2: 行动不便人士卡 | 
|      * 3: 黑名单卡 | 
|      * 4:巡查卡 | 
|      * 5:胁迫卡 | 
|      * 6:超级卡 | 
|      */ | 
|     public  enum CARD_TYPE { | 
|   | 
|         NORMAL(1, "普通卡"  ), | 
|         XDBB(2, "行动不便人士卡"  ), | 
|         BLACK(3, "黑名单卡"  ), | 
|         PATROL(4, "巡更卡"  ), | 
|         HIJACK(5, "胁迫卡"  ), | 
|         SUPER(6, "超级卡"  ), | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         CARD_TYPE(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|     /** | 
|      * 操作类型,0新增;1修改;2删除 | 
|      */ | 
|     public  enum OPERA_TYPE { | 
|   | 
|         ADD(0, "新增"  ), | 
|         UDPATE(1, "修改"  ), | 
|         DEL(2, "删除"  ) | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         OPERA_TYPE(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|     /** | 
|      * 顔色枚举 | 
|      */ | 
|     public  enum EventTypes { | 
|   | 
|         PARK_LINE_IN(771760130, "入场压线事件"  ), | 
|         PARK_PASS_IN(771760131, "入场放行事件"  ), | 
|         PARK_LINE_OUT(771760133, "出场压线事件"  ), | 
|         PARK_PASS_OUT(771760134, "出场放行事件"  ), | 
|         VISIT_SIGN_IN(1392513025, "访客登记"  ), | 
|         VISIT_SIGN_OUT(1392513026, "访客签离"  ), | 
|   | 
|         VISIT_SIGN_ICCM_IN(541200006, "访客登记"  ), | 
|         VISIT_SIGN_ICCM_OUT(541200007, "访客签离"  ), | 
|         VISIT_SIGN_ICCM_PASS(541200060, "访客通行"  ), | 
|         DOOR_FACE_AUTH_FAIL(197163, "人脸认证失败"  ), | 
|         DOOR_FACE_AUTH_SUCCESS(196893, "人脸认证通过"  ), | 
|         PLATFORM_WORKSTATUS(483329, "月台工作状态事件"  ), | 
|         PLATFORM_CAR_STATUS(487425, "月台车辆状态事件"  ) | 
|   | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         public static String getName(int index) { | 
|             for (EventTypes c : EventTypes.values()) { | 
|                 if (c.getKey() == index) { | 
|                     return c.name; | 
|                 } | 
|             } | 
|             return null; | 
|         } | 
|         // 构造方法 | 
|         EventTypes(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|   | 
|     /** | 
|      * 证件类型 | 
|      */ | 
|     public  enum CertificateType { | 
|   | 
|         SHENFENZHENG(111, "身份证"  ), | 
|         HUZHAO(414, "护照"  ), | 
|         HUKOUBEN(113, "户口簿"  ), | 
|         JIASHIZHENG(335, "驾驶证"  ), | 
|         GONGXUOZHENG(131, "工作证"  ), | 
|         XUESHENGZHENG(133, "学生证"  ), | 
|         QITA(990, "其他"  ) | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         CertificateType(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|     public  enum ReturnCode { | 
|   | 
|         PARK_LINE_IN("0x00072001", "资源信息不存在"  ) | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private String key; | 
|   | 
|         // 构造方法 | 
|         ReturnCode(String key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public String getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(String key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|     /** | 
|      * 顔色枚举 | 
|      */ | 
|     public  enum Colors { | 
|   | 
|         SYSTEM(0, "系统用户"  ) | 
|         ; | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         Colors(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|   | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|   | 
|     /** | 
|      * 卡状态 | 
|      */ | 
|     public  enum CardStatus { | 
|   | 
|         DISABLE(0, "禁用"), | 
|         ENABLE(1, "启用"), | 
|         REFUNDCARD(2, "退卡"), | 
|         LOSS(3, "挂失"), | 
|   | 
|         /** 卡类型 **/ | 
|         IC(1,"IC卡"), | 
|         CPU(2,"CPU卡"), | 
|         YJLCARD(3,"远距离卡"), | 
|         MCARD(4,"M卡"); | 
|   | 
|         // 成员变量 | 
|         private String name; | 
|         private int key; | 
|   | 
|         // 构造方法 | 
|         CardStatus(int key, String name ) { | 
|             this.name = name; | 
|             this.key = key; | 
|         } | 
|   | 
|         // get set 方法 | 
|         public String getName() { | 
|             return name; | 
|         } | 
|   | 
|         public void setName(String name) { | 
|             this.name = name; | 
|         } | 
|   | 
|         public int getKey() { | 
|             return key; | 
|         } | 
|   | 
|         public void setKey(int key) { | 
|             this.key = key; | 
|         } | 
|   | 
|     } | 
|   | 
| } |