| package cc.mrbird.febs.mall.controller; | 
|   | 
| import cc.mrbird.febs.common.entity.FebsResponse; | 
| import cc.mrbird.febs.mall.dto.NewsListDto; | 
| import cc.mrbird.febs.mall.entity.MallNewsInfo; | 
| import cc.mrbird.febs.mall.service.IApiMallNewsService; | 
| import cc.mrbird.febs.mall.vo.NewsListVo; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiOperation; | 
| import io.swagger.annotations.ApiResponse; | 
| import io.swagger.annotations.ApiResponses; | 
| import lombok.RequiredArgsConstructor; | 
| import lombok.extern.slf4j.Slf4j; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| import java.util.List; | 
|   | 
| /** | 
|  * @author wzy | 
|  * @date 2021-09-28 | 
|  **/ | 
| @Slf4j | 
| @RestController | 
| @RequestMapping(value = "/api/news") | 
| @RequiredArgsConstructor | 
| @Api(value = "ApiMallNewsController", tags = "新闻接口类") | 
| public class ApiMallNewsController { | 
|   | 
|     private final IApiMallNewsService newsService; | 
|   | 
|     @ApiOperation(value = "新闻分类", notes = "新闻分类") | 
|     @GetMapping(value = "/findNewsInfoCategory") | 
|     public FebsResponse findNewsInfoCategory() { | 
|         return new FebsResponse().success().data(newsService.findNewsCategoryList()); | 
|     } | 
|   | 
|     @ApiOperation(value ="获取新闻列表-分页", notes = "获取新闻列表") | 
|     @ApiResponses({ | 
|             @ApiResponse(code = 200, message = "success", response = NewsListVo.class) | 
|     }) | 
|     @PostMapping(value = "/findNewsInPage") | 
|     public FebsResponse findNewsInPage(@RequestBody NewsListDto newsListDto) { | 
|         return new FebsResponse().success().data(newsService.findNewsInPage(newsListDto)); | 
|     } | 
|   | 
|     @ApiOperation(value = "新闻列表", notes = "新闻列表") | 
|     @ApiResponses({ | 
|             @ApiResponse(code = 200, message = "success", response = NewsListVo.class) | 
|     }) | 
|     @GetMapping(value = "/findNews") | 
|     public FebsResponse findNews() { | 
|         return new FebsResponse().success().data(newsService.findTopNews()); | 
|     } | 
|   | 
|     @ApiOperation(value = "新闻详情", notes = "新闻详情") | 
|     @GetMapping(value = "/newsDetails/{id}") | 
|     public FebsResponse newsDetails(@PathVariable("id") Long id) { | 
|         MallNewsInfo news = newsService.getById(id); | 
|         if (news == null) { | 
|             return new FebsResponse().fail().message("新闻不存在"); | 
|         } | 
|         return new FebsResponse().success().data(news); | 
|     } | 
|   | 
|     @ApiOperation(value = "首页轮播图", notes = "首页轮播图") | 
|     @GetMapping(value = "/bannerList") | 
|     public FebsResponse findPlatformBannerList() { | 
|         return newsService.findAllBanner(); | 
|     } | 
| } |