提交 6e3bfa58 作者: obcy

Merge remote-tracking branch 'origin/master'

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