mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
update订单逻辑改造工厂模式
This commit is contained in:
@@ -14,6 +14,9 @@ import com.jsowell.common.util.id.IdUtils;
|
||||
import com.jsowell.pile.domain.MemberBasicInfo;
|
||||
import com.jsowell.pile.dto.*;
|
||||
import com.jsowell.pile.service.IMemberBasicInfoService;
|
||||
import com.jsowell.pile.service.IPileMerchantInfoService;
|
||||
import com.jsowell.pile.service.orderlogic.AbstractOrderLogic;
|
||||
import com.jsowell.pile.service.orderlogic.OrderLogicFactory;
|
||||
import com.jsowell.pile.vo.uniapp.PayModeVO;
|
||||
import com.jsowell.service.MemberService;
|
||||
import com.jsowell.service.OrderService;
|
||||
@@ -48,6 +51,9 @@ public class PayController extends BaseController {
|
||||
@Autowired
|
||||
private IMemberBasicInfoService memberBasicInfoService;
|
||||
|
||||
@Autowired
|
||||
private IPileMerchantInfoService pileMerchantInfoService;
|
||||
|
||||
/**
|
||||
* 充值余额支付/微信余额充值
|
||||
* 提供给小程序使用
|
||||
@@ -273,7 +279,13 @@ public class PayController extends BaseController {
|
||||
// }
|
||||
dto.setOpenId(memberBasicInfo.getOpenId());
|
||||
// 充值余额 附加参数
|
||||
Map<String, Object> weixinMap = memberService.rechargeBalanceWithAdapay(dto);
|
||||
// Map<String, Object> weixinMap = memberService.rechargeBalanceWithAdapay(dto);
|
||||
|
||||
String mode = pileMerchantInfoService.getDelayModeByWechatAppId(dto.getWechatAppId());
|
||||
// 获取处理逻辑
|
||||
AbstractOrderLogic orderLogic = OrderLogicFactory.getOrderLogic(mode);
|
||||
Map<String, Object> weixinMap = orderLogic.rechargeBalance(dto);
|
||||
|
||||
response = new RestApiResponse<>(ImmutableMap.of("weixinMap", weixinMap));
|
||||
} catch (BusinessException e) {
|
||||
logger.error("汇付余额充值接口 error", e);
|
||||
|
||||
@@ -67,7 +67,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
*/
|
||||
@Override
|
||||
public OrderBasicInfo generateOrder(GenerateOrderDTO dto) throws ParseException {
|
||||
logger.info("{}-生成订单start, param:{}", this.getClass().getSimpleName(), JSONObject.toJSONString(dto));
|
||||
logger.info("【{}】-生成订单start, param:{}", this.getClass().getSimpleName(), JSONObject.toJSONString(dto));
|
||||
// 处理前端传的参数
|
||||
analysisPileParameter(dto);
|
||||
|
||||
@@ -185,7 +185,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
|
||||
@Override
|
||||
public Map<String, Object> payOrder(PayOrderDTO dto) {
|
||||
logger.info("{}-支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
logger.info("【{}】-支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByOrderCode(dto.getOrderCode());
|
||||
if (orderInfo == null) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL);
|
||||
@@ -220,7 +220,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void balancePayOrder(PayOrderDTO dto) {
|
||||
logger.info("{}-余额支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
logger.info("【{}】-余额支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
// 订单编号
|
||||
String orderCode = dto.getOrderCode();
|
||||
// 支付金额
|
||||
@@ -328,7 +328,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
* 在线支付订单
|
||||
*/
|
||||
public Map<String, Object> onlinePaymentOrder(PayOrderDTO dto) {
|
||||
logger.info("{}-在线支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
logger.info("【{}】-在线支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
Map<String, Object> weixinMap = adapayService.createPayment(dto);
|
||||
return weixinMap;
|
||||
}
|
||||
@@ -337,7 +337,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
* 白名单支付订单
|
||||
*/
|
||||
public void whitelistPaymentOrder(PayOrderDTO dto) {
|
||||
logger.info("{}-白名单支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
logger.info("【{}】-白名单支付订单start, param:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
String orderCode = dto.getOrderCode();
|
||||
BigDecimal payAmount = dto.getPayAmount();
|
||||
String payMode = dto.getPayMode();
|
||||
@@ -358,7 +358,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
*/
|
||||
@Override
|
||||
public void settleOrder(TransactionRecordsData data, OrderBasicInfo orderBasicInfo) {
|
||||
logger.info("{}-结算订单start data:{}, orderBasicInfo:{}", this.getClass().getSimpleName(), data.toString(), JSON.toJSONString(orderBasicInfo));
|
||||
logger.info("【{}】-结算订单start data:{}, orderBasicInfo:{}", this.getClass().getSimpleName(), data.toString(), JSON.toJSONString(orderBasicInfo));
|
||||
// 判断订单状态
|
||||
if (StringUtils.equals(orderBasicInfo.getOrderStatus(), OrderStatusEnum.ORDER_COMPLETE.getValue())) {
|
||||
logger.info("结算订单:{}, 是订单完成状态", orderBasicInfo.getOrderCode());
|
||||
@@ -425,7 +425,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
logger.info("订单:{}使用白名单支付,不进行退款处理", orderBasicInfo.getOrderCode());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.error("{}-订单退款逻辑异常orderCode:{}", this.getClass().getSimpleName(), orderBasicInfo.getOrderCode(), e);
|
||||
logger.error("【{}】-订单退款逻辑异常orderCode:{}", this.getClass().getSimpleName(), orderBasicInfo.getOrderCode(), e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -436,6 +436,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic {
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> rechargeBalance(WeixinPayDTO dto) {
|
||||
logger.info("【{}】-余额充值start dto:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
// 获取支付配置
|
||||
AbstractAdapayConfig config = AdapayConfigFactory.getConfig(dto.getWechatAppId());
|
||||
if (config == null) {
|
||||
|
||||
@@ -408,6 +408,7 @@ public class NotDelayMerchantOrderLogic extends AbstractOrderLogic{
|
||||
*/
|
||||
@Override
|
||||
public Map<String, Object> rechargeBalance(WeixinPayDTO dto) {
|
||||
logger.info("【{}】-余额充值start dto:{}", this.getClass().getSimpleName(), JSON.toJSONString(dto));
|
||||
// 获取支付配置
|
||||
AbstractAdapayConfig config = AdapayConfigFactory.getConfig(dto.getWechatAppId());
|
||||
if (config == null) {
|
||||
@@ -439,10 +440,6 @@ public class NotDelayMerchantOrderLogic extends AbstractOrderLogic{
|
||||
map.put("payMode", payMode);
|
||||
map.put("memberId", dto.getMemberId());
|
||||
createAdaPaymentParam.setDescription(JSON.toJSONString(map));
|
||||
// 延时分账
|
||||
if (StringUtils.isNotBlank(payMode)) {
|
||||
createAdaPaymentParam.setPay_mode(payMode);
|
||||
}
|
||||
try {
|
||||
logger.info("创建汇付支付参数:{}", JSONObject.toJSONString(createAdaPaymentParam));
|
||||
Map<String, Object> response = Payment.create(BeanMap.create(createAdaPaymentParam), config.getWechatAppId());
|
||||
|
||||
@@ -5,9 +5,11 @@ import com.jsowell.wxpay.common.WeChatPayParameter;
|
||||
import com.jsowell.wxpay.utils.WechatPayUtils;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.boot.CommandLineRunner;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
// @Order(value = 2)
|
||||
// @Component
|
||||
@Order(value = 2)
|
||||
@Component
|
||||
public class WechatPayConfig implements CommandLineRunner {
|
||||
/**
|
||||
* 公众号appid
|
||||
|
||||
@@ -2,8 +2,9 @@ package com.jsowell.wxpay.config;
|
||||
|
||||
import org.springframework.beans.factory.InitializingBean;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
// @Component
|
||||
@Component
|
||||
public class WeixinLoginProperties implements InitializingBean {
|
||||
|
||||
@Value("${weixin.login.gateway}")
|
||||
|
||||
Reference in New Issue
Block a user