Procházet zdrojové kódy

化验公表映射保存时清除缓存

Zhaops před 6 roky
rodič
revize
90c5f0d109

+ 17 - 0
icssman-service/src/main/java/com/diagbot/facade/LisMappingFacade.java

@@ -7,7 +7,9 @@ import com.diagbot.client.UserServiceClient;
 import com.diagbot.dto.LisMappingPageDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.QuestionInfo;
 import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.QuestionTypeEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.LisMappingService;
@@ -41,6 +43,10 @@ public class LisMappingFacade extends LisMappingServiceImpl {
     @Autowired
     @Qualifier("lisMappingServiceImpl")
     private LisMappingService lisMappingService;
+    @Autowired
+    private CacheFacade cacheFacade;
+    @Autowired
+    private QuestionFacade questionFacade;
 
     /**
      * 化验公表映射分页信息
@@ -104,6 +110,17 @@ public class LisMappingFacade extends LisMappingServiceImpl {
         lisMapping.setGmtModified(now);
         lisMapping.setIsDeleted(IsDeleteEnum.N.getKey());
         Boolean state = this.saveOrUpdate(lisMapping);
+
+        //清除缓存
+        QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                eq("type", QuestionTypeEnum.Lis.getKey()).
+                eq("tag_type", 7).
+                eq("name", lisMappingVO.getMealName());
+        QuestionInfo lisQuestion = questionFacade.getOne(questionInfoQueryWrapper);
+        if (lisQuestion != null) {
+            cacheFacade.clearCache(lisQuestion.getId());
+        }
         return state;
     }