扣分下发的规则优化

This commit is contained in:
GUO 2024-05-23 00:32:30 +08:00
parent 114aaa28f4
commit 11f50e0c67
2 changed files with 14 additions and 5 deletions

View File

@ -344,7 +344,6 @@ public class WorkerInfo implements Serializable {
@TableField(exist = false)
@ApiModelProperty(value = "人脸分数")
private java.lang.Integer faceScore;
@TableField(exist = false)
@ApiModelProperty(value = "登记方式1PC录入2手机端录入")
private java.lang.Integer registerType;

View File

@ -24,7 +24,6 @@ import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.async.AsyncHikvision;
import com.zhgd.xmgl.async.AsyncJiLianDa;
import com.zhgd.xmgl.async.AsyncWorker;
import com.zhgd.xmgl.base.entity.vo.SectorVo;
import com.zhgd.xmgl.base.entity.vo.TrendOneVo;
import com.zhgd.xmgl.call.HikvisionCall;
import com.zhgd.xmgl.modules.basicdata.entity.Company;
@ -197,7 +196,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
list = workerInfoMapper.selectWorkerInfoList(page, map);
}
if (list.size() > 0) {
if(MapUtils.getInteger(map, "certificateType") != null) {
if (MapUtils.getInteger(map, "certificateType") != null) {
List<Long> workerIds = list.stream().map(l -> l.getId()).collect(Collectors.toList());
List<WorkerCertificate> workerCertificate = workerCertificateService.list(Wrappers.<WorkerCertificate>lambdaQuery()
.in(WorkerCertificate::getWorkerId, workerIds)
@ -2166,12 +2165,23 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
@Override
public void updateScoreSendAuth(HashMap<String, Object> map) {
workerInfoMapper.updateScore(map);
String id = MapUtils.getString(map, "id");
WorkerInfo old = baseMapper.selectById(id);
workerInfoMapper.updateScore(map);
WorkerInfo workerInfo = baseMapper.selectById(id);
if (notNeedSend(old, workerInfo)) return;
projectUfaceConfigService.updateWorkerInfo(workerInfo, workerInfo);
}
private boolean notNeedSend(WorkerInfo old, WorkerInfo newWi) {
boolean bothRed = NumberUtils.lt(old.getSafeScore(), 80D) && NumberUtils.lt(newWi.getSafeScore(), 80D);
boolean bothNotRed = !NumberUtils.lt(old.getSafeScore(), 80D) && !NumberUtils.lt(newWi.getSafeScore(), 80D);
if ((bothRed || bothNotRed) && Objects.equals(old.getSendSuccessStatus(), 1)) {
return true;
}
return false;
}
@Override
public void updateWorkerById(WorkerInfo workerInfo) {
WorkerInfo old = baseMapper.selectById(workerInfo.getId());
@ -2179,7 +2189,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
throw new OpenAlertException("未找到该记录");
}
updateById(workerInfo);
if (NumberUtils.eq(workerInfo.getSafeScore(), 100D)) {
if (!notNeedSend(old, workerInfo)) {
projectUfaceConfigService.updateWorkerInfo(workerInfo, workerInfo);
}
}