diff --git a/src/main/java/com/xujie/sys/modules/sampletracking/mapper/SampleTrackingMapper.java b/src/main/java/com/xujie/sys/modules/sampletracking/mapper/SampleTrackingMapper.java
index 70493e1e..cce3c5ad 100644
--- a/src/main/java/com/xujie/sys/modules/sampletracking/mapper/SampleTrackingMapper.java
+++ b/src/main/java/com/xujie/sys/modules/sampletracking/mapper/SampleTrackingMapper.java
@@ -107,6 +107,10 @@ public interface SampleTrackingMapper {
@Param("newTrackingId") Integer newTrackingId,
@Param("updateBy") String updateBy);
+ void updateProofTrackingProcessValueTrackingId(@Param("oldTrackingId") Integer oldTrackingId,
+ @Param("newTrackingId") Integer newTrackingId,
+ @Param("updateBy") String updateBy);
+
void updateProofTrackingLogTrackingId(@Param("oldTrackingId") Integer oldTrackingId,
@Param("newTrackingId") Integer newTrackingId);
diff --git a/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleTrackingServiceImpl.java b/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleTrackingServiceImpl.java
index 70b9d192..50b46ac4 100644
--- a/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleTrackingServiceImpl.java
+++ b/src/main/java/com/xujie/sys/modules/sampletracking/service/impl/SampleTrackingServiceImpl.java
@@ -473,7 +473,7 @@ public class SampleTrackingServiceImpl implements SampleTrackingService {
if (Objects.equals(oldTrackingProofingId, newTrackingProofingId)) {
return;
}
- // 打样ID冲突处理除主表外,还要同步维护日志与文档表引用,保证关联关系不断链。
+ // 打样ID冲突处理除主表外,还要同步维护日志、文档、工序明细表引用,保证关联关系不断链。
Integer existedId = sampleTrackingMapper.existsProofTrackingId(newTrackingProofingId);
if (existedId != null && !Objects.equals(existedId, oldTrackingProofingId)) {
Integer replacementId = sampleTrackingMapper.selectNextProofTrackingId();
@@ -485,12 +485,14 @@ public class SampleTrackingServiceImpl implements SampleTrackingService {
sampleTrackingMapper.updateProofTrackingProofingId(newTrackingProofingId, replacementId, operator);
sampleTrackingMapper.updateProofDocumentProofingId(newTrackingProofingId, replacementId, operator);
sampleTrackingMapper.updateProofTrackingId(newTrackingProofingId, replacementId, operator);
+ sampleTrackingMapper.updateProofTrackingProcessValueTrackingId(newTrackingProofingId, replacementId, operator);
sampleTrackingMapper.updateProofTrackingProofingIdByTrackingId(replacementId, replacementId, operator);
}
sampleTrackingMapper.updateProofTrackingLogTrackingId(oldTrackingProofingId, newTrackingProofingId);
sampleTrackingMapper.updateProofTrackingProofingId(oldTrackingProofingId, newTrackingProofingId, operator);
sampleTrackingMapper.updateProofDocumentProofingId(oldTrackingProofingId, newTrackingProofingId, operator);
sampleTrackingMapper.updateProofTrackingId(oldTrackingProofingId, newTrackingProofingId, operator);
+ sampleTrackingMapper.updateProofTrackingProcessValueTrackingId(oldTrackingProofingId, newTrackingProofingId, operator);
}
private void validateProofSyncProjectAndPartAligned(Integer trackingProjectId, Integer trackingProjectPartId) {
diff --git a/src/main/resources/mapper/sampletracking/SampleTrackingMapper.xml b/src/main/resources/mapper/sampletracking/SampleTrackingMapper.xml
index aaf8ffb3..26b2b5dd 100644
--- a/src/main/resources/mapper/sampletracking/SampleTrackingMapper.xml
+++ b/src/main/resources/mapper/sampletracking/SampleTrackingMapper.xml
@@ -667,6 +667,14 @@
WHERE id = #{oldTrackingId}
+
+ UPDATE plm_proofing_process_value
+ SET tracking_id = #{newTrackingId},
+ update_date = GETDATE(),
+ update_by = #{updateBy}
+ WHERE tracking_id = #{oldTrackingId}
+
+
UPDATE plm_proofing_information_tracking_log
SET tracking_id = #{newTrackingId}