liujunchi 2 jaren geleden
bovenliggende
commit
7567ce08c1

+ 14 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsArticleController.java

@@ -44,7 +44,7 @@ public class BbsArticleController extends BaseController {
 		IPage<BbsArticleVo> pages = bbsArticleService.selectPage(PageUtil.getPage(query), query);
         return succeed(PageUtil.pageInfo(pages));
 	}
-    
+
     /**
 	 * 新增
 	 */
@@ -83,4 +83,17 @@ public class BbsArticleController extends BaseController {
 		}
 		return status(bbsArticleService.removeByIds(StringUtil.toLongList(ids)));
 	}
+
+
+	/**
+	 * 首页
+	 */
+	@PostMapping("/home")
+	@ApiOperation(value = "首页", notes = "传入bbsArticleSearch")
+	public HttpResponseResult<PageInfo<BbsArticleVo>> home(@RequestBody BbsArticleSearch query) {
+		query.setDelFlag(0);
+		query.setStatus("PASS");
+		IPage<BbsArticleVo> pages = bbsArticleService.selectPage(PageUtil.getPage(query), query);
+		return succeed(PageUtil.pageInfo(pages));
+	}
 }

+ 70 - 0
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/dto/search/BbsArticleSearch.java

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.bbs.dto.search;
 
 import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 
 /**
  * @Author: liweifan
@@ -11,4 +12,73 @@ import io.swagger.annotations.ApiModel;
 public class BbsArticleSearch extends QueryInfo{
 	private static final long serialVersionUID = 1L;
 
+	@ApiModelProperty("标题搜索")
+	private String search;
+
+	@ApiModelProperty("标签id")
+	private Long  label;
+
+	@ApiModelProperty("排序方式 NEW:最新,HOT:最热")
+	private String  sort;
+
+	@ApiModelProperty(value = "用户id",hidden = true)
+	private Long userId;
+
+	@ApiModelProperty("草稿:DRAFT,审核中:DOING,通过:PASS,驳回:REJECT")
+	private String status;
+
+	@ApiModelProperty("0:正常 1:删除")
+	private Integer delFlag;
+
+	@Override
+	public String getSearch() {
+		return search;
+	}
+
+	@Override
+	public void setSearch(String search) {
+		this.search = search;
+	}
+
+	public Long getLabel() {
+		return label;
+	}
+
+	public void setLabel(Long label) {
+		this.label = label;
+	}
+
+	@Override
+	public String getSort() {
+		return sort;
+	}
+
+	@Override
+	public void setSort(String sort) {
+		this.sort = sort;
+	}
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+	public String getStatus() {
+		return status;
+	}
+
+	public void setStatus(String status) {
+		this.status = status;
+	}
+
+	public Integer getDelFlag() {
+		return delFlag;
+	}
+
+	public void setDelFlag(Integer delFlag) {
+		this.delFlag = delFlag;
+	}
 }

+ 27 - 0
cooleshow-bbs/src/main/resources/config/mybatis/BbsArticleMapper.xml

@@ -53,5 +53,32 @@
 		SELECT         
         	<include refid="baseColumns" />
 		FROM bbs_article t
+        <where>
+            <if test="param.status != null and param.status != ''">
+                and #{param.status,jdbcType=VARCHAR} = t.status_
+            </if>
+            <if test="param.search != null and param.search != ''">
+                and t.title_ like  concat('%',#{param.search},'%')
+            </if>
+            <if test="param.label != null">
+                and t.label_id_ = #{param.label,jdbcType=BIGINT}
+            </if>
+            <if test="param.userId != null" >
+                and t.user_id_ = #{param.userId}
+            </if>
+            <if test="param.delFlag != null" >
+                and t.del_flag_ = #{param.delFlag}
+            </if>
+        </where>
+        order by
+            <if test="param.sort != null">
+                <choose>
+                    <when test="param.sort == 'HOT'">
+                        t.comments_count_ desc,
+                    </when>
+                </choose>
+            </if>
+
+        t.created_time_ desc
 	</select>
 </mapper>