package cn.lili.controller.other; import cn.lili.common.enums.ResultUtil; import cn.lili.common.vo.ResultMessage; import cn.lili.modules.page.entity.dos.Article; import cn.lili.modules.page.entity.dto.ArticleSearchParams; import cn.lili.modules.page.entity.enums.ArticleEnum; import cn.lili.modules.page.entity.vos.ArticleVO; import cn.lili.modules.page.service.ArticleService; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; /** * 管理端,文章接口 * * @author pikachu * @since 2020-05-06 15:18:56 */ @RestController @Api(tags = "管理端,文章接口") @RequestMapping("/manager/other/article") public class ArticleManagerController { /** * 文章 */ @Autowired private ArticleService articleService; @ApiOperation(value = "查看文章") @ApiImplicitParam(name = "id", value = "文章ID", required = true, dataType = "String", paramType = "path") @GetMapping(value = "/{id}") public ResultMessage
get(@PathVariable String id) { return ResultUtil.data(articleService.getById(id)); } @ApiOperation(value = "根据类型查看文章") @ApiImplicitParam(name = "type", value = "文章类型", required = true, dataType = "String", paramType = "path") @GetMapping(value = "/type/{type}") public ResultMessage
getByType(@PathVariable String type) { return ResultUtil.data(articleService.customGetByType(type)); } @ApiOperation(value = "分页获取") @ApiImplicitParams({ @ApiImplicitParam(name = "categoryId", value = "文章分类ID", paramType = "query"), @ApiImplicitParam(name = "title", value = "标题", paramType = "query") }) @GetMapping(value = "/getByPage") public ResultMessage> getByPage(ArticleSearchParams articleSearchParams) { return ResultUtil.data(articleService.managerArticlePage(articleSearchParams)); } @ApiOperation(value = "添加文章") @PostMapping(consumes = "application/json", produces = "application/json") public ResultMessage
save(@RequestBody Article article) { article.setType(ArticleEnum.OTHER.name()); articleService.save(article); return ResultUtil.data(article); } @ApiOperation(value = "修改文章--文章id") @ApiImplicitParam(name = "id", value = "文章ID", required = true, paramType = "path") @PutMapping(value = "update/{id}", consumes = "application/json", produces = "application/json") public ResultMessage
update(@RequestBody Article article, @PathVariable("id") String id) { article.setId(id); return ResultUtil.data(articleService.updateArticle(article)); } @ApiOperation(value = "修改文章--文章类型") @ApiImplicitParam(name = "type", value = "文章类型", required = true, paramType = "path") @PutMapping(value = "updateArticle/{type}", consumes = "application/json", produces = "application/json") public ResultMessage
updateArticle(@RequestBody Article article, @PathVariable("type") String type,String id) { article.setId(id); article.setType(type); return ResultUtil.data(articleService.updateArticleType(article)); } @ApiOperation(value = "修改文章状态") @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "文章ID", required = true, paramType = "path"), @ApiImplicitParam(name = "status", value = "操作状态", required = true, paramType = "query") }) @PutMapping("update/status/{id}") public ResultMessage
updateStatus(@PathVariable("id") String id, boolean status) { articleService.updateArticleStatus(id, status); return ResultUtil.success(); } @ApiOperation(value = "批量删除") @ApiImplicitParam(name = "id", value = "文章ID", required = true, dataType = "String", paramType = "path") @DeleteMapping(value = "/delByIds/{id}") public ResultMessage delAllByIds(@PathVariable String id) { articleService.customRemove(id); return ResultUtil.success(); } }