Merge branch 'dev'
commit
2b6aeb7685
|
|
@ -142,22 +142,12 @@ public class DaHuaVehicleSyncExe {
|
||||||
cmd.setValidStartTime(vehicle.getVisitStartTime());
|
cmd.setValidStartTime(vehicle.getVisitStartTime());
|
||||||
cmd.setValidEndTime(vehicle.getVisitEndTime());
|
cmd.setValidEndTime(vehicle.getVisitEndTime());
|
||||||
|
|
||||||
Long departmentId = null;
|
cmd.setDepartmentId(1L);
|
||||||
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);
|
|
||||||
|
|
||||||
DaHuaTempVehicleSaveCmd.CarItem carItem = new DaHuaTempVehicleSaveCmd.CarItem();
|
DaHuaTempVehicleSaveCmd.CarItem carItem = new DaHuaTempVehicleSaveCmd.CarItem();
|
||||||
carItem.setCarNum(vehicle.getLicenceNo());
|
carItem.setCarNum(vehicle.getLicenceNo());
|
||||||
carItem.setCarNumColor(CarEnum.getMenuKeyByPath(vehicle.getLicenceType()));
|
carItem.setCarNumColor(CarEnum.getMenuKeyByPath(vehicle.getLicenceType()));
|
||||||
carItem.setDepartmentId(departmentId);
|
carItem.setDepartmentId(1L);
|
||||||
carItem.setDepartmentName(vehicle.getVehicleDepartmentName());
|
carItem.setDepartmentName(vehicle.getVehicleDepartmentName());
|
||||||
cmd.setCars(Collections.singletonList(carItem));
|
cmd.setCars(Collections.singletonList(carItem));
|
||||||
return cmd;
|
return cmd;
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,23 @@ public class DaHuaServiceImpl implements ZcloudDaHuaFacade {
|
||||||
return SingleResponse.of(id);
|
return SingleResponse.of(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SingleResponse<Map<String, Object>> findPersonByPaperNumber(String paperNumber) {
|
||||||
|
Map<String, Object> 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<String, Object> dhData = (Map<String, Object>) queryResult.get("data");
|
||||||
|
SingleResponse<Map<String, Object>> resp = new SingleResponse<>();
|
||||||
|
resp.setSuccess(dhSuccess != null ? dhSuccess : passed);
|
||||||
|
resp.setErrCode(dhCode);
|
||||||
|
resp.setErrMessage(dhErrMsg);
|
||||||
|
resp.setData(dhData);
|
||||||
|
return resp;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SingleResponse<Object> syncPerson(DaHuaPersonSyncCmd cmd) {
|
public SingleResponse<Object> syncPerson(DaHuaPersonSyncCmd cmd) {
|
||||||
cmd.setDepartmentId(resolveDahuaDeptId(cmd.getDepartmentId()));
|
cmd.setDepartmentId(resolveDahuaDeptId(cmd.getDepartmentId()));
|
||||||
|
|
@ -190,20 +207,20 @@ public class DaHuaServiceImpl implements ZcloudDaHuaFacade {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SingleResponse<Object> saveTempVehicle(DaHuaTempVehicleSaveCmd cmd) {
|
public SingleResponse<Object> saveTempVehicle(DaHuaTempVehicleSaveCmd cmd) {
|
||||||
cmd.setDepartmentId(resolveDahuaDeptId(cmd.getDepartmentId()));
|
cmd.setDepartmentId(1L);
|
||||||
if (cmd.getDepartmentList() != null) {
|
if (cmd.getDepartmentList() != null) {
|
||||||
for (DaHuaTempVehicleSaveCmd.DepartmentItem item : cmd.getDepartmentList()) {
|
for (DaHuaTempVehicleSaveCmd.DepartmentItem item : cmd.getDepartmentList()) {
|
||||||
item.setDepartmentId(resolveDahuaDeptId(item.getDepartmentId()));
|
item.setDepartmentId(1L);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (cmd.getCards() != null) {
|
if (cmd.getCards() != null) {
|
||||||
for (DaHuaTempVehicleSaveCmd.CardItem card : cmd.getCards()) {
|
for (DaHuaTempVehicleSaveCmd.CardItem card : cmd.getCards()) {
|
||||||
card.setDepartmentId(resolveDahuaDeptId(card.getDepartmentId()));
|
card.setDepartmentId(1L);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (cmd.getCars() != null) {
|
if (cmd.getCars() != null) {
|
||||||
for (DaHuaTempVehicleSaveCmd.CarItem car : cmd.getCars()) {
|
for (DaHuaTempVehicleSaveCmd.CarItem car : cmd.getCars()) {
|
||||||
car.setDepartmentId(resolveDahuaDeptId(car.getDepartmentId()));
|
car.setDepartmentId(1L);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Map<String, Object> saveResult = daHuaGateway.saveTempVehicle(cmd);
|
Map<String, Object> saveResult = daHuaGateway.saveTempVehicle(cmd);
|
||||||
|
|
|
||||||
|
|
@ -41,4 +41,6 @@ public interface DaHuaServiceI {
|
||||||
SingleResponse<Object> saveTempVehicle(DaHuaTempVehicleSaveCmd cmd);
|
SingleResponse<Object> saveTempVehicle(DaHuaTempVehicleSaveCmd cmd);
|
||||||
|
|
||||||
SingleResponse<DaHuaResourceSyncResultCO> syncResources(DaHuaResourceSyncCmd cmd);
|
SingleResponse<DaHuaResourceSyncResultCO> syncResources(DaHuaResourceSyncCmd cmd);
|
||||||
|
|
||||||
|
SingleResponse<Map<String, Object>> findPersonByPaperNumber(String paperNumber);
|
||||||
}
|
}
|
||||||
|
|
@ -24,9 +24,9 @@ public class VideoAddCmd extends Command {
|
||||||
@ApiModelProperty(value = "口门/闸机id 外键id ", name = "foreignId", required = true)
|
@ApiModelProperty(value = "口门/闸机id 外键id ", name = "foreignId", required = true)
|
||||||
@NotNull(message = "口门/闸机id 外键id 不能为空")
|
@NotNull(message = "口门/闸机id 外键id 不能为空")
|
||||||
private Long foreignId;
|
private Long foreignId;
|
||||||
@ApiModelProperty(value = "设备类型(1-口门 2-闸机)", name = "deviceType", required = true)
|
// @ApiModelProperty(value = "设备类型(1-口门 2-闸机)", name = "deviceType", required = true)
|
||||||
@NotNull(message = "设备类型(1-口门 2-闸机)不能为空")
|
// @NotNull(message = "设备类型(1-口门 2-闸机)不能为空")
|
||||||
private Integer deviceType;
|
// private Integer deviceType;
|
||||||
@ApiModelProperty(value = "摄像头id", name = "videoResourceId", required = true)
|
@ApiModelProperty(value = "摄像头id", name = "videoResourceId", required = true)
|
||||||
@NotEmpty(message = "摄像头id不能为空")
|
@NotEmpty(message = "摄像头id不能为空")
|
||||||
private String videoResourceId;
|
private String videoResourceId;
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,8 @@ public interface DaHuaGateway {
|
||||||
|
|
||||||
Long findPersonIdByPaperNumber(String paperNumber);
|
Long findPersonIdByPaperNumber(String paperNumber);
|
||||||
|
|
||||||
|
Map<String, Object> findPersonByPaperNumber(String paperNumber);
|
||||||
|
|
||||||
Map<String, Object> syncPerson(DaHuaPersonSyncCmd cmd);
|
Map<String, Object> syncPerson(DaHuaPersonSyncCmd cmd);
|
||||||
|
|
||||||
Map<String, Object> updatePerson(DaHuaPersonSyncCmd cmd);
|
Map<String, Object> updatePerson(DaHuaPersonSyncCmd cmd);
|
||||||
|
|
|
||||||
|
|
@ -107,6 +107,46 @@ public class DaHuaGatewayImpl implements DaHuaGateway {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> findPersonByPaperNumber(String paperNumber) {
|
||||||
|
if (daHuaPersonApi == null || !daHuaPersonApi.isConfigured()) {
|
||||||
|
throw new RuntimeException("大华服务未配置");
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
GeneralResponse response = daHuaPersonApi.getPersonByPaperNumber(paperNumber);
|
||||||
|
Map<String, Object> 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<String, Object> errorResult = new HashMap<>();
|
||||||
|
errorResult.put("passed", false);
|
||||||
|
errorResult.put("success", false);
|
||||||
|
errorResult.put("errMsg", "查询大华人员异常: " + e.getMessage());
|
||||||
|
errorResult.put("data", new HashMap<>());
|
||||||
|
return errorResult;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> syncPerson(DaHuaPersonSyncCmd cmd) {
|
public Map<String, Object> syncPerson(DaHuaPersonSyncCmd cmd) {
|
||||||
if (daHuaPersonApi == null || !daHuaPersonApi.isConfigured()) {
|
if (daHuaPersonApi == null || !daHuaPersonApi.isConfigured()) {
|
||||||
|
|
|
||||||
|
|
@ -120,16 +120,15 @@
|
||||||
corp_info c
|
corp_info c
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT
|
SELECT
|
||||||
COUNT( u.id ) user_count,
|
COUNT( r.id ) user_count,
|
||||||
u.corpinfo_id
|
r.corp_id
|
||||||
FROM
|
FROM
|
||||||
`user` u
|
dahua_access_record r
|
||||||
WHERE
|
WHERE
|
||||||
u.delete_enum = 'FALSE'
|
r.open_type = 3
|
||||||
AND u.main_corp_flag = 0
|
|
||||||
GROUP BY
|
GROUP BY
|
||||||
u.corpinfo_id
|
r.corp_id
|
||||||
) utmp ON c.id = utmp.corpinfo_id
|
) utmp ON c.id = utmp.corp_id
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT
|
SELECT
|
||||||
u.corpinfo_id,
|
u.corpinfo_id,
|
||||||
|
|
@ -148,16 +147,15 @@
|
||||||
) prtmp ON c.id = prtmp.corpinfo_id
|
) prtmp ON c.id = prtmp.corpinfo_id
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT
|
SELECT
|
||||||
va.vehicle_corp_id,
|
r.corp_id,
|
||||||
COUNT(va.id) pub_car_count
|
COUNT(r.id) pub_car_count
|
||||||
FROM
|
FROM
|
||||||
`vehicle_apply` va WHERE va.delete_enum = 'FALSE'
|
dahua_vehicle_access_record r
|
||||||
<if test="params.corpType != null">
|
WHERE
|
||||||
<if test="params.corpType == 1"> and va.vehicle_belong_type in (2,4) </if>
|
r.exit_time IS NOT NULL
|
||||||
<if test="params.corpType == 2"> and va.vehicle_belong_type = 8 </if>
|
|
||||||
</if>
|
|
||||||
GROUP BY
|
GROUP BY
|
||||||
va.vehicle_corp_id) pubtmp on pubtmp.vehicle_corp_id = c.id
|
r.corp_id
|
||||||
|
) pubtmp ON c.id = pubtmp.corp_id
|
||||||
WHERE
|
WHERE
|
||||||
c.delete_enum = 'FALSE'
|
c.delete_enum = 'FALSE'
|
||||||
<if test="params.corpType != null">
|
<if test="params.corpType != null">
|
||||||
|
|
@ -236,4 +234,3 @@
|
||||||
ORDER BY id DESC
|
ORDER BY id DESC
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue