提交 d87f932f authored 作者: 任建宇's avatar 任建宇

feat: 检索

1.resource
上级 e4b36e41
......@@ -107,6 +107,7 @@ public class QrCodeController {
String path = qrCodeUploadPath;
try {
QrCodeCreateUtil.createQrCode(path + "/" + form.getResourceId() + ".jpg", form.getContentPath() + "" + form.getResourceId());
qrCode.setQrCode("/qr/" + form.getResourceId() + ".jpg");
} catch (Exception e) {
e.printStackTrace();
......
......@@ -905,10 +905,13 @@ public class ResourceLibraryController {
try {
// 创建一个SolrServer对象,创建一个链接。参数solr服务器的url
HttpSolrClient solrServer = getSolrClient();
StringBuffer fqSq = new StringBuffer();
// 资源类别判断
//StringBuffer fqSq = new StringBuffer("id : *");
// 创建一个solrQuery查询对象
SolrQuery sq = new SolrQuery();
// 权重设置
/* sq.set("dt", "name");
//权重设置
/*sq.set("dt", "name");
sq.set("defType","dismax");
sq.set("qf", "name ^100");*/
//根据参数pageParam页码值 计算记录开始位置
......@@ -922,27 +925,26 @@ public class ResourceLibraryController {
sq.setStart(0);
sq.setRows(Integer.MAX_VALUE);
}
if (null != pageParam && StringUtils.isNotBlank(pageParam.getOrderBy())) {
/*if (null != pageParam && StringUtils.isNotBlank(pageParam.getOrderBy())) {
sq.set("sort", pageParam.getOrderBy());
}else{
sq.set("sort", "createdTime desc");
}*/
sq.set("sort", pageParam.getOrderBy());
//fqSq.append(" isDelete:0 && status : 1");
if (StringUtils.isBlank(form.getName())) {
//判断搜索标题内容,过滤
//fqSq.append(" && name : " + form.getName());
fqSq.append("keywords_yu:*");
}else{
//fqSq.append("("+form.getName()+")");
fqSq.append(" name : " + form.getName());
}
// 资源类别判断
StringBuffer fqSq = new StringBuffer("id : *");
fqSq.append(" && status : 1");
if (form.getResourceType() != null) {
//判断搜索资源类型,过滤
if (form.getResourceType().equals(AllResourceTypeEnum.COURSE.getCode()) || form.getResourceType().equals(AllResourceTypeEnum.VIDEO.getCode())) {
fqSq.append(" && (resourceType : " + AllResourceTypeEnum.COURSE.getCode() + " || resourceType : " + AllResourceTypeEnum.VIDEO.getCode() + ") ");
} else {
fqSq.append(" && resourceType : " + form.getResourceType());
}
}
//标题
if (StringUtils.isNoneBlank(form.getName())) {
//判断搜索标题内容,过滤
fqSq.append(" && name : " + form.getName());
fqSq.append(" && resourceType : " + form.getResourceType());
}
//系列
if (StringUtils.isNoneBlank(form.getProjectId())) {
//判断搜索标题内容,过滤
......@@ -1004,7 +1006,8 @@ public class ResourceLibraryController {
}
fqSq.append(")");
}
sq.set("fq", fqSq.toString());
sq.addFacetQuery(" isDelete:1 && status : 1");
sq.set("q", fqSq.toString());
/* if (StringUtils.isBlank(form.getContent())) {
// 设置查询条件
sq.setQuery("keywords_yu : *");
......@@ -1023,7 +1026,7 @@ public class ResourceLibraryController {
//getHighlight(sq);
}
}*/
if(StringUtils.isBlank(form.getContent())){
/*if(StringUtils.isBlank(form.getContent())){
// 设置查询条件
// sq.setQuery("*:*");
// sq.set("q", "keywords_yu:"+form.getContent()); // 和上面的等同,*:*表示查询所有
......@@ -1036,9 +1039,9 @@ public class ResourceLibraryController {
input = PublicUtil.regEx(input);
sq.setQuery("keywords_yu : " + input + "* ");
sq.setHighlight(false);// 开启高亮组件
}
}*/
// 执行查询,得到queryResponse对象
QueryResponse sr = solrServer.query(sq);
QueryResponse sr = client.query(sq);
// 取文档列表(当前页文档),取查询结果总记录数
SolrDocumentList doclist = sr.getResults();
//System.out.println("检索出:" + doclist.getNumFound() + "条结果");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论