diff --git a/src/main/java/com/xujie/sys/modules/sampletracking/data/ProofTrackingData.java b/src/main/java/com/xujie/sys/modules/sampletracking/data/ProofTrackingData.java index 20a9b46f..22cdce90 100644 --- a/src/main/java/com/xujie/sys/modules/sampletracking/data/ProofTrackingData.java +++ b/src/main/java/com/xujie/sys/modules/sampletracking/data/ProofTrackingData.java @@ -44,6 +44,12 @@ public class ProofTrackingData extends QueryPage { private String partDesc; @TableField(exist = false) private String customerNo; + /** + * 修改专用物料客户:null 兼容旧接口的共用客户逻辑,空字符串表示清空物料客户。 + * 项目客户仍使用 customerNo;一键创建不使用此字段。 + */ + @TableField(exist = false) + private String partCustomerNo; @TableField(exist = false) private String customerDesc; @TableField(exist = false) diff --git a/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleProofTrackingServiceImpl.java b/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleProofTrackingServiceImpl.java index b31cee8b..44e7baff 100644 --- a/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleProofTrackingServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleProofTrackingServiceImpl.java @@ -455,6 +455,8 @@ public class SampleProofTrackingServiceImpl implements SampleProofTrackingServic return ExportCellAppearance.TRACKING_ON_SCHEDULE; } return ExportCellAppearance.TRACKING_UNKNOWN; + case "importance": + return isImportanceChecked(row.getImportance()) ? ExportCellAppearance.DELIVERY_ALERT : null; case "deliveryVariance": return row.getDeliveryVariance() != null && row.getDeliveryVariance() < -7 ? ExportCellAppearance.DELIVERY_ALERT : null; @@ -1207,6 +1209,10 @@ public class SampleProofTrackingServiceImpl implements SampleProofTrackingServic ProjectPartTrackingData projectPartData = new ProjectPartTrackingData(); BeanUtils.copyProperties(data, projectPartData); + // 修改弹窗允许项目与物料使用不同客户;显式空字符串也必须保存,不能回退项目客户。 + if (data.getPartCustomerNo() != null) { + projectPartData.setCustomerNo(data.getPartCustomerNo().trim()); + } // 与项目信息同理,确保一键修改时 c* 字段不会被拷贝机制吞掉 projectPartData.setcQualityEngineer1(data.getcQualityEngineer1()); projectPartData.setcQualityEngineer2(data.getcQualityEngineer2()); diff --git a/src/main/resources/mapper/sampletracking/SampleProofTrackingMapper.xml b/src/main/resources/mapper/sampletracking/SampleProofTrackingMapper.xml index 1422b69f..54ab7ac5 100644 --- a/src/main/resources/mapper/sampletracking/SampleProofTrackingMapper.xml +++ b/src/main/resources/mapper/sampletracking/SampleProofTrackingMapper.xml @@ -50,7 +50,7 @@ p.project_no, p.project_name, p.project_desc, - p.customer_no, + pp.customer_no, p.bu_no, p.c_project_region, pp.project_manager, @@ -77,7 +77,7 @@ ) latest_delivery_package LEFT JOIN plm_project_info_tracking p ON t.project_id = p.id LEFT JOIN plm_project_part_tracking pp ON t.project_part_id = pp.id - LEFT JOIN plm_customer_information c ON p.site = c.site AND p.customer_no = c.customer_no + LEFT JOIN plm_customer_information c ON pp.site = c.site AND pp.customer_no = c.customer_no p.site in (select site from eam_access_site where username = #{query.userName}) @@ -111,11 +111,17 @@ and UPPER(pp.part_desc) like '%' + UPPER(#{query.partDesc}) + '%' - - and pp.dry_wet_type = #{query.dryWetType} - + + + + and (pp.dry_wet_type IS NULL OR pp.dry_wet_type = '') + + + and pp.dry_wet_type = #{query.dryWetType} + + - and UPPER(p.customer_no) like '%' + UPPER(#{query.customerNo}) + '%' + and UPPER(pp.customer_no) like '%' + UPPER(#{query.customerNo}) + '%' and UPPER(c.customer_desc) like '%' + UPPER(#{query.customerDesc}) + '%' @@ -649,7 +655,7 @@ p.project_no, p.project_name, p.project_desc, - p.customer_no, + pp.customer_no, p.bu_no, pp.test_part_no, pp.part_desc,