From 1f09f6daaf73bc83cceb4ae22b862b7b365635cf Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 03 四月 2025 19:59:17 +0800
Subject: [PATCH] 修改反馈文档bug

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java |   85 +++++++++++++++++++++++++++++-------------
 1 files changed, 58 insertions(+), 27 deletions(-)

diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
index f368b21..828b3c1 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
@@ -7,16 +7,13 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.account.api.feignClient.AppUserClient;
-import com.ruoyi.account.api.model.AppUser;
-import com.ruoyi.account.api.model.BalanceChangeRecord;
-import com.ruoyi.account.api.model.WithdrawalRequests;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.other.api.domain.Shop;
 import com.ruoyi.other.api.domain.ShopBalanceStatement;
 import com.ruoyi.other.api.domain.ShopWithdraw;
-import com.ruoyi.other.dto.ShopBalanceDto;
 import com.ruoyi.other.service.ShopBalanceStatementService;
 import com.ruoyi.other.service.ShopService;
 import com.ruoyi.other.service.ShopWithdrawService;
@@ -70,9 +67,13 @@
 
     @Resource
     private SysUserClient sysUserClient;
-    
-    
-    
+
+
+    @GetMapping("/getShopById")
+    @ApiOperation("通过门店id获取账户信息回填")
+    public R<Shop> getShopById(Integer id) {
+        return R.ok(shopService.getById(id));
+    }
 
     /**
      * 提现申请列表
@@ -90,7 +91,8 @@
             return R.ok(Page.of(pageNum, pageSize));
         }
         Page<ShopWithdraw> page = shopWithdrawService.page(Page.of(pageNum, pageSize), new LambdaQueryWrapper<ShopWithdraw>()
-                .in(collect1.size() > 0, ShopWithdraw::getShopId, collect1));
+                .in(collect1.size() > 0, ShopWithdraw::getShopId, collect1)
+        .orderByDesc(ShopWithdraw::getCreateTime));
         List<ShopWithdraw> records = page.getRecords();
         List<Integer> collect = records.stream().map(ShopWithdraw::getShopId).collect(Collectors.toList());
         List<Shop> shops = null;
@@ -129,11 +131,26 @@
         LoginUser loginUser = tokenService.getLoginUser();
         SysUser sysUser = sysUserClient.getSysUser(loginUser.getUserid()).getData();
         Shop byId = shopService.getById(sysUser.getObjectId());
-        List<ShopWithdraw> list = shopWithdrawService.lambdaQuery().eq(ShopWithdraw::getShopId, sysUser.getObjectId())
-                .eq(ShopWithdraw::getAuditStatus, 0).list();
+        List<ShopWithdraw> list = shopWithdrawService.lambdaQuery()
+                .eq(ShopWithdraw::getShopId, sysUser.getObjectId())
+                .list();
+
+
         if (!list.isEmpty()){
-            BigDecimal bigDecimal = list.stream().map(ShopWithdraw::getMoney).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
+            // 待审核列表
+            List<ShopWithdraw> toBeReviewList = list.stream()
+                    .filter(s -> s.getAuditStatus() == 0)
+                    .collect(Collectors.toList());
+            // 审核通过列表
+            List<ShopWithdraw> passedReviewList = list.stream()
+                    .filter(s -> s.getAuditStatus() == 1)
+                    .collect(Collectors.toList());
+
+            BigDecimal bigDecimal = toBeReviewList.stream().map(ShopWithdraw::getMoney).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
             byId.setWithdrawAuditMoney(bigDecimal);
+
+            BigDecimal bigDecimal1 = passedReviewList.stream().map(ShopWithdraw::getMoney).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
+            byId.setWithdrawMoney(bigDecimal1);
         }else {
             byId.setWithdrawAuditMoney(BigDecimal.ZERO);
         }
@@ -143,21 +160,37 @@
     @GetMapping("/shop/with")
     @ApiOperation(value = "提现申请", notes = "提现申请列表", tags = {"门店后台"})
     public R shopwith(@RequestParam BigDecimal money){
-        Long userid = tokenService.getLoginUser().getUserid();
-        SysUser sysUser = sysUserClient.getSysUser(userid).getData();
-        Integer objectId = sysUser.getObjectId();
-        Shop shop = shopService.getById(objectId);
+        LoginUser loginUser = tokenService.getLoginUser();
+        SysUser sysUser = sysUserClient.getSysUser(loginUser.getUserid()).getData();
+        baseWithdrawalApplication(money, sysUser.getUserId(), sysUser.getObjectId());
+        return R.ok();
+    }
+
+    /**
+     * 小程序端提现申请
+     */
+    @ApiOperation(value = "提现申请", notes = "提现申请", tags = {"小程序-个人中心-门店管理-门店钱包"})
+    @GetMapping("/withdrawalApplication")
+    @ResponseBody
+    public R withdrawalApplication(@RequestParam BigDecimal money, @RequestParam Integer shopId) {
+        LoginUser loginUser = tokenService.getLoginUserApplet();
+        baseWithdrawalApplication(money, loginUser.getUserid(), shopId);
+        return R.ok();
+    }
+
+    private void baseWithdrawalApplication(BigDecimal money, Long userId, Integer shopId) {
+        Shop shop = shopService.getById(shopId);
         if (money.compareTo(BigDecimal.ZERO)==0){
-            return R.fail("提现金额必须大于零");
+            throw new ServiceException("提现金额必须大于零");
         }
         if (money.compareTo(shop.getCanWithdrawMoney())>0){
-            return R.fail("提现金额不能大于可提现金额");
+            throw new ServiceException("提现金额不能大于可提现金额");
         }
         if(StringUtils.isEmpty(shop.getReceiverAccountNoEnc())){
-            return R.fail("请完善账户信息后再申请提现!");
+            throw new ServiceException("请完善账户信息后再申请提现!");
         }
         ShopWithdraw shopWithdraw = new ShopWithdraw();
-        shopWithdraw.setShopId(objectId);
+        shopWithdraw.setShopId(shopId);
         shopWithdraw.setMoney(money);
         shopWithdraw.setAuditStatus(0);
         shopWithdraw.setStatus(1);
@@ -175,15 +208,14 @@
         ShopBalanceStatement shopBalanceStatement = new ShopBalanceStatement();
         shopBalanceStatement.setShopId(shop.getId());
         shopBalanceStatement.setType(4);
-        shopBalanceStatement.setHistoricalBalance(balance);
         shopBalanceStatement.setVariableAmount(money);
-        shopBalanceStatement.setBalance(shop.getBalance());
-        shopBalanceStatement.setCreateUserId(sysUser.getUserId());
+        shopBalanceStatement.setCreateUserId(userId);
         shopBalanceStatement.setCreateTime(LocalDateTime.now());
         shopBalanceStatement.setObjectId(shopWithdraw.getId());
+        shopBalanceStatement.setChangeDirection(-1);
         shopBalanceStatementService.save(shopBalanceStatement);
-        return R.ok();
     }
+
 
 
     /**
@@ -217,6 +249,7 @@
             singlePay.setReceiverAccountNoEnc(shop.getReceiverAccountNoEnc());
             singlePay.setReceiverNameEnc(shop.getReceiverNameEnc());
             singlePay.setReceiverAccountType(shop.getReceiverAccountType());
+            singlePay.setReceiverBankChannelNo(shop.getReceiverBankChannelNo());
             singlePay.setPaidAmount(shopWithdraw1.getMoney().doubleValue());
             singlePay.setPaidDesc("账户余额提现");
             singlePay.setPaidUse("208");
@@ -240,12 +273,11 @@
             ShopBalanceStatement shopBalanceStatement = new ShopBalanceStatement();
             shopBalanceStatement.setShopId(shop.getId());
             shopBalanceStatement.setType(4);
-            shopBalanceStatement.setHistoricalBalance(balance);
             shopBalanceStatement.setVariableAmount(money);
-            shopBalanceStatement.setBalance(shop.getBalance());
             shopBalanceStatement.setCreateUserId(loginUser.getUserid());
             shopBalanceStatement.setCreateTime(LocalDateTime.now());
             shopBalanceStatement.setObjectId(shopWithdraw.getId());
+            shopBalanceStatement.setChangeDirection(-1);
             shopBalanceStatementService.save(shopBalanceStatement);
         }
         shopWithdraw1.setAuditStatus(shopWithdraw.getAuditStatus());
@@ -291,12 +323,11 @@
             ShopBalanceStatement shopBalanceStatement = new ShopBalanceStatement();
             shopBalanceStatement.setShopId(shop.getId());
             shopBalanceStatement.setType(4);
-            shopBalanceStatement.setHistoricalBalance(balance);
             shopBalanceStatement.setVariableAmount(shopWithdraw.getMoney());
-            shopBalanceStatement.setBalance(shop.getBalance());
             shopBalanceStatement.setCreateUserId(shopWithdraw.getAuditUserId());
             shopBalanceStatement.setCreateTime(LocalDateTime.now());
             shopBalanceStatement.setObjectId(shopWithdraw.getId());
+            shopBalanceStatement.setChangeDirection(-1);
             shopBalanceStatementService.save(shopBalanceStatement);
             shopWithdraw.setStatus(3);
             shopWithdraw.setRemark(singlePayCallbackResult.getErrorCodeDesc());

--
Gitblit v1.7.1