Bladeren bron

提交 修改海康流程

weiximei 6 jaren geleden
bovenliggende
commit
1d486c495c

+ 4
- 9
CODE/foreign-service/src/main/java/com/community/huiju/dao/TaUserHkMapper.java Bestand weergeven

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.dao;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.community.huiju.model.TaUser;
4 5
 import com.community.huiju.model.TaUserHk;
5 6
 import org.apache.ibatis.annotations.Param;
6 7
 import org.apache.ibatis.annotations.ResultMap;
@@ -17,14 +18,8 @@ import org.apache.ibatis.annotations.Select;
17 18
  */
18 19
 public interface TaUserHkMapper extends BaseMapper<TaUserHk> {
19 20
 
20
-    /**
21
-     * 根据用户id 和 小区id 进行查询
22
-     * @param userId
23
-     * @param communityId
24
-     * @return
25
-     */
26
-    @ResultType(TaUserHk.class)
27
-    @Select("select * from ta_user_hk where ta_user_id = #{userId} and community_id = #{communityId}")
28
-    TaUserHk selectByUserIdAndCommunityId(@Param("userId") Integer userId, @Param("communityId") Integer communityId);
29 21
 
22
+    @ResultType(TaUserHk.class)
23
+    @Select("select * from ta_user_hk where ta_user_id = #{userVerifyId} and community_id = #{communityId}")
24
+    TaUserHk selectByUserVerifyIdAndCommunityId(Integer userVerifyId, Integer communityId);
30 25
 }

+ 16
- 6
CODE/foreign-service/src/main/java/com/community/huiju/service/IHKService.java Bestand weergeven

@@ -1,13 +1,17 @@
1 1
 package com.community.huiju.service;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.commom.session.UserElement;
5
+import com.community.huiju.model.TaUserHk;
6
+import com.community.huiju.model.TaUserVerify;
7
+import com.community.huiju.model.TpEquipmentTree;
8
+import com.community.huiju.model.TpUnitHkSetting;
4 9
 
5 10
 /**
6 11
  * 海康 业务
7 12
  * @author weiximei
8 13
  */
9 14
 public interface IHKService {
10
-
11 15
     /**
12 16
      * 推送海康人员
13 17
      * @param appUserId
@@ -16,17 +20,23 @@ public interface IHKService {
16 20
     ResponseBean pushPerson(String appUserId, Integer userVerifyId);
17 21
 
18 22
     /**
19
-     * 下发门禁权限
23
+     * 添加门禁权限 和 下发门禁权限
24
+     * @return
25
+     */
26
+    ResponseBean addAuthoritiesAnddownloadAuthorityByPersonIds(TaUserVerify userVerify, TaUserHk taUserHk, TpEquipmentTree tpEquipmentTree);
27
+
28
+
29
+    /**
30
+     * 下发门禁权限(异动方式)
20 31
      * @return
21 32
      */
22 33
     ResponseBean downloadAuthorityByDeviceUuids();
23 34
 
24 35
     /**
25
-     * 异步反控开门 (远程开门)
26
-     *
27
-     * @param userVerifyId 审核ID
36
+     * 下发 可视对讲 权限
28 37
      * @return
29 38
      */
30
-    ResponseBean syncControl(Integer userVerifyId);
39
+    ResponseBean visualIntercomPermissions(TpUnitHkSetting unitHkSetting, TpEquipmentTree tpEquipmentTree, TaUserHk taUserHk, TaUserVerify userVerify);
40
+
31 41
 
32 42
 }

+ 3
- 3
CODE/foreign-service/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java Bestand weergeven

@@ -139,7 +139,7 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
139 139
         ihkService.pushPerson(userId + "", userVerifyId);
140 140
 
141 141
         // 海康数据
142
-        TaUserHk taUserHk = taUserHkMapper.selectByUserIdAndCommunityId(userVerify.getUserId(), userVerify.getCommunityId());
142
+        TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getUserVerifyId(), userVerify.getCommunityId());
143 143
 
144 144
         //当前修改的id否存在
145 145
         TaFace face = taFaceMapper.getByUserVerifyId(userVerifyId);
@@ -335,7 +335,7 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
335 335
         }
336 336
 
337 337
         // 海康数据
338
-        TaUserHk taUserHk = taUserHkMapper.selectByUserIdAndCommunityId(userVerify.getUserId(), userVerify.getCommunityId());
338
+        TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getUserVerifyId(), userVerify.getCommunityId());
339 339
 
340 340
         //查询当前用户是否有人脸记录
341 341
         TaFace face = taFaceMapper.getByUserVerifyId(userVerifyId);
@@ -375,7 +375,7 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
375 375
         }
376 376
 
377 377
         // 海康数据
378
-        TaUserHk taUserHk = taUserHkMapper.selectByUserIdAndCommunityId(taUserVerify.getUserId(), taUserVerify.getCommunityId());
378
+        TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(taUserVerify.getUserVerifyId(), taUserVerify.getCommunityId());
379 379
 
380 380
         // 设备树
381 381
         TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(taUserVerify.getCommunityId());

+ 94
- 96
CODE/foreign-service/src/main/java/com/community/huiju/service/impl/HKServiceImpl.java Bestand weergeven

@@ -34,6 +34,9 @@ import java.util.stream.Collectors;
34 34
 @Slf4j
35 35
 public class HKServiceImpl implements IHKService {
36 36
 
37
+    @Autowired
38
+    private TpUnitHkSettingMapper tpUnitHkSettingMapper;
39
+
37 40
     @Autowired
38 41
     private TaUserMapper taUserMapper;
39 42
 
@@ -51,14 +54,9 @@ public class HKServiceImpl implements IHKService {
51 54
     @Autowired
52 55
     private TaUserVerifyMapper taUserVerifyMapper;
53 56
 
54
-    @Autowired
55
-    private TaUserHkMapper taUserHkMapper;
56
-
57
-//    @Autowired
58
-//    private TaRemotelyDoorMapper taRemotelyDoorMapper;
59 57
 
60 58
     @Autowired
61
-    private TpUnitHkSettingMapper tpUnitHkSettingMapper;
59
+    private TaUserHkMapper taUserHkMapper;
62 60
 
63 61
     /**
64 62
      * 获取设备UUID
@@ -85,10 +83,9 @@ public class HKServiceImpl implements IHKService {
85 83
         if (null == userVerify) {
86 84
             throw new WisdomException("审核数据不存在!");
87 85
         }
88
-        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userVerify.getCommunityId());
89 86
 
90 87
         // 海康数据
91
-        TaUserHk taUserHk = taUserHkMapper.selectByUserIdAndCommunityId(userVerify.getUserId(), userVerify.getCommunityId());
88
+        TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getUserVerifyId(), userVerify.getCommunityId());
92 89
         if (null == taUserHk) {
93 90
             taUserHk = new TaUserHk();
94 91
         }
@@ -96,6 +93,9 @@ public class HKServiceImpl implements IHKService {
96 93
         // 海康权限信息
97 94
         TpUnitHkSetting unitHkSetting = getUnitHkSetting(userVerify.getCommunityId(), userVerify.getUnitId());
98 95
 
96
+        // 设备树
97
+        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userVerify.getCommunityId());
98
+
99 99
         // 这两个值一般都是同时存在的
100 100
         // 当这两个值不存在的时候,就添加海康人员
101 101
         if (null == taUserHk.getHkUserId() && null == taUserHk.getHkPersonNo()) {
@@ -106,7 +106,7 @@ public class HKServiceImpl implements IHKService {
106 106
              * 2.根据部门编号推送 海康
107 107
              */
108 108
             taUserMapper.updateById(user);
109
-            addUserAndOpenCard(responseBean, user, tpEquipmentTree, taUserHk, unitHkSetting);
109
+            addUserAndOpenCard(responseBean, user, tpEquipmentTree, taUserHk, unitHkSetting, userVerify);
110 110
         }
111 111
 
112 112
         // 卡片操作
@@ -122,11 +122,21 @@ public class HKServiceImpl implements IHKService {
122 122
         }
123 123
 
124 124
 
125
+        // 判断是否成功
126
+        if ("0".equals(responseBean.getCode())) {
127
+            responseBean.addSuccess("操作成功!");
128
+            return responseBean;
129
+        }
130
+        throw new WisdomException("操作失败!");
131
+    }
132
+
133
+
134
+    @Override
135
+    public ResponseBean addAuthoritiesAnddownloadAuthorityByPersonIds(TaUserVerify userVerify, TaUserHk taUserHk, TpEquipmentTree tpEquipmentTree) {
125 136
 
126
-        // 推送海康
137
+        ResponseBean responseBean = new ResponseBean();
127 138
 
128 139
         // 给用户添加 海康门禁权限
129
-
130 140
         List<TpEquipment> tpEquipments = tpEquipmentMapper.selectByCommunityIdAndUnitId(userVerify.getCommunityId(), userVerify.getUnitId(), 4);
131 141
         List<Map<String, Object>> equipmentUUID = getEquipmentUUID(tpEquipments);
132 142
         StringBuilder doorUuids = new StringBuilder();
@@ -139,14 +149,15 @@ public class HKServiceImpl implements IHKService {
139 149
         });
140 150
 
141 151
         if (org.apache.commons.lang3.StringUtils.isNotBlank(doorUuids)) {
142
-
143 152
             Map<String, Object> map = Maps.newHashMap();
144 153
             map.put("personIds",String.valueOf(taUserHk.getHkUserId()));
145 154
             map.put("doorUuids", doorUuids.substring(0, doorUuids.lastIndexOf(",")));
146 155
             map.put("secret", tpEquipmentTree.getSecret());
147 156
             map.put("appkey", tpEquipmentTree.getAppkey());
148 157
             map.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
149
-            HKOpenApi.addAuthoritiesByPersonIds(map);
158
+            map.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
159
+            String addAuthoritiesJSONString = HKOpenApi.addAuthoritiesByPersonIds(map);
160
+            validHKError(addAuthoritiesJSONString);
150 161
 
151 162
             // 下发门禁权限
152 163
             Map<String, Object> downloadAuthorityByPersonIdsMap = Maps.newHashMap();
@@ -157,36 +168,13 @@ public class HKServiceImpl implements IHKService {
157 168
             downloadAuthorityByPersonIdsMap.put("secret", tpEquipmentTree.getSecret());
158 169
             downloadAuthorityByPersonIdsMap.put("appkey", tpEquipmentTree.getAppkey());
159 170
             downloadAuthorityByPersonIdsMap.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
160
-            HKOpenApi.downloadAuthorityByPersonIds(downloadAuthorityByPersonIdsMap);
161
-
171
+            downloadAuthorityByPersonIdsMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
172
+            String downloadAuthorityJSON = HKOpenApi.downloadAuthorityByPersonIds(downloadAuthorityByPersonIdsMap);
173
+            validHKError(downloadAuthorityJSON);
162 174
         }
163 175
 
164
-        //--------- 可视对讲 ----------
165
-
166
-        Map<String,Object> addOutDoorAuthMap = Maps.newHashMap();
167
-        // app用户权限勿动
168
-        addOutDoorAuthMap.put("authName", unitHkSetting.getPermissionId());
169
-        addOutDoorAuthMap.put("personIds", Arrays.asList(taUserHk.getHkUserId()));
170
-        addOutDoorAuthMap.put("secret", tpEquipmentTree.getSecret());
171
-        addOutDoorAuthMap.put("appkey", tpEquipmentTree.getAppkey());
172
-        addOutDoorAuthMap.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
173
-        addOutDoorAuthMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
174
-
175
-                // 单元门口机
176
-        List<TpEquipment> visualEquipments = tpEquipmentMapper.selectByCommunityIdAndUnitId(userVerify.getCommunityId(), userVerify.getUnitId(), 3);
177
-        List<String> visualList = visualEquipments.stream()
178
-                .map(e-> tpConfigurationMapper.selectById(e.getUuidId()).getConfigurationValue())
179
-                .collect(Collectors.toList());
180
-//        List<String> visualList = new ArrayList<>();
181
-//        visualList.add("10010100000");
182
-        addOutDoorAuthMap.put("longNums", visualList);
183
-        // 可视对讲下发 权限
184
-        visualIntercomPermissions(addOutDoorAuthMap);
185
-        if ("0".equals(responseBean.getCode())) {
186
-            responseBean.addSuccess("操作成功!");
187
-            return responseBean;
188
-        }
189
-        throw new WisdomException("操作失败!");
176
+        responseBean.addSuccess("操作成功!");
177
+        return responseBean;
190 178
     }
191 179
 
192 180
     @Override
@@ -206,7 +194,7 @@ public class HKServiceImpl implements IHKService {
206 194
      * @param response
207 195
      * @param user
208 196
      */
209
-    private void addUserAndOpenCard(ResponseBean response, TaUser user, TpEquipmentTree tpEquipmentTree, TaUserHk taUserHk, TpUnitHkSetting unitHkSetting) {
197
+    private void addUserAndOpenCard(ResponseBean response, TaUser user, TpEquipmentTree tpEquipmentTree, TaUserHk taUserHk, TpUnitHkSetting unitHkSetting, TaUserVerify userVerify) {
210 198
 //        Map<String, Object> parDept = Maps.newHashMap();
211 199
 //        parDept.put("pageNo", 1);
212 200
 //        parDept.put("pageSize", 100);
@@ -223,14 +211,14 @@ public class HKServiceImpl implements IHKService {
223 211
         parUser.put("personNo", taUserHk.getHkPersonNo());
224 212
         parUser.put("personName", user.getUserName());
225 213
         // parUser.put("phoneNo", user.getLoginName());
226
-        parUser.put("deptUuid", unitHkSetting.getDepartmentId());
227 214
         parUser.put("remark", user.getLoginName());
215
+        parUser.put("deptUuid", unitHkSetting.getDepartmentId());
228 216
         parUser.put("secret", tpEquipmentTree.getSecret());
229 217
         parUser.put("appkey", tpEquipmentTree.getAppkey());
230
-        parUser.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
231 218
         parUser.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
219
+        parUser.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
232 220
         Map<String, Object> resultMap = JSONObject.parseObject(HKOpenApi.addUser(parUser), HashMap.class);
233
-        int errorCode = (int) resultMap.get("errorCode");
221
+        Integer errorCode = (Integer) resultMap.get("errorCode");
234 222
         if (errorCode == 0) {
235 223
             Map<String, Object> resultDataMap = (Map<String, Object>) resultMap.get("data");
236 224
 
@@ -238,19 +226,17 @@ public class HKServiceImpl implements IHKService {
238 226
             Integer personId = (Integer) resultDataMap.get("personId");
239 227
 
240 228
             taUserHk.setHkUserId(personId);
241
-            // 存储海康人员ID
229
+
242 230
             int row = 0;
243 231
             if (null == taUserHk.getId()) {
244
-                taUserHk.setTaUserId(user.getUserId());
232
+                // 存储的是审核id
233
+                taUserHk.setTaUserId(userVerify.getUserVerifyId());
245 234
                 taUserHk.setCommunityId(tpEquipmentTree.getCommunityId());
235
+                taUserHk.setCreateDate(new Date());
236
+                taUserHk.setUpdateDate(new Date());
246 237
                 // 存储海康人员ID
247 238
                 row = taUserHkMapper.insert(taUserHk);
248
-                taUserHk.setCreateUser(taUserHk.getId());
249
-                taUserHk.setCreateDate(new Date());
250
-                taUserHkMapper.updateById(taUserHk);
251 239
             } else {
252
-                taUserHk.setUpdateUser(taUserHk.getId());
253
-                taUserHk.setUpdateDate(new Date());
254 240
                 row = taUserHkMapper.updateById(taUserHk);
255 241
             }
256 242
 
@@ -340,8 +326,8 @@ public class HKServiceImpl implements IHKService {
340 326
         parOpenCard.put("endTime", time);
341 327
         parOpenCard.put("secret", tpEquipmentTree.getSecret());
342 328
         parOpenCard.put("appkey", tpEquipmentTree.getAppkey());
343
-        parOpenCard.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
344 329
         parOpenCard.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
330
+        parOpenCard.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
345 331
         JSONObject openCardJSON = JSONObject.parseObject(HKOpenApi.openCard(parOpenCard));
346 332
         int code = (int) openCardJSON.get("errorCode");
347 333
         if (code == 0) {
@@ -356,6 +342,18 @@ public class HKServiceImpl implements IHKService {
356 342
         return response;
357 343
     }
358 344
 
345
+    /**
346
+     * 校验错误
347
+     * @param json
348
+     */
349
+    private void validHKError(String json) {
350
+        Map<String, Object> resultMap = JSONObject.parseObject(json, HashMap.class);
351
+        Integer errorCode = (Integer) resultMap.get("errorCode");
352
+        if (errorCode.intValue() != 0) {
353
+            throw new RuntimeException(String.valueOf(resultMap.get("errorMessage")));
354
+        }
355
+    }
356
+
359 357
     /**
360 358
      * 获取部门 uuid
361 359
      * <p>
@@ -380,7 +378,7 @@ public class HKServiceImpl implements IHKService {
380 378
     private TpUnitHkSetting getUnitHkSetting(Integer communityId, Integer unitId) {
381 379
         TpUnitHkSetting tpUnitHkSetting = tpUnitHkSettingMapper.selectByCommunityIdAndUnitId(communityId, unitId);
382 380
         if (null == tpUnitHkSetting) {
383
-            throw new WisdomException(ResponseErrorsMessages.NOT_PERMISSIONS_SET.getCode(), ResponseErrorsMessages.NOT_PERMISSIONS_SET.getMsg());
381
+            throw new WisdomException("权限组未配置");
384 382
         }
385 383
         return tpUnitHkSetting;
386 384
     }
@@ -390,14 +388,14 @@ public class HKServiceImpl implements IHKService {
390 388
      *
391 389
      * @param map
392 390
      */
393
-    private void visualIntercomPermissions(Map<String,Object> map) {
391
+    private String visualIntercomPermissions(Map<String,Object> map) {
394 392
         // TODO 目前下发的 authName权限组是我们自定义的, 后面肯定是按照小区的 期楼栋号来设置的
395 393
         // TODO longNums设备编号, 可视对讲的机器编号, 应该根据 期楼栋号 下面的机器编号来设置的
396 394
 
397 395
         //--------- 可视对讲 ----------
398 396
 
399 397
         // 可视对讲 根据人员 ID 集添加权限并下发
400
-        HKOpenApi.addOutDoorAuth(map);
398
+        return HKOpenApi.addOutDoorAuth(map);
401 399
 
402 400
     }
403 401
 
@@ -412,61 +410,61 @@ public class HKServiceImpl implements IHKService {
412 410
         downloadFingerMap.put("opType", 1);
413 411
         downloadFingerMap.put("personIds", map.get("personIds"));
414 412
         downloadFingerMap.put("longNums", map.get("longNums"));
415
-        downloadFingerMap.put("opUserUuid", map.get("opUserUuid"));
416 413
         downloadFingerMap.put("openapi_ip_port_http", map.get("openapi_ip_port_http"));
414
+        downloadFingerMap.put("opUserUuid", map.get("opUserUuid"));
417 415
         // 可视对讲 指定人员指纹权限下载
418 416
         HKOpenApi.downloadFinger(downloadFingerMap);
419 417
     }
420 418
 
421 419
     @Override
422
-    public ResponseBean syncControl(Integer userVerifyId) {
423
-        // TODO 暂时只支持开单元门
420
+    public ResponseBean visualIntercomPermissions(TpUnitHkSetting unitHkSetting, TpEquipmentTree tpEquipmentTree, TaUserHk taUserHk, TaUserVerify userVerify) {
424 421
 
425 422
         ResponseBean responseBean = new ResponseBean();
426 423
 
427
-        // 查询当前的房产
428
-        TaUserVerify userVerify = taUserVerifyMapper.selectById(userVerifyId);
429
-        TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(userVerify.getCommunityId());
430
-        // 单元门口机
431
-        List<TpEquipment> tpEquipments = tpEquipmentMapper.selectByCommunityIdAndUnitId(userVerify.getCommunityId(), userVerify.getUnitId(), 3);
424
+        if (null == unitHkSetting) {
425
+            responseBean.addError("海康权限信息 未配置");
426
+            return responseBean;
427
+        }
432 428
 
433
-        if (CollectionUtils.isEmpty(tpEquipments)) {
434
-            responseBean.addError("无设备信息!");
429
+        if (null == tpEquipmentTree) {
430
+            responseBean.addError("设备树 未配置");
435 431
             return responseBean;
436 432
         }
437 433
 
438
-        String str = "";
439
-        for (TpEquipment e : tpEquipments) {
440
-            TpConfiguration tpConfiguration = tpConfigurationMapper.selectById(e.getUuidId());
441
-            str += tpConfiguration.getConfigurationValue();
442
-            str += ",";
434
+        if (null == userVerify) {
435
+            responseBean.addError("审核数据 不能为null");
436
+            return responseBean;
443 437
         }
444 438
 
445
-        // 查询设备编号
446
-
447
-        Map<String,Object> parMap = com.beust.jcommander.internal.Maps.newHashMap();
448
-        parMap.put("longNums", str);
449
-        parMap.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
450
-        parMap.put("secret", tpEquipmentTree.getSecret());
451
-        parMap.put("appkey", tpEquipmentTree.getAppkey());
452
-        parMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
453
-        String data = HKOpenApi.syncControl(parMap);
454
-        JSONObject jsonObject = JSONObject.parseObject(data);
455
-        int errorCode = jsonObject.getInteger("errorCode");
456
-        if (errorCode == 0) {
457
-//
458
-//            // 记录 远程开门次数
459
-//            TaRemotelyDoor taRemotelyDoor = new TaRemotelyDoor();
460
-//            taRemotelyDoor.setCommunityId(userVerify.getCommunityId());
461
-//            taRemotelyDoor.setTaUserVerifyId(userVerify.getUserId());
462
-//            taRemotelyDoor.setUnitId(userVerify.getUnitId());
463
-//            taRemotelyDoor.setCreateDate(new Date());
464
-//            taRemotelyDoorMapper.insertSelective(taRemotelyDoor);
465
-//
466
-//            responseBean.addSuccess("操作成功!");
467
-//            return responseBean;
439
+        //--------- 可视对讲 ----------
440
+
441
+        Map<String,Object> addOutDoorAuthMap = Maps.newHashMap();
442
+        // app用户权限勿动
443
+        addOutDoorAuthMap.put("authName", unitHkSetting.getPermissionId());
444
+        addOutDoorAuthMap.put("personIds", Arrays.asList(taUserHk.getHkUserId()));
445
+        addOutDoorAuthMap.put("secret", tpEquipmentTree.getSecret());
446
+        addOutDoorAuthMap.put("appkey", tpEquipmentTree.getAppkey());
447
+        addOutDoorAuthMap.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
448
+        addOutDoorAuthMap.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
449
+
450
+        // 单元门口机
451
+        List<TpEquipment> visualEquipments = tpEquipmentMapper.selectByCommunityIdAndUnitId(userVerify.getCommunityId(), userVerify.getUnitId(), 3);
452
+        List<String> visualList = visualEquipments.stream()
453
+                .map(e-> tpConfigurationMapper.selectById(e.getUuidId()).getConfigurationValue())
454
+                .collect(Collectors.toList());
455
+//        List<String> visualList = new ArrayList<>();
456
+//        visualList.add("10010100000");
457
+        addOutDoorAuthMap.put("longNums", visualList);
458
+        // 可视对讲下发 权限
459
+        String permissionsJSON = visualIntercomPermissions(addOutDoorAuthMap);
460
+        JSONObject addCardsJsonObject = JSONObject.parseObject(permissionsJSON);
461
+        Integer addCardsResultCode = addCardsJsonObject.getInteger("errorCode");
462
+        if (0 == addCardsResultCode.intValue()) {
463
+            responseBean.addSuccess("操作成功!");
464
+            return responseBean;
468 465
         }
469
-        responseBean.addError("操作失败!");
470
-        return responseBean;
466
+
467
+        responseBean.addError("操作失败");
468
+        throw new RuntimeException(addCardsJsonObject.getString("errorMessage"));
471 469
     }
472 470
 }

+ 1
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TaUserVerifyMapper.java Bestand weergeven

@@ -100,6 +100,6 @@ public interface TaUserVerifyMapper {
100 100
 
101 101
     @ResultMap("BaseResultMap")
102 102
     @Select("select * from ta_user_verify where community_id=#{communityId}" +
103
-            " and verify_status =  1 and id = 1262 ")
103
+            " and verify_status =  1")
104 104
     List<TaUserVerify> selectByCommunityId(@Param("communityId") Integer communityId);
105 105
 }

+ 6
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java Bestand weergeven

@@ -116,7 +116,7 @@ public class FaceServicelimpl implements FaceServiceI {
116 116
         TaUser user = taUserMapper.selectByPrimaryKey(activeUser);
117 117
         TaFace taFace = new TaFace();
118 118
         taFace.setFaceImg(faceImg);
119
-        taFace.setCommunityId(user.getCommunityId());
119
+        taFace.setCommunityId(userElement.getCommunityId());
120 120
         taFace.setTaUserVerifyId(userVerifyId);
121 121
         taFace.setCreateUser(userElement.getId());
122 122
         taFace.setUpdateUser(activeUser);
@@ -234,6 +234,10 @@ public class FaceServicelimpl implements FaceServiceI {
234 234
 
235 235
             // 修改人脸操作
236 236
             String data = HKOpenApi.HKpersonGroupId(uploadFile, taUserHk.getHkUserId(), taUserHk.getHkPersonNo(), user.getUserName(), taUserHk.getHkCardNo(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret(), tpEquipmentTree.getHttpServer(), tpEquipmentTree.getOpUserUuid());
237
+
238
+            // 等待 1s
239
+            Thread.sleep(1000);
240
+
237 241
             /*boolean isA为true进行添加,为false进行修改*/
238 242
             if (0 == type && 1 == faceNum) {
239 243
                 if (null == data) {
@@ -252,7 +256,7 @@ public class FaceServicelimpl implements FaceServiceI {
252 256
                 }
253 257
 
254 258
                 // 等待 1s
255
-                Thread.sleep(1000);
259
+                Thread.sleep(3000);
256 260
 
257 261
                 responseBean.addSuccess("操作成功");
258 262
 

+ 1
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/HKServiceImpl.java Bestand weergeven

@@ -76,7 +76,7 @@ public class HKServiceImpl implements IHKService {
76 76
     }
77 77
 
78 78
     @Override
79
-    // @Transactional(rollbackFor = Exception.class)
79
+    @Transactional(rollbackFor = Exception.class)
80 80
     public ResponseBean pushPerson(String appUserId, Integer userVerifyId) {
81 81
         ResponseBean responseBean = new ResponseBean();
82 82
         TaUser user = taUserMapper.selectByPrimaryKey(Integer.parseInt(appUserId));

+ 18
- 16
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/userDataHKsiteImpl.java Bestand weergeven

@@ -167,22 +167,24 @@ public class userDataHKsiteImpl  implements userDataHKsiteI {
167 167
             e.printStackTrace();
168 168
         }
169 169
 
170
-        // 开卡
171
-        Map<String, Object> parOpenCard = Maps.newHashMap();
172
-        parOpenCard.put("personId", taUserHk.getHkUserId());
173
-        parOpenCard.put("cardNo", Long.valueOf(cardNo));
174
-        parOpenCard.put("startTime", System.currentTimeMillis());
175
-        parOpenCard.put("endTime", time);
176
-        parOpenCard.put("secret", tpEquipmentTree.getSecret());
177
-        parOpenCard.put("appkey", tpEquipmentTree.getAppkey());
178
-        parOpenCard.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
179
-        parOpenCard.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
180
-        JSONObject openCardJSON = JSONObject.parseObject(HKOpenApi.openCard(parOpenCard));
181
-        int code = (int) openCardJSON.get("errorCode");
182
-        if (code != 0) {
183
-            String errorMessage = String.valueOf(openCardJSON.get("errorMessage"));
184
-            log.error("人员绑定开卡失败! {}", errorMessage);
185
-            throw new RuntimeException(errorMessage);
170
+        if (null == taFace){
171
+            // 开卡
172
+            Map<String, Object> parOpenCard = Maps.newHashMap();
173
+            parOpenCard.put("personId", taUserHk.getHkUserId());
174
+            parOpenCard.put("cardNo", Long.valueOf(cardNo));
175
+            parOpenCard.put("startTime", System.currentTimeMillis());
176
+            parOpenCard.put("endTime", time);
177
+            parOpenCard.put("secret", tpEquipmentTree.getSecret());
178
+            parOpenCard.put("appkey", tpEquipmentTree.getAppkey());
179
+            parOpenCard.put("openapi_ip_port_http", tpEquipmentTree.getHttpServer());
180
+            parOpenCard.put("opUserUuid", tpEquipmentTree.getOpUserUuid());
181
+            JSONObject openCardJSON = JSONObject.parseObject(HKOpenApi.openCard(parOpenCard));
182
+            int code = (int) openCardJSON.get("errorCode");
183
+            if (code != 0) {
184
+                String errorMessage = String.valueOf(openCardJSON.get("errorMessage"));
185
+                log.error("人员绑定开卡失败! {}", errorMessage);
186
+                throw new RuntimeException(errorMessage);
187
+            }
186 188
         }
187 189
 
188 190
         //=================== 下发可是对讲卡权限 =====================