From 55f4b32ef1ff1fe4801d9b16e2e24a7889798cfd Mon Sep 17 00:00:00 2001 From: zhangxiongfeng Date: Tue, 11 Aug 2026 14:23:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=8D=8E=E4=BA=BA=E5=91=98=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E8=BA=AB=E4=BB=BD=E8=AF=81=E6=9F=A5=E8=AF=A2=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../command/DaHuaVehicleSyncExe.java | 14 +------ .../primeport/service/DaHuaServiceImpl.java | 25 +++++++++-- .../zcloud/primeport/api/DaHuaServiceI.java | 4 +- .../domain/gateway/DaHuaGateway.java | 4 +- .../gatewayimpl/DaHuaGatewayImpl.java | 42 ++++++++++++++++++- 5 files changed, 70 insertions(+), 19 deletions(-) diff --git a/web-app/src/main/java/com/zcloud/primeport/command/DaHuaVehicleSyncExe.java b/web-app/src/main/java/com/zcloud/primeport/command/DaHuaVehicleSyncExe.java index bfb1ab0..698e219 100644 --- a/web-app/src/main/java/com/zcloud/primeport/command/DaHuaVehicleSyncExe.java +++ b/web-app/src/main/java/com/zcloud/primeport/command/DaHuaVehicleSyncExe.java @@ -142,22 +142,12 @@ public class DaHuaVehicleSyncExe { cmd.setValidStartTime(vehicle.getVisitStartTime()); cmd.setValidEndTime(vehicle.getVisitEndTime()); - Long departmentId = null; - if (vehicle.getVehicleDepartmentId() != null) { - departmentId = daHuaGateway.findDahuaDepartmentIdByCorpId(vehicle.getVehicleDepartmentId()); - if (departmentId == null) { - log.warn("未找到部门映射, vehicleDepartmentId={}, 使用默认值1", vehicle.getVehicleDepartmentId()); - } - } - if (departmentId == null) { - departmentId = 1L; - } - cmd.setDepartmentId(departmentId); + cmd.setDepartmentId(1L); DaHuaTempVehicleSaveCmd.CarItem carItem = new DaHuaTempVehicleSaveCmd.CarItem(); carItem.setCarNum(vehicle.getLicenceNo()); carItem.setCarNumColor(CarEnum.getMenuKeyByPath(vehicle.getLicenceType())); - carItem.setDepartmentId(departmentId); + carItem.setDepartmentId(1L); carItem.setDepartmentName(vehicle.getVehicleDepartmentName()); cmd.setCars(Collections.singletonList(carItem)); return cmd; diff --git a/web-app/src/main/java/com/zcloud/primeport/service/DaHuaServiceImpl.java b/web-app/src/main/java/com/zcloud/primeport/service/DaHuaServiceImpl.java index 569dcf7..1bf570f 100644 --- a/web-app/src/main/java/com/zcloud/primeport/service/DaHuaServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/primeport/service/DaHuaServiceImpl.java @@ -43,6 +43,23 @@ public class DaHuaServiceImpl implements ZcloudDaHuaFacade { return SingleResponse.of(id); } + @Override + public SingleResponse> findPersonByPaperNumber(String paperNumber) { + Map queryResult = daHuaGateway.findPersonByPaperNumber(paperNumber); + System.out.println("大华人员信息查询返回 - paperNumber:" + paperNumber + ", queryResult:" + queryResult); + Boolean passed = (Boolean) queryResult.get("passed"); + Boolean dhSuccess = (Boolean) queryResult.get("success"); + String dhCode = (String) queryResult.get("code"); + String dhErrMsg = (String) queryResult.get("errMsg"); + Map dhData = (Map) queryResult.get("data"); + SingleResponse> resp = new SingleResponse<>(); + resp.setSuccess(dhSuccess != null ? dhSuccess : passed); + resp.setErrCode(dhCode); + resp.setErrMessage(dhErrMsg); + resp.setData(dhData); + return resp; + } + @Override public SingleResponse syncPerson(DaHuaPersonSyncCmd cmd) { cmd.setDepartmentId(resolveDahuaDeptId(cmd.getDepartmentId())); @@ -190,20 +207,20 @@ public class DaHuaServiceImpl implements ZcloudDaHuaFacade { @Override public SingleResponse saveTempVehicle(DaHuaTempVehicleSaveCmd cmd) { - cmd.setDepartmentId(resolveDahuaDeptId(cmd.getDepartmentId())); + cmd.setDepartmentId(1L); if (cmd.getDepartmentList() != null) { for (DaHuaTempVehicleSaveCmd.DepartmentItem item : cmd.getDepartmentList()) { - item.setDepartmentId(resolveDahuaDeptId(item.getDepartmentId())); + item.setDepartmentId(1L); } } if (cmd.getCards() != null) { for (DaHuaTempVehicleSaveCmd.CardItem card : cmd.getCards()) { - card.setDepartmentId(resolveDahuaDeptId(card.getDepartmentId())); + card.setDepartmentId(1L); } } if (cmd.getCars() != null) { for (DaHuaTempVehicleSaveCmd.CarItem car : cmd.getCars()) { - car.setDepartmentId(resolveDahuaDeptId(car.getDepartmentId())); + car.setDepartmentId(1L); } } Map saveResult = daHuaGateway.saveTempVehicle(cmd); diff --git a/web-client/src/main/java/com/zcloud/primeport/api/DaHuaServiceI.java b/web-client/src/main/java/com/zcloud/primeport/api/DaHuaServiceI.java index d987ddc..33c396a 100644 --- a/web-client/src/main/java/com/zcloud/primeport/api/DaHuaServiceI.java +++ b/web-client/src/main/java/com/zcloud/primeport/api/DaHuaServiceI.java @@ -41,4 +41,6 @@ public interface DaHuaServiceI { SingleResponse saveTempVehicle(DaHuaTempVehicleSaveCmd cmd); SingleResponse syncResources(DaHuaResourceSyncCmd cmd); -} + + SingleResponse> findPersonByPaperNumber(String paperNumber); +} \ No newline at end of file diff --git a/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/DaHuaGateway.java b/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/DaHuaGateway.java index baa8b6c..2bfce31 100644 --- a/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/DaHuaGateway.java +++ b/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/DaHuaGateway.java @@ -15,6 +15,8 @@ public interface DaHuaGateway { Long findPersonIdByPaperNumber(String paperNumber); + Map findPersonByPaperNumber(String paperNumber); + Map syncPerson(DaHuaPersonSyncCmd cmd); Map updatePerson(DaHuaPersonSyncCmd cmd); @@ -38,4 +40,4 @@ public interface DaHuaGateway { Map saveTempVehicle(DaHuaTempVehicleSaveCmd cmd); Long findDahuaDepartmentIdByCorpId(Long corpId); -} +} \ No newline at end of file diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/DaHuaGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/DaHuaGatewayImpl.java index cca1eb9..376913e 100644 --- a/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/DaHuaGatewayImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/DaHuaGatewayImpl.java @@ -107,6 +107,46 @@ public class DaHuaGatewayImpl implements DaHuaGateway { } } + @Override + public Map findPersonByPaperNumber(String paperNumber) { + if (daHuaPersonApi == null || !daHuaPersonApi.isConfigured()) { + throw new RuntimeException("大华服务未配置"); + } + try { + GeneralResponse response = daHuaPersonApi.getPersonByPaperNumber(paperNumber); + Map result = new HashMap<>(); + boolean passed = response != null && "0".equals(response.getCode()); + result.put("passed", passed); + result.put("success", passed); + result.put("code", response != null ? response.getCode() : null); + if (passed) { + JSONObject responseJson = JSONUtil.parseObj(JSONUtil.toJsonStr(response)); + String resultStr = responseJson.getStr("result"); + if (resultStr != null && !resultStr.isEmpty()) { + JSONObject resultJson = JSONUtil.parseObj(resultStr); + JSONObject data = resultJson.getJSONObject("data"); + result.put("data", data != null ? data : new HashMap<>()); + } else { + result.put("data", new HashMap<>()); + } + } else { + JSONObject responseJson = JSONUtil.parseObj(JSONUtil.toJsonStr(response)); + result.put("errMsg", responseJson.getStr("result", "查询失败")); + result.put("data", new HashMap<>()); + } + System.out.println("大华人员详情查询返回 - paperNumber:" + paperNumber + ", result:" + result); + return result; + } catch (ClientException e) { + System.err.println("查询大华人员详情异常: " + e.getMessage()); + Map errorResult = new HashMap<>(); + errorResult.put("passed", false); + errorResult.put("success", false); + errorResult.put("errMsg", "查询大华人员异常: " + e.getMessage()); + errorResult.put("data", new HashMap<>()); + return errorResult; + } + } + @Override public Map syncPerson(DaHuaPersonSyncCmd cmd) { if (daHuaPersonApi == null || !daHuaPersonApi.isConfigured()) { @@ -1237,4 +1277,4 @@ public class DaHuaGatewayImpl implements DaHuaGateway { } return mapping.getDahuaDepartmentId(); } -} +} \ No newline at end of file