From d5222c7ae76d34cf8a7e32fee1ed15c988c3b330 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 14 三月 2025 20:30:42 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 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..04de82d 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -10,6 +10,7 @@
 import com.smartor.mapper.BaseTagMapper;
 import com.smartor.mapper.PatArchiveMapper;
 import com.smartor.mapper.PatArchivetagMapper;
+import com.smartor.mapper.ServiceSubtaskMapper;
 import com.smartor.service.IPatArchiveService;
 import com.smartor.service.IPatMedInhospService;
 import com.smartor.service.IPatMedOuthospService;
@@ -47,6 +48,9 @@
 public class PatArchiveServiceImpl implements IPatArchiveService {
     @Autowired
     private PatArchiveMapper patArchiveMapper;
+
+    @Autowired
+    private ServiceSubtaskMapper serviceSubtaskMapper;
 
     @Autowired
     private BaseTagMapper baseTagMapper;
@@ -96,6 +100,7 @@
      * @param patArchive 鎮h�呮。妗�
      * @return 缁撴灉
      */
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public Integer insertPatArchive(PatArchive patArchive) {
         patArchive.setCreateTime(DateUtils.getNowDate());
@@ -103,11 +108,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 +149,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())) {

--
Gitblit v1.9.3