Quellcode durchsuchen

缓存清理bug

zhaops vor 5 Jahren
Ursprung
Commit
43f9a6096d

+ 17 - 8
knowledgeman-service/src/main/java/com/diagbot/facade/ConceptFacade.java

@@ -376,6 +376,12 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @return
      */
     public Boolean removeConceptInfo(RemoveConceptInfoVO removeConceptInfoVO) {
+
+        //清理缓存
+        if(removeConceptInfoVO.getConceptId()!=null) {
+            this.cacheClearByConceptId(removeConceptInfoVO.getConceptId());
+        }
+
     	/*StringBuffer sbf = new StringBuffer();
     	
     	QueryWrapper<Medical> medicalQe = new QueryWrapper<Medical>();
@@ -439,9 +445,6 @@ public class ConceptFacade extends ConceptServiceImpl {
             }
         }
 
-        //清理缓存
-        this.cacheClearByConceptId(concept.getId());
-
         concept.setIsDeleted(removeConceptInfoVO.getIsDeleted());
         concept.setModifier(currentUser);
         concept.setGmtModified(now);
@@ -512,6 +515,11 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @return
      */
     public Boolean addConceptInfo(AddConceptInfoVO addConceptInfoVO) {
+        //清理原名称对应标签缓存
+        if(addConceptInfoVO.getConceptId()!=null) {
+            this.cacheClearByConceptId(addConceptInfoVO.getConceptId());
+        }
+
         String lineNumStr = "";
         if (addConceptInfoVO.getLineNum() != null) {
             lineNumStr = "第" + addConceptInfoVO.getLineNum() + "行";
@@ -667,9 +675,6 @@ public class ConceptFacade extends ConceptServiceImpl {
 
         libraryInfoService.saveOrUpdateBatch(saveOrUpdateLibraryInfoList);
 
-        //清理原名称对应标签缓存
-        this.cacheClearByConceptId(conceptId);
-
         concept.setId(conceptId);
         concept.setLibId(libraryInfoMain.getId());
         concept.setLibName(libraryInfoMain.getName());
@@ -1562,12 +1567,16 @@ public class ConceptFacade extends ConceptServiceImpl {
                 .collect(Collectors.toList());
         List<String> itemNames = itemConcepts.stream().map(i -> i.getLibName()).filter(j -> j != null)
                 .distinct().collect(Collectors.toList());
-        mealNames.addAll(lisMappingFacade.getMealNameByItemNames(itemNames));
+        if(ListUtil.isNotEmpty(itemNames)) {
+            mealNames.addAll(lisMappingFacade.getMealNameByItemNames(itemNames));
+        }
         List<Concept> uniqueConcepts = concepts.stream().filter(i -> i.getLibType()
                 .equals(Long.valueOf(LexiconTypeEnum.LIS_TABLES.getKey()))).collect(Collectors.toList());
         List<String> uniqueNames = uniqueConcepts.stream().map(i -> i.getLibName())
                 .filter(j -> j != null).distinct().collect(Collectors.toList());
-        mealNames.addAll(lisMappingFacade.getMealNameByUniqueNames(uniqueNames));
+        if(ListUtil.isNotEmpty(uniqueNames)) {
+            mealNames.addAll(lisMappingFacade.getMealNameByUniqueNames(uniqueNames));
+        }
         mealNames = mealNames.stream().filter(i -> StringUtil.isNotBlank(i)).distinct().collect(Collectors.toList());
 
         if (ListUtil.isNotEmpty(mealNames)) {