From aa82cd85cae20617d3f3763031d6338b24655f55 Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Fri, 7 Jun 2024 20:25:28 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BD=A6=E8=BE=86=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhgd/xmgl/async/AsyncHikvision.java | 12 +- .../com/zhgd/xmgl/call/HikvisionCall.java | 65 ++++++----- .../modules/car/mapper/xml/CarInfoMapper.xml | 1 + .../car/service/impl/CarInfoServiceImpl.java | 6 +- .../IXzHikvisionCompareDataService.java | 5 +- .../XzHikvisionCompareDataServiceImpl.java | 110 +++++++----------- 6 files changed, 88 insertions(+), 111 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/async/AsyncHikvision.java b/src/main/java/com/zhgd/xmgl/async/AsyncHikvision.java index 3fa8a9bd8..2dab5639d 100644 --- a/src/main/java/com/zhgd/xmgl/async/AsyncHikvision.java +++ b/src/main/java/com/zhgd/xmgl/async/AsyncHikvision.java @@ -160,14 +160,12 @@ public class AsyncHikvision { } @Async("carInfoExecutor") - public void addCarInfoForHikvisionAsyc(CarInfo carInfo, Boolean existIsc) { + public void addCarInfoForHikvisionAsyc(CarInfo carInfo) { try { hikvisionCall.saveCarInfoFromHikvision(carInfo); } catch (Exception e) { log.error("海康:", e); sendNoticeForCar(carInfo, e, "添加"); - } finally { - xzHikvisionCompareDataService.compareRetrySuccess(existIsc, carInfo); } } @@ -198,26 +196,22 @@ public class AsyncHikvision { } @Async("carInfoExecutor") - public void editCarInfoForHikvisionAsync(CarInfo carInfo, CarInfo old, Boolean existIsc) { + public void editCarInfoForHikvisionAsync(CarInfo carInfo, CarInfo old) { try { hikvisionCall.editCarInfoForHikvision(carInfo, old); } catch (Exception e) { log.error("海康:", e); sendNoticeForCar(carInfo, e, "编辑"); - } finally { - xzHikvisionCompareDataService.compareRetrySuccess(existIsc, carInfo); } } @Async("carInfoExecutor") - public void deleteCarInfoForHikvisionAsync(CarInfo carInfo, boolean isSetBlack, Boolean existIsc) { + public void deleteCarInfoAndSetBlackForHikvisionAsync(CarInfo carInfo, boolean isSetBlack) { try { hikvisionCall.deleteCarInfoForHikvision(carInfo, isSetBlack); } catch (Exception e) { log.error("海康:", e); sendNoticeForCar(carInfo, e, "删除"); - } finally { - xzHikvisionCompareDataService.compareRetrySuccess(existIsc, carInfo); } } diff --git a/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java b/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java index 6ea2c87b8..29b27eb55 100644 --- a/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java +++ b/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java @@ -217,6 +217,35 @@ public class HikvisionCall { return null; } + public static String getWorkerJson(WorkerInfo workerInfo) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("personId", workerInfo.getId()); + jsonBody.put("personName", workerInfo.getWorkerName()); + jsonBody.put("gender", workerInfo.getSex()); + jsonBody.put("orgIndexCode", getOrgIndexCode(workerInfo)); + jsonBody.put("birthday", workerInfo.getBirthday()); + jsonBody.put("phoneNo", workerInfo.getPhoneNumber()); + jsonBody.put("email", workerInfo.getPersonMail()); + jsonBody.put("certificateType", "111"); + jsonBody.put("certificateNo", workerInfo.getIdCard()); + jsonBody.put("jobNo", workerInfo.getPersonSn()); + return jsonBody.toJSONString(); + } + + private static String getOrgIndexCode(WorkerInfo workerInfo) { + if (workerInfo == null) { + return null; + } + if (Objects.equals(workerInfo.getPersonType(), 1)) { + return String.valueOf(workerInfo.getTeamId()); + } else if (Objects.equals(workerInfo.getPersonType(), 2)) { + return String.valueOf(workerInfo.getDepartmentId()); + } else if (Objects.equals(workerInfo.getPersonType(), 3)) { + return String.valueOf(workerInfo.getProjectSn()); + } + return null; + } + @ApiOperation(value = "海康事件回调", notes = "海康事件回调", httpMethod = "POST") @PostMapping(value = "/eventCallback") public Result eventCallback(@ApiIgnore @RequestBody JSONObject jsonObject) { @@ -855,35 +884,6 @@ public class HikvisionCall { sendNoticeAndSetStatusForWorker("添加人员到海康isc", rs, workerInfo, 1, 1); } - public static String getWorkerJson(WorkerInfo workerInfo) { - JSONObject jsonBody = new JSONObject(); - jsonBody.put("personId", workerInfo.getId()); - jsonBody.put("personName", workerInfo.getWorkerName()); - jsonBody.put("gender", workerInfo.getSex()); - jsonBody.put("orgIndexCode", getOrgIndexCode(workerInfo)); - jsonBody.put("birthday", workerInfo.getBirthday()); - jsonBody.put("phoneNo", workerInfo.getPhoneNumber()); - jsonBody.put("email", workerInfo.getPersonMail()); - jsonBody.put("certificateType", "111"); - jsonBody.put("certificateNo", workerInfo.getIdCard()); - jsonBody.put("jobNo", workerInfo.getPersonSn()); - return jsonBody.toJSONString(); - } - - private static String getOrgIndexCode(WorkerInfo workerInfo) { - if (workerInfo == null) { - return null; - } - if (Objects.equals(workerInfo.getPersonType(), 1)) { - return String.valueOf(workerInfo.getTeamId()); - } else if (Objects.equals(workerInfo.getPersonType(), 2)) { - return String.valueOf(workerInfo.getDepartmentId()); - } else if (Objects.equals(workerInfo.getPersonType(), 3)) { - return String.valueOf(workerInfo.getProjectSn()); - } - return null; - } - /** * 编辑人员 * @@ -1005,6 +1005,9 @@ public class HikvisionCall { } else { updateFailStatusByNow(carInfo.getProjectSn(), carInfo.getId(), type, operate, AsyncHikvision.getSyncTime(), null); } + + xzHikvisionCompareDataService.compareRetryStatus(carInfo, type, operate, setSuc); + if (isNotice) { if (ThreadLocalUtil.getByKey(Cts.TL_AUTH_USER, UserInfo.class) != null) { noticeService.addUserNotice(ThreadLocalUtil.getByKey(Cts.TL_AUTH_USER, UserInfo.class).getUserId(), msg, title, "24"); @@ -1054,7 +1057,7 @@ public class HikvisionCall { success = false; } if (success) { - xzHikvisionCompareDataService.compareRetrySuccess(); + xzHikvisionCompareDataService.compareRetryStatus(); } else { xzHikvisionCompareDataService.compareRetryFail(); } @@ -1123,7 +1126,7 @@ public class HikvisionCall { } if (success) { updateSuccessStatusByNow(workerInfo.getProjectSn(), workerInfo.getId(), type, operate, AsyncHikvision.getSyncTime(), null); - xzHikvisionCompareDataService.compareRetrySuccess(); + xzHikvisionCompareDataService.compareRetryStatus(); } else { updateFailStatusByNow(workerInfo.getProjectSn(), workerInfo.getId(), type, operate, AsyncHikvision.getSyncTime(), null); xzHikvisionCompareDataService.compareRetryFail(); diff --git a/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml index 48111c964..894a5cea4 100644 --- a/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/car/mapper/xml/CarInfoMapper.xml @@ -111,5 +111,6 @@ where t.car_number = #{carNumber} + limit 1 diff --git a/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarInfoServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarInfoServiceImpl.java index 6c00d1e8d..2d1b30505 100644 --- a/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarInfoServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/car/service/impl/CarInfoServiceImpl.java @@ -375,7 +375,7 @@ public class CarInfoServiceImpl extends ServiceImpl impl } else if (Objects.equals(carInfo.getCarModuleType(), 2) || Objects.equals(carInfo.getCarModuleType(), 3)) { xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(6).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId()))); } - asyncHikvision.addCarInfoForHikvisionAsyc(carInfo, null); + asyncHikvision.addCarInfoForHikvisionAsyc(carInfo); } } @@ -393,7 +393,7 @@ public class CarInfoServiceImpl extends ServiceImpl impl xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(6).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId()))); } xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(7).setOperate(isSetBlack ? 1 : 3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId()))); - asyncHikvision.deleteCarInfoForHikvisionAsync(carInfo, isSetBlack, null); + asyncHikvision.deleteCarInfoAndSetBlackForHikvisionAsync(carInfo, isSetBlack); } @Override @@ -415,7 +415,7 @@ public class CarInfoServiceImpl extends ServiceImpl impl if (old.getIsBlack() == 1) { xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(7).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId()))); } - asyncHikvision.editCarInfoForHikvisionAsync(carInfo, old, null); + asyncHikvision.editCarInfoForHikvisionAsync(carInfo, old); } } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzHikvisionCompareDataService.java b/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzHikvisionCompareDataService.java index f5b2e4d3c..87d616559 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzHikvisionCompareDataService.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/service/IXzHikvisionCompareDataService.java @@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.xz.service; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import com.zhgd.xmgl.modules.car.entity.CarInfo; import com.zhgd.xmgl.modules.project.entity.Project; import com.zhgd.xmgl.modules.xz.entity.XzHikvisionCompareData; @@ -34,7 +35,7 @@ public interface IXzHikvisionCompareDataService extends IService param) throws Exception; void deleteAllCompareData(Project project); + + void compareRetryStatus(CarInfo carInfo, Integer type, Integer operate, Boolean setSuc); } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzHikvisionCompareDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzHikvisionCompareDataServiceImpl.java index 1d0ccd7ff..1eac44359 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzHikvisionCompareDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz/service/impl/XzHikvisionCompareDataServiceImpl.java @@ -329,17 +329,21 @@ public class XzHikvisionCompareDataServiceImpl extends ServiceImpl