DiagLantoneProductController.java 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package com.diagbot.web;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.diagbot.annotation.SysLogger;
  5. import com.diagbot.dto.RespDTO;
  6. import com.diagbot.entity.LantoneProduct;
  7. import com.diagbot.entity.wrapper.LantoneProductWrapper;
  8. import com.diagbot.facade.LantoneProductFacade;
  9. import com.diagbot.facade.OpenedProductsFacade;
  10. import com.diagbot.vo.OppendedProductVO;
  11. import io.swagger.annotations.ApiOperation;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.transaction.annotation.Transactional;
  14. import org.springframework.web.bind.annotation.GetMapping;
  15. import org.springframework.web.bind.annotation.PostMapping;
  16. import org.springframework.web.bind.annotation.RequestMapping;
  17. import org.springframework.web.bind.annotation.RestController;
  18. import java.util.List;
  19. /**
  20. * @Description: 朗通产品 前端控制器
  21. * @Author: wangyu
  22. * @Date: 15:46 2018/9/17
  23. */
  24. @RestController
  25. @RequestMapping("/diagLantoneProduct")
  26. public class DiagLantoneProductController {
  27. @Autowired
  28. private LantoneProductFacade lantoneProductFacade;
  29. @Autowired
  30. private OpenedProductsFacade openedProductsFacade;
  31. @ApiOperation(value = "添加产品线",
  32. notes = "name:产品名,必填<br>" +
  33. "decription:产品描述,必填<br> " +
  34. "url:产品访问路径,必填<br>" +
  35. "charge_type:支付方式,必填<br>")
  36. @PostMapping("/addProducts")
  37. @SysLogger("addProducts")
  38. @Transactional
  39. public RespDTO<LantoneProduct> addProducts(LantoneProduct lantoneProduct){
  40. return RespDTO.onSuc(lantoneProductFacade.addProducts(lantoneProduct));
  41. }
  42. @ApiOperation(value = "分页查询查询产品线",
  43. notes = "name:添加后则根据产品名称查询,选填<br>"+
  44. "根据每页显示条数,默认 10,和当前页<br>")
  45. @GetMapping("/selectProduct")
  46. @SysLogger("selectProduct")
  47. public RespDTO<LantoneProduct> selectProduct(Page page , String name){
  48. IPage<LantoneProduct> pages = lantoneProductFacade.selectProduct(page,name);
  49. return RespDTO.onSuc(pages);
  50. }
  51. @ApiOperation(value = "修改产品(产品启用同接口)",
  52. notes = "id:根据产品id修改产品内容,必填<br>")
  53. @PostMapping("/updateProduct")
  54. @SysLogger("updateProduct")
  55. public RespDTO<LantoneProduct> updateProduct(LantoneProduct lantoneProduct){
  56. return RespDTO.onSuc(lantoneProductFacade.updateProduct(lantoneProduct));
  57. }
  58. @ApiOperation(value = "删除产品",
  59. notes = "id:根据产品id删除产品,必填<br>")
  60. @PostMapping("/deleteProduct")
  61. @SysLogger("deleteProduct")
  62. public RespDTO<LantoneProduct> deleteProduct(LantoneProduct lantoneProduct){
  63. return RespDTO.onSuc(lantoneProductFacade.deleteProduct(lantoneProduct));
  64. }
  65. @ApiOperation(value = "更改产品状态(启用/停用)",
  66. notes = "id:根据产品id更改产品状态,必填<br>")
  67. @PostMapping("/productStatus")
  68. @SysLogger("productStatus")
  69. public RespDTO<LantoneProduct> productStatus(LantoneProduct lantoneProduct){
  70. return RespDTO.onSuc(lantoneProductFacade.productStatus(lantoneProduct));
  71. }
  72. @ApiOperation(value = "查询当条产品线所有已开通用户",
  73. notes = "id:根据产品id查询所有已开通本产品用户,必填<br>"+
  74. "current:页数<br>"+
  75. "size:每页显示条数"
  76. )
  77. @PostMapping("/opendedProduct")
  78. @SysLogger("opendedProduct")
  79. public RespDTO<LantoneProduct> opendedProduct(OppendedProductVO oppendedProductVO){
  80. return RespDTO.onSuc(lantoneProductFacade.opendedProduct(oppendedProductVO));
  81. }
  82. @ApiOperation(value = "根据用户id查询当前用户已开通产品")
  83. @GetMapping("/opendedProductByCurrentUser")
  84. @SysLogger("opendedProductByCurrentUser")
  85. public RespDTO opendedProductByCurrentUser() {
  86. List<LantoneProductWrapper> list = lantoneProductFacade.opendedProductByCurrentUser();
  87. return RespDTO.onSuc(list);
  88. }
  89. }