增加收藏
This commit is contained in:
parent
a437c1564f
commit
03f388cb4c
|
|
@ -0,0 +1,26 @@
|
|||
package com.mdd.common.entity.article;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 文章实体类
|
||||
*/
|
||||
@Data
|
||||
public class ArticleCollect implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value="id", type= IdType.AUTO)
|
||||
private Integer id; // 主键
|
||||
private Integer userId; // 用户ID
|
||||
private Integer articleId; // 文章ID
|
||||
private Integer isDelete; // 是否删除
|
||||
private Long createTime; // 创建时间
|
||||
private Long updateTime; // 更新时间
|
||||
private Long deleteTime; // 删除时间
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
package com.mdd.common.mapper.article;
|
||||
|
||||
import com.mdd.common.core.basics.IBaseMapper;
|
||||
import com.mdd.common.entity.article.ArticleCollect;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 文章收藏Mapper
|
||||
*/
|
||||
@Mapper
|
||||
public interface ArticleCollectMapper extends IBaseMapper<ArticleCollect> {
|
||||
}
|
||||
|
|
@ -6,6 +6,7 @@ import com.mdd.common.validator.annotation.IDMust;
|
|||
import com.mdd.front.service.IArticleService;
|
||||
import com.mdd.front.validate.PageParam;
|
||||
import com.mdd.front.vo.article.ArticleCateVo;
|
||||
import com.mdd.front.vo.article.ArticleCollectVo;
|
||||
import com.mdd.front.vo.article.ArticleDetailVo;
|
||||
import com.mdd.front.vo.article.ArticleListVo;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
|
@ -61,4 +62,16 @@ public class ArticleController {
|
|||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章收藏
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/collect")
|
||||
public Object collect(@Validated PageParam pageParam) {
|
||||
PageResult<ArticleCollectVo> list = iArticleService.collect(pageParam);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.mdd.front.service;
|
|||
import com.mdd.common.core.PageResult;
|
||||
import com.mdd.front.validate.PageParam;
|
||||
import com.mdd.front.vo.article.ArticleCateVo;
|
||||
import com.mdd.front.vo.article.ArticleCollectVo;
|
||||
import com.mdd.front.vo.article.ArticleDetailVo;
|
||||
import com.mdd.front.vo.article.ArticleListVo;
|
||||
|
||||
|
|
@ -40,4 +41,13 @@ public interface IArticleService {
|
|||
*/
|
||||
ArticleDetailVo detail(Integer id);
|
||||
|
||||
/**
|
||||
* 文章收藏
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @return PageResult<ArticleListVo>
|
||||
*/
|
||||
PageResult<ArticleCollectVo> collect(PageParam pageParam);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,9 +4,12 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Assert;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.github.yulichang.query.MPJQueryWrapper;
|
||||
import com.mdd.common.config.GlobalConfig;
|
||||
import com.mdd.common.core.PageResult;
|
||||
import com.mdd.common.entity.article.Article;
|
||||
import com.mdd.common.entity.article.ArticleCategory;
|
||||
import com.mdd.common.entity.article.ArticleCollect;
|
||||
import com.mdd.common.mapper.article.ArticleCategoryMapper;
|
||||
import com.mdd.common.mapper.article.ArticleMapper;
|
||||
import com.mdd.common.utils.TimeUtil;
|
||||
|
|
@ -14,6 +17,7 @@ import com.mdd.common.utils.UrlUtil;
|
|||
import com.mdd.front.service.IArticleService;
|
||||
import com.mdd.front.validate.PageParam;
|
||||
import com.mdd.front.vo.article.ArticleCateVo;
|
||||
import com.mdd.front.vo.article.ArticleCollectVo;
|
||||
import com.mdd.front.vo.article.ArticleDetailVo;
|
||||
import com.mdd.front.vo.article.ArticleListVo;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
|
|
@ -119,4 +123,29 @@ public class ArticleServiceImpl implements IArticleService {
|
|||
return vo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<ArticleCollectVo> collect(PageParam pageParam) {
|
||||
Integer pageNo = pageParam.getPageNo();
|
||||
Integer pageSize = pageParam.getPageSize();
|
||||
|
||||
MPJQueryWrapper<ArticleCollect> mpjQueryWrapper = new MPJQueryWrapper<>();
|
||||
mpjQueryWrapper.select("t.id,t.article_id,a.title,a.image,a.intro,a.visit,a.create_time")
|
||||
.eq("t.user_id", 1)
|
||||
.eq("t.is_delete", 0)
|
||||
.orderByDesc("t.id")
|
||||
.innerJoin("?_article a ON a.id=t.article_id".replace("?_", GlobalConfig.tablePrefix));
|
||||
|
||||
IPage<ArticleCollectVo> iPage = articleMapper.selectJoinPage(
|
||||
new Page<>(pageNo, pageSize),
|
||||
ArticleCollectVo.class,
|
||||
mpjQueryWrapper);
|
||||
|
||||
for (ArticleCollectVo vo : iPage.getRecords()) {
|
||||
vo.setImage(UrlUtil.toAbsoluteUrl(vo.getImage()));
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,20 @@
|
|||
package com.mdd.front.vo.article;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class ArticleCollectVo implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Integer id;
|
||||
private Integer articleId;
|
||||
private String title;
|
||||
private String image;
|
||||
private String intro;
|
||||
private Integer visit;
|
||||
private String createTime;
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue