From 8eff6445ef97d920d61c60046aaf50e1b5be4d4e Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期一, 28 十月 2024 17:14:14 +0800
Subject: [PATCH] add: 钱包供应商财务
---
src/main/java/com/mzl/flower/mapper/wallet/WalletBillRecordMapper.java | 5 --
src/main/java/com/mzl/flower/service/impl/wallet/WalletServiceImpl.java | 2
src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java | 3 +
src/main/resources/mapper/wallet/WalletBillRecordMapper.xml | 8 +--
src/main/java/com/mzl/flower/service/impl/wallet/WalletBillRecordServiceImpl.java | 2
src/main/java/com/mzl/flower/web/v2/wallet/WalletBillRecordController.java | 42 ++------------------
6 files changed, 13 insertions(+), 49 deletions(-)
diff --git a/src/main/java/com/mzl/flower/mapper/wallet/WalletBillRecordMapper.java b/src/main/java/com/mzl/flower/mapper/wallet/WalletBillRecordMapper.java
index a9e005c..b8fcff6 100644
--- a/src/main/java/com/mzl/flower/mapper/wallet/WalletBillRecordMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/wallet/WalletBillRecordMapper.java
@@ -1,14 +1,11 @@
package com.mzl.flower.mapper.wallet;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mzl.flower.dto.request.wallet.QueryWalletBillDTO;
-import com.mzl.flower.dto.response.wallet.WalletBillRecordVO;
-import com.mzl.flower.dto.response.wallet.WalletWithdrawRecordVO;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mzl.flower.dto.request.wallet.QueryWalletBillRecordDTO;
import com.mzl.flower.dto.response.wallet.WalletBillRecordVO;
import com.mzl.flower.entity.wallet.WalletBillRecordDO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
diff --git a/src/main/java/com/mzl/flower/service/impl/wallet/WalletBillRecordServiceImpl.java b/src/main/java/com/mzl/flower/service/impl/wallet/WalletBillRecordServiceImpl.java
index a093b30..455e4c9 100644
--- a/src/main/java/com/mzl/flower/service/impl/wallet/WalletBillRecordServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/impl/wallet/WalletBillRecordServiceImpl.java
@@ -176,7 +176,7 @@
int a = 0;
objs[a++] = sn; // 序号
objs[a++] = o.getSupplierName()+":"+o.getSupplierId(); // 供应商信息
- objs[a++] = o.getTypeStr(); // 变动类型
+ objs[a++] = o.getTypeName(); // 变动类型
objs[a++] = o.getOriginalAmount(); // 原金额
objs[a++] = o.getChangeAmount(); // 变动金额
objs[a++] = o.getBalance(); //现余额
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 45291a2..40beec9 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
@@ -96,7 +96,7 @@
walletDO.setSettlingAmount(BigDecimal.ZERO);
walletDO.setTotalDeduction(BigDecimal.ZERO);
walletDO.setTotalTransactionAmount(BigDecimal.ZERO);
- walletDO.setSettlingAmount(BigDecimal.ZERO);
+ walletDO.setSettledAmount(BigDecimal.ZERO);
walletDO.create(SecurityUtils.getUserId());
baseMapper.insert(walletDO);
// 将再次查询的结果返回
diff --git a/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java b/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
index 9bad835..1bab152 100644
--- a/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
+++ b/src/main/java/com/mzl/flower/service/payment/OrderSettlementService.java
@@ -732,7 +732,7 @@
serviceFee = serviceFee.add(ois.getServiceFee());
serviceFeeRate = ois.getServiceFeeRate();
settlementAmount = settlementAmount.add(ois.getIncomeSupplier());
- WalletDO walletDO = walletService.getBySupplierId(supplierId);
+ WalletDO walletDO = walletService.getOrCreateBySupplierId(supplierId);
RLock lock = redissonClient.getLock(String.format(LockConstants.WALLET_ID_KEY, walletDO.getId()));
try {
if (lock.tryLock(10, 30, TimeUnit.SECONDS)) {
@@ -766,6 +766,7 @@
//已结算金额
walletDOInfo.setSettledAmount(walletDOInfo.getSettledAmount().add(ois.getIncomeSupplier()));
walletMapper.updateById(walletDOInfo);
+ walletBillRecord.create();
walletBillRecordMapper.insert(walletBillRecord);
} finally {
lock.unlock();
diff --git a/src/main/java/com/mzl/flower/web/v2/wallet/WalletBillRecordController.java b/src/main/java/com/mzl/flower/web/v2/wallet/WalletBillRecordController.java
index 2cc4db2..30c458a 100644
--- a/src/main/java/com/mzl/flower/web/v2/wallet/WalletBillRecordController.java
+++ b/src/main/java/com/mzl/flower/web/v2/wallet/WalletBillRecordController.java
@@ -5,24 +5,12 @@
import com.mzl.flower.base.BaseController;
import com.mzl.flower.base.R;
import com.mzl.flower.base.ReturnDataDTO;
-import com.mzl.flower.dto.request.report.QueryPartnerOrderDTO;
-import com.mzl.flower.dto.request.wallet.QueryWalletBillRecordDTO;
-import com.mzl.flower.dto.request.wallet.QueryWalletWithdrawDTO;
-import com.mzl.flower.dto.response.wallet.WalletBillRecordVO;
-import com.mzl.flower.dto.response.wallet.WalletWithdrawRecordVO;
-
-import com.mzl.flower.config.exception.ValidationException;
-import com.mzl.flower.dto.request.wallet.CreateWalletBillRecordDTO;
import com.mzl.flower.dto.request.wallet.QueryWalletBillDTO;
+import com.mzl.flower.dto.request.wallet.QueryWalletBillRecordDTO;
import com.mzl.flower.dto.response.wallet.WalletBillRecordVO;
-import com.mzl.flower.entity.supplier.Supplier;
-import com.mzl.flower.entity.wallet.WalletDO;
-import com.mzl.flower.mapper.supplier.SupplierMapper;
import com.mzl.flower.service.supplier.SupplierService;
import com.mzl.flower.service.wallet.WalletBillRecordService;
import io.swagger.annotations.ApiOperation;
-import com.mzl.flower.service.wallet.WalletReduceService;
-import com.mzl.flower.service.wallet.WalletService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
@@ -45,31 +33,10 @@
@Autowired
private SupplierService supplierService;
- @PostMapping("")
- public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateWalletBillRecordDTO dto) {
-
-
- return returnData(R.SUCCESS.getCode(), null);
- }
-
- @PutMapping("/{id}")
- public ResponseEntity<ReturnDataDTO> update(@PathVariable @Positive(message = "{id.positive}") Integer id) {
- return returnData(R.SUCCESS.getCode(), null);
- }
-
- @DeleteMapping("/{id}")
- public ResponseEntity<ReturnDataDTO> delete(@PathVariable @Positive(message = "{id.positive}") Integer id) {
- return returnData(R.SUCCESS.getCode(), null);
-
@GetMapping("/list")
@ApiOperation(value = "供应商财务-分页", httpMethod = "GET")
public ResponseEntity<ReturnDataDTO<Page<WalletBillRecordVO>>> getMemberList(Page page, QueryWalletBillRecordDTO dto) {
return returnData(R.SUCCESS.getCode(), walletBillRecordService.queryPage(dto, page));
- }
-
- @GetMapping("/{id}")
- public WalletBillRecordDO get(@PathVariable(value = "id") @Positive(message = "{id.positive}") Integer id) {
- return null;
}
@GetMapping("/page")
@@ -77,12 +44,13 @@
) {
// 根据当前用户获取供应商
dto.setSupplierId(supplierService.getCurrentSupplier().getId());
- return returnData(R.SUCCESS.getCode(), walletBillRecordService.getPage(page,dto));
+ return returnData(R.SUCCESS.getCode(), walletBillRecordService.getPage(page, dto));
+ }
@GetMapping({"/export"})
@ApiOperation(value = "供应商财务导出")
- public void partnerExportSales(HttpServletResponse response, @Validated QueryWalletBillRecordDTO dto){
+ public void partnerExportSales(HttpServletResponse response, @Validated QueryWalletBillRecordDTO dto) {
walletBillRecordService.exportSupplierFinanceList(response, dto);
}
-
}
+
diff --git a/src/main/resources/mapper/wallet/WalletBillRecordMapper.xml b/src/main/resources/mapper/wallet/WalletBillRecordMapper.xml
index 676d23e..88825d4 100644
--- a/src/main/resources/mapper/wallet/WalletBillRecordMapper.xml
+++ b/src/main/resources/mapper/wallet/WalletBillRecordMapper.xml
@@ -40,7 +40,6 @@
<select id="queryPage" resultType="com.mzl.flower.dto.response.wallet.WalletBillRecordVO">
select t.* ,s.name supplierName from t_wallet_bill_record t
left join t_supplier_info s on t.supplier_id = s.id
- left join t_order o on t.order_id = o.id
left join t_wallet_withdraw_record w on t.withdraw_record_id = w.id
where t.deleted= 0
<if test="dto.supplierName != null and dto.supplierName != ''">
@@ -53,10 +52,10 @@
and t.type = #{type}
</if>
<if test="dto.orderNo != null and dto.orderNo != ''">
- and o.order_no = like concat('%', #{orderNo}, '%')
+ and torder_no = like concat('%', #{orderNo}, '%')
</if>
<if test="dto.createStartDate!=null ">
- <![CDATA[
+ <![CDATA[.
AND w.create_time >= #{dto.createStartDate}
]]>
</if>
@@ -82,7 +81,6 @@
<select id="queryWalletBillRecordList" resultType="com.mzl.flower.dto.response.wallet.WalletBillRecordVO">
select t.* ,s.name supplierName from t_wallet_bill_record t
left join t_supplier_info s on t.supplier_id = s.id
- left join t_order o on t.order_id = o.id
left join t_wallet_withdraw_record w on t.withdraw_record_id = w.id
where t.deleted= 0
<if test="dto.supplierName != null and dto.supplierName != ''">
@@ -95,7 +93,7 @@
and t.type = #{type}
</if>
<if test="dto.orderNo != null and dto.orderNo != ''">
- and o.order_no = like concat('%', #{orderNo}, '%')
+ and t.order_no = like concat('%', #{orderNo}, '%')
</if>
<if test="dto.createStartDate!=null ">
<![CDATA[
--
Gitblit v1.9.3