From adc97cd3fdd01e6873f9937b153d35e27983c75f Mon Sep 17 00:00:00 2001 From: GUO <1923636941@qq.com> Date: Sat, 1 Jun 2024 21:41:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=A0=A1=E9=AA=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhgd/xmgl/call/HikvisionCall.java | 27 ++++++---------- src/main/java/com/zhgd/xmgl/constant/Cts.java | 1 + .../modules/car/mapper/xml/CarInfoMapper.xml | 3 ++ .../com/zhgd/xmgl/task/HikvisionTask.java | 32 ++++++++++++++++--- .../com/zhgd/xmgl/util/HikvisionUtil.java | 4 +-- 5 files changed, 44 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java b/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java index 5c01331e4..016c266d6 100644 --- a/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java +++ b/src/main/java/com/zhgd/xmgl/call/HikvisionCall.java @@ -1846,7 +1846,7 @@ public class HikvisionCall { final String ARTEMIS_PATH = "/artemis"; final String path = ARTEMIS_PATH + "/api/pms/v1/parkingSpace/reservations/deletion"; String host = "https://" + project.getArtemisConfigHost(); - JSONArray reservationCarInfoList = getReservationCarInfoList(carInfo, project); + JSONArray reservationCarInfoList = getReservationCarInfoList(carInfo.getCarNumber(), project); if (CollUtil.isNotEmpty(reservationCarInfoList)) { for (int i = 0; i < reservationCarInfoList.size(); i++) { JSONObject jsonObject = reservationCarInfoList.getJSONObject(i); @@ -1864,30 +1864,24 @@ public class HikvisionCall { /** * 查询预约记录v2 * - * @param carInfo + * @param carNumber * @param project */ - private JSONArray getReservationCarInfoList(CarInfo carInfo, Project project) throws Exception { + public JSONArray getReservationCarInfoList(String carNumber, Project project) throws Exception { final String ARTEMIS_PATH = "/artemis"; final String path = ARTEMIS_PATH + "/api/pms/v2/reserveRecord/page"; String host = "https://" + project.getArtemisConfigHost(); - HikvisionReservationCarInfo info = getHikvisionReservationCarInfoObj(carInfo, project); + HikvisionReservationCarInfo info = getHikvisionReservationCarInfoObj(carNumber, project); String rs = HikvisionUtil.doPost(host, path, JSON.toJSONString(info), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret()); - try { - JSONObject jsonObjectData = HikvisionUtil.getJSONObjectData(rs); - return jsonObjectData.getJSONArray("list"); - } catch (Exception e) { - log.error("error:", e); - } - return null; + JSONObject jsonObjectData = HikvisionUtil.getJSONObjectData(rs); + return jsonObjectData.getJSONArray("list"); } - private HikvisionReservationCarInfo getHikvisionReservationCarInfoObj(CarInfo carInfo, Project project) throws Exception { + private HikvisionReservationCarInfo getHikvisionReservationCarInfoObj(String carNumber, Project project) throws Exception { String projectParkCode = getProjectParkCode(project); HikvisionReservationCarInfo hikvisionReservationCarInfo = new HikvisionReservationCarInfo(); - String parkIndexCode = projectParkCode; - hikvisionReservationCarInfo.setParkSyscode(parkIndexCode); - hikvisionReservationCarInfo.setPlateNo(carInfo.getCarNumber()); + hikvisionReservationCarInfo.setParkSyscode(projectParkCode); + hikvisionReservationCarInfo.setPlateNo(carNumber); hikvisionReservationCarInfo.setResvState(0L); //hikvisionReservationCarInfo.setResvWay(); //hikvisionReservationCarInfo.setAllowTimes(); @@ -2184,8 +2178,7 @@ public class HikvisionCall { String host = "https://" + project.getArtemisConfigHost(); JSONObject jo = new JSONObject(); String rs = HikvisionUtil.doPost(host, path, jo.toJSONString(), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret()); - JSONArray jod = HikvisionUtil.getJSONArrayData(rs); - return jod; + return HikvisionUtil.getJSONArrayData(rs); } private HikvisionOrganization getHikvisionOrganization(Project project) { diff --git a/src/main/java/com/zhgd/xmgl/constant/Cts.java b/src/main/java/com/zhgd/xmgl/constant/Cts.java index 732a31513..7aef860a5 100644 --- a/src/main/java/com/zhgd/xmgl/constant/Cts.java +++ b/src/main/java/com/zhgd/xmgl/constant/Cts.java @@ -26,4 +26,5 @@ public interface Cts { String TEAM_ID = "teamId"; String IF_FROM_TASK_KEY = "ifFromTaskKey"; String DEPARTMENT_ID = "departmentId"; + String RESERVATION_TYPE = "reservationType"; } 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 b26d414bb..b67b25fbd 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 @@ -30,6 +30,9 @@ and t.car_module_type = #{param.carModuleType} + + and t.car_module_type != 1 + and t.enterprise_id in diff --git a/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java b/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java index 4cf4df883..fa51d245b 100644 --- a/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java +++ b/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java @@ -104,6 +104,12 @@ public class HikvisionTask { } } + public void compareHikvisionForCar(Project project) throws Exception { + compareHikvisionForFixCar(project); + compareHikvisionForReservationCar(project); + xzHikvisionCompareDataService.addSuccessShow(project.getProjectSn(), "4"); + } + public void compareHikvisionForEnterpriseEtc(Project project) throws Exception { //对比企业 JSONObject param = new JSONObject(); @@ -256,13 +262,31 @@ public class HikvisionTask { xzHikvisionCompareDataService.addSuccessShow(project.getProjectSn(), "3"); } - public void compareHikvisionForCar(Project project) throws Exception { + public void compareHikvisionForFixCar(Project project) throws Exception { JSONObject param = new JSONObject(); HikvisionUtil.addPageParamIfAbsent(param); - JSONObject rtJo = HikvisionUtil.getCarList(project, param); - List carInfoList = carInfoService.selectCarList(new MapBuilder().put(Cts.PROJECT_SN, project.getProjectSn()).build()); + JSONObject rtJo = HikvisionUtil.getFixCarList(project, param); + List carInfoList = carInfoService.selectCarList(new MapBuilder() + .put(Cts.PROJECT_SN, project.getProjectSn()) + .put("carModuleType", 1) + .build()); JSONObject dataJo = HikvisionUtil.getJSONObjectData(rtJo); JSONArray listJa = dataJo.getJSONArray("list"); + compareAndAddData(project, listJa, carInfoList); + } + + public void compareHikvisionForReservationCar(Project project) throws Exception { + JSONObject param = new JSONObject(); + HikvisionUtil.addPageParamIfAbsent(param); + JSONArray listJa = hikvisionCall.getReservationCarInfoList(null, project); + List carInfoList = carInfoService.selectCarList(new MapBuilder() + .put(Cts.PROJECT_SN, project.getProjectSn()) + .put(Cts.RESERVATION_TYPE, 1) + .build()); + compareAndAddData(project, listJa, carInfoList); + } + + private void compareAndAddData(Project project, JSONArray listJa, List carInfoList) { if (CollUtil.isEmpty(listJa)) { for (CarInfo carInfo : carInfoList) { xzHikvisionCompareDataService.addCompareDataForCar(project, carInfo.getCarNumber(), 0, 1, String.valueOf(carInfo.getId())); @@ -286,7 +310,7 @@ public class HikvisionTask { } } - xzHikvisionCompareDataService.addSuccessShow(project.getProjectSn(), "4"); } + } diff --git a/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java b/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java index 29dadc6f8..c00a15bfa 100644 --- a/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java +++ b/src/main/java/com/zhgd/xmgl/util/HikvisionUtil.java @@ -154,12 +154,12 @@ public class HikvisionUtil { } /** - * 查询车辆列表v2 + * 查询车辆列表v2-固定车辆 * * @param project * @return */ - public static JSONObject getCarList(Project project, JSONObject param) throws Exception { + public static JSONObject getFixCarList(Project project, JSONObject param) throws Exception { if (project == null || !Objects.equals(project.getSyncHikvision(), 1)) { return null; }