From 4b21638981b5437bd1889384d45bdfda7ccf4662 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Sat, 4 Jan 2020 14:41:51 +0800 Subject: [PATCH] =?UTF-8?q?[=E9=80=80=E5=8D=A1][=E6=96=B0=E5=A2=9E]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/market/MarketDoController.java | 95 +++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 mallinkSysAdmin/src/main/java/com/iformall/controller/market/MarketDoController.java diff --git a/mallinkSysAdmin/src/main/java/com/iformall/controller/market/MarketDoController.java b/mallinkSysAdmin/src/main/java/com/iformall/controller/market/MarketDoController.java new file mode 100644 index 000000000..d632fb296 --- /dev/null +++ b/mallinkSysAdmin/src/main/java/com/iformall/controller/market/MarketDoController.java @@ -0,0 +1,95 @@ +package com.iformall.controller.market; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.SystemControllerLog; +import com.iformall.common.ErrorCode; +import com.iformall.common.IdWorker; +import com.iformall.common.ResultData; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.*; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.*; +import com.iformall.exception.MallinkException; +import com.iformall.mapper.*; +import com.iformall.service.*; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 数据初始化 + */ +@Slf4j +@RestController +@RequestMapping("markdo") +public class MarketDoController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxRefundOrderService wxRefundOrderService; + + @Autowired + private WxAppinfoService wxAppinfoService; + + @ApiOperation(value = "退券退款", notes = "{\"couponOrderId\":\"string\"}") + @PostMapping("/refund") + @SystemControllerLog(description = "券包-退券退款") + public ResultData create(@RequestBody Map paramMap) { + logger.debug("[" + getIpAddr() + "] WxCouponOrderController::create"); + //Assert.notNull(wxRefundOrder.getName(), "角色名不能为空"); + //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名"); + logger.info(paramMap.toString()); + String tenantId = paramMap.get("tenantId"); + String couponOrderIdStr = paramMap.get("couponOrderId"); + if (StringUtils.isBlank(tenantId)) { + logger.error("tenantId不能为空: " + paramMap.toString()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + if (StringUtils.isBlank(couponOrderIdStr)) { + logger.error("couponOrderId不能为空: " + paramMap.toString()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + Long couponOrderId = 0L; + try { + couponOrderId = Long.valueOf(couponOrderIdStr); + } catch (NumberFormatException e) { + logger.error("couponOrderId参数不正确: " + paramMap.toString()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + + TenantEntity tenantEntity = new TenantEntity() {{ + setTenantId(tenantId); + }}; + + WxAppinfo appinfoQ = new WxAppinfo(); + appinfoQ.updateTenantInfo(tenantEntity); + appinfoQ.setType(EnumAppType.B.getCode()); + PageInfo appinfoPageInfo = wxAppinfoService.listAsPage(appinfoQ, 1, 1); + if (appinfoPageInfo.getList().size() > 0) { + WxAppinfo appinfo = appinfoPageInfo.getList().get(0); + if (appinfo != null) { + try { + wxRefundOrderService.createRefundOrder(appinfo, couponOrderId, EnumPayType.PAY_ADMIN_REFUND, null); + return new ResultData(); + } 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); + } + } + } + return new ResultData(ErrorCode.REFUND_ORDER_ERROR.getCode(), "AppInfo获取失败"); + } +}