移动方法

This commit is contained in:
guoshengxiong 2024-06-05 11:20:04 +08:00
parent 7ac61bb6d0
commit 8e129ca026
7 changed files with 125 additions and 80 deletions

View File

@ -8,6 +8,7 @@ import com.zhgd.xmgl.call.HikvisionCall;
import com.zhgd.xmgl.constant.Cts;
import com.zhgd.xmgl.modules.basicdata.service.INoticeService;
import com.zhgd.xmgl.modules.car.entity.CarInfo;
import com.zhgd.xmgl.modules.car.service.impl.CarInfoServiceImpl;
import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
import com.zhgd.xmgl.modules.video.mapper.ProjectVideoHkVqdMapper;
@ -41,8 +42,12 @@ import java.util.Objects;
@Component
public class AsyncHikvision {
public static final String XZ_HIKVISION_SYNC_TIME = "xzHikvisionSyncTime";
@Lazy
@Autowired
public CarInfoServiceImpl carInfoService;
@Autowired
@Lazy
public
WorkerInfoServiceImpl workerInfoService;
@Autowired
@Lazy
@ -114,13 +119,6 @@ public class AsyncHikvision {
}
}
public void addWorkerForHikvision(WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(1).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(1).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.addWorkerForHikvisionAsync(workerInfo);
}
@Async("hikvisionExecutor")
public void editWorkerForHikvisionAsync(WorkerInfo workerInfo) {
try {
@ -131,13 +129,6 @@ public class AsyncHikvision {
}
}
public void editWorkerForHikvision(WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.editWorkerForHikvisionAsync(workerInfo);
}
private void sendNoticeForWorker(WorkerInfo workerInfo, Exception e, String action) {
String title = action + "人员到海康isc失败";
String type = "23";
@ -158,34 +149,13 @@ public class AsyncHikvision {
@Async("hikvisionExecutor")
public void deleteWorkerForHikvisionAsync(String uniqueId, WorkerInfo workerInfo) {
try {
hikvisionCall.deleteWorkerForHikvision(uniqueId,workerInfo);
hikvisionCall.deleteWorkerForHikvision(uniqueId, workerInfo);
} catch (Exception e) {
log.error("海康:", e);
sendNoticeForWorker(workerInfo, e, "删除");
}
}
public void deleteWorkerForHikvision(String uniqueId, WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(3).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(3).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.deleteWorkerForHikvisionAsync(uniqueId,workerInfo);
}
public void addCarInfoForHikvision(CarInfo carInfo) {
if (carInfo.getIsBlack() == 1) {
deleteCarInfoForHikvision(carInfo, true);
} else {
if (Objects.equals(carInfo.getCarModuleType(), 1)) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
} 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);
}
}
@Async("carInfoExecutor")
public void addCarInfoForHikvisionAsyc(CarInfo carInfo) {
try {
@ -222,23 +192,6 @@ public class AsyncHikvision {
hikvisionCall.updateAllFailStatusIfNullByNow(carInfo.getProjectSn(), carInfo.getId(), 4, getSyncTimeWithInitIfAbsent(2, carInfo.getId()));
}
public void editCarInfoForHikvision(CarInfo carInfo, CarInfo old) {
if (carInfo.getIsBlack() == 1) {
deleteCarInfoForHikvision(carInfo, true);
} else {
if (Objects.equals(carInfo.getCarModuleType(), 1)) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(2).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
} 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())));
}
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);
}
}
@Async("carInfoExecutor")
public void editCarInfoForHikvisionAsync(CarInfo carInfo, CarInfo old) {
try {
@ -249,14 +202,6 @@ public class AsyncHikvision {
}
}
public void deleteCarInfoForHikvision(CarInfo carInfo, boolean isSetBlack) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
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);
}
@Async("carInfoExecutor")
public void deleteCarInfoForHikvisionAsync(CarInfo carInfo, boolean isSetBlack) {
try {
@ -327,7 +272,7 @@ public class AsyncHikvision {
@Async("carInfoExecutor")
public void deleteTeamInfoForHikvision(String id, TeamInfo teamInfo) {
try {
hikvisionCall.deleteTeamInfoForHikvision(id,teamInfo);
hikvisionCall.deleteTeamInfoForHikvision(id, teamInfo);
} catch (Exception e) {
log.error("海康:", e);
sendNoticeForOrg(teamInfo.getTeamName(), e, "删除");
@ -367,7 +312,7 @@ public class AsyncHikvision {
@Async("carInfoExecutor")
public void deleteDepartmentInfoForHikvision(String uniqueId, DepartmentInfo departmentInfo) {
try {
hikvisionCall.deleteDepartmentInfoForHikvision(uniqueId,departmentInfo);
hikvisionCall.deleteDepartmentInfoForHikvision(uniqueId, departmentInfo);
} catch (Exception e) {
log.error("海康:", e);
sendNoticeForOrg(departmentInfo.getDepartmentName(), e, "删除");

View File

@ -2,9 +2,11 @@ package com.zhgd.xmgl.modules.car.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.async.AsyncHikvision;
import com.zhgd.xmgl.modules.car.entity.CarInfo;
import com.zhgd.xmgl.modules.car.entity.vo.CountCarModuleTypeVo;
import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.worker.entity.WorkerInfo;
import java.util.List;
import java.util.Map;
@ -38,4 +40,10 @@ public interface ICarInfoService extends IService<CarInfo> {
CarInfo queryById(String id);
CarInfo queryByCarNumber(String carNumber);
void addCarInfoForHikvision(CarInfo carInfo, AsyncHikvision asyncHikvision);
void deleteCarInfoForHikvision(CarInfo carInfo, boolean isSetBlack);
void editCarInfoForHikvision(CarInfo carInfo, CarInfo old);
}

View File

@ -21,16 +21,21 @@ import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
import com.zhgd.xmgl.modules.worker.mapper.WorkerInfoMapper;
import com.zhgd.xmgl.modules.worker.service.impl.EnterpriseInfoServiceImpl;
import com.zhgd.xmgl.modules.xz.entity.XzHikvisionSync;
import com.zhgd.xmgl.modules.xz.mapper.XzHikvisionSyncMapper;
import com.zhgd.xmgl.util.MessageUtil;
import com.zhgd.xmgl.util.PageUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import static com.zhgd.xmgl.async.AsyncHikvision.getSyncTimeWithInitIfAbsent;
/**
* @Description: 车辆黑白名单管理
* @author pds
@ -41,6 +46,9 @@ import java.util.*;
@Transactional(rollbackFor = Exception.class)
@Slf4j
public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> implements ICarInfoService {
@Lazy
@Autowired
private XzHikvisionSyncMapper xzHikvisionSyncMapper;
@Autowired
CarInfoApprovalFlowMapper carInfoApprovalFlowMapper;
@Autowired
@ -102,7 +110,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
return;
}
if (c.getIsBlack() == 1) {
asyncHikvision.deleteCarInfoForHikvision(old, true);
deleteCarInfoForHikvision(old, true);
} else {
if (old.getIsBlack() == 0 && DateUtil.compare(old.getReserveStartTime(), now) < 0 && DateUtil.compare(old.getReserveEndTime(), now) > 0) {
log.info("车辆在有效期内,不需要更新,车牌号:{}", c.getCarNumber());
@ -114,7 +122,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
carInfoMapper.insert(c);
addCarInfoForApprovalFlowIf(c);
//同步海康
asyncHikvision.addCarInfoForHikvision(c);
addCarInfoForHikvision(c, asyncHikvision);
}
}
@ -204,7 +212,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
}
//同步海康
asyncHikvision.editCarInfoForHikvision(carInfo, old);
editCarInfoForHikvision(carInfo, old);
}
private boolean isReservationType(CarInfo old) {
@ -288,7 +296,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
private void deleteCar(CarInfo carInfo) {
carInfoMapper.deleteById(carInfo.getId());
//同步海康
asyncHikvision.deleteCarInfoForHikvision(carInfo, false);
deleteCarInfoForHikvision(carInfo, false);
}
private void deleteFromApprovalFlowIf(CarInfo carInfo) {
@ -316,4 +324,46 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
public CarInfo queryByCarNumber(String carNumber) {
return baseMapper.queryByCarNumber(carNumber);
}
@Override
public void addCarInfoForHikvision(CarInfo carInfo, AsyncHikvision asyncHikvision) {
if (carInfo.getIsBlack() == 1) {
deleteCarInfoForHikvision(carInfo, true);
} else {
if (Objects.equals(carInfo.getCarModuleType(), 1)) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
} 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);
}
}
@Override
public void deleteCarInfoForHikvision(CarInfo carInfo, boolean isSetBlack) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(3).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
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);
}
@Override
public void editCarInfoForHikvision(CarInfo carInfo, CarInfo old) {
if (carInfo.getIsBlack() == 1) {
deleteCarInfoForHikvision(carInfo, true);
} else {
if (Objects.equals(carInfo.getCarModuleType(), 1)) {
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(4).setOperate(2).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(carInfo.getProjectSn()).setType(5).setOperate(1).setWhoId(carInfo.getId()).setBigType(2).setCreateDate(getSyncTimeWithInitIfAbsent(2, carInfo.getId())));
} 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())));
}
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);
}
}
}

View File

@ -152,4 +152,10 @@ public interface IWorkerInfoService extends IService<WorkerInfo> {
void updateWorkerById(WorkerInfo workerInfo);
void exportQrCode(Map<String, Object> param);
void addWorkerForHikvision(WorkerInfo workerInfo);
void deleteWorkerForHikvision(String uniqueId, WorkerInfo workerInfo);
void editWorkerForHikvision(WorkerInfo workerInfo);
}

View File

@ -37,6 +37,7 @@ import com.zhgd.xmgl.modules.basicdata.service.IDictionaryItemService;
import com.zhgd.xmgl.modules.basicdata.service.UploadFileService;
import com.zhgd.xmgl.modules.basicdata.service.impl.NoticeServiceImpl;
import com.zhgd.xmgl.modules.basicdata.service.impl.SystemUserServiceImpl;
import com.zhgd.xmgl.modules.car.service.impl.CarInfoServiceImpl;
import com.zhgd.xmgl.modules.dangerous.mapper.HiddenDangerInspectRecordMapper;
import com.zhgd.xmgl.modules.govtapi.GovtOpenApiService;
import com.zhgd.xmgl.modules.inspection.mapper.InspectTaskRecordMapper;
@ -53,6 +54,8 @@ import com.zhgd.xmgl.modules.worker.entity.vo.*;
import com.zhgd.xmgl.modules.worker.enums.EduTypeEnum;
import com.zhgd.xmgl.modules.worker.mapper.*;
import com.zhgd.xmgl.modules.worker.service.*;
import com.zhgd.xmgl.modules.xz.entity.XzHikvisionSync;
import com.zhgd.xmgl.modules.xz.mapper.XzHikvisionSyncMapper;
import com.zhgd.xmgl.modules.xz.service.impl.XzSupplierQualificationApplyServiceImpl;
import com.zhgd.xmgl.security.util.SecurityUtils;
import com.zhgd.xmgl.util.*;
@ -62,6 +65,7 @@ import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
@ -77,6 +81,8 @@ import java.util.*;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;
import static com.zhgd.xmgl.async.AsyncHikvision.getSyncTimeWithInitIfAbsent;
/**
* @Description: 劳务人员
* @author pds
@ -87,6 +93,12 @@ import java.util.stream.Collectors;
@Slf4j
@Transactional(rollbackFor = Exception.class)
public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerInfo> implements IWorkerInfoService {
@Lazy
@Autowired
public XzHikvisionSyncMapper xzHikvisionSyncMapper;
@Lazy
@Autowired
public CarInfoServiceImpl carInfoService;
@Autowired
IWorkerSafeEducationWorkerService workerSafeEducationWorkerService;
@Autowired
@ -371,7 +383,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfoMapper.insert(workerInfo);
ThreadLocalUtil.addInKey("now", new Date());
//同步海康
asyncHikvision.addWorkerForHikvision(workerInfo);
addWorkerForHikvision(workerInfo);
projectUfaceConfigService.addWorkerInfo(workerInfo);
//上传住建
asyncWorker.sendWorkerInfoById(workerInfo);
@ -437,7 +449,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
}
workerInfoMapper.updateById(workerInfo);
//同步海康
asyncHikvision.editWorkerForHikvision(workerInfo);
editWorkerForHikvision(workerInfo);
projectUfaceConfigService.updateWorkerInfo(workerInfo, oldWorkerInfo);
//上传住建
@ -491,7 +503,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfoDeleteMapper.insert(entity);
//同步海康
asyncHikvision.deleteWorkerForHikvision(String.valueOf(workerInfo.getId()), workerInfo);
deleteWorkerForHikvision(String.valueOf(workerInfo.getId()), workerInfo);
}
@ -1725,7 +1737,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfo.setId(oldWorkerInfo.getId());
workerInfoMapper.updateById(workerInfo);
//同步海康
asyncHikvision.editWorkerForHikvision(workerInfo);
editWorkerForHikvision(workerInfo);
} else {
String uuid = UUID.randomUUID().toString().replace("-", "").toUpperCase();
workerInfo.setPersonSn(uuid);
@ -1733,7 +1745,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfo.setAttendanceNumber(workerInfo.getIdCard());
workerInfoMapper.insert(workerInfo);
//同步海康
asyncHikvision.addWorkerForHikvision(workerInfo);
addWorkerForHikvision(workerInfo);
}
asyncJiLianDa.saveWorkerInfo(workerInfo);
}
@ -2324,4 +2336,28 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
return number.get();
}
@Override
public void addWorkerForHikvision(WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(1).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(1).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.addWorkerForHikvisionAsync(workerInfo);
}
@Override
public void deleteWorkerForHikvision(String uniqueId, WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(3).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(3).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.deleteWorkerForHikvisionAsync(uniqueId, workerInfo);
}
@Override
public void editWorkerForHikvision(WorkerInfo workerInfo) {
getSyncTimeWithInitIfAbsent(1, workerInfo.getId());
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
asyncHikvision.editWorkerForHikvisionAsync(workerInfo);
}
}

View File

@ -298,11 +298,11 @@ public class XzHikvisionCompareDataServiceImpl extends ServiceImpl<XzHikvisionCo
//查询id是否存在平台存在就更新不存在就删除
if (workerInfo != null) {
//同步海康
asyncHikvision.editWorkerForHikvision(workerInfo);
workerInfoService.editWorkerForHikvision(workerInfo);
} else {
workerInfo = new WorkerInfo();
workerInfo.setWorkerName(data.getWorkerName());
asyncHikvision.deleteWorkerForHikvision(data.getUniqueId(), workerInfo);
workerInfoService.deleteWorkerForHikvision(data.getUniqueId(), workerInfo);
}
} else if (data.getExistIsc() == 0 && data.getExistMyPlatform() == 1) {
//查询id是否存在isc存在就更新不存在就新增
@ -314,10 +314,10 @@ public class XzHikvisionCompareDataServiceImpl extends ServiceImpl<XzHikvisionCo
JSONArray list = HikvisionUtil.getJSONObjectData(rtJo).getJSONArray("list");
if (CollUtil.isEmpty(list)) {
//新增
asyncHikvision.addWorkerForHikvision(workerInfo);
workerInfoService.addWorkerForHikvision(workerInfo);
} else {
//更新
asyncHikvision.editWorkerForHikvision(workerInfo);
workerInfoService.editWorkerForHikvision(workerInfo);
}
} else {
log.error("校验数据同步海康失败,失败原因:{}", rtJo.toJSONString());
@ -333,13 +333,13 @@ public class XzHikvisionCompareDataServiceImpl extends ServiceImpl<XzHikvisionCo
//查询id是否存在平台存在就更新不存在就删除
if (carInfo != null) {
//同步海康
asyncHikvision.editCarInfoForHikvision(carInfo, carInfo);
carInfoService.editCarInfoForHikvision(carInfo, carInfo);
existIsc = true;
} else {
carInfo = new CarInfo();
carInfo.setCarNumber(data.getCarNumber());
carInfo.setProjectSn(data.getProjectSn());
asyncHikvision.deleteCarInfoForHikvision(carInfo, false);
carInfoService.deleteCarInfoForHikvision(carInfo, false);
existIsc = false;
}
compareRetrySuccess(projectInfoBySn, carInfo, existIsc);
@ -355,7 +355,7 @@ public class XzHikvisionCompareDataServiceImpl extends ServiceImpl<XzHikvisionCo
JSONArray list = HikvisionUtil.getJSONObjectData(rtJo).getJSONArray("list");
if (CollUtil.isEmpty(list)) {
//新增
asyncHikvision.addCarInfoForHikvision(carInfo);
carInfoService.addCarInfoForHikvision(carInfo, asyncHikvision);
} else {
//更新
asyncHikvision.editCarInfoForHikvisionAsync(carInfo, carInfo);

View File

@ -90,7 +90,7 @@ public class ExamTask {
carInfoService.removeByIds(carInfos.stream().map(c -> c.getId()).collect(Collectors.toSet()));
for (CarInfo carInfo : carInfos) {
//同步海康
asyncHikvision.deleteCarInfoForHikvision(carInfo, false);
asyncHikvision.carInfoService.deleteCarInfoForHikvision(carInfo, false);
}
}
}