linwe
2024-05-29 c10d6358b9f014375a13821465bc978d0c0da22e
src/main/java/org/springblade/modules/article/controller/ArticleController.java
@@ -7,10 +7,13 @@
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.es.service.ElasticsearchDocumentService;
import org.springblade.es.vo.EsParam;
import org.springblade.modules.article.entity.Article;
import org.springblade.modules.article.service.ArticleService;
import org.springblade.modules.article.vo.ArticleVO;
@@ -18,6 +21,9 @@
import javax.validation.Valid;
import java.util.Date;
import java.util.List;
import static org.springblade.common.cache.CacheNames.ARTICLE_KEY;
/**
 * @author zhongrj
@@ -30,11 +36,13 @@
public class ArticleController {
   private final ArticleService articleService;
   private final ElasticsearchDocumentService elasticsearchDocumentService;
   /**
    * 查询资讯分页信息
    * @param article  资讯对象
    * @param query    查询参数
    *
    * @param article 资讯对象
    * @param query   查询参数
    * @return
    */
   @GetMapping("/pageWeb")
@@ -42,10 +50,16 @@
      return R.data(articleService.selectArticlePage(Condition.getPage(query), article));
   }
   @GetMapping("/getArticleByDistrictId")
   public R<List<ArticleVO>> getArticleByDistrictId(ArticleVO article) {
      return R.data(articleService.getArticleByDistrictId(article));
   }
   /**
    * 查询资讯分页信息-app
    * @param article  资讯对象
    * @param query    查询参数
    *
    * @param article 资讯对象
    * @param query   查询参数
    * @return
    */
   @GetMapping("/page")
@@ -55,8 +69,9 @@
   /**
    * 敏感词预警
    * @param article  资讯对象
    * @param query    查询参数
    *
    * @param article 资讯对象
    * @param query   查询参数
    * @return
    */
   @GetMapping("/pageWords")
@@ -66,8 +81,9 @@
   /**
    * 查询资讯分页信息(角色权限)
    * @param article  资讯对象
    * @param query    查询参数
    *
    * @param article 资讯对象
    * @param query   查询参数
    * @return
    */
   @GetMapping("/pageDate")
@@ -82,8 +98,9 @@
   /**
    * 查询资讯分页信息(角色权限)附带点赞评论数
    * @param article  资讯对象
    * @param query    查询参数
    *
    * @param article 资讯对象
    * @param query   查询参数
    * @return
    */
   @GetMapping("/pageLikes")
@@ -103,17 +120,22 @@
   /**
    * 资讯详情
    *
    * @param article  资讯查询对象
    * @param article 资讯查询对象
    */
   @GetMapping("/detail")
   @ApiOperationSupport(order = 1)
   @ApiOperation(value = "详情", notes = "传入articleoy")
   public R<Article> detail(Article article) {
      Article detail = articleService.getArticleOne(article);
   public R<Article> detail(ArticleVO article) {
      ArticleVO detail = articleService.getArticleOne(article);
      UpdateWrapper<Article> objectUpdateWrapper = new UpdateWrapper<>();
      objectUpdateWrapper.setSql("view_number = view_number + 1");
      objectUpdateWrapper.eq("id", article.getId());
      articleService.update(null, objectUpdateWrapper);
//      List<List<String>> lists = new ArrayList<>();
//      if (StringUtils.isNotBlank(detail.getArticleRange())) {
//         lists = (List<List<String>>) JSON.parse(detail.getArticleRange());
//      }
//      detail.setArticleList(lists);
      return R.data(detail);
   }
@@ -131,6 +153,7 @@
   /**
    * 修改资讯信息
    *
    * @param article 资讯对象
    */
   @PostMapping("/update")
@@ -146,32 +169,43 @@
    * @param article 资讯对象信息
    */
   @PostMapping("/submit")
   public R submit(@RequestBody ArticleVO article) {
   @ApiOperationSupport(order = 6)
   @ApiOperation(value = "新增或修改资讯信息", notes = "传入article")
   public R submit(@RequestBody Article article) {
      CacheUtil.clear(ARTICLE_KEY);
      boolean flag = false;
      if (null == article.getId()) {
         flag = true;
         if (null == article.getCreateTime()) {
            article.setCreateTime(new Date());
         }
      }
      article.setUpdateTime(new Date());
      return R.status(articleService.saveOrUpdate(article));
      boolean saveOrUpdate = articleService.saveOrUpdate(article);
      return R.status(saveOrUpdate);
   }
   /**
    * 删除资讯信息
    *
    * @param ids 资讯主键id,id集合
    */
   @PostMapping("/remove")
   @ApiOperationSupport(order = 8)
   @ApiOperation(value = "删除", notes = "传入ids")
   public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
      return R.status(articleService.removeByIds(Func.toLongList(ids)));
      List<Long> longs = Func.toLongList(ids);
      boolean removeByIds = articleService.removeByIds(longs);
      return R.status(removeByIds);
   }
   /**
    * 批量修改评论区状态
    */
   @PostMapping("/upcomment")
   @ApiOperationSupport(order = 5)
   @ApiOperation(value = "批量修改评论区状态", notes = "传入article")
   public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids, String type) {
      String[] split = ids.split(",");
      String strArrays = "";
@@ -184,25 +218,28 @@
   /**
    * 查询个人资讯
    *
    * @param article
    * @param query
    * @return
    */
   @GetMapping("/selectArticleG")
   @ApiOperationSupport(order = 5)
   @ApiOperation(value = "查询个人资讯", notes = "传入article")
   public R<IPage<Article>> selectArticleG(ArticleVO article, Query query) {
      return R.data(articleService.selectArticleG(Condition.getPage(query), article));
   }
   /**
    * 通知公告表浏览数量加一
    * 通知公告表浏览数量加一(反诈的居民查看会得积分)
    */
   @PostMapping("/addNumber")
   @ApiOperationSupport(order = 8)
   @ApiOperation(value = "添加浏览数量", notes = "传入notice")
   public R addNumber(@Valid @RequestBody Article notice) {
   public R addNumber(@Valid @RequestBody ArticleVO notice) {
      UpdateWrapper<Article> objectUpdateWrapper = new UpdateWrapper<>();
      objectUpdateWrapper.setSql("view_number = view_number + 1");
      objectUpdateWrapper.eq("id",notice.getId());
      return R.status(articleService.update(null ,objectUpdateWrapper));
      objectUpdateWrapper.eq("id", notice.getId());
      return R.status(articleService.updateArticle(objectUpdateWrapper,notice.getId(),notice.getHouseCode()));
   }
}