Explorar el Código

完成 设备更改

魏熙美 hace 6 años
padre
commit
1cf010ee4c
Se han modificado 15 ficheros con 608 adiciones y 192 borrados
  1. 2
    2
      CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/HkController.java
  2. 2
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpConfigurationMapper.java
  3. 14
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpEquipmentMapper.java
  4. 22
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpRoomNoEquipmentMapper.java
  5. 20
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TpConfiguration.java
  6. 55
    0
      CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TpRoomNoEquipment.java
  7. 1
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/IHKService.java
  8. 96
    21
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java
  9. 103
    33
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/HKServiceImpl.java
  10. 25
    3
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserServiceImpl.java
  11. 1
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserVerifyServicelmpl.java
  12. 12
    3
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaVistorServiceImpl.java
  13. 39
    15
      CODE/smart-community/app-api/src/main/resources/mapper/TpConfigurationMapper.xml
  14. 93
    0
      CODE/smart-community/app-api/src/main/resources/mapper/TpRoomNoEquipmentMapper.xml
  15. 123
    113
      CODE/smart-community/community-common/src/main/java/com/community/commom/hk/HKOpenApi.java

+ 2
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/HkController.java Ver fichero

@@ -44,9 +44,9 @@ public class HkController {
44 44
 	}
45 45
 
46 46
 	@RequestMapping(value = "/pushHKPerson/{appUserId}", method = RequestMethod.POST)
47
-	public ResponseBean pushHKPerson(@PathVariable("appUserId") String appUserId) {
47
+	public ResponseBean pushHKPerson(@PathVariable("appUserId") String appUserId, @RequestParam("userVerifyId") Integer userVerifyId) {
48 48
 		ResponseBean responseBean = new ResponseBean();
49
-		responseBean = ihkService.pushPerson(appUserId);
49
+		responseBean = ihkService.pushPerson(appUserId, userVerifyId);
50 50
 		return responseBean;
51 51
 	}
52 52
 

+ 2
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpConfigurationMapper.java Ver fichero

@@ -1,7 +1,9 @@
1 1
 package com.community.huiju.dao;
2 2
 
3 3
 import com.community.huiju.model.TpConfiguration;
4
+import org.apache.ibatis.annotations.Mapper;
4 5
 
6
+@Mapper
5 7
 public interface TpConfigurationMapper {
6 8
     int deleteByPrimaryKey(Integer id);
7 9
 

+ 14
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpEquipmentMapper.java Ver fichero

@@ -35,4 +35,18 @@ public interface TpEquipmentMapper {
35 35
             "tp_equipment tm " +
36 36
             "where tm.community_id = #{communityId} and tm.equipment_type = 1")
37 37
     List<TpEquipment> selectByCommunityId(@Param("communityId") Integer communityId);
38
+
39
+    /**
40
+     * 根据小区 和 房间号 查询所有设备
41
+     * @param communityId
42
+     * @param roomNoId
43
+     * @return
44
+     */
45
+    @ResultMap("BaseResultMap")
46
+    @Select("select " +
47
+            "te.* " +
48
+            "from tp_room_no_equipment trne left join tp_equipment te " +
49
+            "on trne.equipment_id = te.id " +
50
+            "where trne.community_id=#{communityId} and trne.room_no_id=#{roomNoId} and te.equipment_type=#{equipmentType}")
51
+    List<TpEquipment> selectByCommunityIdAndRoomNoId(@Param("communityId") Integer communityId, @Param("roomNoId") Integer roomNoId, @Param("equipmentType") Integer equipmentType);
38 52
 }

+ 22
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpRoomNoEquipmentMapper.java Ver fichero

@@ -0,0 +1,22 @@
1
+package com.community.huiju.dao;
2
+
3
+import com.community.huiju.model.TpRoomNoEquipment;
4
+import org.apache.ibatis.annotations.Mapper;
5
+
6
+import java.util.List;
7
+
8
+@Mapper
9
+public interface TpRoomNoEquipmentMapper {
10
+    int deleteByPrimaryKey(Integer id);
11
+
12
+    int insert(TpRoomNoEquipment record);
13
+
14
+    int insertSelective(TpRoomNoEquipment record);
15
+
16
+    TpRoomNoEquipment selectByPrimaryKey(Integer id);
17
+
18
+    int updateByPrimaryKeySelective(TpRoomNoEquipment record);
19
+
20
+    int updateByPrimaryKey(TpRoomNoEquipment record);
21
+
22
+}

+ 20
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TpConfiguration.java Ver fichero

@@ -23,6 +23,10 @@ public class TpConfiguration {
23 23
 
24 24
     private Integer communityId;
25 25
 
26
+    private String dooruuid;
27
+
28
+    private String deviceuuid;
29
+
26 30
     public Integer getId() {
27 31
         return id;
28 32
     }
@@ -102,4 +106,20 @@ public class TpConfiguration {
102 106
     public void setCommunityId(Integer communityId) {
103 107
         this.communityId = communityId;
104 108
     }
109
+
110
+    public String getDooruuid() {
111
+        return dooruuid;
112
+    }
113
+
114
+    public void setDooruuid(String dooruuid) {
115
+        this.dooruuid = dooruuid == null ? null : dooruuid.trim();
116
+    }
117
+
118
+    public String getDeviceuuid() {
119
+        return deviceuuid;
120
+    }
121
+
122
+    public void setDeviceuuid(String deviceuuid) {
123
+        this.deviceuuid = deviceuuid == null ? null : deviceuuid.trim();
124
+    }
105 125
 }

+ 55
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/model/TpRoomNoEquipment.java Ver fichero

@@ -0,0 +1,55 @@
1
+package com.community.huiju.model;
2
+
3
+import java.util.Date;
4
+
5
+public class TpRoomNoEquipment {
6
+    private Integer id;
7
+
8
+    private Integer communityId;
9
+
10
+    private Integer roomNoId;
11
+
12
+    private Integer equipmentId;
13
+
14
+    private Date createDate;
15
+
16
+    public Integer getId() {
17
+        return id;
18
+    }
19
+
20
+    public void setId(Integer id) {
21
+        this.id = id;
22
+    }
23
+
24
+    public Integer getCommunityId() {
25
+        return communityId;
26
+    }
27
+
28
+    public void setCommunityId(Integer communityId) {
29
+        this.communityId = communityId;
30
+    }
31
+
32
+    public Integer getRoomNoId() {
33
+        return roomNoId;
34
+    }
35
+
36
+    public void setRoomNoId(Integer roomNoId) {
37
+        this.roomNoId = roomNoId;
38
+    }
39
+
40
+    public Integer getEquipmentId() {
41
+        return equipmentId;
42
+    }
43
+
44
+    public void setEquipmentId(Integer equipmentId) {
45
+        this.equipmentId = equipmentId;
46
+    }
47
+
48
+    public Date getCreateDate() {
49
+        return createDate;
50
+    }
51
+
52
+    public void setCreateDate(Date createDate) {
53
+        this.createDate = createDate;
54
+    }
55
+}

+ 1
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/IHKService.java Ver fichero

@@ -13,7 +13,7 @@ public interface IHKService {
13 13
      * @param appUserId
14 14
      * @return
15 15
      */
16
-    ResponseBean pushPerson(String appUserId);
16
+    ResponseBean pushPerson(String appUserId, Integer userVerifyId);
17 17
 
18 18
     /**
19 19
      * 下发门禁权限

+ 96
- 21
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java Ver fichero

@@ -7,18 +7,13 @@ import com.community.commom.hk.HKOpenApi;
7 7
 import com.community.commom.mode.ResponseBean;
8 8
 import com.community.commom.session.UserElement;
9 9
 import com.community.huiju.common.welcome.WelcomeProperties;
10
-import com.community.huiju.dao.TaFaceMapper;
11
-import com.community.huiju.dao.TaSysRoleMapper;
12
-import com.community.huiju.dao.TaUserMapper;
13
-import com.community.huiju.dao.TaUserVerifyMapper;
10
+import com.community.huiju.dao.*;
14 11
 import com.community.huiju.exception.WisdomException;
15
-import com.community.huiju.model.TaFace;
16
-import com.community.huiju.model.TaSysRole;
17
-import com.community.huiju.model.TaUser;
18
-import com.community.huiju.model.TaUserVerify;
12
+import com.community.huiju.model.*;
19 13
 import com.community.huiju.service.FaceServiceI;
20 14
 import com.community.huiju.service.IHKService;
21 15
 import com.community.huiju.service.ImageServiceI;
16
+import com.google.common.collect.Maps;
22 17
 import lombok.extern.slf4j.Slf4j;
23 18
 import org.springframework.beans.factory.annotation.Autowired;
24 19
 import org.springframework.http.HttpEntity;
@@ -34,6 +29,8 @@ import java.io.IOException;
34 29
 import java.util.ArrayList;
35 30
 import java.util.Date;
36 31
 import java.util.List;
32
+import java.util.Map;
33
+import java.util.stream.Collectors;
37 34
 
38 35
 @Service("faceServicel")
39 36
 @Transactional
@@ -62,9 +59,19 @@ public class FaceServicelimpl implements FaceServiceI {
62 59
     @Autowired
63 60
     private IHKService ihkService;
64 61
 
62
+    @Autowired
63
+    private TpEquipmentMapper tpEquipmentMapper;
64
+
65
+    @Autowired
66
+    private TpConfigurationMapper tpConfigurationMapper;
67
+
68
+    @Autowired
69
+    private TpEquipmentTreeMapper tpEquipmentTreeMapper;
70
+
65 71
     @Override
66 72
     @Transactional(rollbackFor = Exception.class)
67 73
     public ResponseBean addFace(UserElement userElement, MultipartFile uploadFile, Integer otherUserId ,Integer verifyID) {
74
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userElement.getCommunityId());
68 75
         ResponseBean responseBean = new ResponseBean();
69 76
         /*审核房产是否通过*/
70 77
         TaUserVerify taUserVerify= infoExist(verifyID);
@@ -97,7 +104,7 @@ public class FaceServicelimpl implements FaceServiceI {
97 104
          * 删除的时候,将所有的海康设备的关联关系删除了,需要重新下发一次
98 105
          */
99 106
         // 下发门禁
100
-        ihkService.pushPerson(activeUser + "");
107
+        ihkService.pushPerson(activeUser + "", taUserVerify.getId());
101 108
 
102 109
         TaUser user = taUserMapper.selectByPrimaryKey(activeUser);
103 110
         TaFace taFace = new TaFace();
@@ -110,7 +117,7 @@ public class FaceServicelimpl implements FaceServiceI {
110 117
         taFace.setUpdateDate(new Date());
111 118
 
112 119
         /*验证身份*/
113
-        responseBean = addVerify(activeUser, userVerifyId, uploadFile, faceImg, taFace);
120
+        responseBean = addVerify(activeUser, userVerifyId, uploadFile, faceImg, taFace, tpEquipmentTree);
114 121
         return responseBean;
115 122
     }
116 123
 
@@ -125,6 +132,7 @@ public class FaceServicelimpl implements FaceServiceI {
125 132
     @Override
126 133
     @Transactional(rollbackFor = Exception.class)
127 134
     public ResponseBean upDateFace(UserElement userElement, MultipartFile uploadFile, Integer otherUserId) {
135
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userElement.getCommunityId());
128 136
         ResponseBean responseBean = new ResponseBean();
129 137
         // 人脸图片地址url
130 138
         String faceImg = img(uploadFile);
@@ -139,8 +147,9 @@ public class FaceServicelimpl implements FaceServiceI {
139 147
         /**
140 148
          * 删除的时候,将所有的海康设备的关联关系删除了,需要重新下发一次
141 149
          */
150
+        TaUserVerify userVerify = taUserVerifyMapper.selectByPrimaryKey(userVerifyId);
142 151
         // 下发门禁
143
-        ihkService.pushPerson(activeUser + "");
152
+        ihkService.pushPerson(activeUser + "", userVerifyId);
144 153
 
145 154
         //当前修改的id否存在
146 155
         TaFace face = taFaceMapper.getByUserVerifyId(userVerifyId);
@@ -152,7 +161,7 @@ public class FaceServicelimpl implements FaceServiceI {
152 161
         face.setFaceImg(faceImg);
153 162
         face.setUpdateUser(userElement.getId());
154 163
         face.setUpdateDate(new Date());
155
-        ResponseBean resps = checKout(faceImg, face, false, uploadFile, activeUser);
164
+        ResponseBean resps = checKout(faceImg, face, false, uploadFile, activeUser, userVerify.getCommunityId(), userVerify.getRoomNoId(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret());
156 165
         if (resps.getCode().equals("0")) {
157 166
             resps.addSuccess((Object) faceImg);
158 167
         } else {
@@ -164,7 +173,7 @@ public class FaceServicelimpl implements FaceServiceI {
164 173
     /**
165 174
      * 验证图片是否为人脸,推送海康
166 175
      */
167
-    public ResponseBean checKout(String faceImg, TaFace taFace, boolean isA, MultipartFile uploadFile, Integer userId) {
176
+    public ResponseBean checKout(String faceImg, TaFace taFace, boolean isA, MultipartFile uploadFile, Integer userId, Integer communityId, Integer roomNoId, String  appkey, String secret) {
168 177
         ResponseBean responseBean = new ResponseBean();
169 178
         TaUser user = taUserMapper.selectByPrimaryKey(userId);
170 179
         if (user.getHkUserId() == null) {
@@ -181,7 +190,7 @@ public class FaceServicelimpl implements FaceServiceI {
181 190
             Integer faceNum = (Integer) jsonObject.get("face_num");
182 191
 
183 192
             /*推送海康*/
184
-            String data = HKOpenApi.HKpersonGroupId(uploadFile, user.getHkUserId(), user.getHkPersonNo(), user.getUserName(), user.getHkCardNo());
193
+            String data = HKOpenApi.HKpersonGroupId(uploadFile, user.getHkUserId(), user.getHkPersonNo(), user.getUserName(), user.getHkCardNo(), appkey, secret);
185 194
             /*boolean isA为true进行添加,为false进行修改*/
186 195
             if (0 == type && 1 == faceNum) {
187 196
                 if (null == data) {
@@ -193,7 +202,28 @@ public class FaceServicelimpl implements FaceServiceI {
193 202
                     taFaceMapper.updateByPrimaryKeySelective(taFace);
194 203
                 }
195 204
                 responseBean.addSuccess("操作成功");
196
-                HKOpenApi.downloadFaceAndFingerInfos(String.valueOf(user.getHkUserId()));
205
+
206
+                // 设备树
207
+                TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(communityId);
208
+                // 所有设备
209
+                List<TpEquipment> tpEquipments = tpEquipmentMapper.selectByCommunityIdAndRoomNoId(communityId, roomNoId, 4);
210
+                List<Map<String, Object>> equipmentUUID = getEquipmentUUID(tpEquipments);
211
+                StringBuilder doorUuids = new StringBuilder();
212
+                StringBuilder deviceUuids = new StringBuilder();
213
+                equipmentUUID.forEach(e-> {
214
+                    doorUuids.append(e.get("doorUuid"));
215
+                    doorUuids.append(",");
216
+                    deviceUuids.append(e.get("deviceUuid"));
217
+                    deviceUuids.append(",");
218
+                });
219
+                Map<String,Object> map = Maps.newHashMap();
220
+                map.put("appkey", tpEquipmentTree.getAppkey());
221
+                map.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
222
+                map.put("personIds", String.valueOf(user.getHkUserId()));
223
+                map.put("deviceUuids", deviceUuids.substring(0, deviceUuids.lastIndexOf(",")));
224
+                map.put("type", 1);
225
+                HKOpenApi.downloadFaceAndFingerInfos(map);
226
+
197 227
                 //可视对讲时 指定人员人脸权限下载
198 228
                 List<Integer> userIdList = new ArrayList<>();
199 229
                 userIdList.add(user.getHkUserId());
@@ -201,7 +231,7 @@ public class FaceServicelimpl implements FaceServiceI {
201 231
                 // TODO 根据期楼栋号,来查询出门口机
202 232
                 List<String> visualList = new ArrayList<>();
203 233
                 visualList.add("10010100000");
204
-                HKOpenApi.visualIntercom(null, 1, userIdList, visualList);
234
+                HKOpenApi.visualIntercom(tpEquipmentTree.getOpUserUuid(), 1, userIdList, visualList, tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret());
205 235
             } else {
206 236
                 responseBean.addError("请录入正确图片");
207 237
             }
@@ -213,6 +243,21 @@ public class FaceServicelimpl implements FaceServiceI {
213 243
         return responseBean;
214 244
     }
215 245
 
246
+    /**
247
+     * 获取设备UUID
248
+     * @param equipmentList
249
+     * @return
250
+     */
251
+    private List<Map<String,Object>> getEquipmentUUID(List<TpEquipment> equipmentList) {
252
+        return equipmentList.stream().map(equipment -> {
253
+            TpConfiguration tpConfiguration = tpConfigurationMapper.selectByPrimaryKey(equipment.getUuidId());
254
+            Map<String,Object> map = Maps.newHashMap();
255
+            map.put("doorUuid", tpConfiguration.getDooruuid());
256
+            map.put("deviceUuid", tpConfiguration.getDeviceuuid());
257
+            return map;
258
+        }).collect(Collectors.toList());
259
+    }
260
+
216 261
     /**
217 262
      * 当前登入人是否有人脸信息
218 263
      */
@@ -269,7 +314,7 @@ public class FaceServicelimpl implements FaceServiceI {
269 314
     /**
270 315
      * 各种身份校验
271 316
      */
272
-    public ResponseBean addVerify(Integer userid, Integer userVerifyId, MultipartFile uploadFile, String faceImg, TaFace taFace) {
317
+    public ResponseBean addVerify(Integer userid, Integer userVerifyId, MultipartFile uploadFile, String faceImg, TaFace taFace, TpEquipmentTree tpEquipmentTree) {
273 318
         ResponseBean response = new ResponseBean();
274 319
 
275 320
         TaUserVerify userVerify = taUserVerifyMapper.selectByPrimaryKey(userVerifyId);
@@ -290,7 +335,7 @@ public class FaceServicelimpl implements FaceServiceI {
290 335
         if (null == face) {
291 336
             boolean isA = true;
292 337
             if (Constant.EFFECTIVE_STATUS.equals(taUser.getStatus())) {
293
-                ResponseBean responseBean = checKout(faceImg, taFace, isA, uploadFile, userid);
338
+                ResponseBean responseBean = checKout(faceImg, taFace, isA, uploadFile, userid, userVerify.getCommunityId(), userVerify.getRoomNoId(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret());
294 339
                 if (responseBean.getCode().equals("0")) {
295 340
                     responseBean.addSuccess("图片录入成功");
296 341
                 } else {
@@ -365,12 +410,42 @@ public class FaceServicelimpl implements FaceServiceI {
365 410
             return responseBean;
366 411
         }
367 412
             TaUser taUser = taUserMapper.selectByPrimaryKey(taUserVerify.getUserId());
413
+
414
+        // 设备树
415
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(taUserVerify.getCommunityId());
416
+        // 所有设备
417
+        List<TpEquipment> tpEquipments = tpEquipmentMapper.selectByCommunityIdAndRoomNoId(taUserVerify.getCommunityId(), taUserVerify.getRoomNoId(), 4);
418
+        List<Map<String, Object>> equipmentUUID = getEquipmentUUID(tpEquipments);
419
+        StringBuilder doorUuids = new StringBuilder();
420
+        StringBuilder deviceUuids = new StringBuilder();
421
+        equipmentUUID.forEach(e-> {
422
+            doorUuids.append(e.get("doorUuid"));
423
+            doorUuids.append(",");
424
+            deviceUuids.append(e.get("deviceUuid"));
425
+            deviceUuids.append(",");
426
+        });
427
+
428
+
368 429
         // TODO 删除人脸,是否删除海康
369 430
         // 修改人脸(图片为null时。海康删除人脸)
370
-        HKOpenApi.HKpersonGroupId(null, taUser.getHkUserId(), taUser.getHkPersonNo(), taUser.getUserName(), taUser.getHkCardNo());
431
+        HKOpenApi.HKpersonGroupId(null, taUser.getHkUserId(), taUser.getHkPersonNo(), taUser.getUserName(), taUser.getHkCardNo(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret());
371 432
         // 删除 权限
372
-        HKOpenApi.selectUserFace(taUser.getHkUserId());
373
-        String data= HKOpenApi.deleteUser(taUser.getHkUserId());
433
+        Map<String,Object> selectUserFaceMap = Maps.newHashMap();
434
+        selectUserFaceMap.put("personIds", taUser.getHkUserId()+"");
435
+        selectUserFaceMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
436
+        selectUserFaceMap.put("appkey", tpEquipmentTree.getAppkey());
437
+        selectUserFaceMap.put("secret", tpEquipmentTree.getSecret());
438
+        // 查询人脸信息
439
+        HKOpenApi.selectUserFace(selectUserFaceMap);
440
+
441
+        Map<String,Object> deleteUserMap = Maps.newHashMap();
442
+        deleteUserMap.put("personIds", taUser.getHkUserId()+"");
443
+        deleteUserMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
444
+        deleteUserMap.put("doorUuids", doorUuids.substring(0, doorUuids.lastIndexOf(",")));
445
+        deleteUserMap.put("appkey", tpEquipmentTree.getAppkey());
446
+        deleteUserMap.put("secret", tpEquipmentTree.getSecret());
447
+        // 删除当前人脸设备信息
448
+        String data= HKOpenApi.deleteUser(deleteUserMap);
374 449
         JSONObject object= JSONObject.parseObject(data);
375 450
 
376 451
         if (object.get("errorCode").equals(1)){

+ 103
- 33
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/HKServiceImpl.java Ver fichero

@@ -6,9 +6,9 @@ import com.community.commom.constant.Constant;
6 6
 import com.community.commom.mode.ResponseBean;
7 7
 import com.community.commom.uuid.IdGen;
8 8
 import com.community.commom.hk.HKOpenApi;
9
-import com.community.huiju.dao.TaUserMapper;
9
+import com.community.huiju.dao.*;
10 10
 import com.community.huiju.exception.WisdomException;
11
-import com.community.huiju.model.TaUser;
11
+import com.community.huiju.model.*;
12 12
 import com.community.huiju.service.IHKService;
13 13
 import com.google.common.collect.Lists;
14 14
 import com.google.common.collect.Maps;
@@ -21,10 +21,8 @@ import org.springframework.transaction.annotation.Transactional;
21 21
 import java.text.ParseException;
22 22
 import java.text.SimpleDateFormat;
23 23
 import java.time.LocalDate;
24
-import java.util.Arrays;
25
-import java.util.HashMap;
26
-import java.util.List;
27
-import java.util.Map;
24
+import java.util.*;
25
+import java.util.stream.Collectors;
28 26
 
29 27
 /**
30 28
  * 海康 业务实现
@@ -39,11 +37,45 @@ public class HKServiceImpl implements IHKService {
39 37
 
40 38
     private IdGen idGen = IdGen.get();
41 39
 
40
+    @Autowired
41
+    private TpEquipmentMapper tpEquipmentMapper;
42
+
43
+    @Autowired
44
+    private TpConfigurationMapper tpConfigurationMapper;
45
+
46
+    @Autowired
47
+    private TpEquipmentTreeMapper tpEquipmentTreeMapper;
48
+
49
+    @Autowired
50
+    private TaUserVerifyMapper taUserVerifyMapper;
51
+
52
+    /**
53
+     * 获取设备UUID
54
+     * @param equipmentList
55
+     * @return
56
+     */
57
+    private List<Map<String,Object>> getEquipmentUUID(List<TpEquipment> equipmentList) {
58
+        return equipmentList.stream().map(equipment -> {
59
+            TpConfiguration tpConfiguration = tpConfigurationMapper.selectByPrimaryKey(equipment.getUuidId());
60
+            Map<String,Object> map = Maps.newHashMap();
61
+            map.put("doorUuid", tpConfiguration.getDooruuid());
62
+            map.put("deviceUuid", tpConfiguration.getDeviceuuid());
63
+            return map;
64
+        }).collect(Collectors.toList());
65
+    }
66
+
42 67
     @Override
43 68
     @Transactional(rollbackFor = Exception.class)
44
-    public ResponseBean pushPerson(String appUserId) {
69
+    public ResponseBean pushPerson(String appUserId, Integer userVerifyId) {
45 70
         ResponseBean responseBean = new ResponseBean();
46 71
         TaUser user = taUserMapper.selectByPrimaryKey(Integer.parseInt(appUserId));
72
+
73
+        TaUserVerify userVerify = taUserVerifyMapper.selectByPrimaryKey(userVerifyId);
74
+        if (null == userVerify) {
75
+            throw new WisdomException("审核数据不存在!");
76
+        }
77
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userVerify.getCommunityId());
78
+
47 79
         // 这两个值一般都是同时存在的
48 80
         // 当这两个值不存在的时候,就添加海康人员
49 81
         if (null == user.getHkUserId() && null == user.getHkPersonNo()) {
@@ -54,21 +86,54 @@ public class HKServiceImpl implements IHKService {
54 86
              * 2.根据部门编号推送 海康
55 87
              */
56 88
             taUserMapper.updateByPrimaryKeySelective(user);
57
-            addUserAndOpenCard(responseBean, user);
89
+            addUserAndOpenCard(responseBean, user, tpEquipmentTree);
58 90
         }
59 91
 
60 92
 
61
-
62 93
         // 推送海康
63 94
 
64 95
         // 给用户添加 海康门禁权限
65
-        HKOpenApi.addAuthoritiesByPersonIds(String.valueOf(user.getHkUserId()));
96
+
97
+        List<TpEquipment> tpEquipments = tpEquipmentMapper.selectByCommunityIdAndRoomNoId(userVerify.getCommunityId(), userVerify.getRoomNoId(), 4);
98
+        List<Map<String, Object>> equipmentUUID = getEquipmentUUID(tpEquipments);
99
+        StringBuilder doorUuids = new StringBuilder();
100
+        StringBuilder deviceUuids = new StringBuilder();
101
+        equipmentUUID.forEach(e-> {
102
+            doorUuids.append(e.get("doorUuid"));
103
+            doorUuids.append(",");
104
+            deviceUuids.append(e.get("deviceUuid"));
105
+            deviceUuids.append(",");
106
+        });
107
+
108
+        Map<String, Object> map = Maps.newHashMap();
109
+        map.put("personIds",String.valueOf(user.getHkUserId()));
110
+        map.put("doorUuids", doorUuids.substring(0, doorUuids.lastIndexOf(",")));
111
+        map.put("secret", tpEquipmentTree.getSecret());
112
+        map.put("appkey", tpEquipmentTree.getAppkey());
113
+        HKOpenApi.addAuthoritiesByPersonIds(map);
66 114
 
67 115
         // 下发门禁权限
68
-        downloadAuthorityByDeviceUuids();
116
+        Map<String, Object> downloadAuthorityByPersonIdsMap = Maps.newHashMap();
117
+        downloadAuthorityByPersonIdsMap.put("personIds",String.valueOf(user.getHkUserId()));
118
+        downloadAuthorityByPersonIdsMap.put("doorUuids", doorUuids.substring(0, doorUuids.lastIndexOf(",")));
119
+        downloadAuthorityByPersonIdsMap.put("operateType",1);
120
+        downloadAuthorityByPersonIdsMap.put("includeFinger",1);
121
+        downloadAuthorityByPersonIdsMap.put("secret", tpEquipmentTree.getSecret());
122
+        downloadAuthorityByPersonIdsMap.put("appkey", tpEquipmentTree.getAppkey());
123
+        HKOpenApi.downloadAuthorityByPersonIds(downloadAuthorityByPersonIdsMap);
69 124
 
70 125
         //--------- 可视对讲 ----------
71
-        visualIntercom(user);
126
+
127
+        Map<String,Object> addOutDoorAuthMap = Maps.newHashMap();
128
+        addOutDoorAuthMap.put("authName", "荟居");
129
+        addOutDoorAuthMap.put("personIds", Arrays.asList(user.getHkUserId()));
130
+        addOutDoorAuthMap.put("secret", tpEquipmentTree.getSecret());
131
+        addOutDoorAuthMap.put("appkey", tpEquipmentTree.getAppkey());
132
+        List<String> visualList = new ArrayList<>();
133
+        visualList.add("10010100000");
134
+        addOutDoorAuthMap.put("longNums", visualList);
135
+        // 可视对讲下发 权限
136
+        visualIntercomPermissions(addOutDoorAuthMap);
72 137
         if ("0".equals(responseBean.getCode())) {
73 138
             responseBean.addSuccess("操作成功!");
74 139
             return responseBean;
@@ -80,7 +145,7 @@ public class HKServiceImpl implements IHKService {
80 145
     public ResponseBean downloadAuthorityByDeviceUuids() {
81 146
         ResponseBean responseBean = new ResponseBean();
82 147
         // 下发门禁权限
83
-        HKOpenApi.downloadAuthorityByDeviceUuids();
148
+        HKOpenApi.downloadAuthorityByDeviceUuids(Maps.newHashMap());
84 149
         responseBean.addSuccess("操作成功!");
85 150
         return responseBean;
86 151
     }
@@ -92,7 +157,7 @@ public class HKServiceImpl implements IHKService {
92 157
      * @param response
93 158
      * @param user
94 159
      */
95
-    private void addUserAndOpenCard(ResponseBean response, TaUser user) {
160
+    private void addUserAndOpenCard(ResponseBean response, TaUser user, TpEquipmentTree tpEquipmentTree) {
96 161
         Map<String, Object> parDept = Maps.newHashMap();
97 162
         parDept.put("pageNo", 1);
98 163
         parDept.put("pageSize", 100);
@@ -106,6 +171,8 @@ public class HKServiceImpl implements IHKService {
106 171
         parUser.put("personName", user.getUserName());
107 172
         parUser.put("phoneNo", user.getLoginName());
108 173
         parUser.put("deptUuid", deptUuid);
174
+        parUser.put("secret", tpEquipmentTree.getSecret());
175
+        parUser.put("appkey", tpEquipmentTree.getAppkey());
109 176
         Map<String, Object> resultMap = JSONObject.parseObject(HKOpenApi.addUser(parUser), HashMap.class);
110 177
         int errorCode = (int) resultMap.get("errorCode");
111 178
         if (errorCode == 0) {
@@ -131,7 +198,7 @@ public class HKServiceImpl implements IHKService {
131 198
             // 开卡
132 199
             List<String> cardAndPersonList = Lists.newArrayList();
133 200
             cardAndPersonList.add(cardNo + "," + personId);
134
-            response = openCard(cardAndPersonList, null);
201
+            response = openCard(cardAndPersonList, null, tpEquipmentTree);
135 202
         } else {
136 203
             String errorMessage = String.valueOf(resultMap.get("errorMessage"));
137 204
             response.addError(errorMessage);
@@ -147,7 +214,7 @@ public class HKServiceImpl implements IHKService {
147 214
      * @param expirationTime    有效期为多少? 单位为 年
148 215
      * @return
149 216
      */
150
-    private ResponseBean openCard(List<String> cardIdAndHKUserID, Integer expirationTime) {
217
+    private ResponseBean openCard(List<String> cardIdAndHKUserID, Integer expirationTime, TpEquipmentTree tpEquipmentTree) {
151 218
         ResponseBean response = new ResponseBean();
152 219
 
153 220
         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
@@ -174,6 +241,8 @@ public class HKServiceImpl implements IHKService {
174 241
         parOpenCard.put("cardAndPerson", cardIdAndHKUserID);
175 242
         parOpenCard.put("startTime", System.currentTimeMillis());
176 243
         parOpenCard.put("endTime", time);
244
+        parOpenCard.put("secret", tpEquipmentTree.getSecret());
245
+        parOpenCard.put("appkey", tpEquipmentTree.getAppkey());
177 246
         JSONObject openCardJSON = JSONObject.parseObject(HKOpenApi.openCard(parOpenCard));
178 247
         int code = (int) openCardJSON.get("errorCode");
179 248
         if (code == 0) {
@@ -206,32 +275,33 @@ public class HKServiceImpl implements IHKService {
206 275
     }
207 276
 
208 277
     /**
209
-     * 可视对讲下发
278
+     * 可视对讲下发 权限
210 279
      *
211
-     * @param user
280
+     * @param map
212 281
      */
213
-    private void visualIntercom(TaUser user) {
282
+    private void visualIntercomPermissions(Map<String,Object> map) {
214 283
         // TODO 目前下发的 authName权限组是我们自定义的, 后面肯定是按照小区的 期楼栋号来设置的
215 284
         // TODO longNums设备编号, 可视对讲的机器编号, 应该根据 期楼栋号 下面的机器编号来设置的
216 285
 
217 286
         //--------- 可视对讲 ----------
218 287
 
219 288
         // 可视对讲 根据人员 ID 集添加权限并下发
220
-        Map<String, Object> addOutDoorAuthMap = new HashMap<>();
221
-        addOutDoorAuthMap.put("authName", "荟居");
222
-        addOutDoorAuthMap.put("personIds", Arrays.asList(user.getHkUserId()));
223
-        addOutDoorAuthMap.put("longNums", Arrays.asList("10010100000"));
224
-        // 可视对讲 根据人员 ID 集添加权限并下发
225
-        HKOpenApi.addOutDoorAuth(addOutDoorAuthMap);
289
+        HKOpenApi.addOutDoorAuth(map);
226 290
 
227
-        // 可视对讲 指定人员指纹权限下载
228
-//        Map<String, Object> downloadFingerMap = new HashMap<>();
229
-//        // opType 操作类型 Integer 是 1 为下发权限;2 为删除权限
230
-//        downloadFingerMap.put("opType", 1);
231
-//        downloadFingerMap.put("personIds", Arrays.asList(user.getHkUserId()));
232
-//        downloadFingerMap.put("longNums", Arrays.asList("10010100000"));
233
-//        // 可视对讲 指定人员指纹权限下载
234
-//        HKOpenApi.downloadFinger(downloadFingerMap);
291
+    }
235 292
 
293
+    /**
294
+     * 可视对讲 指定人员指纹权限下载
295
+     * @param map
296
+     */
297
+    private void visualIntercomFingerprint(Map<String,Object> map) {
298
+        // 可视对讲 指定人员指纹权限下载
299
+        Map<String, Object> downloadFingerMap = new HashMap<>();
300
+        // opType 操作类型 Integer 是 1 为下发权限;2 为删除权限
301
+        downloadFingerMap.put("opType", 1);
302
+        downloadFingerMap.put("personIds", map.get("personIds"));
303
+        downloadFingerMap.put("longNums", map.get("longNums"));
304
+        // 可视对讲 指定人员指纹权限下载
305
+        HKOpenApi.downloadFinger(downloadFingerMap);
236 306
     }
237 307
 }

+ 25
- 3
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserServiceImpl.java Ver fichero

@@ -53,6 +53,7 @@ import java.time.*;
53 53
 import java.time.format.DateTimeFormatter;
54 54
 import java.util.*;
55 55
 import java.util.logging.SimpleFormatter;
56
+import java.util.stream.Collectors;
56 57
 
57 58
 import static com.community.commom.constant.Constant.OWNER;
58 59
 
@@ -110,6 +111,13 @@ public class TaUserServiceImpl implements ITaUserService {
110 111
     @Autowired
111 112
     private DaSuProperties daSuProperties;
112 113
 
114
+
115
+    @Autowired
116
+    private TpConfigurationMapper tpConfigurationMapper;
117
+
118
+    @Autowired
119
+    private TpEquipmentMapper tpEquipmentMapper;
120
+
113 121
     /**
114 122
      * 期
115 123
      */
@@ -542,7 +550,7 @@ public class TaUserServiceImpl implements ITaUserService {
542 550
         }
543 551
 
544 552
         // 推送海康
545
-        response = ihkService.pushPerson(user.getId()+"");
553
+        response = ihkService.pushPerson(user.getId()+"", userVerify.getId());
546 554
         if ("1".equals(response.getCode())) {
547 555
             throw new WisdomException("推送HK失败!");
548 556
         }
@@ -675,11 +683,25 @@ public class TaUserServiceImpl implements ITaUserService {
675 683
         updateUser(response, user);
676 684
 
677 685
         // 下发门禁权限
678
-        HKOpenApi.downloadAuthorityByDeviceUuids();
679
-
686
+//         HKOpenApi.downloadAuthorityByDeviceUuids();
680 687
         return response;
681 688
     }
682 689
 
690
+    /**
691
+     * 获取设备UUID
692
+     * @param equipmentList
693
+     * @return
694
+     */
695
+    private List<Map<String,Object>> getEquipmentUUID(List<TpEquipment> equipmentList) {
696
+        return equipmentList.stream().map(equipment -> {
697
+            TpConfiguration tpConfiguration = tpConfigurationMapper.selectByPrimaryKey(equipment.getUuidId());
698
+            Map<String,Object> map = Maps.newHashMap();
699
+            map.put("doorUuid", tpConfiguration.getDooruuid());
700
+            map.put("deviceUuid", tpConfiguration.getDeviceuuid());
701
+            return map;
702
+        }).collect(Collectors.toList());
703
+    }
704
+
683 705
 
684 706
 
685 707
     /**

+ 1
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserVerifyServicelmpl.java Ver fichero

@@ -305,7 +305,7 @@ public class TaUserVerifyServicelmpl implements TaUserVerifyServicel {
305 305
                 tpMessageMapper.insert(message);
306 306
             }
307 307
             // 推送海康
308
-            responseBean = ihkService.pushPerson(user.getId()+"");
308
+            responseBean = ihkService.pushPerson(user.getId()+"", userVerify.getId());
309 309
             if ("1".equals(responseBean.getCode())) {
310 310
                 throw new WisdomException("推送HK失败!");
311 311
             }

+ 12
- 3
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaVistorServiceImpl.java Ver fichero

@@ -8,9 +8,11 @@ import com.community.commom.hk.HKOpenApi;
8 8
 import com.community.huiju.dao.TaUserMapper;
9 9
 import com.community.huiju.dao.TaVisitorLicenseMapper;
10 10
 import com.community.huiju.dao.TaVisitorMapper;
11
+import com.community.huiju.dao.TpEquipmentTreeMapper;
11 12
 import com.community.huiju.model.TaUser;
12 13
 import com.community.huiju.model.TaVisitor;
13 14
 import com.community.huiju.model.TaVisitorLicense;
15
+import com.community.huiju.model.TpEquipmentTree;
14 16
 import com.community.huiju.service.TaVistorServiceI;
15 17
 import com.google.common.collect.Maps;
16 18
 import lombok.extern.slf4j.Slf4j;
@@ -41,6 +43,9 @@ public class TaVistorServiceImpl implements TaVistorServiceI {
41 43
     @Autowired
42 44
     private TaUserMapper taUserMapper;
43 45
 
46
+    @Autowired
47
+    private TpEquipmentTreeMapper tpEquipmentTreeMapper;
48
+
44 49
     @Override
45 50
     @Transactional(rollbackFor = Exception.class)
46 51
     public ResponseBean insertTaVistor(TaVisitor taVisitor, UserElement userElement) {
@@ -77,7 +82,7 @@ public class TaVistorServiceImpl implements TaVistorServiceI {
77 82
         }
78 83
 
79 84
         // 推送海康
80
-        temporaryRegister(userElement.getId(),taVisitor,response);
85
+        temporaryRegister(userElement.getId(),taVisitor, userElement.getCommunityId(), response);
81 86
 
82 87
         return response;
83 88
     }
@@ -104,11 +109,15 @@ public class TaVistorServiceImpl implements TaVistorServiceI {
104 109
      * @param userId 被访人ID
105 110
      * @param visitor
106 111
      */
107
-    private void temporaryRegister(Integer userId,TaVisitor visitor,ResponseBean response){
112
+    private void temporaryRegister(Integer userId,TaVisitor visitor, Integer communityId ,ResponseBean response){
113
+
114
+        // 获取设备树,里面有 opUserId
115
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(communityId);
116
+
108 117
         TaUser taUser = taUserMapper.selectByPrimaryKey(userId);
109 118
         String result = HKOpenApi.temporaryRegister(visitor.getVisitorName(),visitor.getVisitorTel(),
110 119
                 Integer.valueOf(visitor.getVisitorNum()),visitor.getVisitorStartTime().getTime(),
111
-                visitor.getVisitorEndTime().getTime(),taUser.getHkUserId());
120
+                visitor.getVisitorEndTime().getTime(),taUser.getHkUserId(), tpEquipmentTree.getOpUserUuid(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret());
112 121
 
113 122
         JSONObject resultJSON = JSONObject.parseObject(result);
114 123
         int errorCode = resultJSON.getInteger("errorCode");

+ 39
- 15
CODE/smart-community/app-api/src/main/resources/mapper/TpConfigurationMapper.xml Ver fichero

@@ -12,13 +12,15 @@
12 12
     <result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
13 13
     <result column="update_user" property="updateUser" jdbcType="INTEGER" />
14 14
     <result column="community_id" property="communityId" jdbcType="INTEGER" />
15
+    <result column="doorUuid" property="dooruuid" jdbcType="VARCHAR" />
16
+    <result column="deviceUuid" property="deviceuuid" jdbcType="VARCHAR" />
15 17
   </resultMap>
16 18
   <sql id="Base_Column_List" >
17
-    id, key, configuration_name, configuration_type, configuration_value, create_tiem, 
18
-    create_user, update_time, update_user, community_id
19
+    id, `key`, configuration_name, configuration_type, configuration_value, create_tiem,
20
+    create_user, update_time, update_user, community_id, doorUuid, deviceUuid
19 21
   </sql>
20 22
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
21
-    select 
23
+    select
22 24
     <include refid="Base_Column_List" />
23 25
     from tp_configuration
24 26
     where id = #{id,jdbcType=INTEGER}
@@ -28,14 +30,16 @@
28 30
     where id = #{id,jdbcType=INTEGER}
29 31
   </delete>
30 32
   <insert id="insert" parameterType="com.community.huiju.model.TpConfiguration" >
31
-    insert into tp_configuration (id, key, configuration_name, 
32
-      configuration_type, configuration_value, 
33
-      create_tiem, create_user, update_time, 
34
-      update_user, community_id)
35
-    values (#{id,jdbcType=INTEGER}, #{key,jdbcType=VARCHAR}, #{configurationName,jdbcType=VARCHAR}, 
36
-      #{configurationType,jdbcType=INTEGER}, #{configurationValue,jdbcType=VARCHAR}, 
37
-      #{createTiem,jdbcType=TIMESTAMP}, #{createUser,jdbcType=INTEGER}, #{updateTime,jdbcType=TIMESTAMP}, 
38
-      #{updateUser,jdbcType=INTEGER}, #{communityId,jdbcType=INTEGER})
33
+    insert into tp_configuration (id, `key`, configuration_name,
34
+      configuration_type, configuration_value,
35
+      create_tiem, create_user, update_time,
36
+      update_user, community_id, doorUuid,
37
+      deviceUuid)
38
+    values (#{id,jdbcType=INTEGER}, #{key,jdbcType=VARCHAR}, #{configurationName,jdbcType=VARCHAR},
39
+      #{configurationType,jdbcType=INTEGER}, #{configurationValue,jdbcType=VARCHAR},
40
+      #{createTiem,jdbcType=TIMESTAMP}, #{createUser,jdbcType=INTEGER}, #{updateTime,jdbcType=TIMESTAMP},
41
+      #{updateUser,jdbcType=INTEGER}, #{communityId,jdbcType=INTEGER}, #{dooruuid,jdbcType=VARCHAR},
42
+      #{deviceuuid,jdbcType=VARCHAR})
39 43
   </insert>
40 44
   <insert id="insertSelective" parameterType="com.community.huiju.model.TpConfiguration" >
41 45
     insert into tp_configuration
@@ -44,7 +48,7 @@
44 48
         id,
45 49
       </if>
46 50
       <if test="key != null" >
47
-        key,
51
+        `key`,
48 52
       </if>
49 53
       <if test="configurationName != null" >
50 54
         configuration_name,
@@ -70,6 +74,12 @@
70 74
       <if test="communityId != null" >
71 75
         community_id,
72 76
       </if>
77
+      <if test="dooruuid != null" >
78
+        doorUuid,
79
+      </if>
80
+      <if test="deviceuuid != null" >
81
+        deviceUuid,
82
+      </if>
73 83
     </trim>
74 84
     <trim prefix="values (" suffix=")" suffixOverrides="," >
75 85
       <if test="id != null" >
@@ -102,13 +112,19 @@
102 112
       <if test="communityId != null" >
103 113
         #{communityId,jdbcType=INTEGER},
104 114
       </if>
115
+      <if test="dooruuid != null" >
116
+        #{dooruuid,jdbcType=VARCHAR},
117
+      </if>
118
+      <if test="deviceuuid != null" >
119
+        #{deviceuuid,jdbcType=VARCHAR},
120
+      </if>
105 121
     </trim>
106 122
   </insert>
107 123
   <update id="updateByPrimaryKeySelective" parameterType="com.community.huiju.model.TpConfiguration" >
108 124
     update tp_configuration
109 125
     <set >
110 126
       <if test="key != null" >
111
-        key = #{key,jdbcType=VARCHAR},
127
+        `key` = #{key,jdbcType=VARCHAR},
112 128
       </if>
113 129
       <if test="configurationName != null" >
114 130
         configuration_name = #{configurationName,jdbcType=VARCHAR},
@@ -134,12 +150,18 @@
134 150
       <if test="communityId != null" >
135 151
         community_id = #{communityId,jdbcType=INTEGER},
136 152
       </if>
153
+      <if test="dooruuid != null" >
154
+        doorUuid = #{dooruuid,jdbcType=VARCHAR},
155
+      </if>
156
+      <if test="deviceuuid != null" >
157
+        deviceUuid = #{deviceuuid,jdbcType=VARCHAR},
158
+      </if>
137 159
     </set>
138 160
     where id = #{id,jdbcType=INTEGER}
139 161
   </update>
140 162
   <update id="updateByPrimaryKey" parameterType="com.community.huiju.model.TpConfiguration" >
141 163
     update tp_configuration
142
-    set key = #{key,jdbcType=VARCHAR},
164
+    set `key` = #{key,jdbcType=VARCHAR},
143 165
       configuration_name = #{configurationName,jdbcType=VARCHAR},
144 166
       configuration_type = #{configurationType,jdbcType=INTEGER},
145 167
       configuration_value = #{configurationValue,jdbcType=VARCHAR},
@@ -147,7 +169,9 @@
147 169
       create_user = #{createUser,jdbcType=INTEGER},
148 170
       update_time = #{updateTime,jdbcType=TIMESTAMP},
149 171
       update_user = #{updateUser,jdbcType=INTEGER},
150
-      community_id = #{communityId,jdbcType=INTEGER}
172
+      community_id = #{communityId,jdbcType=INTEGER},
173
+      doorUuid = #{dooruuid,jdbcType=VARCHAR},
174
+      deviceUuid = #{deviceuuid,jdbcType=VARCHAR}
151 175
     where id = #{id,jdbcType=INTEGER}
152 176
   </update>
153 177
 </mapper>

+ 93
- 0
CODE/smart-community/app-api/src/main/resources/mapper/TpRoomNoEquipmentMapper.xml Ver fichero

@@ -0,0 +1,93 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
3
+<mapper namespace="com.community.huiju.dao.TpRoomNoEquipmentMapper" >
4
+  <resultMap id="BaseResultMap" type="com.community.huiju.model.TpRoomNoEquipment" >
5
+    <id column="id" property="id" jdbcType="INTEGER" />
6
+    <result column="community_id" property="communityId" jdbcType="INTEGER" />
7
+    <result column="room_no_id" property="roomNoId" jdbcType="INTEGER" />
8
+    <result column="equipment_id" property="equipmentId" jdbcType="INTEGER" />
9
+    <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
10
+  </resultMap>
11
+  <sql id="Base_Column_List" >
12
+    id, community_id, room_no_id, equipment_id, create_date
13
+  </sql>
14
+  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
15
+    select 
16
+    <include refid="Base_Column_List" />
17
+    from tp_room_no_equipment
18
+    where id = #{id,jdbcType=INTEGER}
19
+  </select>
20
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
21
+    delete from tp_room_no_equipment
22
+    where id = #{id,jdbcType=INTEGER}
23
+  </delete>
24
+  <insert id="insert" parameterType="com.community.huiju.model.TpRoomNoEquipment" >
25
+    insert into tp_room_no_equipment (id, community_id, room_no_id, 
26
+      equipment_id, create_date)
27
+    values (#{id,jdbcType=INTEGER}, #{communityId,jdbcType=INTEGER}, #{roomNoId,jdbcType=INTEGER}, 
28
+      #{equipmentId,jdbcType=INTEGER}, #{createDate,jdbcType=TIMESTAMP})
29
+  </insert>
30
+  <insert id="insertSelective" parameterType="com.community.huiju.model.TpRoomNoEquipment" >
31
+    insert into tp_room_no_equipment
32
+    <trim prefix="(" suffix=")" suffixOverrides="," >
33
+      <if test="id != null" >
34
+        id,
35
+      </if>
36
+      <if test="communityId != null" >
37
+        community_id,
38
+      </if>
39
+      <if test="roomNoId != null" >
40
+        room_no_id,
41
+      </if>
42
+      <if test="equipmentId != null" >
43
+        equipment_id,
44
+      </if>
45
+      <if test="createDate != null" >
46
+        create_date,
47
+      </if>
48
+    </trim>
49
+    <trim prefix="values (" suffix=")" suffixOverrides="," >
50
+      <if test="id != null" >
51
+        #{id,jdbcType=INTEGER},
52
+      </if>
53
+      <if test="communityId != null" >
54
+        #{communityId,jdbcType=INTEGER},
55
+      </if>
56
+      <if test="roomNoId != null" >
57
+        #{roomNoId,jdbcType=INTEGER},
58
+      </if>
59
+      <if test="equipmentId != null" >
60
+        #{equipmentId,jdbcType=INTEGER},
61
+      </if>
62
+      <if test="createDate != null" >
63
+        #{createDate,jdbcType=TIMESTAMP},
64
+      </if>
65
+    </trim>
66
+  </insert>
67
+  <update id="updateByPrimaryKeySelective" parameterType="com.community.huiju.model.TpRoomNoEquipment" >
68
+    update tp_room_no_equipment
69
+    <set >
70
+      <if test="communityId != null" >
71
+        community_id = #{communityId,jdbcType=INTEGER},
72
+      </if>
73
+      <if test="roomNoId != null" >
74
+        room_no_id = #{roomNoId,jdbcType=INTEGER},
75
+      </if>
76
+      <if test="equipmentId != null" >
77
+        equipment_id = #{equipmentId,jdbcType=INTEGER},
78
+      </if>
79
+      <if test="createDate != null" >
80
+        create_date = #{createDate,jdbcType=TIMESTAMP},
81
+      </if>
82
+    </set>
83
+    where id = #{id,jdbcType=INTEGER}
84
+  </update>
85
+  <update id="updateByPrimaryKey" parameterType="com.community.huiju.model.TpRoomNoEquipment" >
86
+    update tp_room_no_equipment
87
+    set community_id = #{communityId,jdbcType=INTEGER},
88
+      room_no_id = #{roomNoId,jdbcType=INTEGER},
89
+      equipment_id = #{equipmentId,jdbcType=INTEGER},
90
+      create_date = #{createDate,jdbcType=TIMESTAMP}
91
+    where id = #{id,jdbcType=INTEGER}
92
+  </update>
93
+</mapper>

+ 123
- 113
CODE/smart-community/community-common/src/main/java/com/community/commom/hk/HKOpenApi.java Ver fichero

@@ -28,7 +28,7 @@ public class HKOpenApi {
28 28
         Map<String,Object> parMap = Maps.newHashMap();
29 29
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_MONITORY_POINT;
30 30
         //设置APPKEY
31
-        parMap.put("appkey", HKConstant.APPKEY);
31
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
32 32
         //设置时间参数
33 33
         parMap.put("time", System.currentTimeMillis());
34 34
         parMap.put("pageNo",map.get("pageNo"));
@@ -39,7 +39,7 @@ public class HKOpenApi {
39 39
         log.info("获取 监控列表 请求参数:{}", params);
40 40
         String data = null;
41 41
         try {
42
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
42
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
43 43
             log.info("获取 监控列表 请求返回结果:{}",data);
44 44
         } catch (Exception e) {
45 45
             e.printStackTrace();
@@ -60,7 +60,7 @@ public class HKOpenApi {
60 60
         Map<String,Object> parMap = Maps.newHashMap();
61 61
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_LIKE_DEPT_NAME;
62 62
         //设置APPKEY
63
-        parMap.put("appkey", HKConstant.APPKEY);
63
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
64 64
         //设置时间参数
65 65
         parMap.put("time", System.currentTimeMillis());
66 66
         parMap.put("pageNo",map.get("pageNo"));
@@ -71,7 +71,7 @@ public class HKOpenApi {
71 71
         log.info("根据部门名称分页获取部门 请求参数:{}", params);
72 72
         String data = null;
73 73
         try {
74
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
74
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
75 75
             log.info("根据部门名称分页获取部门 请求返回结果:{}",data);
76 76
         } catch (Exception e) {
77 77
             e.printStackTrace();
@@ -93,7 +93,7 @@ public class HKOpenApi {
93 93
         Map<String,Object> parMap = Maps.newHashMap();
94 94
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_ADD_USER;
95 95
         //设置APPKEY获取中心信息
96
-        parMap.put("appkey", HKConstant.APPKEY);
96
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
97 97
         //设置时间参数
98 98
         parMap.put("time", System.currentTimeMillis());
99 99
         parMap.put("opUserUuid",map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
@@ -106,7 +106,7 @@ public class HKOpenApi {
106 106
         log.info("添加人员 请求参数:{}", params);
107 107
         String data = null;
108 108
         try {
109
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
109
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
110 110
             log.info("添加人员 请求返回结果:{}",data);
111 111
         } catch (Exception e) {
112 112
             e.printStackTrace();
@@ -127,7 +127,7 @@ public class HKOpenApi {
127 127
         Map<String,Object> parMap = Maps.newHashMap();
128 128
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_OPEN_CARD;
129 129
         //设置APPKEY
130
-        parMap.put("appkey", HKConstant.APPKEY);
130
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
131 131
         //设置时间参数
132 132
         parMap.put("time", System.currentTimeMillis());
133 133
         parMap.put("opUserUuid",map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
@@ -139,7 +139,7 @@ public class HKOpenApi {
139 139
         log.info("批量开卡 请求参数:{}", params);
140 140
         String data = null;
141 141
         try {
142
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
142
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
143 143
             log.info("批量开卡 请求返回结果:{}",data);
144 144
         } catch (Exception e) {
145 145
             e.printStackTrace();
@@ -155,22 +155,22 @@ public class HKOpenApi {
155 155
      *
156 156
      * @return
157 157
      */
158
-    public static String getACDevicesByUnitUuids(){
158
+    public static String getACDevicesByUnitUuids(Map<String, Object> map){
159 159
         Map<String,Object> parMap = Maps.newHashMap();
160 160
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_MONITORY_POINT;
161 161
         //设置APPKEY
162
-        parMap.put("appkey", HKConstant.APPKEY);
162
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
163 163
         //设置时间参数
164 164
         parMap.put("time", System.currentTimeMillis());
165 165
         parMap.put("pageNo",1);
166 166
         parMap.put("pageSize",10);
167
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
167
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
168 168
         parMap.put("unitUuids","1048576");
169 169
         String params =  JSON.toJSONString(parMap);
170 170
         log.info("获取中心UUID集获取中心下的门禁设备请求参数:{}", params);
171 171
         String data = null;
172 172
         try {
173
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
173
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
174 174
             log.info("获取 中心UUID集获取中心下的门禁设备 请求返回结果:{}",data);
175 175
         } catch (Exception e) {
176 176
             e.printStackTrace();
@@ -186,21 +186,21 @@ public class HKOpenApi {
186 186
      *
187 187
      * @return
188 188
      */
189
-    public static String getDoors(){
189
+    public static String getDoors(Map<String,Object> map){
190 190
         Map<String,Object> parMap = Maps.newHashMap();
191 191
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.GET_DOORS; // HKConstant.ITF_MONITORY_POINT;
192 192
         //设置APPKEY
193
-        parMap.put("appkey", HKConstant.APPKEY);
193
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
194 194
         //设置时间参数
195 195
         parMap.put("time", System.currentTimeMillis());
196 196
         parMap.put("pageNo",1);
197 197
         parMap.put("pageSize",10);
198
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
198
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
199 199
         String params =  JSON.toJSONString(parMap);
200 200
         log.info("分页获取门禁点信息请求参数:{}", params);
201 201
         String data = null;
202 202
         try {
203
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
203
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
204 204
             log.info("分页获取门禁点信息 请求返回结果:{}",data);
205 205
         } catch (Exception e) {
206 206
             e.printStackTrace();
@@ -216,22 +216,22 @@ public class HKOpenApi {
216 216
      *
217 217
      * @return
218 218
      */
219
-    public static String getUnitsByUuids(){
219
+    public static String getUnitsByUuids(Map<String,Object> map){
220 220
         Map<String,Object> parMap = Maps.newHashMap();
221 221
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_MONITORY_POINT;
222 222
         //设置APPKEY
223
-        parMap.put("appkey", HKConstant.APPKEY);
223
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
224 224
         //设置时间参数
225 225
         parMap.put("time", System.currentTimeMillis());
226 226
         parMap.put("pageNo",1);
227 227
         parMap.put("pageSize",10);
228
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
228
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
229 229
         parMap.put("unitUuids","1048576");
230 230
         String params =  JSON.toJSONString(parMap);
231 231
         log.info("获取控制中心信息请求参数:{}", params);
232 232
         String data = null;
233 233
         try {
234
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
234
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
235 235
             log.info("获取控制中心信息 请求返回结果:{}",data);
236 236
         } catch (Exception e) {
237 237
             e.printStackTrace();
@@ -246,23 +246,23 @@ public class HKOpenApi {
246 246
      *  根据中心UUID分页获取下级区域
247 247
      * @return
248 248
      */
249
-    public static String getRegionsByUnitUuid(){
249
+    public static String getRegionsByUnitUuid(Map<String,Object> map){
250 250
         Map<String,Object> parMap = Maps.newHashMap();
251 251
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_MONITORY_POINT;
252 252
         //设置APPKEY
253
-        parMap.put("appkey", HKConstant.APPKEY);
253
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
254 254
         //设置时间参数
255 255
         parMap.put("time", System.currentTimeMillis());
256 256
         parMap.put("pageNo",1);
257 257
         parMap.put("pageSize",10);
258
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
258
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
259 259
         parMap.put("parentUuid","1048576");
260 260
         parMap.put("allChildren",1);
261 261
         String params =  JSON.toJSONString(parMap);
262 262
         log.info("根据中心UUID分页获取下级区域请求参数:{}", params);
263 263
         String data = null;
264 264
         try {
265
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
265
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
266 266
             log.info("根据中心UUID分页获取下级区域 请求返回结果:{}",data);
267 267
         } catch (Exception e) {
268 268
             e.printStackTrace();
@@ -277,20 +277,20 @@ public class HKOpenApi {
277 277
      * 根据区域UUID集获取门禁点
278 278
      * @return
279 279
      */
280
-    public static String getDoorsByRegionUuids(){
280
+    public static String getDoorsByRegionUuids(Map<String,Object> map){
281 281
         Map<String,Object> parMap = Maps.newHashMap();
282 282
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOORS_BY_REGION_UUIDS;
283 283
         //设置APPKEY
284
-        parMap.put("appkey", HKConstant.APPKEY);
284
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
285 285
         //设置时间参数
286 286
         parMap.put("time", System.currentTimeMillis());
287
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
287
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
288 288
         parMap.put("regionUuids","2a36878c9a4a49d290d253ac1b4746dc");
289 289
         String params =  JSON.toJSONString(parMap);
290 290
         log.info("根据区域UUID集获取门禁点请求参数:{}", params);
291 291
         String data = null;
292 292
         try {
293
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
293
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
294 294
             log.info("根据区域UUID集获取门禁点 请求返回结果:{}",data);
295 295
         } catch (Exception e) {
296 296
             e.printStackTrace();
@@ -305,23 +305,24 @@ public class HKOpenApi {
305 305
      * 根据人员ID集添加权限
306 306
      * @return
307 307
      */
308
-    public static String addAuthoritiesByPersonIds(String personIds){
308
+    public static String addAuthoritiesByPersonIds(Map<String, Object> map){
309 309
         Map<String,Object> parMap = Maps.newHashMap();
310 310
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ADD_AUTHORITIES_BY_PERSONIDS;
311 311
         //设置APPKEY
312
-        parMap.put("appkey", HKConstant.APPKEY);
312
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
313 313
         //设置时间参数
314 314
         parMap.put("time", System.currentTimeMillis());
315
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
316
-        parMap.put("personIds",personIds);
315
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
316
+        parMap.put("personIds",map.get("personIds"));
317 317
         parMap.put("doorGroupUuids","");
318 318
         // TODO 目前写死
319
-        parMap.put("doorUuids","91b8ce635b634d468cde925af6e4274c,d40b23e316364bb5a276b99bb6327181,7f866e918ab8452f9eb1d8a25e481530,8b8256fc605d428c9dc797451e3dc432,84d619c5e84942f68047f0bca93fc041");
319
+        // parMap.put("doorUuids","91b8ce635b634d468cde925af6e4274c,d40b23e316364bb5a276b99bb6327181,7f866e918ab8452f9eb1d8a25e481530,8b8256fc605d428c9dc797451e3dc432,84d619c5e84942f68047f0bca93fc041");
320
+        parMap.put("doorUuids",map.get("doorUuids"));
320 321
         String params =  JSON.toJSONString(parMap);
321 322
         log.info("根据人员ID集添加权限请求参数:{}", params);
322 323
         String data = null;
323 324
         try {
324
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
325
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
325 326
             log.info("根据人员ID集添加权限 请求返回结果:{}",data);
326 327
         } catch (Exception e) {
327 328
             e.printStackTrace();
@@ -336,21 +337,21 @@ public class HKOpenApi {
336 337
      * 根据设备UUID集异动下载门禁权限
337 338
      * @return
338 339
      */
339
-    public static String downloadAuthorityByDeviceUuids(){
340
+    public static String downloadAuthorityByDeviceUuids(Map<String,Object> map){
340 341
         Map<String,Object> parMap = Maps.newHashMap();
341 342
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOWNLOAD_AUTHORITY_BY_DEVICEUUIDS;
342 343
         //设置APPKEY
343
-        parMap.put("appkey", HKConstant.APPKEY);
344
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
344 345
         //设置时间参数
345 346
         parMap.put("time", System.currentTimeMillis());
346
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
347
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
347 348
         // TODO 目前写死
348 349
         parMap.put("deviceUuids","fe471fe7c95f408a9e41e029dc0687cf,fe471fe7c95f408a9e41e029dc0687cf,992f53f2c87b4d2a87cf517e7b57366f,a792802b88f749c9b4c6fbf8a610111e,3bff3477889c4b3c983871ea46b66605");
349 350
         String params =  JSON.toJSONString(parMap);
350 351
         log.info("根据设备UUID集异动下载门禁权限请求参数:{}", params);
351 352
         String data = null;
352 353
         try {
353
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
354
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
354 355
             log.info("根据设备UUID集异动下载门禁权限 请求返回结果:{}",data);
355 356
         } catch (Exception e) {
356 357
             e.printStackTrace();
@@ -364,28 +365,29 @@ public class HKOpenApi {
364 365
     /**
365 366
      * 指定人员的门禁权限下载
366 367
      *
367
-     * @param personIds 人员ID, 多个用 "," 隔开
368
+     * @param map
368 369
      * @return
369 370
      */
370
-    public static String downloadAuthorityByPersonIds(String personIds){
371
+    public static String downloadAuthorityByPersonIds(Map<String,Object> map){
371 372
         Map<String,Object> parMap = Maps.newHashMap();
372 373
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOWNLOAD_AUTHORITY_BY_PERSONIDS;
373 374
         //设置APPKEY
374
-        parMap.put("appkey", HKConstant.APPKEY);
375
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
375 376
         //设置时间参数
376 377
         parMap.put("time", System.currentTimeMillis());
377
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
378
-        parMap.put("personIds",personIds);
379
-        parMap.put("doorUuids","efcb9a3fe4e64e2f9c0f546c54465524,94bac7e217fb4a698ad086876d347c6a,369b49476a364f87b1c50e99435ecca8,22d8a043cd3f41c5bf1bd976ab5ee65d");
378
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
379
+        parMap.put("personIds",map.get("personIds"));
380
+        // parMap.put("doorUuids","efcb9a3fe4e64e2f9c0f546c54465524,94bac7e217fb4a698ad086876d347c6a,369b49476a364f87b1c50e99435ecca8,22d8a043cd3f41c5bf1bd976ab5ee65d");
381
+        parMap.put("doorUuids",map.get("doorUuids"));
380 382
         parMap.put("planUuid","plan0000000000000000000000000001");
381
-        parMap.put("operateType",1);
382
-        parMap.put("includeFinger",1);
383
+        parMap.put("operateType",map.get("operateType"));
384
+        parMap.put("includeFinger",map.get("includeFinger"));
383 385
         String params =  JSON.toJSONString(parMap);
384 386
         log.info("指定人员的门禁权限下载请求参数:{}", params);
385 387
         String data = null;
386 388
         try {
387
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
388
-            log.info("获取 指定人员的门禁权限下载 请求返回结果:{}",data);
389
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
390
+            log.info("指定人员的门禁权限下载 请求返回结果:{}",data);
389 391
         } catch (Exception e) {
390 392
             e.printStackTrace();
391 393
             log.error("指定人员的门禁权限下载获取失败!",e);
@@ -402,22 +404,22 @@ public class HKOpenApi {
402 404
      * @param pageSize 一页多少行
403 405
      * @return
404 406
      */
405
-    public static String getPlans(Integer pageNo, Integer pageSize) {
407
+    public static String getPlans(Integer pageNo, Integer pageSize, Map<String, Object> map) {
406 408
 
407 409
         Map<String,Object> parMap = Maps.newHashMap();
408 410
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.GETPLANS;
409 411
         //设置APPKEY
410
-        parMap.put("appkey", HKConstant.APPKEY);
412
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
411 413
         //设置时间参数
412 414
         parMap.put("time", System.currentTimeMillis());
413
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
415
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
414 416
         parMap.put("pageNo",pageNo);
415 417
         parMap.put("pageSize",pageSize);
416 418
         String params =  JSON.toJSONString(parMap);
417 419
         log.info("分页获取计划模板请求参数:{}", params);
418 420
         String data = null;
419 421
         try {
420
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
422
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
421 423
             log.info("获取 分页获取计划模板 请求返回结果:{}",data);
422 424
         } catch (Exception e) {
423 425
             e.printStackTrace();
@@ -432,23 +434,24 @@ public class HKOpenApi {
432 434
      * 指定人员人脸/指纹权限下载
433 435
      * @return
434 436
      */
435
-    public static String downloadFaceAndFingerInfos(String personIds){
437
+    public static String downloadFaceAndFingerInfos(Map<String, Object> map){
436 438
         Map<String,Object> parMap = Maps.newHashMap();
437 439
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOWNLOAD_FACE_AND_FINGERINFOS;
438 440
         //设置APPKEY
439
-        parMap.put("appkey", HKConstant.APPKEY);
441
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
440 442
         //设置时间参数
441 443
         parMap.put("time", System.currentTimeMillis());
442
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
444
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
443 445
         // TODO 目前写死的
444
-        parMap.put("deviceUuids","992f53f2c87b4d2a87cf517e7b57366f,a792802b88f749c9b4c6fbf8a610111e,3bff3477889c4b3c983871ea46b66605");
445
-        parMap.put("personIds",personIds);
446
-        parMap.put("type",1);
446
+        // parMap.put("deviceUuids","992f53f2c87b4d2a87cf517e7b57366f,a792802b88f749c9b4c6fbf8a610111e,3bff3477889c4b3c983871ea46b66605");
447
+        parMap.put("deviceUuids",map.get("deviceUuids"));
448
+        parMap.put("personIds",map.get("personIds"));
449
+        parMap.put("type",map.get("type"));
447 450
         String params =  JSON.toJSONString(parMap);
448 451
         log.info("指定人员人脸/指纹权限下载 请求参数:{}", params);
449 452
         String data = null;
450 453
         try {
451
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
454
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
452 455
             log.info("指定人员人脸/指纹权限下载 请求返回结果:{}",data);
453 456
         } catch (Exception e) {
454 457
             e.printStackTrace();
@@ -468,16 +471,16 @@ public class HKOpenApi {
468 471
     public static String HKpersonGroupId(MultipartFile faceImg,Integer personNo,String personName){
469 472
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_ADD_USER;
470 473
         Map<String, Object> map = new HashMap<String, Object>();
471
-        map.put("appkey", HKConstant.APPKEY);
474
+        map.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
472 475
         map.put("time", System.currentTimeMillis());
473
-        map.put("token", HKConstant.SECRET);
474
-        map.put("opUserUuid",HKConstant.OP_USER_UUID);
476
+        map.put("token", map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret")));
477
+        map.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
475 478
         map.put("personNo",personNo);
476 479
         map.put("personName",personName);
477 480
         String params =  JSON.toJSONString(map);
478 481
         String data = null;
479 482
         try {
480
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
483
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
481 484
         } catch (Exception e) {
482 485
             e.printStackTrace();
483 486
             throw new RuntimeException("添加人脸失败!");
@@ -495,7 +498,7 @@ public class HKOpenApi {
495 498
      *  * personName 卡号
496 499
      * @return
497 500
      */
498
-    public static String HKpersonGroupId(MultipartFile faceImg,Integer personId,Long personNo,String personName,String cardNo) {
501
+    public static String HKpersonGroupId(MultipartFile faceImg,Integer personId,Long personNo,String personName,String cardNo, String  appkey, String secret) {
499 502
         byte [] fileByte = new byte[0];
500 503
         try {
501 504
             if (null!=faceImg) {
@@ -509,9 +512,9 @@ public class HKOpenApi {
509 512
         String img = PicUtils.getImgStr(imgs);
510 513
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_UPDATE_USER;
511 514
         Map<String, Object> map = new HashMap<String, Object>();
512
-        map.put("appkey", HKConstant.APPKEY);
515
+        map.put("appkey", appkey == null?HKConstant.APPKEY:appkey);
513 516
         map.put("time", System.currentTimeMillis());
514
-        map.put("token", HKConstant.SECRET);
517
+//        map.put("token",map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret")));
515 518
         map.put("opUserUuid", HKConstant.OP_USER_UUID);
516 519
         map.put("personId", personId);
517 520
         map.put("personNo", personNo);
@@ -522,7 +525,7 @@ public class HKOpenApi {
522 525
         log.info("修改人脸 请求参数:{}",params);
523 526
         String data = null;
524 527
         try {
525
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
528
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, secret == null ? HKConstant.SECRET : secret), params);
526 529
             log.info("修改人脸请求结果:{}",data);
527 530
         } catch (Exception e) {
528 531
             e.printStackTrace();
@@ -544,7 +547,7 @@ public class HKOpenApi {
544 547
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_UPDATE_USER;
545 548
         Map<String, Object> parMap = new HashMap<String, Object>();
546 549
         //设置APPKEY
547
-        parMap.put("appkey", HKConstant.APPKEY);
550
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
548 551
         //设置时间参数
549 552
         parMap.put("time", System.currentTimeMillis());
550 553
         parMap.put("opUserUuid",map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
@@ -557,7 +560,7 @@ public class HKOpenApi {
557 560
         log.info("修改人员 请求参数:{}", params);
558 561
         String data = null;
559 562
         try {
560
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
563
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
561 564
             log.info("修改人员 请求返回结果:{}",data);
562 565
         } catch (Exception e) {
563 566
             e.printStackTrace();
@@ -578,14 +581,14 @@ public class HKOpenApi {
578 581
      * @param personId 被访人ID
579 582
      * @return
580 583
      */
581
-    public static String temporaryRegister(String visitorName, String phoneNo,Integer personNum,Long startTime,Long endTime,Integer personId){
584
+    public static String temporaryRegister(String visitorName, String phoneNo,Integer personNum,Long startTime,Long endTime,Integer personId, String opUserUuid, String appkey, String secret){
582 585
         Map<String,Object> parMap = Maps.newHashMap();
583 586
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.TEMPORARY_REGISTER;
584 587
         //设置APPKEY
585
-        parMap.put("appkey", HKConstant.APPKEY);
588
+        parMap.put("appkey", appkey == null?HKConstant.APPKEY:appkey);
586 589
         //设置时间参数
587 590
         parMap.put("time", System.currentTimeMillis());
588
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
591
+        parMap.put("opUserUuid", opUserUuid == null ? HKConstant.OP_USER_UUID : opUserUuid);
589 592
         
590 593
         parMap.put("visitorName",visitorName);
591 594
         parMap.put("gender",1);
@@ -600,7 +603,7 @@ public class HKOpenApi {
600 603
         log.info("未预约登记 请求参数:{}", params);
601 604
         String data = null;
602 605
         try {
603
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
606
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, secret == null ? HKConstant.SECRET : secret), params);
604 607
             log.info("未预约登记 请求返回结果:{}",data);
605 608
         } catch (Exception e) {
606 609
             e.printStackTrace();
@@ -624,7 +627,7 @@ public class HKOpenApi {
624 627
 
625 628
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_UPDATE_USER;
626 629
         Map<String, Object> map = new HashMap<String, Object>();
627
-        map.put("appkey", HKConstant.APPKEY);
630
+        map.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
628 631
         map.put("time", System.currentTimeMillis());
629 632
 //        map.put("token", HKConstant.SECRET);
630 633
         map.put("opUserUuid", HKConstant.OP_USER_UUID);
@@ -636,7 +639,7 @@ public class HKOpenApi {
636 639
         log.info("修改电话 请求参数:{}",params);
637 640
         String data = null;
638 641
         try {
639
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
642
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
640 643
             log.info("修改电话请求结果:{}",data);
641 644
         } catch (Exception e) {
642 645
             e.printStackTrace();
@@ -665,7 +668,7 @@ public class HKOpenApi {
665 668
 
666 669
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.GETDOORDEVICESBYUNITUUIDS;
667 670
         Map<String, Object> parMap = new HashMap<>();
668
-        parMap.put("appkey", HKConstant.APPKEY);
671
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
669 672
         parMap.put("time", System.currentTimeMillis());
670 673
         parMap.put("pageNo", map.get("pageNo"));
671 674
         parMap.put("pageSize", map.get("pageSize"));
@@ -677,7 +680,7 @@ public class HKOpenApi {
677 680
 
678 681
         String data = null;
679 682
         try {
680
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
683
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
681 684
             log.info("可视对讲 根据中心UUID集分页获取门口机:{}",data);
682 685
         } catch (Exception e) {
683 686
             e.printStackTrace();
@@ -702,7 +705,7 @@ public class HKOpenApi {
702 705
     public static String syncControl(Map<String, Object> map) {
703 706
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.SYNCCONTROL;
704 707
         Map<String, Object> parMap = new HashMap<>();
705
-        parMap.put("appkey", HKConstant.APPKEY);
708
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
706 709
         parMap.put("time", System.currentTimeMillis());
707 710
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
708 711
         parMap.put("longNums", map.get("longNums"));
@@ -712,7 +715,7 @@ public class HKOpenApi {
712 715
 
713 716
         String data = null;
714 717
         try {
715
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
718
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
716 719
             log.info("可视对讲 异步反控开门:{}",data);
717 720
         } catch (Exception e) {
718 721
             e.printStackTrace();
@@ -730,10 +733,10 @@ public class HKOpenApi {
730 733
      * @param longNums
731 734
      * @return
732 735
      */
733
-    public static String visualIntercom(String opUserUuid, Integer opType,List<Integer> personIds,List<String> longNums ) {
736
+    public static String visualIntercom(String opUserUuid, Integer opType,List<Integer> personIds,List<String> longNums, String appkey, String secret) {
734 737
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOWNLOADFACE;
735 738
         HashMap map = new HashMap<>();
736
-        map.put("appkey", HKConstant.APPKEY);
739
+        map.put("appkey", appkey == null?HKConstant.APPKEY:appkey);
737 740
         map.put("time", System.currentTimeMillis());
738 741
         map.put("opUserUuid", opUserUuid == null ? HKConstant.OP_USER_UUID : opUserUuid);
739 742
         map.put("opType", opType);
@@ -743,7 +746,7 @@ public class HKOpenApi {
743 746
         log.info("人脸下发请求参数:" + param);
744 747
         String data = null;
745 748
         try {
746
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + param, param, HKConstant.SECRET), param);
749
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + param, param,secret == null ? HKConstant.SECRET : secret), param);
747 750
             log.info("可视对讲人脸权限下发:{}", data);
748 751
         } catch (Exception e) {
749 752
             e.printStackTrace();
@@ -767,7 +770,7 @@ public class HKOpenApi {
767 770
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ADDOUTDOORAUTH;
768 771
 
769 772
         Map<String, Object> parMap = new HashMap<>();
770
-        parMap.put("appkey", HKConstant.APPKEY);
773
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
771 774
         parMap.put("time", System.currentTimeMillis());
772 775
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
773 776
         parMap.put("authName", map.get("authName"));
@@ -779,7 +782,7 @@ public class HKOpenApi {
779 782
 
780 783
         String data = null;
781 784
         try {
782
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
785
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
783 786
             log.info("可视对讲 根据人员 ID 集添加权限并下发:{}",data);
784 787
         } catch (Exception e) {
785 788
             e.printStackTrace();
@@ -804,7 +807,7 @@ public class HKOpenApi {
804 807
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DELOUTDOORAUTH;
805 808
 
806 809
         Map<String, Object> parMap = new HashMap<>();
807
-        parMap.put("appkey", HKConstant.APPKEY);
810
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
808 811
         parMap.put("time", System.currentTimeMillis());
809 812
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
810 813
         parMap.put("operateType", 2);
@@ -816,7 +819,7 @@ public class HKOpenApi {
816 819
 
817 820
         String data = null;
818 821
         try {
819
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
822
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
820 823
             log.info("可视对讲 根据人员 ID 集删除权限并下发:{}",data);
821 824
         } catch (Exception e) {
822 825
             e.printStackTrace();
@@ -841,7 +844,7 @@ public class HKOpenApi {
841 844
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.DOWNLOADFINGER;
842 845
 
843 846
         Map<String, Object> parMap = new HashMap<>();
844
-        parMap.put("appkey", HKConstant.APPKEY);
847
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
845 848
         parMap.put("time", System.currentTimeMillis());
846 849
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
847 850
         parMap.put("opType", map.get("opType"));
@@ -853,7 +856,7 @@ public class HKOpenApi {
853 856
 
854 857
         String data = null;
855 858
         try {
856
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
859
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
857 860
             log.info("可视对讲 指定人员指纹权限下载:{}",data);
858 861
         } catch (Exception e) {
859 862
             e.printStackTrace();
@@ -871,7 +874,7 @@ public class HKOpenApi {
871 874
     public static String getUsers(Map<String, Object> map){
872 875
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.GETUSERS;
873 876
         Map<String, Object> parMap = new HashMap<>();
874
-        parMap.put("appkey", HKConstant.APPKEY);
877
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
875 878
         parMap.put("time", System.currentTimeMillis());
876 879
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
877 880
         parMap.put("pageNo", map.get("pageNo"));
@@ -882,7 +885,7 @@ public class HKOpenApi {
882 885
 
883 886
         String data = null;
884 887
         try {
885
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
888
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
886 889
             log.info("分页获取用户下载:{}",data);
887 890
         } catch (Exception e) {
888 891
             e.printStackTrace();
@@ -900,7 +903,7 @@ public class HKOpenApi {
900 903
     public static String getPersonInfosEx(Map<String, Object> map){
901 904
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.GETPERSONINFOSEX;
902 905
         Map<String, Object> parMap = new HashMap<>();
903
-        parMap.put("appkey", HKConstant.APPKEY);
906
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
904 907
         parMap.put("time", System.currentTimeMillis());
905 908
         parMap.put("opUserUuid", map.get("opUserUuid") == null?HKConstant.OP_USER_UUID:map.get("opUserUuid"));
906 909
         parMap.put("pageNo", map.get("pageNo"));
@@ -911,7 +914,7 @@ public class HKOpenApi {
911 914
 
912 915
         String data = null;
913 916
         try {
914
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
917
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
915 918
             log.info("分页获取人员下载:{}",data);
916 919
         } catch (Exception e) {
917 920
             e.printStackTrace();
@@ -925,18 +928,18 @@ public class HKOpenApi {
925 928
      *  获取默认用户UUID
926 929
      * @return
927 930
      */
928
-    public static String getDefaultUserUuid(){
931
+    public static String getDefaultUserUuid(String appkey, String secret){
929 932
         Map<String,Object> parMap = Maps.newHashMap();
930 933
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_ADDRESS_GET_DEFAULT_USER_UUID;
931 934
         //设置APPKEY
932
-        parMap.put("appkey", HKConstant.APPKEY);
935
+        parMap.put("appkey", appkey == null?HKConstant.APPKEY:appkey);
933 936
         //设置时间参数
934 937
         parMap.put("time", System.currentTimeMillis());
935 938
         String params =  JSON.toJSONString(parMap);
936 939
         log.info("获取 获取默认用户UUID 请求参数:{}", params);
937 940
         String data = null;
938 941
         try {
939
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
942
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, secret == null ? HKConstant.SECRET :  secret), params);
940 943
             log.info("获取 获取默认用户UUID 请求返回结果:{}",data);
941 944
         } catch (Exception e) {
942 945
             e.printStackTrace();
@@ -972,22 +975,25 @@ public class HKOpenApi {
972 975
         }
973 976
 
974 977
     }
975
-    // 删除当前人脸设备信息
976
-    public static String deleteUser(Integer opUserUuid) {
978
+    /**
979
+     *     删除当前人脸设备信息
980
+     */
981
+    public static String deleteUser(Map<String,Object> map) {
977 982
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_DELETE_USER;
978 983
         Map<String, Object> parMap = new HashMap<String, Object>();
979 984
         //设置APPKEY
980
-        parMap.put("appkey", HKConstant.APPKEY);
985
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
981 986
         //设置时间参数
982 987
         parMap.put("time", System.currentTimeMillis());
983
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
984
-        parMap.put("personIds",opUserUuid+"");
985
-        parMap.put("doorUuids","91b8ce635b634d468cde925af6e4274c,d40b23e316364bb5a276b99bb6327181,7f866e918ab8452f9eb1d8a25e481530,8b8256fc605d428c9dc797451e3dc432,84d619c5e84942f68047f0bca93fc041");
988
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
989
+        parMap.put("personIds",map.get("personIds"));
990
+        // parMap.put("doorUuids","91b8ce635b634d468cde925af6e4274c,d40b23e316364bb5a276b99bb6327181,7f866e918ab8452f9eb1d8a25e481530,8b8256fc605d428c9dc797451e3dc432,84d619c5e84942f68047f0bca93fc041");
991
+        parMap.put("doorUuids",map.get("doorUuids"));
986 992
         String params =  JSON.toJSONString(parMap);
987 993
         log.info("删除人脸 请求参数:{}", params);
988 994
         String data = null;
989 995
         try {
990
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
996
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
991 997
             log.info("删除人脸 请求返回结果:{}",data);
992 998
         } catch (Exception e) {
993 999
             e.printStackTrace();
@@ -996,23 +1002,27 @@ public class HKOpenApi {
996 1002
         }
997 1003
         return data;
998 1004
     }
999
-        // 查询当前人脸设备信息
1000
-    public static String selectUserFace(Integer opUserUuid) {
1005
+
1006
+
1007
+    /**
1008
+     *     查询当前人脸设备信息
1009
+     */
1010
+    public static String selectUserFace(Map<String,Object> map) {
1001 1011
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_SELECT_USER;
1002 1012
         Map<String, Object> parMap = new HashMap<String, Object>();
1003 1013
         //设置APPKEY
1004
-        parMap.put("appkey", HKConstant.APPKEY);
1014
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
1005 1015
         //设置时间参数
1006 1016
         parMap.put("time", System.currentTimeMillis());
1007 1017
         parMap.put("pageNo",1);
1008
-        parMap.put("pageSize",100);
1009
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
1010
-        parMap.put("personIds",opUserUuid+"");
1018
+        parMap.put("pageSize",300);
1019
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
1020
+        parMap.put("personIds",map.get("personIds"));
1011 1021
         String params =  JSON.toJSONString(parMap);
1012 1022
         log.info("查询设备人脸 请求参数:{}", params);
1013 1023
         String data = null;
1014 1024
         try {
1015
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
1025
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
1016 1026
             log.info("查询设备人脸 请求返回结果:{}",data);
1017 1027
         } catch (Exception e) {
1018 1028
             e.printStackTrace();
@@ -1026,20 +1036,20 @@ public class HKOpenApi {
1026 1036
      * 人员异动(同步硬件)
1027 1037
      * @return
1028 1038
      */
1029
-    public static String selectUserSynchronization() {
1039
+    public static String selectUserSynchronization(Map<String,Object> map) {
1030 1040
         String url = HKConstant.OPENAPI_IP_PORT_HTTP + HKConstant.ITF_SELECT_USER_SDH;
1031 1041
         Map<String, Object> parMap = new HashMap<String, Object>();
1032 1042
         //设置APPKEY
1033
-        parMap.put("appkey", HKConstant.APPKEY);
1043
+        parMap.put("appkey", map.get("appkey") == null?HKConstant.APPKEY:map.get("appkey"));
1034 1044
         //设置时间参数
1035 1045
         parMap.put("time", System.currentTimeMillis());
1036
-        parMap.put("opUserUuid",HKConstant.OP_USER_UUID);
1046
+        parMap.put("opUserUuid", map.get("opUserUuid") == null ? HKConstant.OP_USER_UUID : map.get("opUserUuid"));
1037 1047
         parMap.put("deviceUuids","91b8ce635b634d468cde925af6e4274c,d40b23e316364bb5a276b99bb6327181,7f866e918ab8452f9eb1d8a25e481530,8b8256fc605d428c9dc797451e3dc432,84d619c5e84942f68047f0bca93fc041");
1038 1048
         String params =  JSON.toJSONString(parMap);
1039 1049
         log.info("人员异动 请求参数:{}", params);
1040 1050
         String data = null;
1041 1051
         try {
1042
-            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params, HKConstant.SECRET), params);
1052
+            data = HttpClientSSLUtils.doPost(url + "?token=" + Digests.buildToken(url + "?" + params, params,map.get("secret") == null ? HKConstant.SECRET : String.valueOf(map.get("secret"))), params);
1043 1053
             log.info("人员异动 请求返回结果:{}",data);
1044 1054
         } catch (Exception e) {
1045 1055
             e.printStackTrace();