cy 2 anni fa
parent
commit
6fd47e388b

+ 3 - 5
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsAuthRecordController.java

@@ -2,11 +2,9 @@ package com.yonge.cooleshow.bbs.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
-import com.yonge.cooleshow.bbs.dto.search.BbsArticleSearch;
 import com.yonge.cooleshow.bbs.dto.search.BbsAuthRecordSearch;
-import com.yonge.cooleshow.bbs.entity.BbsAuthRecord;
 import com.yonge.cooleshow.bbs.service.BbsAuthRecordService;
-import com.yonge.cooleshow.bbs.vo.BbsArticleVo;
+import com.yonge.cooleshow.bbs.vo.BbsAuthRecordVo;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.base.page.PageInfo;
@@ -28,8 +26,8 @@ public class BbsAuthRecordController extends BaseController {
 
     @PostMapping("/page")
     @ApiOperation(value = "查询分页")
-    public HttpResponseResult<PageInfo<BbsAuthRecord>> page(@RequestBody BbsAuthRecordSearch query) {
-        IPage<BbsAuthRecord> pages = bbsAuthRecordService.selectPage(PageUtil.getPage(query), query);
+    public HttpResponseResult<PageInfo<BbsAuthRecordVo>> page(@RequestBody BbsAuthRecordSearch query) {
+        IPage<BbsAuthRecordVo> pages = bbsAuthRecordService.selectPage(PageUtil.getPage(query), query);
         return succeed(PageUtil.pageInfo(pages));
     }
 }

+ 8 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/dao/BbsAuthRecordDao.java

@@ -4,10 +4,17 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.bbs.dto.search.BbsAuthRecordSearch;
 import com.yonge.cooleshow.bbs.entity.BbsAuthRecord;
+import com.yonge.cooleshow.bbs.vo.BbsAuthRecordVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
 public interface BbsAuthRecordDao extends BaseMapper<BbsAuthRecord> {
-    List<BbsAuthRecord> selectPage(@Param("page") IPage page, @Param("param") BbsAuthRecordSearch bbsArticle);
+    /**
+     * 查询审核列表
+     * @param page
+     * @param bbsArticle
+     * @return
+     */
+    List<BbsAuthRecordVo> selectPage(@Param("page") IPage page, @Param("param") BbsAuthRecordSearch bbsArticle);
 }

+ 30 - 6
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/dto/search/BbsAuthRecordSearch.java

@@ -9,9 +9,15 @@ import org.springframework.format.annotation.DateTimeFormat;
 import java.util.Date;
 
 @ApiModel
-public class BbsAuthRecordSearch extends QueryInfo{
+public class BbsAuthRecordSearch extends QueryInfo {
+    @ApiModelProperty(value = "用户名/手机号/文章标题")
+    private String search;
+
+    @ApiModelProperty(value = "标签id")
+    private Long labelId;
+
     @ApiModelProperty(value = "审核中:DOING,通过:PASS,驳回:REJECT")
-    private String auditStatus;
+    private String auditState;
 
     @ApiModelProperty(value = "开始时间")
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@@ -23,12 +29,30 @@ public class BbsAuthRecordSearch extends QueryInfo{
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date endTime;
 
-    public String getAuditStatus() {
-        return auditStatus;
+    public Long getLabelId() {
+        return labelId;
+    }
+
+    public void setLabelId(Long labelId) {
+        this.labelId = labelId;
+    }
+
+    @Override
+    public String getSearch() {
+        return search;
+    }
+
+    @Override
+    public void setSearch(String search) {
+        this.search = search;
+    }
+
+    public String getAuditState() {
+        return auditState;
     }
 
-    public void setAuditStatus(String auditStatus) {
-        this.auditStatus = auditStatus;
+    public void setAuditState(String auditState) {
+        this.auditState = auditState;
     }
 
     public Date getStartTime() {

+ 5 - 5
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/entity/BbsAuthRecord.java

@@ -29,7 +29,7 @@ public class BbsAuthRecord implements Serializable {
 
     @ApiModelProperty("审核中:DOING,通过:PASS,驳回:REJECT")
     @TableField(value = "audit_state_")
-    private ArticleEnum auditStatus;
+    private ArticleEnum auditState;
 
     @ApiModelProperty("审核理由")
     @TableField(value = "reason_")
@@ -69,12 +69,12 @@ public class BbsAuthRecord implements Serializable {
         this.verifyUserId = verifyUserId;
     }
 
-    public ArticleEnum getAuditStatus() {
-        return auditStatus;
+    public ArticleEnum getAuditState() {
+        return auditState;
     }
 
-    public void setAuditStatus(ArticleEnum auditStatus) {
-        this.auditStatus = auditStatus;
+    public void setAuditState(ArticleEnum auditState) {
+        this.auditState = auditState;
     }
 
     public String getReason() {

+ 2 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/service/BbsAuthRecordService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.yonge.cooleshow.bbs.dto.search.BbsAuthRecordSearch;
 import com.yonge.cooleshow.bbs.entity.BbsAuthRecord;
+import com.yonge.cooleshow.bbs.vo.BbsAuthRecordVo;
 
 public interface BbsAuthRecordService extends IService<BbsAuthRecord> {
     /**
@@ -13,5 +14,5 @@ public interface BbsAuthRecordService extends IService<BbsAuthRecord> {
      * @param query
      * @return
      */
-    IPage<BbsAuthRecord> selectPage(IPage<BbsAuthRecord> page, BbsAuthRecordSearch query);
+    IPage<BbsAuthRecordVo> selectPage(IPage<BbsAuthRecordVo> page, BbsAuthRecordSearch query);
 }

+ 2 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/service/impl/BbsAuthRecordServiceImpl.java

@@ -6,6 +6,7 @@ import com.yonge.cooleshow.bbs.dao.BbsAuthRecordDao;
 import com.yonge.cooleshow.bbs.dto.search.BbsAuthRecordSearch;
 import com.yonge.cooleshow.bbs.entity.BbsAuthRecord;
 import com.yonge.cooleshow.bbs.service.BbsAuthRecordService;
+import com.yonge.cooleshow.bbs.vo.BbsAuthRecordVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
@@ -15,7 +16,7 @@ public class BbsAuthRecordServiceImpl extends ServiceImpl<BbsAuthRecordDao, BbsA
     private final static Logger log = LoggerFactory.getLogger(BbsAuthRecordServiceImpl.class);
 
     @Override
-    public IPage<BbsAuthRecord> selectPage(IPage<BbsAuthRecord> page, BbsAuthRecordSearch query) {
+    public IPage<BbsAuthRecordVo> selectPage(IPage<BbsAuthRecordVo> page, BbsAuthRecordSearch query) {
         return page.setRecords(baseMapper.selectPage(page, query));
     }
 }

+ 145 - 0
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/vo/BbsAuthRecordVo.java

@@ -0,0 +1,145 @@
+package com.yonge.cooleshow.bbs.vo;
+
+import io.swagger.annotations.ApiModel;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@ApiModel
+public class BbsAuthRecordVo implements Serializable {
+    private Long articleId;
+    private String title;
+    private Long userId;
+    private String userName;
+    private String realName;
+    private String phone;
+    private Long labelId;
+    private String labelName;
+    private String status;
+    private Integer replyFlag;
+    private Date articleCreatedTime;
+    private String auditState;
+    private String reason;
+    private Date createdTime;
+    private Date updatedTime;
+
+    public Date getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Date createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Date getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Date updatedTime) {
+        this.updatedTime = updatedTime;
+    }
+
+    public Long getArticleId() {
+        return articleId;
+    }
+
+    public void setArticleId(Long articleId) {
+        this.articleId = articleId;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getRealName() {
+        return realName;
+    }
+
+    public void setRealName(String realName) {
+        this.realName = realName;
+    }
+
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+
+    public Long getLabelId() {
+        return labelId;
+    }
+
+    public void setLabelId(Long labelId) {
+        this.labelId = labelId;
+    }
+
+    public String getLabelName() {
+        return labelName;
+    }
+
+    public void setLabelName(String labelName) {
+        this.labelName = labelName;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public Integer getReplyFlag() {
+        return replyFlag;
+    }
+
+    public void setReplyFlag(Integer replyFlag) {
+        this.replyFlag = replyFlag;
+    }
+
+    public Date getArticleCreatedTime() {
+        return articleCreatedTime;
+    }
+
+    public void setArticleCreatedTime(Date articleCreatedTime) {
+        this.articleCreatedTime = articleCreatedTime;
+    }
+
+    public String getAuditState() {
+        return auditState;
+    }
+
+    public void setAuditState(String auditState) {
+        this.auditState = auditState;
+    }
+
+    public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+}

+ 38 - 7
cooleshow-bbs/src/main/resources/config/mybatis/BbsAuthRecordMapper.xml

@@ -1,16 +1,47 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE  mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="com.yonge.cooleshow.bbs.dao.BbsAuthRecordDao">
-    <select id="selectPage" resultType="com.yonge.cooleshow.bbs.entity.BbsAuthRecord">
+    <select id="selectPage" resultType="com.yonge.cooleshow.bbs.vo.BbsAuthRecordVo">
         SELECT
-        r.id_ AS id,
-        r.article_id_ AS articleId,
+        a.id_ AS articleId,
+        a.title_ AS title,
+        a.user_id_ AS userId,
+        u.username_ AS userName,
+        u.real_name_ AS realName,
+        u.phone_ AS phone,
+        a.label_id_ AS labelId,
+        l.label_name_ AS labelName,
+        a.status_ AS `status`,
+        a.reply_flag_ AS replyFlag,
+        a.created_time_ AS articleCreatedTime,
         r.audit_state_ AS auditState,
-        r.verify_user_id_ AS verifyUserId
-        FROM bbs_auth_record r
+        r.reason_ AS reason,
+        r.create_time_ AS createdTime,
+        r.update_time_ AS updatedTime
+        FROM bbs_article a
+        LEFT JOIN sys_user u ON a.user_id_ = u.id_
+        LEFT JOIN bbs_auth_record r ON a.id_=r.article_id_
+        LEFT JOIN bbs_config_label l ON a.label_id_ = l.id_
+        WHERE a.status_ IN ('DOING','PASS','REJECT')
         <where>
-            <if test="">
-                article_id_ = #{param.}
+            <if test="null != param.search and '' != param.search">
+                AND (
+                u.username_ LIKE CONCAT('%', #{param.search}, '%') OR
+                u.phone_ LIKE CONCAT('%', #{param.search}, '%') OR
+                a.title_ LIKE CONCAT('%', #{param.search}, '%')
+                )
+            </if>
+            <if test="param.auditState !=null and param.auditState !=''">
+                AND a.label_id_ = #{param.labelId}
+            </if>
+            <if test="param.auditState !=null and param.auditState !=''">
+                AND r.audit_state_ = #{param.auditState}
+            </if>
+            <if test="param.startTime !=null">
+                <![CDATA[AND a.create_time_ >= #{param.startTime} ]]>
+            </if>
+            <if test="param.endTime !=null">
+                <![CDATA[AND a.create_time_ <= #{param.endTime} ]]>
             </if>
         </where>
     </select>