yangfeng 1 سال پیش
والد
کامیت
789cf4ef9f

+ 60 - 0
web/src/main/java/com/ynfy/app/api/v1/controller/ApiAircleController.java

@@ -0,0 +1,60 @@
+package com.ynfy.app.api.v1.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ynfy.app.api.v1.annoation.IgnoreAuth;
+import com.ynfy.app.api.v1.entity.dto.ArticleDTO;
+import com.ynfy.buss.article.entity.Article;
+import com.ynfy.buss.article.service.IArticleService;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.jeecg.common.api.vo.Result;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+
+@RestController
+@RequestMapping("/api/v1/article")
+@Slf4j
+public class ApiAircleController extends ApiBaseController {
+    @Autowired
+    private IArticleService articleService;
+
+    /**
+     * 分页列表查询
+     *
+     * @return
+     */
+    @ApiOperation(value = "分页列表查询", notes = "分页列表查询")
+    @IgnoreAuth
+    @PostMapping(value = "/list")
+    public Result<IPage<Article>> queryPageList(@RequestBody ArticleDTO dto) {
+        Page<Article> page = new Page<>(dto.getPageNo(), dto.getPageSize());
+        LambdaQueryWrapper<Article> query = new LambdaQueryWrapper<>();
+        if (StringUtils.isNotBlank(dto.getTitle())) {
+            query.like(Article::getTitle, dto.getTitle());
+        }
+        IPage<Article> pageList = articleService.page(page, query);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 通过id查询
+     *
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "通过id查询", notes = "通过id查询")
+    @GetMapping(value = "/queryById")
+    public Result<Article> queryById(@RequestParam String id) {
+        Article article = articleService.getById(id);
+        if (article == null) {
+            return Result.error("未找到对应数据");
+        }
+        return Result.OK(article);
+    }
+
+
+}

+ 16 - 2
web/src/main/java/com/ynfy/app/api/v1/controller/ApiIndexController.java

@@ -3,6 +3,7 @@ package com.ynfy.app.api.v1.controller;
 import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ynfy.app.api.v1.annoation.IgnoreAuth;
+import com.ynfy.buss.article.service.IArticleService;
 import com.ynfy.buss.banner.service.IBannerService;
 import com.ynfy.buss.course.course.service.ICourseService;
 import com.ynfy.buss.exam.exam.entity.Exam;
@@ -40,14 +41,16 @@ public class ApiIndexController extends ApiBaseController {
     @Autowired
     private ICourseService courseService;
 
-
     @Autowired
     private IExamService examService;
 
+    @Autowired
+    private IArticleService articleService;
+
     @IgnoreAuth
     @PostMapping("/banner/list")
     public Result<?> list() {
-        return Result.OK(bannerService.list());
+;        return Result.OK(bannerService.list());
     }
 
     /**
@@ -142,4 +145,15 @@ public class ApiIndexController extends ApiBaseController {
         return Result.OK(examList);
     }
 
+    /**
+     * 推荐资讯
+     *
+     * @return
+     */
+    @IgnoreAuth
+    @GetMapping("/listRecommendArticle")
+    public Result<?> listRecommendArticle(Integer limit) {
+        return Result.OK(articleService.listRecommendArticle(limit));
+    }
+
 }

+ 13 - 0
web/src/main/java/com/ynfy/app/api/v1/entity/dto/ArticleDTO.java

@@ -0,0 +1,13 @@
+package com.ynfy.app.api.v1.entity.dto;
+
+import lombok.Data;
+
+@Data
+public class ArticleDTO {
+
+    private String title;
+
+    private Integer pageNo;
+
+    private Integer pageSize;
+}

+ 4 - 0
web/src/main/java/com/ynfy/buss/article/service/IArticleService.java

@@ -3,6 +3,8 @@ package com.ynfy.buss.article.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ynfy.buss.article.entity.Article;
 
+import java.util.List;
+
 /**
  * @Description: article
  * @Author: jeecg-boot
@@ -11,4 +13,6 @@ import com.ynfy.buss.article.entity.Article;
  */
 public interface IArticleService extends IService<Article> {
 
+    List<Article> listRecommendArticle(Integer limit);
+
 }

+ 9 - 0
web/src/main/java/com/ynfy/buss/article/service/impl/ArticleServiceImpl.java

@@ -1,11 +1,14 @@
 package com.ynfy.buss.article.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ynfy.buss.article.entity.Article;
 import com.ynfy.buss.article.mapper.ArticleMapper;
 import com.ynfy.buss.article.service.IArticleService;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * @Description: article
  * @Author: jeecg-boot
@@ -15,4 +18,10 @@ import org.springframework.stereotype.Service;
 @Service
 public class ArticleServiceImpl extends ServiceImpl<ArticleMapper, Article> implements IArticleService {
 
+    @Override
+    public List<Article> listRecommendArticle(Integer limit) {
+        LambdaQueryWrapper<Article> query = new LambdaQueryWrapper<>();
+        query.eq(Article::getIsRecommend, true).last("LIMIT " + limit).orderByDesc(Article::getCreateTime);
+        return list(query);
+    }
 }