Authored by Lixiaodi

bug修改

... ... @@ -100,6 +100,7 @@ public class MerchantOrderPaymentService extends AbstractOrderPaymentService {
}
BigDecimal amount = orderInfo.getAmount();
BigDecimal beforeAmount = BigDecimal.ZERO;
SellerWallet sw = sellerWalletMapper.selectByUidAndType(orderInfo.getUid(), 1);
logger.info("充值后回调,处理总账表,orderCode={}", orderInfo.getOrderCode());
if (orderInfo.getType() == TYPE_FIRST_RECHARGE) {
... ... @@ -132,7 +133,7 @@ public class MerchantOrderPaymentService extends AbstractOrderPaymentService {
CommonAlarmEventPublisher.publish("充值保证金余额失败", "ufo.order.recharge", "钱包不可用uid=" + orderInfo.getUid() + ",充值订单号为:" + orderInfo.getOrderCode()+", 充值金额为:"+amount);
return;
}
beforeAmount = sw.getAmount();
sw.setAmount(orderInfo.getAmount());
sw.setUpdateTime(TimeUtils.getTimeStampSecond());
logger.info("后期充值,处理总账表增加余额,bean={}", sw);
... ... @@ -142,7 +143,7 @@ public class MerchantOrderPaymentService extends AbstractOrderPaymentService {
return;
}
}
logger.info("{}修改钱包表余额成功,orderCode={}", orderInfo.getOrderCode());
logger.info("修改钱包表余额成功,orderCode={}", orderInfo.getOrderCode());
// 增加充值记录
SellerWalletDetail swd = new SellerWalletDetail();
... ... @@ -159,7 +160,7 @@ public class MerchantOrderPaymentService extends AbstractOrderPaymentService {
swd.setAvailAmount(orderInfo.getAmount());
swd.setLockAmount(BigDecimal.ZERO);
} else {
swd.setAvailAmount(orderInfo.getAmount().add(sw.getAmount()));
swd.setAvailAmount(orderInfo.getAmount().add(beforeAmount));
swd.setLockAmount(sw.getLockAmount());
}
swd.setIsSet(1);
... ...
... ... @@ -320,7 +320,7 @@ public class PaymentServiceImpl implements IPaymentService {
addPayEnsureRecord(orderInfo.getUid(), orderInfo.getSkup(), orderCode, recordPayment,
ordersPay.getAmount());
} else if (codeMeta.getType() == OrderCodeType.SELLER_RECHARGE_EARNEST_TYPE.getType()) {
addPayEnsureRecord(orderInfo.getUid(), orderInfo.getSkup(), orderCode, recordPayment,
addPayRechargeEnsureRecord(orderInfo.getUid(), orderInfo.getSkup(), orderCode, recordPayment,
ordersPay.getAmount());
}
logger.info("paySuccess finished. orderCode is {}", orderCode);
... ... @@ -1051,6 +1051,22 @@ public class PaymentServiceImpl implements IPaymentService {
addTradeBills(record);
}
public void addPayRechargeEnsureRecord(Integer uid, Integer skup, Long orderCode, Integer payType, BigDecimal amount) {
// 增加流水记录
TradeBills record = new TradeBills();
record.setUid(uid);
record.setOrderCode(orderCode);
record.setUserType(2);// 1:买家uid; 2:卖家uid
record.setPayType(payType);// 1:支付宝; 2:微信
record.setTradeType(1);//1:保证金;2:货款;3:补偿款
record.setIncomeOutcome(2);// 1:用户收入; 2:用户支出
record.setAmount(amount);
record.setSystemAmount(amount);// 有货收入
record.setTradeStatus(100);
record.setCreateTime((int) (System.currentTimeMillis() / 1000));
addTradeBills(record);
}
// 支付货款流水记录
public void addPayBuyRecord(Integer uid, Integer sellerUid, Integer skup, Long orderCode, Integer payType, BigDecimal amount) {
SellerOrderMeta meta = sellerOrderMetaMapper.selectByMetaKey(sellerUid, skup, "fee");
... ...