Commit 4ea2105d by 郑云飞

文章查询

parent a2bbb0aa
......@@ -35,6 +35,10 @@ public class DbArticle{
*/
private String createUser;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改人
*/
private String modifyUser;
......
package com.yongqi.xinrenli.domain.vo;
import java.util.Date;
import java.util.List;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
......@@ -44,6 +45,12 @@ public class DbArticleVo {
private String createUser;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
/**
* 修改人
*/
@ExcelProperty(value = "修改人")
......@@ -61,5 +68,13 @@ public class DbArticleVo {
@ExcelProperty(value = "删除状态")
private Integer deleteStatus;
/**
* 图片列表
*/
private List<DbFileVo> fileVos;
/**
* 评论列表
*/
private List<DbUserCommentVo> commentVos;
}
......@@ -38,6 +38,11 @@ public class DbUserCommentVo {
private Long userId;
/**
* 用户头像
*/
private String userHead;
/**
* 用户评论内容
*/
@ExcelProperty(value = "用户评论内容")
......
package com.yongqi.xinrenli.mapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yongqi.xinrenli.domain.DbArticle;
import com.yongqi.xinrenli.domain.vo.DbArticleVo;
import com.yongqi.common.core.mapper.BaseMapperPlus;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 文章Mapper接口
......@@ -14,4 +18,5 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface DbArticleMapper extends BaseMapperPlus<DbArticleMapper, DbArticle, DbArticleVo> {
Page<DbArticleVo> selectPageList(Page<Object> build, @Param(Constants.WRAPPER) LambdaQueryWrapper<DbArticle> lqw);
}
package com.yongqi.xinrenli.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yongqi.common.utils.StringUtils;
import com.yongqi.common.core.page.TableDataInfo;
import com.yongqi.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yongqi.xinrenli.domain.DbUserComment;
import com.yongqi.xinrenli.domain.vo.DbUserCommentVo;
import com.yongqi.xinrenli.mapper.DbUserCommentMapper;
import com.yongqi.xinrenli.service.IDbUserCommentService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.yongqi.xinrenli.domain.bo.DbArticleBo;
......@@ -31,6 +36,8 @@ public class DbArticleServiceImpl implements IDbArticleService {
private final DbArticleMapper baseMapper;
private final DbUserCommentMapper commentMapper;
/**
* 查询文章
*/
......@@ -45,7 +52,13 @@ public class DbArticleServiceImpl implements IDbArticleService {
@Override
public TableDataInfo<DbArticleVo> queryPageList(DbArticleBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<DbArticle> lqw = buildQueryWrapper(bo);
Page<DbArticleVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
Page<DbArticleVo> result = baseMapper.selectPageList(pageQuery.build(), lqw);
result.getRecords().forEach(record -> {
IPage<DbUserCommentVo> voPage = commentMapper.selectVoPage(new Page<DbUserComment>(1, 3), Wrappers.<DbUserComment>lambdaQuery()
.eq(DbUserComment::getArticleId, record.getId())
.eq(DbUserComment::getDeleteStatus, 0));
record.setCommentVos(voPage.getRecords());
});
return TableDataInfo.build(result);
}
......
......@@ -15,5 +15,28 @@
<result property="deleteStatus" column="delete_status"/>
</resultMap>
<resultMap type="com.yongqi.xinrenli.domain.vo.DbArticleVo" id="DbArticleVo">
<result property="id" column="id"/>
<result property="title" column="title"/>
<result property="content" column="content"/>
<result property="createUser" column="create_user"/>
<result property="createTime" column="create_time"/>
<result property="modifyUser" column="modify_user"/>
<result property="modifyTime" column="modify_time"/>
<result property="deleteStatus" column="delete_status"/>
<collection property="fileVos" ofType="com.yongqi.xinrenli.domain.vo.DbFileVo">
<result property="serviceType" column="service_type"/>
<result property="fileType" column="file_type"/>
<result property="url" column="url"/>
<result property="sort" column="sort"/>
</collection>
</resultMap>
<select id="selectPageList" resultMap = "DbArticleVo">
select art.*,df.*
from db_article art
left join db_file df on art.id = df.service_id and df.service_type = 'wenzhang' and df.delete_status = 0
${ew.getCustomSqlSegment}
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment