|
- package com.simple.controller;
-
- import com.github.pagehelper.PageInfo;
- import com.simple.common.ErrorCode;
- import com.simple.common.Result;
- import com.simple.common.ResultData;
- import com.simple.domain.po.WxCouponOrder;
- import com.simple.exception.MallinkException;
- import com.simple.service.WxCouponOrderService;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiImplicitParam;
- import io.swagger.annotations.ApiImplicitParams;
- import io.swagger.annotations.ApiOperation;
- import org.apache.commons.lang3.StringUtils;
- import org.apache.log4j.Logger;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
-
- import java.util.Map;
-
- @RestController
- @RequestMapping("/api/couponOrder")
- @Api(description = "核销和用户卡券查询接口")
- public class WxCouponOrderController extends BaseController {
- private Logger logger = Logger.getLogger(WxCouponOrderController.class);
-
- @Autowired
- private WxCouponOrderService wxCouponOrderService;
-
- @ApiOperation(value = "核销接口", notes = "{\"couponOrderId\":\"string\"}")
- @PostMapping("verify")
- public ResultData verify(@RequestBody Map<String, String> paramMap) {
- logger.info(paramMap.toString());
- String couponOrderIdStr = paramMap.get("couponOrderId");
- if (StringUtils.isBlank(couponOrderIdStr)) {
- logger.error("couponOrderId不能为空: " + paramMap.toString());
- return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId不能为空");
- }
- Long couponOrderId = 0L;
- try {
- couponOrderId = Long.valueOf(couponOrderIdStr);
- } catch (NumberFormatException e) {
- couponOrderId = 0L;
- logger.error("couponOrderId参数不正确: " + paramMap.toString());
- return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId参数不正确");
- }
- try {
- ResultData rd = wxCouponOrderService.verify(couponOrderId, getUser().getId());
- return rd;
- } catch (MallinkException e) {
- logger.error("核销异常: " + e.getMessage());
- return new ResultData(e.getErrorCode(), e.getMessage());
- } catch (Exception e) {
- logger.error("核销异常: " + e.getMessage());
- return new ResultData(ErrorCode.VERIFY_ERROR, e.getMessage());
- }
- }
-
- @ApiOperation(value = "退券接口", notes = "{\"couponOrderId\":\"string\"}")
- @PostMapping("refund")
- public ResultData refund(@RequestBody Map<String, String> paramMap) {
- logger.info(paramMap.toString());
- String couponOrderIdStr = paramMap.get("couponOrderId");
- if (StringUtils.isBlank(couponOrderIdStr)) {
- logger.error("couponOrderId不能为空: " + paramMap.toString());
- return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId不能为空");
- }
- Long couponOrderId = 0L;
- try {
- couponOrderId = Long.valueOf(couponOrderIdStr);
- } catch (NumberFormatException e) {
- logger.error("couponOrderId参数不正确: " + paramMap.toString());
- return new ResultData(ErrorCode.PARAMETER_NOT_NULL.getCode(), "couponOrderId参数不正确");
- }
- try {
- ResultData rd = wxCouponOrderService.refund(couponOrderId, getUser().getId());
- return rd;
- } catch (MallinkException e) {
- logger.error("退券异常: " + e.getMessage());
- return new ResultData(e.getErrorCode(), e.getMessage());
- } catch (Exception e) {
- logger.error("退券异常: " + e.getMessage());
- return new ResultData(ErrorCode.REFUND_ORDER_ERROR, e.getMessage());
- }
- }
-
- @ApiOperation("分页列表接口")
- @GetMapping("list")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
- @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
- public ResultData list(@ModelAttribute WxCouponOrder wxCouponOrder, Integer pageNum, Integer pageSize) {
- if (null == wxCouponOrder) wxCouponOrder = new WxCouponOrder();
- final PageInfo<WxCouponOrder> page = wxCouponOrderService.listAsPage(wxCouponOrder, pageNum, pageSize);
- return new ResultData(page);
- }
-
- @ApiOperation("根据id更新接口")
- @PostMapping("update")
- public ResultData update(@RequestBody WxCouponOrder wxCouponOrder) {
- wxCouponOrderService.saveOrUpdate(wxCouponOrder);
- return new ResultData();
- }
-
- @ApiOperation("根据id查询接口")
- @GetMapping("/findById")
- @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true)
- public ResultData findById(Long id) {
- return new ResultData(Result.SUCCESS, "查询成功", wxCouponOrderService.getById(id));
- }
- }
|