diff --git a/src/main/java/digital/laboratory/platform/entrustment/service/impl/AcceptServiceImpl.java b/src/main/java/digital/laboratory/platform/entrustment/service/impl/AcceptServiceImpl.java index 60a1940..c715bb9 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/service/impl/AcceptServiceImpl.java +++ b/src/main/java/digital/laboratory/platform/entrustment/service/impl/AcceptServiceImpl.java @@ -11,6 +11,7 @@ import digital.laboratory.platform.entrustment.service.AcceptService; import digital.laboratory.platform.entrustment.service.EntrustmentIdentificationMaterialService; import digital.laboratory.platform.entrustment.service.EntrustmentService; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; @@ -34,6 +35,7 @@ public class AcceptServiceImpl implements AcceptService { * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Boolean alertMaterialAcceptNo(EntrustmentIdentificationMaterial material) { EntrustmentIdentificationMaterial identificationMaterial = entrustmentIdentificationMaterialService.getById(material.getId()); if (identificationMaterial == null) { @@ -70,6 +72,12 @@ public class AcceptServiceImpl implements AcceptService { } if (entrustmentIdentificationMaterialService.update(Wrappers.lambdaUpdate() .eq(EntrustmentIdentificationMaterial::getId, material.getId()).set(EntrustmentIdentificationMaterial::getAcceptNo, materialAcceptNo))) { + // 更新成功后,判断委托的受理编号是否和修改的检材受理后一致,不一致则更新 + if (!entrustAcceptNo.equals(entrustment.getAcceptNo())) { + entrustmentService.update(Wrappers.lambdaUpdate() + .eq(Entrustment::getId, entrustment.getId()) + .set(Entrustment::getAcceptNo, entrustAcceptNo)); + } // 查询该委托下面的其他已经受理的检材 List materialList = entrustmentIdentificationMaterialService.list(Wrappers.lambdaQuery() .eq(EntrustmentIdentificationMaterial::getEntrustmentId, identificationMaterial.getEntrustmentId())