From 80fc7ebdc30b498025db8ebbdb3e63806d5926d9 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 22 四月 2025 10:15:15 +0800 Subject: [PATCH] bug 修改 --- ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/WithdrawServiceImpl.java | 10 +++++++++- ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/AppFranchiseeController.java | 17 +++++++++++++++++ ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java | 6 +++--- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/AppFranchiseeController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/AppFranchiseeController.java index 2c0dfaa..d342ddf 100644 --- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/AppFranchiseeController.java +++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/AppFranchiseeController.java @@ -72,6 +72,7 @@ if (franchisee.getBalance().subtract(dto.getMoney()).compareTo(BigDecimal.ZERO)>=0){ BigDecimal subtract = franchisee.getBalance().subtract(dto.getMoney()); franchisee.setBalance(subtract); + franchiseeService.updateById(franchisee); }else{ return R.fail("余额不足"); } @@ -186,6 +187,22 @@ franchiseeWithdraw.setHandle(byId.getNickName()); franchiseeWithdraw.setUpdateTime(new Date()); franchiseeWithdrawService.updateById(franchiseeWithdraw); + Franchisee franchisee = franchiseeService.getById(byId.getFranchiseeId()); + if (auditFranchiseeWithdrawDTO.getStatus()==3){ + // 回退运营商余额 + TFranchiseeBalanceChange balanceChange = new TFranchiseeBalanceChange(); + balanceChange.setAmount(franchiseeWithdraw.getMoney()); + balanceChange.setIs_pay(1); + balanceChange.setFranchiseeName(franchisee.getName()); + balanceChange.setFranchiseeId(franchisee.getId()+""); + balanceChange.setRemark("余额提现回退"); + balanceChange.setType(4); + balanceChange.setIsDelete(0); + franchiseeBalanceChangeService.save(balanceChange); + BigDecimal add = franchisee.getBalance().add(franchiseeWithdraw.getMoney()); + franchisee.setBalance(add); + franchiseeService.updateById(franchisee); + } return R.ok(); } } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java index db7637d..186c541 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawServiceImpl.java @@ -138,7 +138,7 @@ throw new GlobalException("当前订单提现申请已通过!"); } - return weChatPay(order.getOrderMoney(), openId,list.get(0).getId(),order.getServeName()); + return weChatPay(order.getSubsidy()!=null?order.getSubsidy().add(order.getOrderMoney()):order.getOrderMoney(), openId,list.get(0).getId(),order.getServeName()); } @Override @@ -242,7 +242,7 @@ withdraw.setUserId(userId); withdraw.setUserPhone(userPhone); withdraw.setApplyForTime(new Date()); - withdraw.setApplyForMoney(order.getOrderMoney()); + withdraw.setApplyForMoney(order.getSubsidy()!=null?order.getSubsidy().add(order.getOrderMoney()):order.getOrderMoney()); withdraw.setOrderId(orderId); withdraw.setCityCode(order.getCityCode()); @@ -252,7 +252,7 @@ // 已通过 withdraw.setState(Constants.ONE); // 商家微信打款至微信零钱 - boolean update = weChatPay(order.getOrderMoney(), openId,withdraw.getId(),order.getServerName()); + boolean update = weChatPay(order.getSubsidy()!=null?order.getSubsidy().add(order.getOrderMoney()):order.getOrderMoney(), openId,withdraw.getId(),order.getServerName()); // if (!update) { // throw new GlobalException("交易提现失败,请检查是否绑定微信!"); // } diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/WithdrawServiceImpl.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/WithdrawServiceImpl.java index 5e28ae5..fa1cc7f 100644 --- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/WithdrawServiceImpl.java +++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/WithdrawServiceImpl.java @@ -53,12 +53,20 @@ if (!orderList.getRecords().isEmpty()) { // 总金额 totalMoney = orderList.getRecords().stream().map(Order::getOrderMoney).reduce(BigDecimal.ZERO, BigDecimal::add); + BigDecimal reduce = orderList.getRecords().stream().map(Order::getSubsidy).reduce(BigDecimal.ZERO, BigDecimal::add); + totalMoney = reduce.add(totalMoney); // 未提现金额withdrawn withdrawn = orderList.getRecords().stream().filter(data -> Constants.ZERO.equals(data.getIsWithdrawal())) .map(Order::getOrderMoney).reduce(BigDecimal.ZERO, BigDecimal::add); + BigDecimal reduce1 = orderList.getRecords().stream().filter(data -> Constants.ZERO.equals(data.getIsWithdrawal())) + .map(Order::getSubsidy).reduce(BigDecimal.ZERO, BigDecimal::add); + withdrawn = reduce1.add(withdrawn); // 已提现金额 undelivered = orderList.getRecords().stream().filter(data -> Constants.ONE.equals(data.getIsWithdrawal())) .map(Order::getOrderMoney).reduce(BigDecimal.ZERO, BigDecimal::add); + BigDecimal reduce2 = orderList.getRecords().stream().filter(data -> Constants.ONE.equals(data.getIsWithdrawal())) + .map(Order::getSubsidy).reduce(BigDecimal.ZERO, BigDecimal::add); + undelivered = reduce2.add(undelivered); } withdrawList.setMoneyCount(new WithdrawMoneyVO(totalMoney, undelivered, withdrawn)); // 回收服务列表 @@ -81,7 +89,7 @@ withdrawOrder.setCover(recoveryServe.getCover()); withdrawOrder.setCompleteTime(order.getCreateTime()); withdrawOrder.setIsWithdrawal(order.getIsWithdrawal()); - withdrawOrder.setMoney(order.getOrderMoney()); + withdrawOrder.setMoney(order.getSubsidy()!=null?order.getSubsidy().add(order.getOrderMoney()):order.getOrderMoney()); withdrawOrder.setPackageInfo(order.getPackageInfo()); if (order.getAddress()!=null) { withdrawOrder.setAddress(order.getReservationAddress() + order.getAddress()); -- Gitblit v1.7.1