From 6ad7517a5e6325a28684a5cbca00f28a9045e8e6 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Wed, 24 Jan 2024 14:03:59 +0800 Subject: [PATCH] manage: ConfigPhysicalTool fix --- .../service/impl/PhysicalToolManageServiceImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/PhysicalToolManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/PhysicalToolManageServiceImpl.java index 5702d247..8d7313a7 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/PhysicalToolManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/PhysicalToolManageServiceImpl.java @@ -96,7 +96,8 @@ public class PhysicalToolManageServiceImpl implements PhysicalToolManageService } } // 保存无需部位的正常值(前端要求分开) - if (ObjectUtil.isNotEmpty(physicalToolVO.getNoLocationDefaultPhysicalIndicator())) { + if (ObjectUtil.isNotEmpty(physicalToolVO.getNoLocationDefaultPhysicalIndicator()) + && StrUtil.isNotBlank(physicalToolVO.getNoLocationDefaultPhysicalIndicator().getItemId())) { if (physicalToolVO.getRequireLocation() == 0 && StrUtil.isNotBlank(physicalToolVO.getNoLocationDefaultPhysicalIndicator().getLocationId())) { throw new BusinessException("无需检查位的体格检查项,检查位置必须为空"); } @@ -118,6 +119,8 @@ public class PhysicalToolManageServiceImpl implements PhysicalToolManageService if (nameCount > 0) { throw new BusinessException("体格检查工具类型:" + physicalToolVO.getType() + " 存在重复名称"); } + // 清除旧的体格检查工具的正常值 + defaultPhysicalIndicatorService.lambdaUpdate().eq(DefaultPhysicalIndicator::getItemId, physicalToolVO.getId()).remove(); // 保存体格检查工具的正常值 if (CollUtil.isNotEmpty(physicalToolVO.getDefaultPhysicalIndicatorList())) { List defaultPhysicalIndicatorList = physicalToolVO.getDefaultPhysicalIndicatorList(); @@ -130,7 +133,8 @@ public class PhysicalToolManageServiceImpl implements PhysicalToolManageService } } // 保存无需部位的正常值(前端要求分开) - if (ObjectUtil.isNotEmpty(physicalToolVO.getNoLocationDefaultPhysicalIndicator())) { + if (ObjectUtil.isNotEmpty(physicalToolVO.getNoLocationDefaultPhysicalIndicator()) + && StrUtil.isNotBlank(physicalToolVO.getNoLocationDefaultPhysicalIndicator().getIndicatorValue())) { if (physicalToolVO.getRequireLocation() == 0 && StrUtil.isNotBlank(physicalToolVO.getNoLocationDefaultPhysicalIndicator().getLocationId())) { throw new BusinessException("无需检查位的体格检查项,检查位置必须为空"); }