From c65583b1a068cf5b662e2a50a51ac11afd6b328b Mon Sep 17 00:00:00 2001 From: "autumn.g@foxmail.com" Date: Wed, 29 Mar 2023 15:09:51 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E7=99=BD=E5=90=8D=E5=8D=95=E6=94=AF?= =?UTF-8?q?=E4=BB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jsowell/api/uniapp/PayController.java | 26 +++++++++++++- .../com/jsowell/service/OrderService.java | 36 +++++++++++++++++++ .../common/enums/ykc/ReturnCodeEnum.java | 8 +++-- .../com/jsowell/pile/dto/GetPayModeDTO.java | 20 +++++++++++ .../com/jsowell/pile/vo/uniapp/PayModeVO.java | 23 ++++++++++++ 5 files changed, 110 insertions(+), 3 deletions(-) create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/dto/GetPayModeDTO.java create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PayModeVO.java diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PayController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PayController.java index 2d75fc93a..0b2a5023f 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PayController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PayController.java @@ -11,9 +11,11 @@ import com.jsowell.common.exception.BusinessException; import com.jsowell.common.response.RestApiResponse; import com.jsowell.common.util.StringUtils; import com.jsowell.common.util.id.IdUtils; +import com.jsowell.pile.dto.GetPayModeDTO; import com.jsowell.pile.dto.PayOrderDTO; import com.jsowell.pile.dto.PaymentScenarioDTO; import com.jsowell.pile.dto.WeixinPayDTO; +import com.jsowell.pile.vo.uniapp.PayModeVO; import com.jsowell.service.MemberService; import com.jsowell.service.OrderService; import com.jsowell.wxpay.dto.WeChatRefundDTO; @@ -25,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; +import java.util.List; import java.util.Map; /** @@ -82,7 +85,7 @@ public class PayController extends BaseController { } /** - * 支付订单 + * 7002 支付订单 * http://localhost:8080/uniapp/pay/payOrder * * @param request @@ -131,6 +134,27 @@ public class PayController extends BaseController { return response; } + /** + * 7003 获取支付方式 + * http://localhost:8080/uniapp/pay/getPayMode + */ + @PostMapping("/getPayMode") + public RestApiResponse getPayMode(HttpServletRequest request, @RequestBody GetPayModeDTO dto) { + RestApiResponse response; + try { + // dto.setMemberId(getMemberIdByAuthorization(request)); + List list = orderService.getPayMode(dto); + response = new RestApiResponse<>(ImmutableMap.of("list", list)); + } catch (BusinessException e) { + logger.warn("获取支付方式 warn param:{}", dto.toString(), e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("获取支付方式 error param:{}", dto.toString(), e); + response = new RestApiResponse<>(ReturnCodeEnum.CODE_GET_PAY_MODE); + } + return response; + } + /** * 微信支付回调接口 * http://localhost:8080/uniapp/pay/callback diff --git a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java index 0feaf798c..834c77ebf 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -33,6 +33,7 @@ import com.jsowell.pile.domain.OrderPayRecord; import com.jsowell.pile.domain.WxpayCallbackRecord; import com.jsowell.pile.dto.BasicPileDTO; import com.jsowell.pile.dto.GenerateOrderDTO; +import com.jsowell.pile.dto.GetPayModeDTO; import com.jsowell.pile.dto.ManualSettlementDTO; import com.jsowell.pile.dto.PayOrderDTO; import com.jsowell.pile.dto.PayOrderSuccessCallbackDTO; @@ -56,6 +57,7 @@ import com.jsowell.pile.transaction.service.TransactionService; import com.jsowell.pile.vo.base.PileInfoVO; import com.jsowell.pile.vo.uniapp.MemberVO; import com.jsowell.pile.vo.uniapp.OrderVO; +import com.jsowell.pile.vo.uniapp.PayModeVO; import com.jsowell.pile.vo.uniapp.PileConnectorDetailVO; import com.jsowell.pile.vo.uniapp.UniAppOrderVO; import com.jsowell.pile.vo.web.BillingTemplateVO; @@ -875,4 +877,38 @@ public class OrderService { log.info("人工结算订单-end orderCode:{}", dto.getOrderCode()); return true; } + + /** + * 当前登录会员 获取支付方式 + * @param dto + */ + public List getPayMode(GetPayModeDTO dto) { + List result = Lists.newArrayList(); + // 查询会员在站点是否是白名单用户 + boolean flag = false; + if (flag) { + result.add( + PayModeVO.builder() + .payModeCode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue()) + .payModeName(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getLabel()) + .build() + ); + } else { + // 微信支付 + result.add( + PayModeVO.builder() + .payModeCode(OrderPayModeEnum.PAYMENT_OF_WECHATPAY.getValue()) + .payModeName(OrderPayModeEnum.PAYMENT_OF_WECHATPAY.getLabel()) + .build() + ); + // 余额支付 + result.add( + PayModeVO.builder() + .payModeCode(OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue()) + .payModeName(OrderPayModeEnum.PAYMENT_OF_BALANCE.getLabel()) + .build() + ); + } + return result; + } } diff --git a/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java b/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java index a5988c2dd..6ed74c119 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java +++ b/jsowell-common/src/main/java/com/jsowell/common/enums/ykc/ReturnCodeEnum.java @@ -52,8 +52,6 @@ public enum ReturnCodeEnum { CODE_GET_MOBILE_NUMBER_BY_CODE_ERROR("00100024", "获取微信登录手机号失败"), - CODE_GET_MERCHANT_ID_BY_APP_ID_ERROR("00100024", "获取商户id失败"), - CODE_GET_ORDER_INFO_BY_MEMBER_ID_ERROR("00100025", "通过会员Id查询某状态订单失败"), CODE_GET_OPEN_ID_BY_CODE_ERROR("00100026", "获取openid失败"), @@ -90,6 +88,10 @@ public enum ReturnCodeEnum { CODE_SELECT_PILE_STARTER_STATUS("00100042", "根据订单号查询充电桩启动状态失败"), + CODE_GET_PAY_MODE("00100043", "获取支付方式失败"), + + CODE_GET_MERCHANT_ID_BY_APP_ID_ERROR("00100044", "获取商户id失败"), + CODE_PILE_HAS_BEEN_BINDING_ERROR("00400001", "此桩已被绑定,请联系管理员!"), CODE_AUTHENTICATION_ERROR("00400002", "您的身份信息验证有误,请重试!"), @@ -131,6 +133,8 @@ public enum ReturnCodeEnum { CODE_THIS_CARD_HAS_BEEN_BINDING("00600003", "此卡已被绑定!"), CODE_SECRET_KEY_NOT_SAME("00600004", "密钥错误,请检查!"), + + ; private String value; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/GetPayModeDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/GetPayModeDTO.java new file mode 100644 index 000000000..b47d333de --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/GetPayModeDTO.java @@ -0,0 +1,20 @@ +package com.jsowell.pile.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class GetPayModeDTO { + private String memberToken; + + private String memberId; + + private String pileSn; + + private String stationId; +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PayModeVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PayModeVO.java new file mode 100644 index 000000000..ad9330f5f --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/PayModeVO.java @@ -0,0 +1,23 @@ +package com.jsowell.pile.vo.uniapp; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class PayModeVO { + /** + * 支付方式编号 + * @see com.jsowell.common.enums.ykc.OrderPayModeEnum + */ + private String payModeCode; + + /** + * 支付方式名称 + */ + private String payModeName; +}