海康状态下发修改
This commit is contained in:
parent
fa165d9c40
commit
dca2ac1a68
@ -111,6 +111,7 @@ public class AsyncHikvision {
|
||||
if (SecurityUtils.getUser() != null && SecurityUtils.getUser().getUserId() != null) {
|
||||
noticeService.addUserNotice(SecurityUtils.getUser().getUserId(), msg, title, type);
|
||||
}
|
||||
hikvisionCall.updateFailStatusByNow(workerInfo.getProjectSn(), workerInfo.getId(), 1, ThreadLocalUtil.getNotNull().getDate("now"));
|
||||
}
|
||||
|
||||
@Async("hikvisionExecutor")
|
||||
@ -167,6 +168,7 @@ public class AsyncHikvision {
|
||||
if (SecurityUtils.getUser() != null && SecurityUtils.getUser().getUserId() != null) {
|
||||
noticeService.addUserNotice(SecurityUtils.getUser().getUserId(), msg, title, type);
|
||||
}
|
||||
hikvisionCall.updateFailStatusByNow(carInfo.getProjectSn(), carInfo.getId(), 4, ThreadLocalUtil.getNotNull().getDate("now"));
|
||||
}
|
||||
|
||||
public void editCarInfoForHikvision(CarInfo carInfo, CarInfo old) {
|
||||
|
||||
@ -31,8 +31,8 @@ import com.zhgd.xmgl.modules.car.service.impl.CarPassRecordServiceImpl;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.entity.FrontierProtectionNoNetData;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.entity.FrontierProtectionNoNetDev;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.mapper.FrontierProtectionNoNetDevMapper;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.service.impl.FrontierProtectionNoNetDataServiceImpl;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.service.IFrontierProtectionNoNetDevService;
|
||||
import com.zhgd.xmgl.modules.frontierprotectionnonet.service.impl.FrontierProtectionNoNetDataServiceImpl;
|
||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
@ -1173,7 +1173,17 @@ public class HikvisionCall {
|
||||
}
|
||||
}
|
||||
|
||||
private void updateSuccessStatusByNow(String projectSn, Long whoId, Integer type, Integer operate, Date now, String deviceSn) {
|
||||
public void updateFailStatusByNow(String projectSn, Long whoId, Integer type, Date now) {
|
||||
xzHikvisionSyncMapper.update(null, new LambdaUpdateWrapper<XzHikvisionSync>()
|
||||
.set(XzHikvisionSync::getIsSuccess, 0)
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
.eq(XzHikvisionSync::getCreateDate, now)
|
||||
);
|
||||
updateTotalStatus(projectSn, whoId, type, now);
|
||||
}
|
||||
|
||||
public void updateSuccessStatusByNow(String projectSn, Long whoId, Integer type, Integer operate, Date now, String deviceSn) {
|
||||
LambdaQueryWrapper<XzHikvisionSync> queryWrapper = new LambdaQueryWrapper<XzHikvisionSync>()
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
@ -1192,60 +1202,37 @@ public class HikvisionCall {
|
||||
xzHikvisionSync.setIsSuccess(1);
|
||||
xzHikvisionSyncMapper.updateById(xzHikvisionSync);
|
||||
|
||||
updateTotalStatus(projectSn, whoId, type, now);
|
||||
}
|
||||
|
||||
private void updateTotalStatus(String projectSn, Long whoId, Integer type, Date now) {
|
||||
List<XzHikvisionSync> xzHikvisionSyncs = xzHikvisionSyncMapper.selectList(new LambdaQueryWrapper<XzHikvisionSync>()
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
.eq(XzHikvisionSync::getCreateDate, now)
|
||||
);
|
||||
Integer sendSuccessStatus = null;
|
||||
if (xzHikvisionSyncs.stream().allMatch(xzHikvisionSync1 -> Objects.equals(xzHikvisionSync1.getIsSuccess(), 1))) {
|
||||
sendSuccessStatus = 1;
|
||||
} else if (xzHikvisionSyncs.stream().allMatch(xzHikvisionSync1 -> Objects.equals(xzHikvisionSync1.getIsSuccess(), 0))) {
|
||||
sendSuccessStatus = 2;
|
||||
} else if (xzHikvisionSyncs.stream().allMatch(xzHikvisionSync1 -> xzHikvisionSync1.getIsSuccess() == null)) {
|
||||
sendSuccessStatus = null;
|
||||
} else {
|
||||
sendSuccessStatus = 3;
|
||||
}
|
||||
if (type >= 4) {
|
||||
Integer fail = getFailOrSucCount(projectSn, whoId, now, 0);
|
||||
if (fail == 0) {
|
||||
carInfoMapper.update(null, new LambdaUpdateWrapper<CarInfo>()
|
||||
.eq(CarInfo::getId, whoId)
|
||||
.set(CarInfo::getSendSuccessStatus, 1)
|
||||
.set(CarInfo::getSendSuccessStatus, sendSuccessStatus)
|
||||
);
|
||||
} else {
|
||||
Integer sc = getFailOrSucCount(projectSn, whoId, now, 1);
|
||||
if (sc == 0) {
|
||||
carInfoMapper.update(null, new LambdaUpdateWrapper<CarInfo>()
|
||||
.eq(CarInfo::getId, whoId)
|
||||
.set(CarInfo::getSendSuccessStatus, 2)
|
||||
);
|
||||
} else {
|
||||
carInfoMapper.update(null, new LambdaUpdateWrapper<CarInfo>()
|
||||
.eq(CarInfo::getId, whoId)
|
||||
.set(CarInfo::getSendSuccessStatus, 3)
|
||||
);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
Integer fail = getFailOrSucCount(projectSn, whoId, now, 0);
|
||||
if (fail == 0) {
|
||||
workerInfoMapper.update(null, new LambdaUpdateWrapper<WorkerInfo>()
|
||||
.eq(WorkerInfo::getId, whoId)
|
||||
.set(WorkerInfo::getSendSuccessStatus, 1)
|
||||
);
|
||||
} else {
|
||||
Integer sc = getFailOrSucCount(projectSn, whoId, now, 1);
|
||||
if (sc == 0) {
|
||||
workerInfoMapper.update(null, new LambdaUpdateWrapper<WorkerInfo>()
|
||||
.eq(WorkerInfo::getId, whoId)
|
||||
.set(WorkerInfo::getSendSuccessStatus, 2)
|
||||
);
|
||||
} else {
|
||||
workerInfoMapper.update(null, new LambdaUpdateWrapper<WorkerInfo>()
|
||||
.eq(WorkerInfo::getId, whoId)
|
||||
.set(WorkerInfo::getSendSuccessStatus, 3)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private Integer getFailOrSucCount(String projectSn, Long whoId, Date now, int val) {
|
||||
Integer fail = xzHikvisionSyncMapper.selectCount(new LambdaQueryWrapper<XzHikvisionSync>()
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
.eq(XzHikvisionSync::getCreateDate, now)
|
||||
.eq(XzHikvisionSync::getIsSuccess, val)
|
||||
);
|
||||
return fail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑人脸
|
||||
|
||||
@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.car.service.impl;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@ -17,7 +18,6 @@ import com.zhgd.xmgl.modules.car.mapper.*;
|
||||
import com.zhgd.xmgl.modules.car.service.ICarInfoService;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.WorkerInfoMapper;
|
||||
import com.zhgd.xmgl.modules.worker.service.impl.EnterpriseInfoServiceImpl;
|
||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
||||
import com.zhgd.xmgl.util.MessageUtil;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -134,6 +134,9 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
|
||||
private void editCar(CarInfo carInfo) {
|
||||
CarInfo old = carInfoMapper.selectById(carInfo.getId());
|
||||
carInfoMapper.updateById(carInfo);
|
||||
carInfoMapper.update(null, new LambdaUpdateWrapper<CarInfo>()
|
||||
.set(CarInfo::getSendSuccessStatus, null)
|
||||
.eq(CarInfo::getId, carInfo.getId()));
|
||||
|
||||
//同步海康
|
||||
asyncHikvision.editCarInfoForHikvision(carInfo, old);
|
||||
|
||||
@ -14,6 +14,7 @@ import cn.hutool.poi.excel.ExcelWriter;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@ -433,6 +434,10 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
|
||||
}
|
||||
WorkerInfo oldWorkerInfo = workerInfoMapper.selectById(workerInfo.getId());
|
||||
workerInfoMapper.updateById(workerInfo);
|
||||
workerInfoMapper.update(null, new LambdaUpdateWrapper<WorkerInfo>()
|
||||
.set(WorkerInfo::getSendSuccessStatus, null)
|
||||
.eq(WorkerInfo::getId, workerInfo.getId())
|
||||
);
|
||||
//同步海康
|
||||
asyncHikvision.editWorkerForHikvision(workerInfo);
|
||||
|
||||
|
||||
@ -121,18 +121,14 @@ public class XzHikvisionSyncServiceImpl extends ServiceImpl<XzHikvisionSyncMappe
|
||||
String devName = xzHikvisionSync.getDevName();
|
||||
String deviceSn = xzHikvisionSync.getDeviceSn();
|
||||
if (StrUtil.isBlank(deviceSn)) {
|
||||
xzHikvisionSync.setDetail(StrUtil.format("{}{}到ISC{}", getOperateName(operate, type), getTypeName(type), getIsSuccessName(isSuccess)));
|
||||
xzHikvisionSync.setDetail(StrUtil.format("{}{}到ISC", getOperateName(operate, type), getTypeName(type)));
|
||||
} else {
|
||||
xzHikvisionSync.setDetail(StrUtil.format("{}{}到{}{}", getOperateNameForDev(operate), getTypeName(type), devName, getIsSuccessName(isSuccess)));
|
||||
xzHikvisionSync.setDetail(StrUtil.format("{}{}到{}", getOperateNameForDev(operate), getTypeName(type), devName));
|
||||
}
|
||||
}
|
||||
return newestList;
|
||||
}
|
||||
|
||||
private String getIsSuccessName(Integer isSuccess) {
|
||||
return isSuccess == 1 ? "成功" : "失败";
|
||||
}
|
||||
|
||||
private String getTypeName(Integer type) {
|
||||
switch (type) {
|
||||
case 1:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user