BlogController.java 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.hichina.admin.hichinaadminbackend.controller;
  2. import com.aliyuncs.utils.StringUtils;
  3. import com.github.pagehelper.PageHelper;
  4. import com.hichina.admin.hichinaadminbackend.mapper.BlogMapper;
  5. import com.hichina.admin.hichinaadminbackend.model.DTO.*;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.transaction.annotation.Transactional;
  8. import org.springframework.web.bind.annotation.*;
  9. import java.util.List;
  10. @RestController
  11. @RequestMapping("/api/v1/blog")
  12. public class BlogController {
  13. @Autowired
  14. private BlogMapper blogMapper;
  15. @PutMapping("/batchDraft")
  16. @Transactional
  17. public HichinaResponse draftBlogs(@RequestBody GeneralBatchDraftRequest req){
  18. blogMapper.batchDraft(req.getToDraft());
  19. HichinaResponse ret = new HichinaResponse();
  20. ret.setOk(true);
  21. ret.setData(req.getToDraft());
  22. ret.setMessage("成功批量存草稿博客");
  23. return ret;
  24. }
  25. @DeleteMapping("/batch")
  26. @Transactional
  27. public HichinaResponse deleteBlogs(@RequestBody GeneralBatchDeleteRequest req){
  28. // delete base product record
  29. blogMapper.batchDelete(req.getToDelete());
  30. HichinaResponse ret = new HichinaResponse();
  31. ret.setOk(true);
  32. ret.setData(req.getToDelete());
  33. ret.setMessage("成功批量删除博客");
  34. return ret;
  35. }
  36. @GetMapping("/list")
  37. public HichinaResponse getBloglist(@RequestParam(value = "page", required = true) Integer page,
  38. @RequestParam(value = "pageSize", required = true) Integer size,
  39. @RequestParam(value = "query") String query){
  40. HichinaResponse ret = new HichinaResponse();
  41. if(page>0){
  42. PageHelper.startPage(page,size);
  43. }
  44. List<BlogListItemDTO> blogListItemDTOS;
  45. Integer cnt = 0;
  46. if(StringUtils.isEmpty(query)){
  47. blogListItemDTOS = blogMapper.findBlogSummaryList();
  48. cnt = blogMapper.countBlogSummaryList();
  49. }else{
  50. blogListItemDTOS = blogMapper.findBlogSummaryListByQuery(query);
  51. cnt = blogMapper.countBlogSummaryListByQuery(query);
  52. }
  53. PaginationWrapper paginationWrapper = new PaginationWrapper();
  54. paginationWrapper.setData(blogListItemDTOS);
  55. paginationWrapper.setPageSize(size);
  56. paginationWrapper.setCurrentPage(page);
  57. paginationWrapper.setTotal(cnt);
  58. ret.setData(paginationWrapper);
  59. ret.setOk(true);
  60. ret.setMessage("Succeed getting blog list");
  61. return ret;
  62. }
  63. }