支付占桩订单

This commit is contained in:
2023-08-18 09:52:12 +08:00
parent fe5389ce7a
commit 4af9c7a184
11 changed files with 194 additions and 73 deletions

View File

@@ -129,10 +129,10 @@ public class PayController extends BaseController {
}
response = new RestApiResponse<>(map);
} catch (BusinessException e) {
logger.warn("wechatpay支付订单 warn param:{}", dto.toString(), e);
logger.warn("wechatpay支付订单 warn param:{}", dto, e);
response = new RestApiResponse<>(e.getCode(), e.getMessage());
} catch (Exception e) {
logger.error("wechatpay支付订单 error param:{}", dto.toString(), e);
logger.error("wechatpay支付订单 error param:{}", dto, e);
response = new RestApiResponse<>(ReturnCodeEnum.CODE_ORDER_PAY_ERROR);
} finally {
// 支付订单解锁
@@ -328,15 +328,16 @@ public class PayController extends BaseController {
}
/**
* 支付占桩订单
* 支付占桩订单/占桩订单支付
* https://api.jsowellcloud.com/uniapp/pay/payOccupyPileOrder
*/
@PostMapping("/payOccupyPileOrder")
public RestApiResponse<?> payOccupyPileOrder(HttpServletRequest request, @RequestBody PayOrderDTO dto) {
logger.info("wechatpay支付订单 param:{}", dto.toString());
logger.info("支付占桩订单 param:{}", dto.toString());
RestApiResponse<?> response;
// 支付订单加锁
String lockKey = "pay_order_" + dto.getOrderCode();
String lockKey = "pay_occupy_order_" + dto.getOrderCode();
String lockValue = IdUtils.fastUUID();
try {
String memberId = getMemberIdByAuthorization(request);
@@ -354,7 +355,7 @@ public class PayController extends BaseController {
if (isLock) {
String appId = request.getHeader("appId");
dto.setWechatAppId(appId);
map = orderService.payOrder(dto);
map = orderService.payOccupyPileOrder(dto);
}
response = new RestApiResponse<>(map);
} catch (BusinessException e) {

View File

@@ -3,7 +3,7 @@ package com.jsowell.api.uniapp;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.jsowell.adapay.dto.BalancePaymentRequestDTO;
import com.jsowell.adapay.service.AdapayMemberService;
import com.jsowell.adapay.service.AdapayService;
import com.jsowell.common.annotation.Anonymous;
import com.jsowell.common.core.controller.BaseController;
import com.jsowell.common.enums.ykc.ReturnCodeEnum;
@@ -48,7 +48,7 @@ public class TempController extends BaseController {
private IAdapayMemberAccountService adapayMemberAccountService;
@Autowired
private AdapayMemberService adapayMemberService;
private AdapayService adapayMemberService;
@Autowired
private IMemberBasicInfoService memberBasicInfoService;

View File

@@ -46,6 +46,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.text.ParseException;
@@ -111,9 +112,11 @@ public class OrderService {
@Autowired
private MemberAdapayRecordService memberAdapayRecordService;
@Resource
private OrderPileOccupyService orderPileOccupyService;
/**
* 生成订单
*
* @param dto
* @return
*/
@@ -125,18 +128,8 @@ public class OrderService {
return null;
}
/**
* 获取到vin 查询对应的用户,得到余额
*
* 生成订单
*
* 支付订单
*
*/
/**
* 订单支付
*
* @param dto
*/
public Map<String, Object> payOrder(PayOrderDTO dto) throws Exception {
@@ -154,7 +147,7 @@ public class OrderService {
// 查询订单详情,验证订单中的桩编号是否正确
OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(dto.getOrderCode());
if (orderBasicInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_NULL_ERROR);
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL);
}
if (!(StringUtils.equals(orderBasicInfo.getPileSn(), dto.getPileSn())
&& StringUtils.equals(orderBasicInfo.getConnectorCode(), dto.getConnectorCode()))) {
@@ -241,7 +234,7 @@ public class OrderService {
// 查订单
OrderBasicInfo orderInfo = orderBasicInfoService.getOrderInfoByOrderCode(dto.getOrderCode());
if (orderInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_NULL_ERROR);
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL);
}
// 判断订单状态是不是已经结算了
if (StringUtils.equals(orderInfo.getOrderStatus(), OrderStatusEnum.ORDER_COMPLETE.getValue())) {
@@ -540,7 +533,7 @@ public class OrderService {
public UniAppOrderVO getUniAppOrderDetail(String orderCode) {
OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode);
if (orderBasicInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_NULL_ERROR);
throw new BusinessException(ReturnCodeEnum.CODE_QUERY_ORDER_INFO_IS_NULL);
}
UniAppOrderVO vo = new UniAppOrderVO();
vo.setOrderCode(orderBasicInfo.getOrderCode());
@@ -1148,5 +1141,7 @@ public class OrderService {
log.info("支付撤销失败 data:{}", JSON.toJSONString(data));
}
public Map<String, Object> payOccupyPileOrder(PayOrderDTO dto) {
return orderPileOccupyService.payOccupyPileOrder(dto);
}
}

View File

@@ -6,7 +6,7 @@ import com.jsowell.adapay.dto.AdapayMemberInfoDTO;
import com.jsowell.adapay.dto.SettleAccountDTO;
import com.jsowell.adapay.dto.UpdateAccountConfigDTO;
import com.jsowell.adapay.dto.WithdrawDTO;
import com.jsowell.adapay.service.AdapayMemberService;
import com.jsowell.adapay.service.AdapayService;
import com.jsowell.adapay.vo.AdapayAccountBalanceVO;
import com.jsowell.common.core.controller.BaseController;
import com.jsowell.common.core.domain.AjaxResult;
@@ -26,7 +26,7 @@ import java.util.Map;
public class AdapayMemberController extends BaseController {
@Autowired
private AdapayMemberService adapayMemberService;
private AdapayService adapayMemberService;
/**
* 创建结算账户

View File

@@ -15,7 +15,7 @@ import com.huifu.adapay.model.Refund;
import com.jsowell.JsowellApplication;
import com.jsowell.adapay.config.AbstractAdapayConfig;
import com.jsowell.adapay.factory.AdapayConfigFactory;
import com.jsowell.adapay.service.AdapayMemberService;
import com.jsowell.adapay.service.AdapayService;
import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.core.domain.entity.SysDictData;
@@ -175,7 +175,7 @@ public class SpringBootTestController {
private IAdapayRefundRecordService adapayRefundRecordService;
@Autowired
private AdapayMemberService adapayMemberService;
private AdapayService adapayMemberService;
@Autowired
private AMapService aMapService;
@@ -366,7 +366,7 @@ public class SpringBootTestController {
payOrderDTO.setMemberId(dto.getMemberId());
// payOrderDTO.setCode();
// payOrderDTO.setLockValue();
payOrderDTO.setOrderBasicInfo(basicInfo);
// payOrderDTO.setOrderBasicInfo(basicInfo);
Map<String, Object> map = orderBasicInfoService.payOrder(payOrderDTO);