!154 搜索修改

Merge pull request !154 from 他是超人他会飞/4.7.0
This commit is contained in:
他是超人他会飞 2019-03-13 16:49:56 +08:00 committed by 铭飞
commit c7ab2ac3de
2 changed files with 31 additions and 19 deletions

View File

@ -62,6 +62,7 @@ import net.mingsoft.mdiy.biz.ISearchBiz;
import net.mingsoft.mdiy.entity.ContentModelEntity; import net.mingsoft.mdiy.entity.ContentModelEntity;
import net.mingsoft.mdiy.entity.ContentModelFieldEntity; import net.mingsoft.mdiy.entity.ContentModelFieldEntity;
import net.mingsoft.mdiy.entity.SearchEntity; import net.mingsoft.mdiy.entity.SearchEntity;
import net.mingsoft.mdiy.parser.TagParser;
import net.mingsoft.mdiy.util.ParserUtil; import net.mingsoft.mdiy.util.ParserUtil;
/** /**
@ -178,7 +179,7 @@ public class SearchAction extends BaseAction {
} }
map.put(ParserUtil.COLUMN, column); map.put(ParserUtil.COLUMN, column);
//设置栏目编号 //设置栏目编号
map.put(ParserUtil.TYPE_ID, typeId); // map.put(ParserUtil.TYPE_ID, typeId);
} }
// 遍历取字段集合 // 遍历取字段集合
@ -225,42 +226,51 @@ public class SearchAction extends BaseAction {
int count = articleBiz.getSearchCount(contentModel, whereMap, BasicUtil.getAppId(), null); int count = articleBiz.getSearchCount(contentModel, whereMap, BasicUtil.getAppId(), null);
//设置分页类 //设置分页类
PageBean page = new PageBean(); PageBean page = new PageBean();
//读取模板的分页数量
int size = BasicUtil.getInt(ParserUtil.SIZE,10); int size = BasicUtil.getInt(ParserUtil.SIZE,10);
try {
size = TagParser.getPageSize(ParserUtil.read(search.getSearchTemplets(),false ));
} catch (TemplateNotFoundException e1) {
e1.printStackTrace();
} catch (MalformedTemplateNameException e1) {
e1.printStackTrace();
} catch (ParseException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
int total = PageUtil.totalPage(count, size); int total = PageUtil.totalPage(count, size);
//获取总数 int pageNo = BasicUtil.getInt(ParserUtil.PAGE_NO,1);
if(pageNo >= total) {
pageNo = total;
}
//获取总数
page.setTotal(total); page.setTotal(total);
//设置页面显示数量 //设置页面显示数量
page.setSize(size); page.setSize(size);
//设置列表当前页 //设置列表当前页
int pageNo = BasicUtil.getInt(ParserUtil.PAGE_NO,1);
page.setPageNo(pageNo); page.setPageNo(pageNo);
int next ,pre;
if(StringUtil.isBlank(pageNo) || pageNo==1){
//如果总页数等于1下一页就是第一页不等于就有第二页
next = 1==total ? total : 2; String str = ParserUtil.PAGE_NO+","+ParserUtil.SIZE;
pre = 1;
}else{
next = pageNo==total ? total : pageNo +1;
pre = pageNo-1==0 ? 1 : pageNo-1;
}
String str = ParserUtil.PAGE_NO+",";
//设置分页的统一链接 //设置分页的统一链接
String url = BasicUtil.getUrl() + request.getServletPath() +"?" + BasicUtil.assemblyRequestUrlParams(str.split(",")); String url = request.getServletPath() +"?" + BasicUtil.assemblyRequestUrlParams(str.split(","));
String pageNoStr = "&"+ParserUtil.PAGE_NO+"="; String pageNoStr = "&"+ParserUtil.SIZE+"="+size+"&"+ParserUtil.PAGE_NO+"=";
//下一页 //下一页
String nextUrl = url + pageNoStr+next; String nextUrl = url + pageNoStr+((pageNo+1 > total)?total:++pageNo);
//首页 //首页
String indexUrl = url + pageNoStr + 1; String indexUrl = url + pageNoStr + 1;
//尾页 //尾页
String lastUrl = url + pageNoStr + total; String lastUrl = url + pageNoStr + total;
//上一页 //上一页
String preUrl = url + pageNoStr + pre; String preUrl = url + pageNoStr + (--pageNo);
page.setIndexUrl(indexUrl); page.setIndexUrl(indexUrl);
page.setNextUrl(nextUrl); page.setNextUrl(nextUrl);
page.setPreUrl(preUrl); page.setPreUrl(preUrl);
page.setLastUrl(lastUrl); page.setLastUrl(lastUrl);
map.put(ParserUtil.URL, BasicUtil.getUrl()); map.put(ParserUtil.URL, BasicUtil.getUrl());
map.put(ParserUtil.PAGE, page);
Map<Object, Object> searchMap = new HashMap<>(); Map<Object, Object> searchMap = new HashMap<>();
searchMap.put(BASIC_TITLE, BasicUtil.getString(BASIC_TITLE)); searchMap.put(BASIC_TITLE, BasicUtil.getString(BASIC_TITLE));
searchMap.put(ParserUtil.PAGE_NO, pageNo); searchMap.put(ParserUtil.PAGE_NO, pageNo);

View File

@ -53,6 +53,8 @@
<result column="category_title" property="categoryTitle" /> <result column="category_title" property="categoryTitle" />
<result column="category_id" property="categoryId" /> <result column="category_id" property="categoryId" />
<result column="COLUMN_CM_ID" property="columnContentModelId" /> <result column="COLUMN_CM_ID" property="columnContentModelId" />
<result column="category_categoryid" property="categoryCategoryId" /><!--关联表category的父类别ID category_categoryid字段 -->
<result column="category_modelId" property="categoryModelId" /><!--关联表category的所属模块ID category_modelid字段 -->
<result column="COLUMN_TYPE" property="columnType" /> <result column="COLUMN_TYPE" property="columnType" />
<result column="category_parent_id" property="categoryParentId" /><!--关联表category的字典对应编号 --> <result column="category_parent_id" property="categoryParentId" /><!--关联表category的字典对应编号 -->
</resultMap> </resultMap>
@ -318,7 +320,7 @@
<!-- 根据站点编号、开始、结束时间和栏目编号查询文章编号集合 --> <!-- 根据站点编号、开始、结束时间和栏目编号查询文章编号集合 -->
<select id="queryIdsByCategoryIdForParser" resultMap="resultMapBean" > <select id="queryIdsByCategoryIdForParser" resultMap="resultMapBean" >
select select
ARTICLE_BASICID,cl.*,c.category_parent_id ARTICLE_BASICID,cl.*,c.*
FROM cms_article a LEFT JOIN basic b ON a.ARTICLE_BASICID = b.BASIC_ID FROM cms_article a LEFT JOIN basic b ON a.ARTICLE_BASICID = b.BASIC_ID
LEFT JOIN basic_column cl ON b.BASIC_CATEGORYID = cl.COLUMN_CATEGORY_ID LEFT JOIN basic_column cl ON b.BASIC_CATEGORYID = cl.COLUMN_CATEGORY_ID
JOIN category c ON c.CATEGORY_ID = cl.COLUMN_CATEGORY_ID JOIN category c ON c.CATEGORY_ID = cl.COLUMN_CATEGORY_ID