From ae086bc3ad6f785e6368b84e57a7e199c675779b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 02 四月 2025 11:42:28 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java | 70 +++++++++++++++++++++++++++++++++-- 1 files changed, 66 insertions(+), 4 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java index 3c03fde..27b10b8 100644 --- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java @@ -7,9 +7,7 @@ import com.ruoyi.common.utils.DtoConversionUtils; import com.ruoyi.common.utils.StringUtils; import com.smartor.domain.*; -import com.smartor.mapper.BaseTagMapper; -import com.smartor.mapper.PatArchiveMapper; -import com.smartor.mapper.PatArchivetagMapper; +import com.smartor.mapper.*; import com.smartor.service.IPatArchiveService; import com.smartor.service.IPatMedInhospService; import com.smartor.service.IPatMedOuthospService; @@ -49,6 +47,9 @@ private PatArchiveMapper patArchiveMapper; @Autowired + private ServiceSubtaskMapper serviceSubtaskMapper; + + @Autowired private BaseTagMapper baseTagMapper; @Autowired @@ -58,7 +59,7 @@ private IPatMedInhospService patMedInhospService; @Autowired - private IPatMedOuthospService patMedOuthospService; + private PatArchivecontactMapper patArchivecontactMapper; @Autowired private IPatMedPhysicalService patMedPhysicalService; @@ -96,6 +97,7 @@ * @param patArchive 鎮h�呮。妗� * @return 缁撴灉 */ + @Transactional(rollbackFor = Exception.class) @Override public Integer insertPatArchive(PatArchive patArchive) { patArchive.setCreateTime(DateUtils.getNowDate()); @@ -103,11 +105,22 @@ return patArchive.getId().intValue(); } + @Transactional(rollbackFor = Exception.class) @Override public Boolean update(PatArchive patArchive) { int i = patArchiveMapper.updatePatArchive(patArchive); if (i != 1) { return false; + } else { + ServiceSubtask serviceSubtask = new ServiceSubtask(); + serviceSubtask.setPatid(patArchive.getId()); + serviceSubtask.setSendname(patArchive.getName()); + serviceSubtask.setPhone(patArchive.getTelcode()); + serviceSubtask.setSex(patArchive.getSex()); + serviceSubtask.setAge(patArchive.getAge()); + serviceSubtask.setSfzh(patArchive.getIdcardno()); + serviceSubtask.setAddr(patArchive.getPlaceOfResidence()); + serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask); } return true; } @@ -133,6 +146,33 @@ //淇敼 patArchiveVO.setIsoperation(2); patArchiveMapper.updatePatArchive(patArchive); + if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) { + //涓嶉渶瑕佹湇鍔′簡锛岄渶瑕侀�氳繃patid鍜宻endstate=2鎴栬�卻endstate=1鍘绘煡璇竴涓嬶紝service_subtask閲屾槸鍚︽湁姝e湪鎵ц鐨勪换鍔★紝鏈夌殑璇濓紝绔嬪嵆鍋滀簡 + ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); + serviceSubtaskVO.setPatid(patArchive.getId()); + serviceSubtaskVO.setSendstate(2L); + List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); + serviceSubtaskVO.setSendstate(1L); + List<ServiceSubtask> serviceSubtaskList1 = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); + if (CollectionUtils.isNotEmpty(serviceSubtaskList)) { + if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList.addAll(serviceSubtaskList1); + } else { + if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList = serviceSubtaskList1; + } + //鍘籸edis涓紝鏌ヨ鏄惁鏈塻ubid锛屾湁鐨勮瘽绉婚櫎cache-exist + if (CollectionUtils.isNotEmpty(serviceSubtaskList)) { + for (ServiceSubtask serviceSubtask : serviceSubtaskList) { + log.error("闇�瑕佺Щ闄ょ殑subId涓猴細{}", serviceSubtask.getId().toString()); + serviceSubtaskMapper.deleteServiceSubtaskById(serviceSubtask.getId()); + redisCache.removeElementFromList("cache-exist", serviceSubtask.getId().toString()); + redisCache.removeElementFromList("cache-0", serviceSubtask.getId().toString()); + redisCache.removeElementFromList("cache-1", serviceSubtask.getId().toString()); + redisCache.removeElementFromList("cache-2", serviceSubtask.getId().toString()); + redisCache.removeElementFromList("cache-3", serviceSubtask.getId().toString()); + redisCache.removeElementFromList("cache-4", serviceSubtask.getId().toString()); + } + } + } } if (CollectionUtils.isNotEmpty(patArchiveVO.getTagList())) { @@ -141,6 +181,22 @@ patArchivetag.setGuid(patArchiveVO.getGuid()); patArchivetag.setOrgid(patArchiveVO.getOrgid()); if (patArchivetag.getIsoperation() != null && patArchivetag.getIsoperation() == 1 || patArchivetag.getIsoperation() == null && patArchiveVO.getIsoperation() == 1) { + //鍒ゆ柇涓�涓媌ase_tag閲屾槸涓嶆槸瀛樺湪锛屽鏋滀笉瀛樺湪锛屽厛鏂板 + BaseTag baseTag = new BaseTag(); + baseTag.setTagname(patArchivetag.getTagname().trim()); + List<BaseTag> baseTags = baseTagMapper.selectBaseTagListByTagname(baseTag); + if (CollectionUtils.isEmpty(baseTags)) { + //鍏堢粰鏀惧埌鏈垎绫讳腑 + baseTag.setTagcategoryid(6L); + baseTag.setOrgid(patArchiveVO.getOrgid()); + baseTag.setDelFlag("0"); + baseTag.setUpdateTime(new Date()); + baseTag.setCreateTime(new Date()); + baseTagMapper.insertBaseTag(baseTag); + patArchivetag.setTagid(baseTag.getTagid()); + } else { + patArchivetag.setTagid(baseTags.get(0).getTagid()); + } //鏂板 patArchivetag.setUpdateBy(null); patArchivetag.setCreateTime(new Date()); @@ -546,6 +602,12 @@ patArchive1.setTagList(stringList.stream().collect(Collectors.toList())); patArchives.add(patArchive1); } + //缁欐偅鑰呰仈绯讳汉璧嬪�� + for (PatArchive pa : patArchives) { + PatArchivecontact patArchivecontact = new PatArchivecontact(); + patArchivecontact.setPatid(pa.getId()); + pa.setPatArchivecontactList(patArchivecontactMapper.selectPatArchivecontactList(patArchivecontact)); + } return patArchives; } -- Gitblit v1.9.3