jiangping
2024-10-08 cf77e6b94c5a2e2d4d992b9222c857bafde0111e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
package com.doumee.core.haikang.model;
 
import com.doumee.core.utils.Constants;
import javafx.scene.effect.BlendMode;
import lombok.Data;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
 
@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";
 
    /**
     单点登录模块菜单标识:
     1、安防中心:afzx
     2、消控中心:xkzx
     3、能管中心:ngzx
     4、驾驶舱:jsc
     5、考勤管理:kqgl
     *
     * 1、安防中心:afzx
     * 2、消控中心:xkzx
     * 3、能管中心:ngzx
     */
    public interface MenuPageId{
        String afzx = "afzx";//安防中心
        String xkzx = "xkzx";//消控中心
        String ngzx = "ngzx";//能管中心
        String jsc = "jsc";//物业后勤
        String kqgl = "kqgl";//考勤管理
 
    }
 
    /**
     * 接口地址集合
     */
    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=Infovision iPark Platform&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","分页查询设备下的所有报警记录"};//分页查询设备下的所有报警记录
    }
 
    /**
     * 任務類型
     */
    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;
        }
 
    }
 
}