提交 6e3bfa58 作者: obcy

Merge remote-tracking branch 'origin/master'

......@@ -32,8 +32,7 @@ public class KnowInterceptor implements HandlerInterceptor {
// 返回true才会继续执行后续的Interceptor和Controller
// 返回false则取消当前请求
if (!request.getRequestURI().contains("js") && !request.getRequestURI().contains("css") //&& !request.getRequestURI().contains("edit")
&& !request.getRequestURI().contains("callback") && !request.getRequestURI().contains("download")
if (!request.getRequestURI().contains("js") && !request.getRequestURI().contains("css")
&& !request.getRequestURI().contains("favicon")
&& !request.getRequestURI().contains("api/file")
) {
......
......@@ -3,12 +3,14 @@ package com.zzsn.knowbase.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zzsn.knowbase.entity.KbAuthorizedUser;
import com.zzsn.knowbase.entity.KnowFile;
import com.zzsn.knowbase.entity.Knowledge;
import com.zzsn.knowbase.service.IKnowledgeService;
import com.zzsn.knowbase.service.ILocalFileService;
import com.zzsn.knowbase.util.DocUtil;
import com.zzsn.knowbase.util.HttpUtil;
import com.zzsn.knowbase.util.SpringContextUtils;
import com.zzsn.knowbase.vo.IntelligentQaParam;
import com.zzsn.knowbase.vo.KnowledgeParam;
import com.zzsn.knowbase.vo.KnowledgeVO;
......@@ -98,17 +100,18 @@ public class KnowledgeController {
MultipartHttpServletRequest multipartRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class);
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
List<Result<KnowFile>> resultList = localFileService.upload(fileMap);
CompletableFuture.runAsync(()-> this.add(resultList,knowledge));
KbAuthorizedUser userInfo = SpringContextUtils.getUserInfo();
CompletableFuture.runAsync(()-> this.add(resultList,knowledge,userInfo));
return Result.OK("添加成功!");
}
private void add(List<Result<KnowFile>> resultList, Knowledge knowledge){
private void add(List<Result<KnowFile>> resultList, Knowledge knowledge,KbAuthorizedUser userInfo){
if (null == resultList || resultList.isEmpty()) {
return ;
}
for (Result<KnowFile> knowFileResult : resultList) {
knowledge.setId(null);
knowledgeService.addKnowledge(knowFileResult.getResult(), knowledge);
knowledgeService.addKnowledge(knowFileResult.getResult(), knowledge,userInfo);
}
}
......
package com.zzsn.knowbase.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zzsn.knowbase.entity.KbAuthorizedUser;
import com.zzsn.knowbase.entity.KnowFile;
import com.zzsn.knowbase.entity.Knowledge;
import com.zzsn.knowbase.vo.KnowledgeParam;
import com.zzsn.knowbase.vo.KnowledgeVO;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @Description: 知识服务
* @Author: chenshiqiang
......@@ -20,20 +18,21 @@ public interface IKnowledgeService {
/**
* 新增
*/
void addKnowledge(KnowFile knowFile, Knowledge knowledge);
void addKnowledge(KnowFile knowFile, Knowledge knowledge, KbAuthorizedUser userInfo);
/**
* 修改
*/
void updateKnowledge(Knowledge knowledge) ;
void updateKnowledge(Knowledge knowledge);
/**
* 删除
*/
void deleteKnowledge(String ids) ;
void deleteKnowledge(String ids);
/**
* 分页检索
*
* @param knowledgeParam
* @param pageNo
* @param pageSize
......
......@@ -16,6 +16,7 @@ import com.zzsn.knowbase.service.KbKnowledgeProjectService;
import com.zzsn.knowbase.util.*;
import com.zzsn.knowbase.vo.KnowledgeParam;
import com.zzsn.knowbase.vo.KnowledgeVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.lucene.search.join.ScoreMode;
......@@ -37,7 +38,6 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.io.Serializable;
import java.util.*;
import java.util.stream.Collectors;
......@@ -47,6 +47,7 @@ import java.util.stream.Collectors;
* @Version: V1.0
*/
@Service
@Slf4j
class KnowledgeServiceImpl implements IKnowledgeService {
@Autowired
private RestHighLevelClient client;
......@@ -70,8 +71,7 @@ class KnowledgeServiceImpl implements IKnowledgeService {
@Override
public void addKnowledge(KnowFile knowFile, Knowledge knowledge) {
KbAuthorizedUser userInfo = SpringContextUtils.getUserInfo();
public void addKnowledge(KnowFile knowFile, Knowledge knowledge, KbAuthorizedUser userInfo) {
knowledge.setAuthor(userInfo.getName());
if (null == knowledge.getId()) {
knowledge.setId(codeGenerateUtil.geneIdNo(Constants.FINANCE, 8));
......@@ -96,19 +96,33 @@ class KnowledgeServiceImpl implements IKnowledgeService {
} catch (IOException e) {
e.printStackTrace();
}
if (!contentStringList.isEmpty()) {
boolean mark=true;
if(null!=knowledge.getTitle()){
mark=false;
List<String> messageContentList = contentStringList.stream()
.filter(item -> !item.contains("<img"))
.filter(item -> !item.contains("<table"))
.filter(item -> !item.contains("<tr>"))
.filter(item -> !item.contains("</tr>"))
.filter(item -> !item.contains("<td>"))
.filter(item -> !item.contains("</td>"))
.map(item -> Jsoup.parse(item).text())
.collect(Collectors.toList());
messageContentList = messageContentList.
stream().filter(item -> item.length() > 17)
.collect(Collectors.toList());
if (!messageContentList.isEmpty()) {
boolean mark = true;
if (null != knowledge.getTitle()) {
mark = false;
}
for (String s : contentStringList) {
if(mark&&(!Jsoup.parse(s).text().isEmpty())){
knowledge.setTitle(Jsoup.parse(s).text());
mark=false;
for (String tem : messageContentList) {
log.info("info:{}", tem);
if (mark && (!tem.isEmpty())) {
knowledge.setTitle(tem);
mark = false;
}
contentList.add(Content.builder()
.contentId(codeGenerateUtil.geneIdNo(Constants.FINANCE, 8))
.content(s)
.content(tem)
.build());
}
}
......@@ -124,17 +138,8 @@ class KnowledgeServiceImpl implements IKnowledgeService {
// String htmlWithoutTable = new HtmlCleaner(props).clean(html).getText().toString();
// htmlWithoutTable = htmlWithoutTable.replace("<p>", "");
// List<String>contentStringWithoutTableList = Arrays.asList(htmlWithoutTable.split("</p>"));
List<Content> messageContentList = contentList.stream()
.filter(item -> item.getContent().length() > 10)
.filter(item -> !item.getContent().contains("<img"))
.filter(item -> !item.getContent().contains("<table"))
.filter(item -> !item.getContent().contains("<tr>"))
.filter(item -> !item.getContent().contains("</tr>"))
.filter(item -> !item.getContent().contains("<td>"))
.filter(item -> !item.getContent().contains("</td>"))
.collect(Collectors.toList());
messageContentList.forEach(item -> item.setContent(Jsoup.parse(item.getContent()).text()));
knowledgeMessage.setContents(messageContentList);
knowledgeMessage.setContents(contentList);
produceInfo.sendKnowledgeContents(knowledgeMessage);
}
......@@ -289,6 +294,9 @@ class KnowledgeServiceImpl implements IKnowledgeService {
if (!catList.isEmpty()) {
boolQuery.must(QueryBuilders.termsQuery("knowledgeProjectId", catList));
}
if (StringUtils.isNotEmpty(knowledgeParam.getTypeIds())) {
boolQuery.must(QueryBuilders.termsQuery("typeId",Arrays.asList(knowledgeParam.getTypeIds().split(",")) ));
}
if (null != knowledgeParam.getVerifyStatus()) {
boolQuery.must(QueryBuilders.termQuery("verifyStatus", knowledgeParam.getVerifyStatus()));
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论