From acccff9860b271d55c55dc87486f7c20b9896e6c Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期一, 13 一月 2025 16:19:54 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java | 39 ++++++++++++++++++++++++++++++--------- 1 files changed, 30 insertions(+), 9 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 f761f1e..af6ba86 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 @@ -3,6 +3,7 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.account.api.feignClient.AppUserClient; @@ -25,6 +26,7 @@ import com.ruoyi.other.util.payment.model.SinglePayCallbackResult; import com.ruoyi.other.util.payment.model.SinglePayResult; import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.api.model.LoginUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -35,6 +37,9 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDateTime; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; /** * <p> @@ -61,6 +66,9 @@ @Resource private AppUserClient appUserClient; + + @Resource + private SysUserClient sysUserClient; @@ -73,10 +81,22 @@ public R<IPage<ShopWithdraw>> list(@ApiParam("页码") @RequestParam Integer pageNum, @ApiParam("每一页数据大小") Integer pageSize, ShopWithdraw shopWithdraw) { - + List<Shop> list = shopService.list(new LambdaUpdateWrapper<Shop>().like(StringUtils.isNotEmpty(shopWithdraw.getShopName()), Shop::getName, shopWithdraw.getShopName()).eq(Shop::getDelFlag, 0)); + List<Integer> collect1 = list.stream().map(Shop::getId).collect(Collectors.toList()); Page<ShopWithdraw> page = shopWithdrawService.page(Page.of(pageNum, pageSize), new LambdaQueryWrapper<ShopWithdraw>() - .like(StringUtils.isNotEmpty(shopWithdraw.getShopName()), ShopWithdraw::getShopName, shopWithdraw.getShopName())); - page.getRecords().forEach(item-> item.setShopName(shopService.getById(item.getShopId()).getName())); + .in(collect1.size() > 0, ShopWithdraw::getShopId, collect1)); + List<ShopWithdraw> records = page.getRecords(); + List<Integer> collect = records.stream().map(ShopWithdraw::getShopId).collect(Collectors.toList()); + List<Shop> shops = null; + if(collect.size() > 0){ + shops = shopService.listByIds(collect); + } + for(ShopWithdraw item : records){ + Optional<Shop> first = shops.stream().filter(s -> s.getId().equals(item.getId())).findFirst(); + if(first.isPresent()){ + item.setShopName(first.get().getName()); + } + } return R.ok(page); } @@ -105,7 +125,8 @@ @GetMapping("/shop/with") @ApiOperation(value = "提现申请", notes = "提现申请列表", tags = {"门店后台"}) public R shopwith(@RequestParam BigDecimal money){ - SysUser sysUser = tokenService.getLoginUser().getSysUser(); + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser = sysUserClient.getSysUser(userid).getData(); Integer objectId = sysUser.getObjectId(); Shop shop = shopService.getById(objectId); if (money.compareTo(shop.getCanWithdrawMoney())>0){ @@ -131,7 +152,7 @@ //添加门店变动明细 ShopBalanceStatement shopBalanceStatement = new ShopBalanceStatement(); shopBalanceStatement.setShopId(shop.getId()); - shopBalanceStatement.setType(5); + shopBalanceStatement.setType(4); shopBalanceStatement.setHistoricalBalance(balance); shopBalanceStatement.setVariableAmount(money); shopBalanceStatement.setBalance(shop.getBalance()); @@ -163,12 +184,12 @@ return R.fail("查询账户余额出错"); } Double useAbleSettAmount = accountBalanceQueryResult.getUseAbleSettAmount(); - if(useAbleSettAmount < shopWithdraw1.getMoney().doubleValue()){ + if(useAbleSettAmount < (shopWithdraw1.getMoney().doubleValue() + 1)){ return R.fail("账户可用余额不足,请先补充账户余额"); } //银行卡转账 SinglePay singlePay = new SinglePay(); - singlePay.setTradeMerchantNo(""); + singlePay.setTradeMerchantNo(TransferUtil.sysTradeMerchantNo); singlePay.setMerchantOrderNo(shopWithdraw1.getId().toString()); singlePay.setReceiverAccountNoEnc(shop.getReceiverAccountNoEnc()); singlePay.setReceiverNameEnc(shop.getReceiverNameEnc()); @@ -195,7 +216,7 @@ //添加门店变动明细 ShopBalanceStatement shopBalanceStatement = new ShopBalanceStatement(); shopBalanceStatement.setShopId(shop.getId()); - shopBalanceStatement.setType(5); + shopBalanceStatement.setType(4); shopBalanceStatement.setHistoricalBalance(balance); shopBalanceStatement.setVariableAmount(money); shopBalanceStatement.setBalance(shop.getBalance()); @@ -222,7 +243,7 @@ @PostMapping("/withdrawalCallback") public Object withdrawalCallback(@RequestBody SinglePayCallbackResult singlePayCallbackResult){ Integer status = singlePayCallbackResult.getStatus(); - if(203 == status){ + if(203 == status || 205 == status){ String merchantOrderNo = singlePayCallbackResult.getMerchantOrderNo(); ShopWithdraw shopWithdraw = shopWithdrawService.getById(merchantOrderNo); if(1 == shopWithdraw.getStatus()){ -- Gitblit v1.7.1