Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 

112 строки
4.9 KiB

  1. package com.simple.controller;
  2. import com.github.pagehelper.PageInfo;
  3. import com.simple.common.ErrorCode;
  4. import com.simple.common.Result;
  5. import com.simple.common.ResultData;
  6. import com.simple.domain.po.WxCouponOrder;
  7. import com.simple.exception.MallinkException;
  8. import com.simple.service.WxCouponOrderService;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiImplicitParam;
  11. import io.swagger.annotations.ApiImplicitParams;
  12. import io.swagger.annotations.ApiOperation;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.apache.log4j.Logger;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.*;
  17. import java.util.Map;
  18. @RestController
  19. @RequestMapping("/api/couponOrder")
  20. @Api(description = "核销和用户卡券查询接口")
  21. public class WxCouponOrderController extends BaseController {
  22. private Logger logger = Logger.getLogger(WxCouponOrderController.class);
  23. @Autowired
  24. private WxCouponOrderService wxCouponOrderService;
  25. @ApiOperation(value = "核销接口", notes = "{\"couponOrderId\":\"string\"}")
  26. @PostMapping("verify")
  27. public ResultData verify(@RequestBody Map<String, String> paramMap) {
  28. logger.info(paramMap.toString());
  29. String couponOrderIdStr = paramMap.get("couponOrderId");
  30. if (StringUtils.isBlank(couponOrderIdStr)) {
  31. logger.error("couponOrderId不能为空: " + paramMap.toString());
  32. return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId不能为空");
  33. }
  34. Long couponOrderId = 0L;
  35. try {
  36. couponOrderId = Long.valueOf(couponOrderIdStr);
  37. } catch (NumberFormatException e) {
  38. couponOrderId = 0L;
  39. logger.error("couponOrderId参数不正确: " + paramMap.toString());
  40. return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId参数不正确");
  41. }
  42. try {
  43. ResultData rd = wxCouponOrderService.verify(couponOrderId, getUser().getId());
  44. return rd;
  45. } catch (MallinkException e) {
  46. logger.error("核销异常: " + e.getMessage());
  47. return new ResultData(e.getErrorCode(), e.getMessage());
  48. } catch (Exception e) {
  49. logger.error("核销异常: " + e.getMessage());
  50. return new ResultData(ErrorCode.VERIFY_ERROR, e.getMessage());
  51. }
  52. }
  53. @ApiOperation(value = "退券接口", notes = "{\"couponOrderId\":\"string\"}")
  54. @PostMapping("refund")
  55. public ResultData refund(@RequestBody Map<String, String> paramMap) {
  56. logger.info(paramMap.toString());
  57. String couponOrderIdStr = paramMap.get("couponOrderId");
  58. if (StringUtils.isBlank(couponOrderIdStr)) {
  59. logger.error("couponOrderId不能为空: " + paramMap.toString());
  60. return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId不能为空");
  61. }
  62. Long couponOrderId = 0L;
  63. try {
  64. couponOrderId = Long.valueOf(couponOrderIdStr);
  65. } catch (NumberFormatException e) {
  66. logger.error("couponOrderId参数不正确: " + paramMap.toString());
  67. return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId参数不正确");
  68. }
  69. try {
  70. ResultData rd = wxCouponOrderService.refund(couponOrderId, getUser().getId());
  71. return rd;
  72. } catch (MallinkException e) {
  73. logger.error("退券异常: " + e.getMessage());
  74. return new ResultData(e.getErrorCode(), e.getMessage());
  75. } catch (Exception e) {
  76. logger.error("退券异常: " + e.getMessage());
  77. return new ResultData(ErrorCode.REFUND_ORDER_ERROR, e.getMessage());
  78. }
  79. }
  80. @ApiOperation("分页列表接口")
  81. @GetMapping("list")
  82. @ApiImplicitParams({
  83. @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
  84. @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
  85. public ResultData list(@ModelAttribute WxCouponOrder wxCouponOrder, Integer pageNum, Integer pageSize) {
  86. if (null == wxCouponOrder) wxCouponOrder = new WxCouponOrder();
  87. final PageInfo<WxCouponOrder> page = wxCouponOrderService.listAsPage(wxCouponOrder, pageNum, pageSize);
  88. return new ResultData(page);
  89. }
  90. @ApiOperation("根据id更新接口")
  91. @PostMapping("update")
  92. public ResultData update(@RequestBody WxCouponOrder wxCouponOrder) {
  93. wxCouponOrderService.saveOrUpdate(wxCouponOrder);
  94. return new ResultData();
  95. }
  96. @ApiOperation("根据id查询接口")
  97. @GetMapping("/findById")
  98. @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true)
  99. public ResultData findById(Long id) {
  100. return new ResultData(Result.SUCCESS, "查询成功", wxCouponOrderService.getById(id));
  101. }
  102. }