diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/specialdiseaseroute/SpecialDiseaseRouteMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/specialdiseaseroute/SpecialDiseaseRouteMapper.java index 990662ec..2f664bda 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/specialdiseaseroute/SpecialDiseaseRouteMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/specialdiseaseroute/SpecialDiseaseRouteMapper.java @@ -142,5 +142,5 @@ public interface SpecialDiseaseRouteMapper { * @param specialDiseaseRoutes 节点信息 * @return int */ - int insertSpecialDiseaseRouteList(@Param("specialDiseaseRoutes") List specialDiseaseRoutes); + int insertSpecialDiseaseRouteList(List specialDiseaseRoutes); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/specialdiseaseroute/impl/SpecialDiseaseRouteServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/specialdiseaseroute/impl/SpecialDiseaseRouteServiceImpl.java index a9e6a695..5000e53e 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/specialdiseaseroute/impl/SpecialDiseaseRouteServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/specialdiseaseroute/impl/SpecialDiseaseRouteServiceImpl.java @@ -420,8 +420,10 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi specialDiseaseRoute.setCreateBy(SecurityUtils.getUsername()); specialDiseaseRoute.setReleaseStatus(ReleaseStatusEnum.UNPUBLISHED.getInfo()); specialDiseaseRoute.setCreateTime(LocalDateTime.now()); + specialDiseaseRoute.setUpdateBy(null); + specialDiseaseRoute.setUpdateTime(null); //判断名称重复 - extracted(specialDiseaseRoute); + extracted(specialDiseaseRoute, id); int routeCount = specialDiseaseRouteMapper.insertSpecialDiseaseRoute(specialDiseaseRoute); if (routeCount <= 0) { log.info("新增主路径失败!"); @@ -454,20 +456,21 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi SpecialDiseaseNodeVO specialDiseaseNodeVO = new SpecialDiseaseNodeVO(); BeanUtils.copyProperties(specialDiseaseNode, specialDiseaseNodeVO); if (specialDiseaseNode.getRouteId().equals(id)) { - specialDiseaseNode.setRouteId(specialDiseaseRoute.getId()); + specialDiseaseNodeVO.setRouteId(specialDiseaseRoute.getId()); + specialDiseaseNodeVO.setRouteName(specialDiseaseRoute.getRouteName()); } else { OriginalSpecialDiseaseRoute originalSpecialDiseaseRoute = childSpecialDiseaseRoute.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getOriginalSpecialDiseaseRouteId()) && specialDiseaseNode.getRouteId().equals(item.getOriginalSpecialDiseaseRouteId())).findFirst().orElse(new OriginalSpecialDiseaseRoute()); - specialDiseaseNode.setRouteId(originalSpecialDiseaseRoute.getId()); + specialDiseaseNodeVO.setRouteId(originalSpecialDiseaseRoute.getId()); + specialDiseaseNodeVO.setRouteName(specialDiseaseNode.getRouteName()); } specialDiseaseNodeVO.setId(null); - specialDiseaseNodeVO.setRouteId(specialDiseaseRoute.getId()); specialDiseaseNodeVO.setRouteCheckStatus(null); specialDiseaseNodeVO.setRouteCheckPerson(null); specialDiseaseNodeVO.setRouteCheckDate(null); specialDiseaseNodeVO.setRouteCheckRemark(null); specialDiseaseNodeVO.setCreateBy(SecurityUtils.getUsername()); specialDiseaseNodeVO.setCreateTime(LocalDateTime.now()); - specialDiseaseNodes.add(specialDiseaseNodeVO); + specialDiseaseNodeList.add(specialDiseaseNodeVO); } int nodeCount = specialDiseaseNodeMapper.insertSpecialDiseaseNodeList(specialDiseaseNodeList); if (nodeCount < 0) { @@ -481,6 +484,7 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi if (CollectionUtils.isNotEmpty(specialDiseaseRoutePackages)) { specialDiseaseRoutePackages.forEach(item -> { item.setId(null); + item.setRouteName(specialDiseaseRoute.getRouteName()); item.setRouteId(specialDiseaseRoute.getId()); item.setCreateBy(SecurityUtils.getUsername()); item.setCreateTime(LocalDateTime.now()); @@ -497,6 +501,7 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi specialDiseaseTriggerConditions.forEach(item -> { item.setId(null); item.setRouteId(specialDiseaseRoute.getId()); + item.setRouteName(specialDiseaseRoute.getRouteName()); item.setCreateBy(SecurityUtils.getUsername()); item.setCreateTime(LocalDateTime.now()); }); @@ -515,13 +520,13 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi * * @param specialDiseaseRoute 路径信息 */ - private void extracted(SpecialDiseaseRoute specialDiseaseRoute) { + private void extracted(SpecialDiseaseRoute specialDiseaseRoute, Long id) { List specialDiseaseRoutes = specialDiseaseRouteMapper.selectCountByName(specialDiseaseRoute.getDepartmentId(), specialDiseaseRoute.getRouteName()); if (CollectionUtils.isNotEmpty(specialDiseaseRoutes)) { - List collect = specialDiseaseRoutes.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getId()) && !specialDiseaseRoute.getId().equals(item.getId())).collect(Collectors.toList()); + List collect = specialDiseaseRoutes.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getId()) && !id.equals(item.getId())).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(collect)) { specialDiseaseRoute.setRouteName(specialDiseaseRoute.getRouteName() + "-副本"); - extracted(specialDiseaseRoute); + extracted(specialDiseaseRoute, id); } } } diff --git a/postdischarge-manage/src/main/resources/mapper/manage/specialdiseasenode/SpecialDiseaseNodeMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/specialdiseasenode/SpecialDiseaseNodeMapper.xml index 33a6b537..5f75c46d 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/specialdiseasenode/SpecialDiseaseNodeMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/specialdiseasenode/SpecialDiseaseNodeMapper.xml @@ -1020,7 +1020,7 @@ script_info_id from special_disease_node where route_id in - + #{specialDiseaseRouteIds}