From 381afd9e82b6e8610aeb00b8d4c0ff138195bb2d Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期五, 01 十一月 2024 13:13:50 +0800
Subject: [PATCH] fix: 钱包供应商财务1
---
src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java b/src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java
index 40beec9..1f3d758 100644
--- a/src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java
@@ -5,6 +5,7 @@
import com.mzl.flower.constant.LockConstants;
import com.mzl.flower.dto.request.wallet.QueryWalletAmountDTO;
import com.mzl.flower.dto.response.supplier.SupplierDTO;
+import com.mzl.flower.entity.supplier.Supplier;
import com.mzl.flower.entity.wallet.WalletDO;
import com.mzl.flower.enums.TrueOrFalseEnum;
import com.mzl.flower.mapper.wallet.WalletMapper;
@@ -17,6 +18,7 @@
import org.redisson.api.RedissonClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
@@ -76,6 +78,8 @@
@Override
public WalletDO getOrCreateBySupplierId(Long supplierId) {
+
+
WalletDO walletDO=getBySupplierId(supplierId);
if(null==walletDO){
RLock lock = redissonClient.getLock(String.format(LockConstants.WALLET_SUPPLIER_ID_KEY, supplierId));
@@ -84,9 +88,12 @@
try {
walletDO=getBySupplierId(supplierId);
if(null!=walletDO) return walletDO;
+
+ final Supplier supplier = supplierService.getSupplierById(supplierId);
+
// 创建一个钱包
walletDO =new WalletDO();
- walletDO.setUserId(SecurityUtils.getUserId());
+ walletDO.setUserId(supplier.getUserId());
walletDO.setSupplierId(supplierId);
walletDO.setTotalAmount(BigDecimal.ZERO);
walletDO.setWithdrawableAmount(BigDecimal.ZERO);
@@ -130,7 +137,10 @@
@Override
public BigDecimal getWaittingSettlementAmount(WalletDO walletDO) {
-
+ if(null!=walletDO && !StringUtils.isEmpty(walletDO.getSupplierId()) && StringUtils.isEmpty(walletDO.getUserId())){
+ final Supplier supplier = supplierService.getSupplierById(walletDO.getSupplierId());
+ walletDO.setUserId(supplier.getUserId());
+ }
return baseMapper.getWaittingSettlementAmount(walletDO);
}
--
Gitblit v1.9.3