From f67f76ffebfeb2ca5fa3371907786efb266cc2e0 Mon Sep 17 00:00:00 2001 From: chen <2710907404@qq.com> Date: Tue, 19 Nov 2024 15:35:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=201.=E7=95=99=E7=97=95?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AE=B0=E5=BD=95=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/EntrustAlterApplyServiceImpl.java | 70 +++++++++++++------ 1 file changed, 48 insertions(+), 22 deletions(-) diff --git a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java index 7699968..f440100 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java +++ b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustAlterApplyServiceImpl.java @@ -32,6 +32,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -201,21 +203,49 @@ public class EntrustAlterApplyServiceImpl extends ServiceImpllambdaUpdate().eq(CaseEvent::getId, entrustment.getCaseId()).set(CaseEvent::getCaseBrief, dto.getCaseBrief())); // 添加更新记录 |
代表换行 - updateRecordBuilder.append("操作记录:").append("
该委托案件的案件简要由 [").append(oldCaseInfo.getCaseBrief()).append("] 更改为 [").append(dto.getCaseBrief()).append("] 。"); + updateRecordBuilder.append(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + updateRecordBuilder.append("
案件更新记录:").append("
该委托案件的案件简要由 [").append(oldCaseInfo.getCaseBrief()).append("] 更改为 [").append(dto.getCaseBrief()).append("] 。"); // 2.修改检材 信息 // 这里之所以要取未更新前的信息是为了留痕 Map oldInfoMap = entrustmentIdentificationMaterialService.list(Wrappers.lambdaQuery() - .eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustmentId) + .eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustId) .orderByAsc(EntrustmentIdentificationMaterial::getOrderNo)) .stream().collect(Collectors.toMap(EntrustmentIdentificationMaterial::getId, Function.identity())); - List materialList = dto.getMaterialList(); + + List entrustmentIdentificationMaterialList = processUpdateEntrustMaterialInfo( + dto.getMaterialList(), + oldInfoMap, + updateRecordBuilder + ); + entrustmentIdentificationMaterialService.updateBatchById(entrustmentIdentificationMaterialList); + // 3. 更新委托鉴定要求 + updateEntrustmentRequirement(entrustment, dto.getEntrustRequirement(), updateRecordBuilder); + // 如果确认完成,则删除鉴定事项确认书和委托书,并更新申请状态为已完成 + if (dto.getFinished()) { + // 4.删除鉴定事项确认书和委托书 + deleteConfirmEntrustLetter(entrustment.getEntrustmentNo(), entrustId); + } + return super.update(Wrappers.lambdaUpdate().eq(EntrustAlterApply::getId, dto.getId()) + .set(EntrustAlterApply::getUpdateRecord, updateRecordBuilder.toString()) + .set(dto.getFinished(), EntrustAlterApply::getStatus, EntrustAlterApplyStatus.FINISHED.getStatus())); + } + + /** + * 处理更新委托鉴定检材信息 + * + * @param materialList 待更新的材料DTO列表 + * @param oldInfoMap 旧的委托鉴定材料信息映射表,key为材料ID,value为对应的委托鉴定材料对象 + * @param updateRecordBuilder 更新记录构建器,用于构建更新记录 + * @return 更新后的委托鉴定材料对象列表 + */ + private List processUpdateEntrustMaterialInfo(List materialList, Map oldInfoMap, StringBuilder updateRecordBuilder) { Integer index = 1; List entrustmentIdentificationMaterialList = new ArrayList<>(); for (MaterialDTO item : materialList) { @@ -273,17 +303,7 @@ public class EntrustAlterApplyServiceImpl extends ServiceImpllambdaUpdate().eq(EntrustAlterApply::getId, dto.getId()) - .set(EntrustAlterApply::getUpdateRecord, updateRecordBuilder.toString()) - .set(dto.getFinished(), EntrustAlterApply::getStatus, EntrustAlterApplyStatus.FINISHED.getStatus())); + return entrustmentIdentificationMaterialList; } /** @@ -306,16 +326,17 @@ public class EntrustAlterApplyServiceImpl extends ServiceImpl鉴定要求更新记录:").append("
原鉴定要求 [").append(entrustment.getEntrustRequirement()).append("] 修改为 [").append(entrustRequirement).append("]。"); } else { List renewList = entrustmentIdentificationMaterialService.list(Wrappers.lambdaQuery() - .eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustmentId) + .eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustment.getId()) .orderByAsc(EntrustmentIdentificationMaterial::getOrderNo)); entrustment.setEntrustRequirement(entrustmentService.buildEntrustReq(renewList)); } @@ -348,10 +369,12 @@ public class EntrustAlterApplyServiceImpl extends ServiceImpl"); + } return entrustment; }