diff --git a/web-app/src/main/java/com/zcloud/primeport/command/DaHuaPersonSyncExe.java b/web-app/src/main/java/com/zcloud/primeport/command/DaHuaPersonSyncExe.java index 62d113e..7b09ecf 100644 --- a/web-app/src/main/java/com/zcloud/primeport/command/DaHuaPersonSyncExe.java +++ b/web-app/src/main/java/com/zcloud/primeport/command/DaHuaPersonSyncExe.java @@ -1,10 +1,10 @@ package com.zcloud.primeport.command; import com.alibaba.cola.exception.BizException; -import com.zcloud.gbscommon.dahua.cmd.DaHuaPersonSyncCmd; import com.zcloud.gbscommon.utils.Base64Util; import com.zcloud.primeport.domain.gateway.DaHuaGateway; import com.zcloud.primeport.domain.gateway.PersonApplyGateway; +import com.zcloud.primeport.domain.model.DaHuaPersonSyncCmd; import com.zcloud.primeport.domain.model.PersonApplyE; import com.zcloud.primeport.domain.model.XgfApplyPersonE; import com.zcloud.primeport.dto.PersonApplyUpdateCmd; @@ -53,7 +53,7 @@ public class DaHuaPersonSyncExe { Long dahuaPersonId = daHuaGateway.findPersonIdByPaperNumber(paperNumber); DaHuaPersonSyncCmd syncCmd = buildSyncCmd(dahuaPersonId, person.getEmployeePersonUserName(), paperNumber, person.getUserPhone(), person.getUserFaceUrl(), - apply.getVisitStartTime(), apply.getVisitEndTime(), person.getPersonCorpId()); + apply.getVisitStartTime(), apply.getVisitEndTime()); Map result; if (dahuaPersonId == null) { syncCmd.setId(daHuaGateway.generatePersonId()); @@ -80,7 +80,7 @@ public class DaHuaPersonSyncExe { String updatedPaperNumber = decodeUserCard(updated.getUserCard()); DaHuaPersonSyncCmd syncCmd = buildSyncCmd(dahuaPersonId, updated.getEmployeePersonUserName(), updatedPaperNumber, updated.getUserPhone(), updated.getUserFaceUrl(), - updated.getVisitStartTime(), updated.getVisitEndTime(), updated.getPersonCorpId()); + updated.getVisitStartTime(), updated.getVisitEndTime()); checkResult(daHuaGateway.updatePerson(syncCmd), "修改大华人员失败"); } @@ -108,7 +108,7 @@ public class DaHuaPersonSyncExe { } private DaHuaPersonSyncCmd buildSyncCmd(Long id, String name, String paperNumber, String phone, - String faceUrl, String startTime, String endTime, Long corpId) { + String faceUrl, String startTime, String endTime) { DaHuaPersonSyncCmd cmd = new DaHuaPersonSyncCmd(); cmd.setService("evo-thirdParty"); cmd.setId(id); @@ -116,11 +116,7 @@ public class DaHuaPersonSyncExe { cmd.setCode("hbqa" + paperNumber); cmd.setPaperType(111); cmd.setPaperNumber(paperNumber); - Long dahuaDeptId = daHuaGateway.findDahuaDepartmentIdByCorpId(corpId); - if (dahuaDeptId == null) { - throw new BizException("未找到大华部门映射配置, corpId=" + corpId); - } - cmd.setDepartmentId(dahuaDeptId); + cmd.setDepartmentId(1L); cmd.setDepartmentType(2); cmd.setType(3); cmd.setPhone(phone); @@ -130,6 +126,7 @@ public class DaHuaPersonSyncExe { DaHuaPersonSyncCmd.PersonBiosignature face = new DaHuaPersonSyncCmd.PersonBiosignature(); face.setType(3); face.setIndex(1); + // userFaceUrl 是文件服务器相对路径,读取图片并转换为 Base64 后交给大华网关。 face.setBase64Data(resolveFaceBase64(faceUrl)); cmd.setPersonBiosignatures(Collections.singletonList(face)); return cmd; @@ -188,4 +185,4 @@ public class DaHuaPersonSyncExe { throw new BizException(message + (errorMessage == null ? "" : ": " + errorMessage)); } } -} \ No newline at end of file +} 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 d8534a2..5f1ac48 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 @@ -1,10 +1,10 @@ package com.zcloud.primeport.command; import com.alibaba.cola.exception.BizException; -import com.zcloud.gbscommon.dahua.cmd.DaHuaCarAddCmd; import com.zcloud.primeport.domain.enums.VehicleBelongTypeEnum; import com.zcloud.primeport.domain.gateway.DaHuaGateway; import com.zcloud.primeport.domain.gateway.VehicleApplyGateway; +import com.zcloud.primeport.domain.model.DaHuaCarAddCmd; import com.zcloud.primeport.domain.model.VehicleApplyE; import com.zcloud.primeport.plan.mjDevice.dto.CarEnum; import lombok.AllArgsConstructor; @@ -25,18 +25,18 @@ public class DaHuaVehicleSyncExe { private final VehicleApplyGateway vehicleApplyGateway; /** - * 车辆审核通过后,同步新增大华车辆(所有车辆类型均同步)。 + * 相关方车辆审核通过后,同步新增大华车辆。 */ public void syncApprovedVehicle(Long vehicleApplyId) { VehicleApplyE vehicle = vehicleApplyGateway.getById(vehicleApplyId); - if (vehicle == null) { + if (!isRelatedPartyVehicle(vehicle)) { return; } syncAddedVehicle(vehicle); } /** - * 删除车辆时,同步删除对应的大华车辆(所有车辆类型均同步)。 + * 删除相关方车辆时,同步删除对应的大华车辆。 */ public void syncDeletedVehicles(List vehicles) { if (vehicles == null || vehicles.isEmpty()) { @@ -44,7 +44,7 @@ public class DaHuaVehicleSyncExe { } List carNumList = new ArrayList<>(); for (VehicleApplyE vehicle : vehicles) { - if (vehicle != null && vehicle.getLicenceNo() != null) { + if (isRelatedPartyVehicle(vehicle)) { carNumList.add(vehicle.getLicenceNo()); } } @@ -61,11 +61,8 @@ public class DaHuaVehicleSyncExe { DaHuaCarAddCmd cmd = new DaHuaCarAddCmd(); cmd.setCarNum(vehicle.getLicenceNo()); cmd.setCarNumColor(CarEnum.getMenuKeyByPath(vehicle.getLicenceType())); - Long dahuaDeptId = daHuaGateway.findDahuaDepartmentIdByCorpId(vehicle.getVehicleCorpId()); - if (dahuaDeptId == null) { - throw new BizException("未找到大华部门映射配置, corpId=" + vehicle.getVehicleCorpId()); - } - cmd.setDepartmentId(dahuaDeptId); + // 大华车辆类型与本地字典不一致,该字段可选,不能直接透传本地 vehicleType。 + cmd.setDepartmentId(1L); cmd.setDepartmentName(vehicle.getVehicleDepartmentName()); cmd.setService("evo-thirdParty"); return cmd; @@ -82,4 +79,4 @@ public class DaHuaVehicleSyncExe { throw new BizException(message + (errorMessage == null ? "" : ": " + errorMessage)); } } -} \ 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 b4c6751..b050a09 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 @@ -1,10 +1,9 @@ package com.zcloud.primeport.domain.gateway; -import com.zcloud.gbscommon.dahua.cmd.DaHuaAccessRecordCmd; -import com.zcloud.gbscommon.dahua.cmd.DaHuaCarAddCmd; -import com.zcloud.gbscommon.dahua.cmd.DaHuaCarPageCmd; -import com.zcloud.gbscommon.dahua.cmd.DaHuaPersonSyncCmd; -import com.zcloud.gbscommon.dahua.cmd.DaHuaTempVehicleSaveCmd; +import com.zcloud.primeport.domain.model.DaHuaAccessRecordCmd; +import com.zcloud.primeport.domain.model.DaHuaCarAddCmd; +import com.zcloud.primeport.domain.model.DaHuaCarPageCmd; +import com.zcloud.primeport.domain.model.DaHuaPersonSyncCmd; import java.util.List; import java.util.Map; @@ -30,10 +29,4 @@ public interface DaHuaGateway { Map deleteCar(List carNumList); Map queryAccessRecord(DaHuaAccessRecordCmd cmd); - - String uploadPersonImg(String imageBase64); - - 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/dahua/api/DaHuaPersonApi.java b/web-infrastructure/src/main/java/com/zcloud/primeport/dahua/api/DaHuaPersonApi.java index 8109f7a..287f346 100644 --- a/web-infrastructure/src/main/java/com/zcloud/primeport/dahua/api/DaHuaPersonApi.java +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/dahua/api/DaHuaPersonApi.java @@ -25,9 +25,6 @@ public class DaHuaPersonApi { private static final String CAR_PAGE_URL = "/evo-apigw/evo-brm/1.2.0/car/subsystem/page"; private static final String CAR_DELETE_URL = "/evo-apigw/evo-brm/1.0.0/car/delete"; private static final String ACCESS_RECORD_URL = "/evo-apigw/evo-accesscontrol/1.0.0/card/accessControl/swingCardRecord/bycondition/combined"; - private static final String PERSON_UPLOAD_IMG_URL = "/evo-apigw/evo-brm/1.0.0/person/subsystem/third/upload/img"; - private static final String PERSON_SAVE_ALL_URL = "/evo-apigw/evo-brm/1.2.0/person/subsystem/save-person-all"; - private static final String TEMP_VEHICLE_AUDIT_SAVE_URL = "/evo-apigw/evo-brm/1.2.0/person/subsystem/temp-vehicle/audit-save"; public boolean isConfigured() { return daHuaApiClient != null; @@ -134,36 +131,4 @@ public class DaHuaPersonApi { headers.put("Authorization", "bearer " + token); return daHuaApiClient.postJson(ACCESS_RECORD_URL, body, headers); } - - public GeneralResponse uploadPersonImg(String imageBase64) throws ClientException { - if (daHuaApiClient == null) { - return null; - } - String token = daHuaApiClient.getToken(); - Map headers = new HashMap<>(); - headers.put("Authorization", "bearer " + token); - Map body = new HashMap<>(); - body.put("imageBase64", imageBase64); - return daHuaApiClient.postJson(PERSON_UPLOAD_IMG_URL, body, headers); - } - - public GeneralResponse savePersonAll(Map body) throws ClientException { - if (daHuaApiClient == null) { - return null; - } - String token = daHuaApiClient.getToken(); - Map headers = new HashMap<>(); - headers.put("Authorization", "bearer " + token); - return daHuaApiClient.postJson(PERSON_SAVE_ALL_URL, body, headers); - } - - public GeneralResponse saveTempVehicleAudit(Map body) throws ClientException { - if (daHuaApiClient == null) { - return null; - } - String token = daHuaApiClient.getToken(); - Map headers = new HashMap<>(); - headers.put("Authorization", "bearer " + token); - return daHuaApiClient.postJson(TEMP_VEHICLE_AUDIT_SAVE_URL, body, headers); - } -} \ No newline at end of file +}