diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/ProofingInformationMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/ProofingInformationMapper.java index 3331d0da..89e43fc9 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/ProofingInformationMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/ProofingInformationMapper.java @@ -74,6 +74,8 @@ public interface ProofingInformationMapper extends BaseMapper uploadFilterCacheList = null; @@ -120,7 +124,7 @@ public class ProofingInformationServiceImpl implements ProofingInformationServic // 根据Id拿到旧数据 ProofingInformationData proofingInformationData = proofingInformationMapper.selecProofingOne(data.getProofingId()); boolean issueNeedTrackingSync = shouldSyncTrackingStatusForIssue(data); - // RF/RFID 下达时,NPI 与产品打样记录跟踪必须先对齐同 id 的打样单。 + // RF/RFID 下达时,NPI 与产品打样记录跟踪必须先对齐同 id 的打样单;编码打印分类除外。 if (issueNeedTrackingSync && !proofTrackingExists(data.getProofingId())) { return R.error("产品打样记录跟踪未维护该打样单,请维护后再下达"); } @@ -657,9 +661,24 @@ public class ProofingInformationServiceImpl implements ProofingInformationServic if (data == null || !Objects.equals(data.getType(), 1)) { return false; } + // 分类以项目物料落库值为准,避免前端漏传 dry_wet_type 时误拦下达。 + if (isCodePrintDryWetType(resolveIssueDryWetType(data))) { + return false; + } return isRfOrRfidBuNo(resolveIssueBuNo(data)); } + private String resolveIssueDryWetType(ProofingInformationData data) { + if (data == null || data.getProofingId() == null) { + return ""; + } + return normalizeText(proofingInformationMapper.selectDryWetTypeByProofingId(data.getProofingId())); + } + + private boolean isCodePrintDryWetType(String dryWetType) { + return CODE_PRINT_DRY_WET_TYPE.equals(normalizeText(dryWetType)); + } + private String resolveIssueBuNo(ProofingInformationData data) { String buNo = normalizeText(data.getBuNo()); if (!buNo.isEmpty()) { diff --git a/src/main/resources/mapper/pms/ProofingInformationMapper.xml b/src/main/resources/mapper/pms/ProofingInformationMapper.xml index 9817103a..6946c40f 100644 --- a/src/main/resources/mapper/pms/ProofingInformationMapper.xml +++ b/src/main/resources/mapper/pms/ProofingInformationMapper.xml @@ -47,6 +47,12 @@ FROM plm_proofing_information_tracking WHERE id = #{trackingId} + UPDATE plm_proofing_information_tracking SET proofing_status = #{proofingStatus},