修改文章列表的搜索参数
This commit is contained in:
parent
712538213b
commit
ae398bf417
|
|
@ -48,10 +48,9 @@ public class ArticleController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
public AjaxResult<PageResult<ArticleListedVo>> list(@Validated PageValidate pageValidate,
|
public AjaxResult<PageResult<ArticleListedVo>> list(@Validated PageValidate pageValidate,
|
||||||
@Validated ArticleSearchValidate searchValidate,
|
@Validated ArticleSearchValidate searchValidate) {
|
||||||
@RequestParam(value = "cid", defaultValue = "0") Integer cid) {
|
|
||||||
Integer userId = LikeFrontThreadLocal.getUserId();
|
Integer userId = LikeFrontThreadLocal.getUserId();
|
||||||
PageResult<ArticleListedVo> list = iArticleService.list(pageValidate, cid, userId);
|
PageResult<ArticleListedVo> list = iArticleService.list(userId, pageValidate, searchValidate);
|
||||||
return AjaxResult.success(list);
|
return AjaxResult.success(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.mdd.front.service;
|
package com.mdd.front.service;
|
||||||
|
|
||||||
import com.mdd.common.core.PageResult;
|
import com.mdd.common.core.PageResult;
|
||||||
|
import com.mdd.front.validate.ArticleSearchValidate;
|
||||||
import com.mdd.front.validate.commons.PageValidate;
|
import com.mdd.front.validate.commons.PageValidate;
|
||||||
import com.mdd.front.vo.article.ArticleCateVo;
|
import com.mdd.front.vo.article.ArticleCateVo;
|
||||||
import com.mdd.front.vo.article.ArticleCollectVo;
|
import com.mdd.front.vo.article.ArticleCollectVo;
|
||||||
|
|
@ -26,12 +27,12 @@ public interface IArticleService {
|
||||||
* 文章分类
|
* 文章分类
|
||||||
*
|
*
|
||||||
* @author fzr
|
* @author fzr
|
||||||
* @param pageValidate 分页参数
|
|
||||||
* @param cid 分类ID
|
|
||||||
* @param userId 用户ID
|
* @param userId 用户ID
|
||||||
|
* @param pageValidate 分页参数
|
||||||
|
* @param searchValidate 搜索参数
|
||||||
* @return PageResult<ArticleListVo>
|
* @return PageResult<ArticleListVo>
|
||||||
*/
|
*/
|
||||||
PageResult<ArticleListedVo> list(PageValidate pageValidate, Integer cid, Integer userId);
|
PageResult<ArticleListedVo> list(Integer userId, PageValidate pageValidate, ArticleSearchValidate searchValidate);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 文章详情
|
* 文章详情
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ import com.mdd.common.util.StringUtils;
|
||||||
import com.mdd.common.util.TimeUtils;
|
import com.mdd.common.util.TimeUtils;
|
||||||
import com.mdd.common.util.UrlUtils;
|
import com.mdd.common.util.UrlUtils;
|
||||||
import com.mdd.front.service.IArticleService;
|
import com.mdd.front.service.IArticleService;
|
||||||
|
import com.mdd.front.validate.ArticleSearchValidate;
|
||||||
import com.mdd.front.validate.commons.PageValidate;
|
import com.mdd.front.validate.commons.PageValidate;
|
||||||
import com.mdd.front.vo.article.ArticleCateVo;
|
import com.mdd.front.vo.article.ArticleCateVo;
|
||||||
import com.mdd.front.vo.article.ArticleCollectVo;
|
import com.mdd.front.vo.article.ArticleCollectVo;
|
||||||
|
|
@ -74,13 +75,13 @@ public class ArticleServiceImpl implements IArticleService {
|
||||||
* 文章列表
|
* 文章列表
|
||||||
*
|
*
|
||||||
* @author fzr
|
* @author fzr
|
||||||
* @param pageValidate 分页参数
|
|
||||||
* @param cid 分类ID
|
|
||||||
* @param userId 用户ID
|
* @param userId 用户ID
|
||||||
|
* @param pageValidate 分页参数
|
||||||
|
* @param searchValidate 搜索参数
|
||||||
* @return PageResult<ArticleListVo>
|
* @return PageResult<ArticleListVo>
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PageResult<ArticleListedVo> list(PageValidate pageValidate, Integer cid, Integer userId) {
|
public PageResult<ArticleListedVo> list( Integer userId, PageValidate pageValidate, ArticleSearchValidate searchValidate) {
|
||||||
Integer pageNo = pageValidate.getPageNo();
|
Integer pageNo = pageValidate.getPageNo();
|
||||||
Integer pageSize = pageValidate.getPageSize();
|
Integer pageSize = pageValidate.getPageSize();
|
||||||
|
|
||||||
|
|
@ -88,9 +89,23 @@ public class ArticleServiceImpl implements IArticleService {
|
||||||
queryWrapper.select("id,title,image,intro,visit,create_time");
|
queryWrapper.select("id,title,image,intro,visit,create_time");
|
||||||
queryWrapper.eq("is_delete", 0);
|
queryWrapper.eq("is_delete", 0);
|
||||||
queryWrapper.eq("is_show", 1);
|
queryWrapper.eq("is_show", 1);
|
||||||
queryWrapper.orderByDesc(Arrays.asList("sort", "id"));
|
|
||||||
if (cid > 0) {
|
articleMapper.setSearch(queryWrapper, searchValidate, new String[]{
|
||||||
queryWrapper.eq("cid", cid);
|
"=:cid:int",
|
||||||
|
"like:keyword@title:str"
|
||||||
|
});
|
||||||
|
|
||||||
|
if (StringUtils.isNotNull(searchValidate.getSort())) {
|
||||||
|
switch (searchValidate.getSort()) {
|
||||||
|
case "hot": // 最热
|
||||||
|
queryWrapper.orderByDesc(Arrays.asList("visit", "id"));
|
||||||
|
break;
|
||||||
|
case "new": // 最新
|
||||||
|
queryWrapper.orderByDesc("id");
|
||||||
|
break;
|
||||||
|
default: // 默认
|
||||||
|
queryWrapper.orderByDesc(Arrays.asList("sort", "id"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IPage<Article> iPage = articleMapper.selectPage(new Page<>(pageNo, pageSize), queryWrapper);
|
IPage<Article> iPage = articleMapper.selectPage(new Page<>(pageNo, pageSize), queryWrapper);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
package com.mdd.front.validate;
|
package com.mdd.front.validate;
|
||||||
|
|
||||||
|
import com.mdd.common.validator.annotation.StringContains;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
|
@ -12,8 +14,12 @@ public class ArticleSearchValidate implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private Integer cid;
|
||||||
|
|
||||||
|
@Length(max = 100, message = "关键词过长了")
|
||||||
private String keyword;
|
private String keyword;
|
||||||
|
|
||||||
|
@StringContains(values = {"hot", "new"})
|
||||||
private String sort;
|
private String sort;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue