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