From e6fa0149e0c8690efc9c444650c6ef82f04ba54b Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 14 一月 2025 19:38:19 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java | 33 ++++++++++++++++++++++++++++++--- 1 files changed, 30 insertions(+), 3 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 be86361..ad93c40 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 @@ -263,9 +263,9 @@ @PostMapping("/withdrawalCallback") public Object withdrawalCallback(@RequestBody SinglePayCallbackResult singlePayCallbackResult){ Integer status = singlePayCallbackResult.getStatus(); + String merchantOrderNo = singlePayCallbackResult.getMerchantOrderNo(); + ShopWithdraw shopWithdraw = shopWithdrawService.getById(merchantOrderNo); if(203 == status || 205 == status){ - String merchantOrderNo = singlePayCallbackResult.getMerchantOrderNo(); - ShopWithdraw shopWithdraw = shopWithdrawService.getById(merchantOrderNo); if(1 == shopWithdraw.getStatus()){ shopWithdraw.setStatus(2); shopWithdraw.setArrivalTime(LocalDateTime.now()); @@ -274,8 +274,35 @@ JSONObject jsonObject = new JSONObject(); jsonObject.put("statusCode", 2001); return jsonObject; + }else{ + //回退金额和添加变动明细 + Shop shop = shopService.getById(shopWithdraw.getShopId()); + BigDecimal balance = shop.getBalance(); + BigDecimal canWithdrawMoney = shop.getCanWithdrawMoney(); + BigDecimal withdrawMoney = shop.getWithdrawMoney(); + shop.setBalance(balance.add(shopWithdraw.getMoney()).setScale(2, RoundingMode.HALF_EVEN)); + shop.setCanWithdrawMoney(canWithdrawMoney.add(shopWithdraw.getMoney()).setScale(2, RoundingMode.HALF_EVEN)); + shop.setWithdrawMoney(withdrawMoney.subtract(shopWithdraw.getMoney()).setScale(2, RoundingMode.HALF_EVEN)); + shopService.updateById(shop); + //添加门店变动明细 + 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()); + shopBalanceStatementService.save(shopBalanceStatement); + shopWithdraw.setStatus(3); + shopWithdraw.setRemark(singlePayCallbackResult.getErrorCodeDesc()); + shopWithdrawService.updateById(shopWithdraw); + + JSONObject jsonObject = new JSONObject(); + jsonObject.put("statusCode", 2001); + return jsonObject; } - return new JSONObject(); } } -- Gitblit v1.7.1