From 0122ed99144951862ca47cd45e66e5550b6bc9eb Mon Sep 17 00:00:00 2001 From: gaoqr <13665037151@163.com> Date: Wed, 3 Sep 2025 16:29:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=B4=AD=E4=B9=B0=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E7=B1=BB=E5=9E=8B=E7=9A=84=E6=94=B6=E6=94=AF=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E6=B5=81=E6=B0=B4=E5=8F=B7=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/system/enums/pay/PayConstants.java | 4 +++- .../service/pay/PayOrderServiceImpl.java | 1 + .../service/pay/PayProductProcessor.java | 20 ++++++++++++++----- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/PayConstants.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/PayConstants.java index 00659f363..12e9c149e 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/PayConstants.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/enums/pay/PayConstants.java @@ -11,7 +11,9 @@ public class PayConstants { public static final String PAY_PASSBACK_PARAMS_KEY = "passback_params";// 回调参数passback key - public static final String PAY_ORDER_PREFIX_FORMAT = "P%dO%s"; + public static final String PAY_ORDER_PREFIX_FORMAT = "P%dO%s"; // 第三方支付流水号格式 + + public static final String PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT = "P%dD%s"; // 产品购买流水号格式 public static final String PAY_PASSBACK_PARAMS_PURCHASE_RECORD_ID_KEY = "purchaseRecordId"; //支付passback 购买记录key } \ No newline at end of file diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java index 92fdef5d8..f0c96dddd 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayOrderServiceImpl.java @@ -628,6 +628,7 @@ public class PayOrderServiceImpl implements PayOrderService { // 2、新增退回的收支记录 IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, record.getId())) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.INCOME.getCode()) .cashAmountChange(accountBalanceSpent) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java index a3fde7216..be9f1b748 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/pay/PayProductProcessor.java @@ -118,8 +118,9 @@ public class PayProductProcessor { throw new ServiceException(PAY_PRODUCT_BALANCE_INSUFFICIENT); } // 新增购买记录 + long purchaseId = IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId(); PurchaseRecordDO purchaseRecordDO = PurchaseRecordDO.builder() - .id(IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId()) + .id(purchaseId) .organId(organId) .productId(productsDO.getId()) .productName(productsDO.getProductName()) @@ -143,6 +144,7 @@ public class PayProductProcessor { BigDecimal giftAmount = organAmountDO.getGiftAmount(); IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, purchaseId)) .purchaseId(purchaseRecordDO.getId()) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode()) @@ -169,8 +171,9 @@ public class PayProductProcessor { throw new ServiceException(PAY_PRODUCT_GIFT_BALANCE_INSUFFICIENT); } // 新增购买记录 + long purchaseId = IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId(); PurchaseRecordDO purchaseRecordDO = PurchaseRecordDO.builder() - .id(IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId()) + .id(purchaseId) .organId(organId) .productId(productsDO.getId()) .productName(productsDO.getProductName()) @@ -194,6 +197,7 @@ public class PayProductProcessor { BigDecimal amount = organAmountDO.getAmount(); IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, purchaseId)) .purchaseId(purchaseRecordDO.getId()) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode()) @@ -287,8 +291,9 @@ public class PayProductProcessor { BigDecimal usedBalance = BigDecimal.ZERO; // 新增购买记录 + long purchaseId = IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId(); PurchaseRecordDO purchaseRecordDO = PurchaseRecordDO.builder() - .id(IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId()) + .id(purchaseId) .organId(organId) .productId(productsDO.getId()) .productName(productsDO.getProductName()) @@ -331,6 +336,7 @@ public class PayProductProcessor { BigDecimal newGift = gift.subtract(usedGift); IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, purchaseId)) .purchaseId(purchaseRecordDO.getId()) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode()) @@ -358,8 +364,9 @@ public class PayProductProcessor { BigDecimal usedBalance = BigDecimal.ZERO; // 新增购买记录 + long purchaseId = IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId(); PurchaseRecordDO purchaseRecordDO = PurchaseRecordDO.builder() - .id(IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId()) + .id(purchaseId) .organId(organId) .productId(productsDO.getId()) .productName(productsDO.getProductName()) @@ -389,6 +396,7 @@ public class PayProductProcessor { BigDecimal giftAmount = organAmountDO.getGiftAmount(); IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, purchaseId)) .purchaseId(purchaseRecordDO.getId()) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode()) @@ -499,8 +507,9 @@ public class PayProductProcessor { BigDecimal usedBalance = BigDecimal.ZERO; // 新增购买记录 + long purchaseId = IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId(); PurchaseRecordDO purchaseRecordDO = PurchaseRecordDO.builder() - .id(IdUtil.getSnowflake(mybatisIdProperties.getWorkerId(), mybatisIdProperties.getDatacenterId()).nextId()) + .id(purchaseId) .organId(organId) .productId(productsDO.getId()) .productName(productsDO.getProductName()) @@ -537,6 +546,7 @@ public class PayProductProcessor { BigDecimal newGift = gift.subtract(usedGift); IncomeExpenseDetailsDO incomeExpenseDetailsDO = IncomeExpenseDetailsDO.builder() .organId(organId) + .businessNo(String.format(PayConstants.PAY_PRODUCT_DETAIL_BUSINESSNO_PREFIX_FORMAT, organId, purchaseId)) .purchaseId(purchaseRecordDO.getId()) .tradeType(TradeTypeEnum.PRODUCT.getCode()) .incomeExpenseType(IncomeExpenseTypeEnum.EXPENSES.getCode())