Merge remote-tracking branch 'origin/guoshengxiong' into guoshengxiong

This commit is contained in:
pengjie 2024-07-12 18:31:44 +08:00
commit 0a5fb20365
9 changed files with 91 additions and 12 deletions

View File

@ -82,4 +82,10 @@ public class QualityRectifyRecord implements Serializable {
private String realName; private String realName;
@TableField(exist = false) @TableField(exist = false)
private String createUserName; private String createUserName;
@TableField(exist = false)
@ApiModelProperty(value = "用时")
private String takeTime;
@ApiModelProperty("第一个超期的")
private Boolean overTime;
} }

View File

@ -7,6 +7,6 @@
from quality_rectify_record a from quality_rectify_record a
LEFT JOIN system_user b ON a.create_user=b.user_id LEFT JOIN system_user b ON a.create_user=b.user_id
where a.quality_id=#{qualityId} where a.quality_id=#{qualityId}
ORDER BY a.create_time ORDER BY a.rectify_time
</select> </select>
</mapper> </mapper>

View File

@ -270,6 +270,7 @@ public class QualityInspectionRecordServiceImpl extends ServiceImpl<QualityInspe
public void saveQualityInspectionRecord(QualityInspectionRecord qualityInspectionRecord) { public void saveQualityInspectionRecord(QualityInspectionRecord qualityInspectionRecord) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
qualityInspectionRecord.setCreateTime(df.format(new Date())); qualityInspectionRecord.setCreateTime(df.format(new Date()));
qualityInspectionRecord.setChangeLimitTime(DateUtil.formatDateTime(DateUtil.parse(qualityInspectionRecord.getChangeLimitTime())));
if (Objects.equals(qualityInspectionRecord.getRecordType(), QualityInspectionRecordRecordTypeEnum.RECORD.getValue())) { if (Objects.equals(qualityInspectionRecord.getRecordType(), QualityInspectionRecordRecordTypeEnum.RECORD.getValue())) {
qualityInspectionRecord.setStatus(5); qualityInspectionRecord.setStatus(5);
} }

View File

@ -3,6 +3,8 @@ package com.zhgd.xmgl.modules.quality.service.impl;
import cn.afterturn.easypoi.entity.ImageEntity; import cn.afterturn.easypoi.entity.ImageEntity;
import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
@ -28,6 +30,7 @@ import com.zhgd.xmgl.modules.quality.service.IQualityRectifyRecordService;
import com.zhgd.xmgl.modules.worker.entity.EnterpriseInfo; import com.zhgd.xmgl.modules.worker.entity.EnterpriseInfo;
import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper; import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper;
import com.zhgd.xmgl.push.config.PushPayloads; import com.zhgd.xmgl.push.config.PushPayloads;
import com.zhgd.xmgl.util.TimeUtil;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils; import org.apache.commons.collections.MapUtils;
import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils;
@ -76,7 +79,33 @@ public class QualityRectifyRecordServiceImpl extends ServiceImpl<QualityRectifyR
@Override @Override
public List<QualityRectifyRecord> selectRectifyRecordList(Map<String, Object> map) { public List<QualityRectifyRecord> selectRectifyRecordList(Map<String, Object> map) {
return qualityRectifyRecordMapper.selectRectifyRecordList(map); String qualityId = MapUtils.getString(map, "qualityId");
QualityInspectionRecord inspectionRecord = qualityInspectionRecordMapper.selectById(qualityId);
if (inspectionRecord == null) {
return null;
}
//计算用时和是否超期
List<QualityRectifyRecord> records = qualityRectifyRecordMapper.selectRectifyRecordList(map);
if (CollUtil.isNotEmpty(records)) {
QualityRectifyRecord begin = records.get(0);
begin.setTakeTime(TimeUtil.toDayHourMinSecond(DateUtil.between(DateUtil.parse(begin.getRectifyTime()), DateUtil.parse(inspectionRecord.getInspectTime()), DateUnit.SECOND)));
boolean isOverTime = DateUtil.compare(DateUtil.parse(begin.getRectifyTime()), DateUtil.parse(inspectionRecord.getChangeLimitTime())) > 0;
begin.setOverTime(isOverTime);
if (records.size() > 1) {
for (int i = 1; i < records.size(); i++) {
QualityRectifyRecord record = records.get(i);
long betweenSecond = DateUtil.between(DateUtil.parse(record.getRectifyTime()), DateUtil.parse(records.get(i - 1).getRectifyTime()), DateUnit.SECOND);
record.setTakeTime(TimeUtil.toDayHourMinSecond(betweenSecond));
if (!isOverTime) {
isOverTime = DateUtil.compare(DateUtil.parse(record.getRectifyTime()), DateUtil.parse(inspectionRecord.getChangeLimitTime())) > 0;
record.setOverTime(isOverTime);
} else {
record.setOverTime(false);
}
}
}
}
return records;
} }
@Override @Override

View File

@ -458,8 +458,13 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfo.setInserviceType(1); workerInfo.setInserviceType(1);
workerInfoMapper.insert(workerInfo); workerInfoMapper.insert(workerInfo);
ThreadLocalUtil.addInKey("now", new Date()); ThreadLocalUtil.addInKey("now", new Date());
//同步海康 boolean hikvisionConfig = projectUfaceConfigService.isHikvisionConfig(workerInfo.getProjectSn());
this.addWorkerAndAuthForHikvision(workerInfo); if (hikvisionConfig) {
//同步海康
this.addWorkerAndAuthForHikvision(workerInfo);
} else {
projectUfaceConfigService.addWorkerInfo(workerInfo);
}
//上传住建 //上传住建
asyncWorker.sendWorkerInfoById(workerInfo); asyncWorker.sendWorkerInfoById(workerInfo);
asyncWorker.sendAndOrEditWorkerInfo(workerInfo); asyncWorker.sendAndOrEditWorkerInfo(workerInfo);
@ -529,8 +534,13 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
workerInfo.setSafeScore(oldWorkerInfo.getExitSafeScore()); workerInfo.setSafeScore(oldWorkerInfo.getExitSafeScore());
} }
workerInfoMapper.updateById(workerInfo); workerInfoMapper.updateById(workerInfo);
//同步海康 boolean hikvisionConfig = projectUfaceConfigService.isHikvisionConfig(workerInfo.getProjectSn());
this.editWorkerAndAuthForHikvision(workerInfo, oldWorkerInfo); if (hikvisionConfig) {
//同步海康
this.editWorkerAndAuthForHikvision(workerInfo, oldWorkerInfo);
} else {
projectUfaceConfigService.updateWorkerInfo(workerInfo, oldWorkerInfo);
}
//上传住建 //上传住建
//housingDataCall.sendUpdateWork(workerInfo.getProjectSn(),workerInfo.getId()); //housingDataCall.sendUpdateWork(workerInfo.getProjectSn(),workerInfo.getId());
@ -2578,10 +2588,6 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
@Override @Override
public void editWorkerAndAuthForHikvision(WorkerInfo workerInfo, WorkerInfo oldWorkerInfo) { public void editWorkerAndAuthForHikvision(WorkerInfo workerInfo, WorkerInfo oldWorkerInfo) {
boolean hikvisionConfig = projectUfaceConfigService.isHikvisionConfig(workerInfo.getProjectSn());
if (!hikvisionConfig) {
return;
}
SpringContextUtils.getBean(XzHikvisionSyncMapper.class).delete(new LambdaQueryWrapper<XzHikvisionSync>() SpringContextUtils.getBean(XzHikvisionSyncMapper.class).delete(new LambdaQueryWrapper<XzHikvisionSync>()
.eq(XzHikvisionSync::getBigType, 1) .eq(XzHikvisionSync::getBigType, 1)
.eq(XzHikvisionSync::getWhoId, workerInfo.getId()) .eq(XzHikvisionSync::getWhoId, workerInfo.getId())

View File

@ -83,4 +83,9 @@ public class XzSecurityQualityRectifyRecord implements Serializable {
private String realName; private String realName;
@TableField(exist = false) @TableField(exist = false)
private String createUserName; private String createUserName;
@TableField(exist = false)
@ApiModelProperty(value = "用时")
private String takeTime;
@ApiModelProperty("第一个超期的")
private Boolean overTime;
} }

View File

@ -7,6 +7,6 @@
from xz_security_quality_rectify_record a from xz_security_quality_rectify_record a
LEFT JOIN system_user b ON a.create_user=b.user_id LEFT JOIN system_user b ON a.create_user=b.user_id
where a.quality_id=#{qualityId} where a.quality_id=#{qualityId}
ORDER BY a.create_time ORDER BY a.rectify_time
</select> </select>
</mapper> </mapper>

View File

@ -346,6 +346,7 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl<Xz
public void saveQualityInspectionRecord(XzSecurityQualityInspectionRecord record) { public void saveQualityInspectionRecord(XzSecurityQualityInspectionRecord record) {
SimpleDateFormat df = new SimpleDateFormat(Cts.YYYY_MM_DD_HH_MM_SS); SimpleDateFormat df = new SimpleDateFormat(Cts.YYYY_MM_DD_HH_MM_SS);
record.setCreateTime(df.format(new Date())); record.setCreateTime(df.format(new Date()));
record.setChangeLimitTime(DateUtil.formatDateTime(DateUtil.parse(record.getChangeLimitTime())));
if (Objects.equals(record.getRecordType(), XzSecurityQualityInspectionRecordRecordTypeEnum.RECORD.getValue())) { if (Objects.equals(record.getRecordType(), XzSecurityQualityInspectionRecordRecordTypeEnum.RECORD.getValue())) {
record.setStatus(5); record.setStatus(5);
} }

View File

@ -3,6 +3,8 @@ package com.zhgd.xmgl.modules.xz.security.service.impl;
import cn.afterturn.easypoi.entity.ImageEntity; import cn.afterturn.easypoi.entity.ImageEntity;
import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
@ -14,6 +16,8 @@ import com.gexin.fastjson.JSONArray;
import com.gexin.fastjson.JSONObject; import com.gexin.fastjson.JSONObject;
import com.zhgd.xmgl.call.SanjiangDataCall; import com.zhgd.xmgl.call.SanjiangDataCall;
import com.zhgd.xmgl.modules.basicdata.service.INoticeService; import com.zhgd.xmgl.modules.basicdata.service.INoticeService;
import com.zhgd.xmgl.modules.quality.entity.QualityInspectionRecord;
import com.zhgd.xmgl.modules.quality.entity.QualityRectifyRecord;
import com.zhgd.xmgl.modules.worker.entity.EnterpriseInfo; import com.zhgd.xmgl.modules.worker.entity.EnterpriseInfo;
import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper; import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper;
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord; import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord;
@ -26,6 +30,7 @@ import com.zhgd.xmgl.modules.xz.security.mapper.XzSecurityQualityRectifyRecordMa
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService; import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService;
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityRectifyRecordService; import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityRectifyRecordService;
import com.zhgd.xmgl.push.config.PushPayloads; import com.zhgd.xmgl.push.config.PushPayloads;
import com.zhgd.xmgl.util.TimeUtil;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils; import org.apache.commons.collections.MapUtils;
import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils;
@ -72,7 +77,33 @@ public class XzSecurityQualityRectifyRecordServiceImpl extends ServiceImpl<XzSec
@Override @Override
public List<XzSecurityQualityRectifyRecord> selectRectifyRecordList(Map<String, Object> map) { public List<XzSecurityQualityRectifyRecord> selectRectifyRecordList(Map<String, Object> map) {
return xzSecurityQualityRectifyRecordMapper.selectRectifyRecordList(map); String qualityId = MapUtils.getString(map, "qualityId");
XzSecurityQualityInspectionRecord inspectionRecord = xzSecurityQualityInspectionRecordMapper.selectById(qualityId);
if (inspectionRecord == null) {
return null;
}
//计算用时和是否超期
List<XzSecurityQualityRectifyRecord> records = xzSecurityQualityRectifyRecordMapper.selectRectifyRecordList(map);
if (CollUtil.isNotEmpty(records)) {
XzSecurityQualityRectifyRecord begin = records.get(0);
begin.setTakeTime(TimeUtil.toDayHourMinSecond(DateUtil.between(DateUtil.parse(begin.getRectifyTime()), DateUtil.parse(inspectionRecord.getInspectTime()), DateUnit.SECOND)));
boolean isOverTime = DateUtil.compare(DateUtil.parse(begin.getRectifyTime()), DateUtil.parse(inspectionRecord.getChangeLimitTime())) > 0;
begin.setOverTime(isOverTime);
if (records.size() > 1) {
for (int i = 1; i < records.size(); i++) {
XzSecurityQualityRectifyRecord record = records.get(i);
long betweenSecond = DateUtil.between(DateUtil.parse(record.getRectifyTime()), DateUtil.parse(records.get(i - 1).getRectifyTime()), DateUnit.SECOND);
record.setTakeTime(TimeUtil.toDayHourMinSecond(betweenSecond));
if (!isOverTime) {
isOverTime = DateUtil.compare(DateUtil.parse(record.getRectifyTime()), DateUtil.parse(inspectionRecord.getChangeLimitTime())) > 0;
record.setOverTime(isOverTime);
} else {
record.setOverTime(false);
}
}
}
}
return records;
} }
@Override @Override