Browse Source

修复 海康推送

魏熙美 6 years ago
parent
commit
0c0e103735

+ 7
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java View File

407
 
407
 
408
         // 海康数据
408
         // 海康数据
409
         TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getId(), userVerify.getCommunityId());
409
         TaUserHk taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getId(), userVerify.getCommunityId());
410
+        if (null == taUserHk) {
411
+            /**
412
+             * 如果没有海康数据,就进行推送
413
+             */
414
+            ihkService.pushPerson(taUser.getId() + "", userVerify.getId());
415
+            taUserHk = taUserHkMapper.selectByUserVerifyIdAndCommunityId(userVerify.getId(), userVerify.getCommunityId());
416
+        }
410
 
417
 
411
         // 海康权限信息
418
         // 海康权限信息
412
         TpUnitHkSetting tpUnitHkSetting = getUnitHkSetting(userVerify.getCommunityId(), userVerify.getUnitId());
419
         TpUnitHkSetting tpUnitHkSetting = getUnitHkSetting(userVerify.getCommunityId(), userVerify.getUnitId());

+ 14
- 6
CODE/smart-community/hardware-server/src/main/java/com/community/huiju/service/impl/HkHardwareServiceImpl.java View File

142
             downloadEntranceGuardPermissions(entranceGuardPermissions.toJSONString());
142
             downloadEntranceGuardPermissions(entranceGuardPermissions.toJSONString());
143
         }
143
         }
144
 
144
 
145
-        // 下发门禁人脸权限
146
-        JSONObject entranceGuardFace = jsonObject.getJSONObject("entranceGuardFace");
147
-        if (null != entranceGuardFace) {
148
-            downloadEntranceGuardFace(entranceGuardFace.toJSONString());
149
-        }
150
-
151
         // 下发门口机(可视对讲)卡权限
145
         // 下发门口机(可视对讲)卡权限
152
         JSONObject doorPermissions = jsonObject.getJSONObject("doorPermissions");
146
         JSONObject doorPermissions = jsonObject.getJSONObject("doorPermissions");
153
         if (null != doorPermissions) {
147
         if (null != doorPermissions) {
154
             downloadDoorPermissions(doorPermissions.toJSONString());
148
             downloadDoorPermissions(doorPermissions.toJSONString());
155
         }
149
         }
156
 
150
 
151
+
152
+        try {
153
+            // 睡眠 3 秒
154
+            Thread.sleep(3000);
155
+        } catch (InterruptedException e) {
156
+            e.printStackTrace();
157
+        }
158
+
159
+        // 下发门禁人脸权限
160
+        JSONObject entranceGuardFace = jsonObject.getJSONObject("entranceGuardFace");
161
+        if (null != entranceGuardFace) {
162
+            downloadEntranceGuardFace(entranceGuardFace.toJSONString());
163
+        }
164
+
157
         // 下发门口机(可视对讲)人脸权限
165
         // 下发门口机(可视对讲)人脸权限
158
         JSONObject doorFace = jsonObject.getJSONObject("doorFace");
166
         JSONObject doorFace = jsonObject.getJSONObject("doorFace");
159
         if (null != doorFace) {
167
         if (null != doorFace) {

+ 7
- 0
CODE/smart-community/property-api/src/main/java/com/community/huiju/PropertyApplication.java View File

3
 import com.alibaba.fastjson.serializer.SerializerFeature;
3
 import com.alibaba.fastjson.serializer.SerializerFeature;
4
 import com.alibaba.fastjson.support.config.FastJsonConfig;
4
 import com.alibaba.fastjson.support.config.FastJsonConfig;
5
 import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
5
 import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
6
+import feign.Logger;
6
 import org.mybatis.spring.annotation.MapperScan;
7
 import org.mybatis.spring.annotation.MapperScan;
7
 import org.springframework.boot.SpringApplication;
8
 import org.springframework.boot.SpringApplication;
8
 import org.springframework.boot.autoconfigure.SpringBootApplication;
9
 import org.springframework.boot.autoconfigure.SpringBootApplication;
45
 		factory.setLocation("/tmp/smart-community");
46
 		factory.setLocation("/tmp/smart-community");
46
 		return factory.createMultipartConfig();
47
 		return factory.createMultipartConfig();
47
 	}
48
 	}
49
+
50
+	@Bean
51
+	public Logger.Level feignLoggerLevel() {
52
+		//这里记录所有,根据实际情况选择合适的日志level
53
+		return Logger.Level.FULL;
54
+	}
48
 }
55
 }

+ 3
- 3
CODE/smart-community/property-api/src/main/java/com/community/huiju/feign/TaUserFeignService.java View File

17
      * @return
17
      * @return
18
      */
18
      */
19
     @RequestMapping(value = "/user/register",method = RequestMethod.POST)
19
     @RequestMapping(value = "/user/register",method = RequestMethod.POST)
20
-    ResponseBean register(@RequestBody String parameter);
20
+    String register(@RequestBody String parameter);
21
 
21
 
22
     /**
22
     /**
23
      * 推送海康人员添加
23
      * 推送海康人员添加
25
      * @return
25
      * @return
26
      */
26
      */
27
     @RequestMapping(value = "/pushHKPerson/{appUserId}", method = RequestMethod.POST)
27
     @RequestMapping(value = "/pushHKPerson/{appUserId}", method = RequestMethod.POST)
28
-    ResponseBean pushHKPerson(@PathVariable("appUserId") Integer appUserId, @RequestParam("userVerifyId") Integer userVerifyId);
28
+    String pushHKPerson(@PathVariable("appUserId") Integer appUserId, @RequestParam("userVerifyId") Integer userVerifyId);
29
 
29
 
30
     /**
30
     /**
31
      * 异动下载门禁权限
31
      * 异动下载门禁权限
32
      * @return
32
      * @return
33
      */
33
      */
34
     @RequestMapping(value = "/downloadAuthorityByDeviceUuids", method = RequestMethod.POST)
34
     @RequestMapping(value = "/downloadAuthorityByDeviceUuids", method = RequestMethod.POST)
35
-    ResponseBean downloadAuthorityByDeviceUuids();
35
+    String downloadAuthorityByDeviceUuids();
36
 
36
 
37
 
37
 
38
 
38
 

+ 6
- 5
CODE/smart-community/property-api/src/main/java/com/community/huiju/feign/impl/TaUserFeignFallBack.java View File

1
 package com.community.huiju.feign.impl;
1
 package com.community.huiju.feign.impl;
2
 
2
 
3
+import com.alibaba.fastjson.JSONObject;
3
 import com.community.commom.mode.ResponseBean;
4
 import com.community.commom.mode.ResponseBean;
4
 import com.community.huiju.feign.TaUserFeignService;
5
 import com.community.huiju.feign.TaUserFeignService;
5
 import lombok.extern.slf4j.Slf4j;
6
 import lombok.extern.slf4j.Slf4j;
8
 public class TaUserFeignFallBack implements TaUserFeignService {
9
 public class TaUserFeignFallBack implements TaUserFeignService {
9
 
10
 
10
     @Override
11
     @Override
11
-    public ResponseBean register(String parameter) {
12
+    public String register(String parameter) {
12
         return back();
13
         return back();
13
     }
14
     }
14
 
15
 
15
     @Override
16
     @Override
16
-    public ResponseBean pushHKPerson(Integer appUserId,Integer userVerifyId) {
17
+    public String pushHKPerson(Integer appUserId,Integer userVerifyId) {
17
         return back();
18
         return back();
18
     }
19
     }
19
 
20
 
20
     @Override
21
     @Override
21
-    public ResponseBean downloadAuthorityByDeviceUuids() {
22
+    public String downloadAuthorityByDeviceUuids() {
22
         return back();
23
         return back();
23
     }
24
     }
24
 
25
 
25
-    private ResponseBean back() {
26
+    private String back() {
26
         log.error("app-api 远端服务请求失败!");
27
         log.error("app-api 远端服务请求失败!");
27
         ResponseBean responseBean = new ResponseBean();
28
         ResponseBean responseBean = new ResponseBean();
28
         responseBean.addError("app-api 远端服务请求失败!");
29
         responseBean.addError("app-api 远端服务请求失败!");
29
-        return responseBean;
30
+        return JSONObject.toJSONString(responseBean);
30
     }
31
     }
31
 }
32
 }

+ 28
- 7
CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/BuildingOwnerInfoServiceImpl.java View File

192
             tpBuildingOwnerInfo.setTaUserVerifyId(userVerify.getId());
192
             tpBuildingOwnerInfo.setTaUserVerifyId(userVerify.getId());
193
             tpBuildingOwnerInfoMapper.updateById(tpBuildingOwnerInfo);
193
             tpBuildingOwnerInfoMapper.updateById(tpBuildingOwnerInfo);
194
 
194
 
195
-            // 推送海康
196
-            ResponseBean pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
197
-            if (!"0".equals(pushHKPerson.getCode())) {
195
+            /**
196
+             * 这里有特殊情况需要外面包裹一层异常捕获
197
+             */
198
+            try {
199
+
200
+                // 推送海康
201
+                String pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
202
+                JSONObject pushHKPersonJsonObject = JSONObject.parseObject(pushHKPerson);
203
+                if (!"0".equals(pushHKPersonJsonObject.getString("code"))) {
204
+                    throw new WisdomException("设备推送失败!");
205
+                }
206
+
207
+            }catch (Exception e) {
208
+                log.info("设备推送失败!,人员id:{}", userVerify.getUserId());
198
                 throw new WisdomException("设备推送失败!");
209
                 throw new WisdomException("设备推送失败!");
199
             }
210
             }
211
+
200
         }
212
         }
201
 
213
 
202
 
214
 
205
     }
217
     }
206
 
218
 
207
     @Override
219
     @Override
208
-    @Transactional(rollbackFor = Exception.class)
220
+    //@Transactional(rollbackFor = Exception.class)
209
     public ResponseBean add(String parameter, UserElement userElement) {
221
     public ResponseBean add(String parameter, UserElement userElement) {
210
         ResponseBean responseBean = new ResponseBean();
222
         ResponseBean responseBean = new ResponseBean();
211
 
223
 
333
             messageMapper.insert(message);
345
             messageMapper.insert(message);
334
         }
346
         }
335
 
347
 
336
-
348
+        /**
349
+         * 这里有特殊情况需要外面包裹一层异常捕获
350
+         */
351
+        try {
337
             // 推送海康
352
             // 推送海康
338
-            ResponseBean pushHKPerson = taUserFeignService.pushHKPerson(appUser.getId(), taUserVerify.getId());
339
-            if (!"0".equals(pushHKPerson.getCode())) {
353
+            String pushHKPerson = taUserFeignService.pushHKPerson(appUser.getId(), taUserVerify.getId());
354
+            JSONObject pushHKPersonJsonObject = JSONObject.parseObject(pushHKPerson);
355
+            if (!"0".equals(pushHKPersonJsonObject.getString("code"))) {
340
                 log.info("设备推送失败!,人员id:{}", userVerify.getUserId());
356
                 log.info("设备推送失败!,人员id:{}", userVerify.getUserId());
341
                 throw new WisdomException("设备推送失败!");
357
                 throw new WisdomException("设备推送失败!");
342
             }
358
             }
359
+        } catch (Exception e) {
360
+            log.info("设备推送失败!,人员id:{}", userVerify.getUserId());
361
+            throw new WisdomException("设备推送失败!");
362
+        }
363
+
343
 
364
 
344
 
365
 
345
         if (row <= 0) {
366
         if (row <= 0) {

+ 7
- 4
CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/TaUserVerifyServiceImpl.java View File

1
 package com.community.huiju.service.impl;
1
 package com.community.huiju.service.impl;
2
 
2
 
3
+import com.alibaba.fastjson.JSONObject;
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
124
 
125
 
125
         try {
126
         try {
126
             // 推送海康
127
             // 推送海康
127
-            ResponseBean pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
128
-            if (!"0".equals(pushHKPerson.getCode())) {
128
+            String pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
129
+            JSONObject pushHKPersonJsonObject = JSONObject.parseObject(pushHKPerson);
130
+            if (!"0".equals(pushHKPersonJsonObject.getString("code"))) {
129
                 throw new WisdomException("设备推送失败!");
131
                 throw new WisdomException("设备推送失败!");
130
             }
132
             }
131
         } catch (Exception e) {
133
         } catch (Exception e) {
269
 
271
 
270
             try {
272
             try {
271
                 // 推送海康
273
                 // 推送海康
272
-                ResponseBean pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
273
-                if (!"0".equals(pushHKPerson.getCode())) {
274
+                String pushHKPerson = taUserFeignService.pushHKPerson(userVerify.getUserId(), userVerifyId);
275
+                JSONObject pushHKPersonJsonObject = JSONObject.parseObject(pushHKPerson);
276
+                if (!"0".equals(pushHKPersonJsonObject.getString("code"))) {
274
                     throw new WisdomException("设备推送失败!");
277
                     throw new WisdomException("设备推送失败!");
275
                 }
278
                 }
276
             } catch (Exception e) {
279
             } catch (Exception e) {

+ 6
- 0
CODE/smart-community/property-api/src/main/resources/application.yml View File

11
   configuration:
11
   configuration:
12
     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句,调试用
12
     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句,调试用
13
   mapper-locations: classpath:mapper/*.xml
13
   mapper-locations: classpath:mapper/*.xml
14
+
15
+
16
+logging:
17
+  level:
18
+    com.community.huiju.dao: debug
19
+    com.community.huiju.feign: DEBUG