From 5f10511b14e0df185ba3ddce65eacc8b78190bca Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Fri, 12 Jul 2024 17:10:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=B4=A8=E9=87=8F=E5=92=8C?= =?UTF-8?q?=E5=AE=89=E5=85=A8=E7=9A=84=E7=94=A8=E6=97=B6=E5=92=8C=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E8=B6=85=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../quality/entity/QualityRectifyRecord.java | 6 ++++ .../mapper/xml/QualityRectifyRecordMapper.xml | 2 +- .../QualityInspectionRecordServiceImpl.java | 1 + .../impl/QualityRectifyRecordServiceImpl.java | 31 ++++++++++++++++- .../XzSecurityQualityRectifyRecord.java | 5 +++ .../XzSecurityQualityRectifyRecordMapper.xml | 2 +- ...ityQualityInspectionRecordServiceImpl.java | 1 + ...curityQualityRectifyRecordServiceImpl.java | 33 ++++++++++++++++++- 8 files changed, 77 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRectifyRecord.java b/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRectifyRecord.java index 566ec0553..5651a13ac 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRectifyRecord.java +++ b/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRectifyRecord.java @@ -82,4 +82,10 @@ public class QualityRectifyRecord implements Serializable { private String realName; @TableField(exist = false) private String createUserName; + @TableField(exist = false) + @ApiModelProperty(value = "用时") + private String takeTime; + @ApiModelProperty("第一个超期的") + private Boolean overTime; + } diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityRectifyRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityRectifyRecordMapper.xml index 248594428..febbc248e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityRectifyRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityRectifyRecordMapper.xml @@ -7,6 +7,6 @@ from quality_rectify_record a LEFT JOIN system_user b ON a.create_user=b.user_id where a.quality_id=#{qualityId} - ORDER BY a.create_time + ORDER BY a.rectify_time diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java index 9a3c42482..754c16796 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityInspectionRecordServiceImpl.java @@ -270,6 +270,7 @@ public class QualityInspectionRecordServiceImpl extends ServiceImpl selectRectifyRecordList(Map map) { - return qualityRectifyRecordMapper.selectRectifyRecordList(map); + String qualityId = MapUtils.getString(map, "qualityId"); + QualityInspectionRecord inspectionRecord = qualityInspectionRecordMapper.selectById(qualityId); + if (inspectionRecord == null) { + return null; + } + //计算用时和是否超期 + List 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 diff --git a/src/main/java/com/zhgd/xmgl/modules/xz.security/entity/XzSecurityQualityRectifyRecord.java b/src/main/java/com/zhgd/xmgl/modules/xz.security/entity/XzSecurityQualityRectifyRecord.java index 578438064..dc1be625c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz.security/entity/XzSecurityQualityRectifyRecord.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz.security/entity/XzSecurityQualityRectifyRecord.java @@ -83,4 +83,9 @@ public class XzSecurityQualityRectifyRecord implements Serializable { private String realName; @TableField(exist = false) private String createUserName; + @TableField(exist = false) + @ApiModelProperty(value = "用时") + private String takeTime; + @ApiModelProperty("第一个超期的") + private Boolean overTime; } diff --git a/src/main/java/com/zhgd/xmgl/modules/xz.security/mapper/xml/XzSecurityQualityRectifyRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/xz.security/mapper/xml/XzSecurityQualityRectifyRecordMapper.xml index a035479d3..2ddde8094 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz.security/mapper/xml/XzSecurityQualityRectifyRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/xz.security/mapper/xml/XzSecurityQualityRectifyRecordMapper.xml @@ -7,6 +7,6 @@ from xz_security_quality_rectify_record a LEFT JOIN system_user b ON a.create_user=b.user_id where a.quality_id=#{qualityId} - ORDER BY a.create_time + ORDER BY a.rectify_time diff --git a/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java index f53a35d05..36e0376b3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityQualityInspectionRecordServiceImpl.java @@ -346,6 +346,7 @@ public class XzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl selectRectifyRecordList(Map map) { - return xzSecurityQualityRectifyRecordMapper.selectRectifyRecordList(map); + String qualityId = MapUtils.getString(map, "qualityId"); + XzSecurityQualityInspectionRecord inspectionRecord = xzSecurityQualityInspectionRecordMapper.selectById(qualityId); + if (inspectionRecord == null) { + return null; + } + //计算用时和是否超期 + List 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