mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-07-10 00:48:12 +08:00
交易分账 重构
This commit is contained in:
@@ -980,16 +980,30 @@ public class OrderService {
|
|||||||
ObjectMapper mapper = new ObjectMapper();
|
ObjectMapper mapper = new ObjectMapper();
|
||||||
mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE);
|
mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE);
|
||||||
AdapayCallbackRecord adapayCallbackRecord = mapper.readValue(jsonObject.toJSONString(), AdapayCallbackRecord.class);
|
AdapayCallbackRecord adapayCallbackRecord = mapper.readValue(jsonObject.toJSONString(), AdapayCallbackRecord.class);
|
||||||
adapayCallbackRecord.setExpend(jsonObject.getString("expend"));
|
|
||||||
adapayCallbackRecord.setPaymentId(jsonObject.getString("id"));
|
|
||||||
|
|
||||||
|
// 支付扩展域
|
||||||
|
adapayCallbackRecord.setExpend(jsonObject.getString("expend"));
|
||||||
|
|
||||||
|
// 支付id
|
||||||
|
String paymentId = jsonObject.getString("id");
|
||||||
|
adapayCallbackRecord.setPaymentId(paymentId);
|
||||||
|
|
||||||
|
// 订单附加说明
|
||||||
JSONObject descJson = JSON.parseObject(adapayCallbackRecord.getDescription());
|
JSONObject descJson = JSON.parseObject(adapayCallbackRecord.getDescription());
|
||||||
String type = descJson.getString("type");
|
|
||||||
adapayCallbackRecord.setPayScenario(type);
|
// 支付回调中包含的场景类型
|
||||||
|
String scenarioType = descJson.getString("type");
|
||||||
|
adapayCallbackRecord.setPayScenario(scenarioType);
|
||||||
|
|
||||||
|
// 支付回调中包含的会员id
|
||||||
String memberId = descJson.getString("memberId");
|
String memberId = descJson.getString("memberId");
|
||||||
adapayCallbackRecord.setMemberId(memberId);
|
adapayCallbackRecord.setMemberId(memberId);
|
||||||
|
|
||||||
|
// 支付回调中包含的订单编号
|
||||||
String orderCode = descJson.getString("orderCode");
|
String orderCode = descJson.getString("orderCode");
|
||||||
adapayCallbackRecord.setOrderCode(orderCode);
|
adapayCallbackRecord.setOrderCode(orderCode);
|
||||||
|
|
||||||
|
// 支付金额
|
||||||
BigDecimal amount = adapayCallbackRecord.getPayAmt();
|
BigDecimal amount = adapayCallbackRecord.getPayAmt();
|
||||||
|
|
||||||
// 保存到数据库
|
// 保存到数据库
|
||||||
@@ -998,7 +1012,7 @@ public class OrderService {
|
|||||||
// 微信支付订单 记录会员交易流水
|
// 微信支付订单 记录会员交易流水
|
||||||
MemberTransactionRecord record = MemberTransactionRecord.builder()
|
MemberTransactionRecord record = MemberTransactionRecord.builder()
|
||||||
.orderCode(orderCode)
|
.orderCode(orderCode)
|
||||||
.scenarioType(type)
|
.scenarioType(scenarioType)
|
||||||
.memberId(memberId)
|
.memberId(memberId)
|
||||||
.actionType(ActionTypeEnum.FORWARD.getValue())
|
.actionType(ActionTypeEnum.FORWARD.getValue())
|
||||||
.payMode(PayModeEnum.PAYMENT_OF_WECHATPAY.getValue())
|
.payMode(PayModeEnum.PAYMENT_OF_WECHATPAY.getValue())
|
||||||
@@ -1009,9 +1023,7 @@ public class OrderService {
|
|||||||
.build();
|
.build();
|
||||||
memberTransactionRecordService.insertSelective(record);
|
memberTransactionRecordService.insertSelective(record);
|
||||||
|
|
||||||
String scenarioType = null;
|
if (StringUtils.equals(scenarioType, ScenarioEnum.ORDER.getValue())) { // 1-订单支付
|
||||||
if (StringUtils.equals(type, ScenarioEnum.ORDER.getValue())) { // 1-订单支付
|
|
||||||
scenarioType = ScenarioEnum.ORDER.getValue();
|
|
||||||
// 支付订单成功
|
// 支付订单成功
|
||||||
PayOrderSuccessCallbackDTO callbackDTO = PayOrderSuccessCallbackDTO.builder()
|
PayOrderSuccessCallbackDTO callbackDTO = PayOrderSuccessCallbackDTO.builder()
|
||||||
.orderCode(orderCode)
|
.orderCode(orderCode)
|
||||||
@@ -1031,8 +1043,7 @@ public class OrderService {
|
|||||||
// .createBy(null)
|
// .createBy(null)
|
||||||
// .build();
|
// .build();
|
||||||
// orderPayRecordService.batchInsert(Lists.newArrayList(orderPayRecord));
|
// orderPayRecordService.batchInsert(Lists.newArrayList(orderPayRecord));
|
||||||
} else if (StringUtils.equals(type, ScenarioEnum.BALANCE.getValue())) { // 2-充值余额
|
} else if (StringUtils.equals(scenarioType, ScenarioEnum.BALANCE.getValue())) { // 2-充值余额
|
||||||
scenarioType = ScenarioEnum.BALANCE.getValue();
|
|
||||||
// 充值余额成功
|
// 充值余额成功
|
||||||
UpdateMemberBalanceDTO dto = new UpdateMemberBalanceDTO();
|
UpdateMemberBalanceDTO dto = new UpdateMemberBalanceDTO();
|
||||||
dto.setMemberId(memberId);
|
dto.setMemberId(memberId);
|
||||||
@@ -1051,6 +1062,7 @@ public class OrderService {
|
|||||||
memberAdapayRecord.setPayAmt(amount);
|
memberAdapayRecord.setPayAmt(amount);
|
||||||
memberAdapayRecord.setRefundAmt(BigDecimal.ZERO);
|
memberAdapayRecord.setRefundAmt(BigDecimal.ZERO);
|
||||||
memberAdapayRecord.setSpendAmt(BigDecimal.ZERO);
|
memberAdapayRecord.setSpendAmt(BigDecimal.ZERO);
|
||||||
|
memberAdapayRecord.setFreezeAmt(BigDecimal.ZERO);
|
||||||
memberAdapayRecord.setBalanceAmt(amount);
|
memberAdapayRecord.setBalanceAmt(amount);
|
||||||
memberAdapayRecordService.insertSelective(memberAdapayRecord);
|
memberAdapayRecordService.insertSelective(memberAdapayRecord);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2830,6 +2830,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
this.updateOrderBasicInfo(orderInfo);
|
this.updateOrderBasicInfo(orderInfo);
|
||||||
|
|
||||||
// 记录订单支付流水
|
// 记录订单支付流水
|
||||||
|
List<OrderPayRecord> orderPayRecordList = Lists.newArrayList();
|
||||||
OrderPayRecord orderPayRecord = OrderPayRecord.builder()
|
OrderPayRecord orderPayRecord = OrderPayRecord.builder()
|
||||||
.orderCode(dto.getOrderCode())
|
.orderCode(dto.getOrderCode())
|
||||||
.payMode(dto.getPayMode())
|
.payMode(dto.getPayMode())
|
||||||
@@ -2837,7 +2838,8 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
.acquirer(dto.getAcquirer())
|
.acquirer(dto.getAcquirer())
|
||||||
.createBy(null)
|
.createBy(null)
|
||||||
.build();
|
.build();
|
||||||
orderPayRecordService.batchInsert(Lists.newArrayList(orderPayRecord));
|
orderPayRecordList.add(orderPayRecord);
|
||||||
|
orderPayRecordService.batchInsert(orderPayRecordList);
|
||||||
|
|
||||||
// 是否发送启动指令
|
// 是否发送启动指令
|
||||||
boolean sendStartCharging = true;
|
boolean sendStartCharging = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user