|
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.diagbot.client.KnowledgemanServiceClient;
|
|
|
import com.diagbot.client.UserServiceClient;
|
|
|
+import com.diagbot.dto.ConceptBaseDTO;
|
|
|
import com.diagbot.dto.GetQuestionInfoDTO;
|
|
|
import com.diagbot.dto.QuestionDTO;
|
|
|
import com.diagbot.dto.QuestionPageDTO;
|
|
@@ -37,6 +38,7 @@ import com.diagbot.vo.ConceptExistVO;
|
|
|
import com.diagbot.vo.DeleteQuestionVO;
|
|
|
import com.diagbot.vo.GetQuestionIdsByTypeVO;
|
|
|
import com.diagbot.vo.GetQuestionInfoVO;
|
|
|
+import com.diagbot.vo.IndexLexiconVO;
|
|
|
import com.diagbot.vo.QuestionIdsVO;
|
|
|
import com.diagbot.vo.QuestionIndexSubVO;
|
|
|
import com.diagbot.vo.QuestionIndexVO;
|
|
@@ -90,6 +92,8 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
|
|
|
@Autowired
|
|
|
CacheFacade cacheFacade;
|
|
|
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 标签保存
|
|
|
*
|
|
@@ -385,6 +389,7 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
|
|
|
.eq("tag_name", questionInfo.getTagName())
|
|
|
.eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
.eq("type", questionInfo.getType())
|
|
|
+ .ne("tag_type", TagTypeEnum.T8.getKey())
|
|
|
.ne("id", questionInfo.getId() == null ? -1 : questionInfo.getId()));
|
|
|
if (ListUtil.isNotEmpty(questionInfoList)) { //标签type、tagName唯一
|
|
|
throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "标签系统名称已重复,无法建立");
|
|
@@ -724,4 +729,26 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ public List<ConceptBaseDTO> indexByLexiconFac(IndexLexiconVO indexLexiconVO) {
|
|
|
+ RespDTO<List<ConceptBaseDTO>> res = knowledgemanServiceClient.indexByLexiconFac(indexLexiconVO);
|
|
|
+ RespDTOUtil.respNGDeal(res, "【远程调用】搜索概念失败");
|
|
|
+
|
|
|
+ // 过滤已添加的标签
|
|
|
+ List<QuestionInfo> questionInfoList = this.list(new QueryWrapper<QuestionInfo>()
|
|
|
+ .in("tag_name", res.data.stream().map(row -> row.getName()).collect(Collectors.toList()))
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("type", indexLexiconVO.getType())
|
|
|
+ .ne("tag_type", TagTypeEnum.T8.getKey()));
|
|
|
+ List<String> nameExist = questionInfoList.stream().map(row -> row.getTagName()).collect(Collectors.toList());
|
|
|
+ if (ListUtil.isNotEmpty(nameExist)) {
|
|
|
+ for (int i = 0; i < res.data.size(); i++) {
|
|
|
+ if (nameExist.contains(res.data.get(i).getName())) {
|
|
|
+ res.data.remove(i--);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return res.data;
|
|
|
+ }
|
|
|
}
|