NewsServiceImpl.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.fdkankan.manage.service.impl;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.fdkankan.common.constant.CommonStatus;
  6. import com.fdkankan.common.constant.TbStatus;
  7. import com.fdkankan.manage.common.PageInfo;
  8. import com.fdkankan.manage.common.Result;
  9. import com.fdkankan.manage.common.ResultData;
  10. import com.fdkankan.manage.entity.News;
  11. import com.fdkankan.manage.mapper.INewsMapper;
  12. import com.fdkankan.manage.service.INewsService;
  13. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  14. import com.fdkankan.manage.util.Dateutils;
  15. import com.fdkankan.manage.vo.BaseParamVO;
  16. import com.fdkankan.manage.vo.NewsDisplayParamVO;
  17. import com.fdkankan.manage.vo.NewsPublicParamVO;
  18. import com.fdkankan.manage.vo.NewsPutTopParamVO;
  19. import com.fdkankan.manage.vo.PageNewsParamVO;
  20. import com.fdkankan.manage.vo.PageNewsVO;
  21. import com.fdkankan.manage.vo.SaveNewsParamVO;
  22. import com.fdkankan.manage.vo.UpdateNewsParamVO;
  23. import java.util.Calendar;
  24. import java.util.Date;
  25. import org.springframework.stereotype.Service;
  26. /**
  27. * <p>
  28. * 服务实现类
  29. * </p>
  30. *
  31. * @author
  32. * @since 2022-06-06
  33. */
  34. @Service
  35. public class NewsServiceImpl extends ServiceImpl<INewsMapper, News> implements INewsService {
  36. @Override
  37. public Page<PageNewsVO> pageNews(PageNewsParamVO param) {
  38. Page<PageNewsVO> pageNewsVOPage =
  39. this.baseMapper.pageNews(new Page<>(param.getPageNum(), param.getPageSize()), param);
  40. return pageNewsVOPage;
  41. }
  42. @Override
  43. public ResultData display(Long userId, NewsDisplayParamVO param) {
  44. this.update(new LambdaUpdateWrapper<News>()
  45. .set(News::getDisplay, param.getDisplay())
  46. .set(News::getUpdateTime, Calendar.getInstance().getTime())
  47. .set(News::getUpdaterId, userId)
  48. .eq(News::getId, param.getId()));
  49. return ResultData.ok();
  50. }
  51. @Override
  52. public ResultData putTop(Long userId, NewsPutTopParamVO param) {
  53. LambdaUpdateWrapper<News> updateWrapper = new LambdaUpdateWrapper<News>()
  54. .set(News::getIsTop, param.getIsTop())
  55. .set(News::getUpdateTime, Calendar.getInstance().getTime())
  56. .set(News::getUpdaterId, userId)
  57. .eq(News::getId, param.getId());
  58. if(CommonStatus.YES.code() == param.getIsTop().byteValue()){
  59. updateWrapper.set(News::getTopTime, Calendar.getInstance().getTime());
  60. }
  61. this.update(updateWrapper);
  62. return ResultData.ok();
  63. }
  64. @Override
  65. public ResultData publicNews(Long userId, NewsPublicParamVO param) {
  66. LambdaUpdateWrapper<News> updateWrapper = new LambdaUpdateWrapper<News>()
  67. .set(News::getIsPublic, param.getIsPublic())
  68. .set(News::getUpdateTime, Calendar.getInstance().getTime())
  69. .set(News::getUpdaterId, userId)
  70. .set(News::getDisplay ,param.getIsPublic())
  71. .eq(News::getId, param.getId());
  72. if(CommonStatus.YES.code() == param.getIsPublic().byteValue()){
  73. updateWrapper.set(News::getPublicTime, Calendar.getInstance().getTime());
  74. }
  75. this.update(updateWrapper);
  76. return ResultData.ok();
  77. }
  78. @Override
  79. public ResultData delete(Long userId, BaseParamVO param) {
  80. this.update(new LambdaUpdateWrapper<News>()
  81. .set(News::getTbStatus, TbStatus.DELETE.code())
  82. .set(News::getUpdateTime, Calendar.getInstance().getTime())
  83. .set(News::getUpdaterId, userId)
  84. .eq(News::getId, param.getId()));
  85. return ResultData.ok();
  86. }
  87. @Override
  88. public News getNewsDetail(BaseParamVO param) {
  89. return this.getById(param.getId());
  90. }
  91. @Override
  92. public ResultData addNews(Long userId, SaveNewsParamVO param) {
  93. News news = BeanUtil.copyProperties(param, News.class);
  94. news.setSysUserId(userId);
  95. this.save(news);
  96. return ResultData.ok();
  97. }
  98. @Override
  99. public ResultData updateNews(Long userId, UpdateNewsParamVO param) {
  100. News news = BeanUtil.copyProperties(param, News.class);
  101. news.setUpdateTime(Dateutils.getDate(new Date()));
  102. news.setUpdaterId(userId);
  103. this.updateById(news);
  104. return ResultData.ok();
  105. }
  106. }