diff --git a/src/main/java/com/xujie/sys/modules/pms/controller/QcController.java b/src/main/java/com/xujie/sys/modules/pms/controller/QcController.java index 95ffa409..7611ed34 100644 --- a/src/main/java/com/xujie/sys/modules/pms/controller/QcController.java +++ b/src/main/java/com/xujie/sys/modules/pms/controller/QcController.java @@ -1149,6 +1149,15 @@ public class QcController { return R.ok(); } + /** + * 标记FQC工作文件已阅读 + **/ + @PostMapping("/markFQCWorkFileRead") + public R markFQCWorkFileRead(@RequestBody QcFAIRecordData data){ + qcService.markFQCWorkFileRead(data); + return R.ok(); + } + /** * @description: 保存FQC检验记录 * @author: fengyuan_yang @@ -1268,6 +1277,15 @@ public class QcController { return R.ok(); } + /** + * 标记IPQC工作文件已阅读 + **/ + @PostMapping("/markIPQCWorkFileRead") + public R markIPQCWorkFileRead(@RequestBody QcFAIRecordData data){ + qcService.markIPQCWorkFileRead(data); + return R.ok(); + } + /** * @description: 保存IPQC检验记录 * @author: fengyuan_yang diff --git a/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java b/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java index fc0554ce..36bac7d8 100644 --- a/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java +++ b/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java @@ -160,6 +160,10 @@ public class QcFAIRecordData extends QueryPage { private String itemResult; // 主记录提交标识 private String submitFlag; + // 工作文件是否已阅读 Y/N + private String workFileRead; + // 是否存在工作文件(查询计算字段 Y/N) + private String hasWorkFile; // 明细记录提交标识 private String isSubmit; // 默认抽样数 diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java index ae43abee..43deb7ba 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java @@ -280,6 +280,8 @@ public interface QcMapper { void updateIPQCMasterSubmitFlag(QcFAIRecordData data); + void updateIPQCWorkFileRead(QcFAIRecordData data); + void updateIPQCDetailSubmitFlag(QcFAIRecordData data); void updateIPQCSubDetailSubmitFlag(QcFAIRecordData data); @@ -387,6 +389,8 @@ public interface QcMapper { void updateFQCMasterSubmitFlag(QcFAIRecordData qcData); + void updateFQCWorkFileRead(QcFAIRecordData data); + void updateFQCDetailSubmitFlag(QcFAIRecordData qcData); void updateFQCSubDetailSubmitFlag(QcFAIRecordData qcData); diff --git a/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java b/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java index e0a1214f..c6030e4d 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java @@ -2276,6 +2276,15 @@ public class QcServiceImpl implements QcService { return list; } + /** + * 标记FQC工作文件已阅读 + **/ + @Override + @Transactional + public void markFQCWorkFileRead(QcFAIRecordData data) { + qcMapper.updateFQCWorkFileRead(data); + } + /** * 删除FQC检验记录 **/ @@ -2640,6 +2649,15 @@ public class QcServiceImpl implements QcService { return list; } + /** + * 标记IPQC工作文件已阅读 + **/ + @Override + @Transactional + public void markIPQCWorkFileRead(QcFAIRecordData data) { + qcMapper.updateIPQCWorkFileRead(data); + } + /** * 删除IPQC检验记录 **/ diff --git a/src/main/java/com/xujie/sys/modules/pms/service/QcService.java b/src/main/java/com/xujie/sys/modules/pms/service/QcService.java index 5944a3d6..c3a85904 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/QcService.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/QcService.java @@ -171,6 +171,8 @@ public interface QcService { void ipqcRecordDelete(QcFAIRecordData data); + void markIPQCWorkFileRead(QcFAIRecordData data); + void saveIPQCDetailedRecord(QcFAIRecordData data); void saveIPQCSubmitResult(QcFAIRecordData data); @@ -231,6 +233,8 @@ public interface QcService { void fqcRecordDelete(QcFAIRecordData data); + void markFQCWorkFileRead(QcFAIRecordData data); + void saveFQCDetailedRecord(QcFAIRecordData data); void saveFQCSubmitResult(QcFAIRecordData data); diff --git a/src/main/resources/mapper/pms/QcMapper.xml b/src/main/resources/mapper/pms/QcMapper.xml index 7832fa73..f21d01f4 100644 --- a/src/main/resources/mapper/pms/QcMapper.xml +++ b/src/main/resources/mapper/pms/QcMapper.xml @@ -2251,7 +2251,18 @@ isnull(dbo.joint_name2(a.site, a.bu_no, a.inspection_no, 'responsible'), '') as responsiblePersonName, a.pass_qty, a.not_pass_qty, - a.batch_qualified_qty + a.batch_qualified_qty, + isnull(a.work_file_read, 'N') as workFileRead, + CASE WHEN ( + EXISTS (SELECT 1 FROM sys_oss o WHERE o.order_ref1 = a.site AND o.order_ref2 = a.inspection_no AND o.order_ref4 = a.bu_no) + OR EXISTS ( + SELECT 1 + FROM dbo.getSOP_RootPartList(a.site, a.part_no) p + INNER JOIN part_sop s ON p.partNo = s.part_no AND p.site = a.site + WHERE ((s.sop_type ]]> 'TPI') OR (s.sop_type = 'TPI' AND GETDATE() >= s.phase_in_date AND s.phase_out_date >= DATEADD(DAY, -1, GETDATE()) AND s.part_no = a.part_no)) + AND s.sop_status = N'下达' + ) + ) THEN 'Y' ELSE 'N' END as hasWorkFile FROM qc_ipqc_record as a left join part as d on a.site = d.site and a.bu_no = d.sourceBu and a.part_no = d.part_no left join sys_user as u on a.inspector_no = u.username @@ -2412,6 +2423,14 @@ WHERE inspection_no = #{inspectionNo} and item_no = #{itemNo} and site = #{site} and bu_no = #{buNo} + + + UPDATE qc_ipqc_record + SET work_file_read = 'Y' + WHERE site = #{site} and inspection_no = #{inspectionNo} and bu_no = #{buNo} + AND isnull(work_file_read, 'N') ]]> 'Y' + + UPDATE qc_ipqc_record @@ -3013,7 +3032,18 @@ isnull(dbo.joint_name2(a.site, a.bu_no, a.inspection_no, 'responsible'), '') as responsiblePersonName, a.pass_qty, a.not_pass_qty, - a.batch_qualified_qty + a.batch_qualified_qty, + isnull(a.work_file_read, 'N') as workFileRead, + CASE WHEN ( + EXISTS (SELECT 1 FROM sys_oss o WHERE o.order_ref1 = a.site AND o.order_ref2 = a.inspection_no AND o.order_ref4 = a.bu_no) + OR EXISTS ( + SELECT 1 + FROM dbo.getSOP_RootPartList(a.site, a.part_no) p + INNER JOIN part_sop s ON p.partNo = s.part_no AND p.site = a.site + WHERE ((s.sop_type ]]> 'TPI') OR (s.sop_type = 'TPI' AND GETDATE() >= s.phase_in_date AND s.phase_out_date >= DATEADD(DAY, -1, GETDATE()) AND s.part_no = a.part_no)) + AND s.sop_status = N'下达' + ) + ) THEN 'Y' ELSE 'N' END as hasWorkFile FROM qc_fqc_record as a left join part as d on a.site = d.site and a.bu_no = d.sourceBu and a.part_no = d.part_no left join sys_user as u on a.inspector_no = u.username @@ -3206,6 +3236,14 @@ WHERE inspection_no = #{inspectionNo} and item_no = #{itemNo} and site = #{site} and bu_no = #{buNo} + + + UPDATE qc_fqc_record + SET work_file_read = 'Y' + WHERE site = #{site} and inspection_no = #{inspectionNo} and bu_no = #{buNo} + AND isnull(work_file_read, 'N') ]]> 'Y' + + UPDATE qc_fqc_record