|
|
@@ -68,6 +68,7 @@ import org.springblade.salesPart.order.service.IOrderService;
|
|
|
import org.springblade.salesPart.order.service.IPjIntegralDetailService;
|
|
|
import org.springblade.salesPart.payMethod.PayService;
|
|
|
import org.springblade.salesPart.productLaunch.service.IProductLaunchService;
|
|
|
+import org.springblade.salesPart.recycling.mapper.GreenRecyclingRecordMapper;
|
|
|
import org.springblade.salesPart.serial.service.IPjpfSerialService;
|
|
|
import org.springblade.salesPart.settlement.mapper.SettlementMapper;
|
|
|
import org.springblade.salesPart.settlement.service.ISettlementItemsService;
|
|
|
@@ -184,7 +185,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
|
|
|
private final OrderMapper orderMapper;
|
|
|
|
|
|
- private final ShoppingMallDetailMapper shoppingMallDetailMapper;
|
|
|
+ private final GreenRecyclingRecordMapper greenRecyclingRecordMapper;
|
|
|
|
|
|
|
|
|
/**
|
|
|
@@ -6389,6 +6390,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
if ("额度支付".equals(order.getBusinessSource())) {
|
|
|
BigDecimal realTotalMoney = Objects.isNull(order.getPaymentRecoveredBalance()) ? BigDecimal.ZERO : order.getPaymentRecoveredBalance();
|
|
|
corpsDesc.setLimitAmount(corpsDesc.getLimitAmount().add(order.getTotalMoney().subtract(realTotalMoney)));
|
|
|
+ if (realTotalMoney.compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ BigDecimal srcRecoveredBalance = corpsDesc.getRecoveredBalance();
|
|
|
+ corpsDesc.setRecoveredBalance(srcRecoveredBalance.add(realTotalMoney));
|
|
|
+ greenRecyclingRecordMapper.insert(WxParamUtil.parseGreenRecyclingRecord(corpsDesc, AuthUtil.getUserId(), srcRecoveredBalance, realTotalMoney, 2));
|
|
|
+ }
|
|
|
corpsDescMapper.updateById(corpsDesc);
|
|
|
}
|
|
|
if (ObjectUtils.isNull(order.getOldTrxId())) {
|
|
|
@@ -6411,7 +6417,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
BigDecimal recoveredBalanceAmount = orderListNew.stream().map(PjOrder::getPaymentRecoveredBalance).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
BigDecimal realAmount = amount.subtract(recoveredBalanceAmount);
|
|
|
if (realAmount.compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ BigDecimal srcRecoveredBalance = corpsDesc.getRecoveredBalance();
|
|
|
corpsDesc.setRecoveredBalance(corpsDesc.getRecoveredBalance().add(recoveredBalanceAmount));
|
|
|
+ greenRecyclingRecordMapper.insert(WxParamUtil.parseGreenRecyclingRecord(corpsDesc, AuthUtil.getUserId(), srcRecoveredBalance, recoveredBalanceAmount, 2));
|
|
|
corpsDescMapper.updateById(corpsDesc);
|
|
|
}
|
|
|
R<Map<String, String>> r = payService.refund(order.getId(), realAmount, order.getOrdNo(), order.getSrcOrdNo(), order.getOldTrxId());
|