From a0e03b646f2c444b0f09687d24e9995112b99017 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 10 十月 2026 17:30:11 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TCompanyAllocateRecordController.java |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TCompanyAllocateRecordController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TCompanyAllocateRecordController.java
index 7733a5d..53efbf8 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TCompanyAllocateRecordController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TCompanyAllocateRecordController.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ruoyi.account.api.dto.CompanyAllocateRecordQueryDTO;
 import com.ruoyi.account.api.model.TCompanyAllocateRecord;
+import com.ruoyi.account.api.vo.CompanyAllocateSummaryVO;
 import com.ruoyi.account.service.TCompanyAllocateRecordService;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.web.controller.BaseController;
@@ -70,4 +71,36 @@
             return R.fail("查询消费流水订单号失败:" + ex.getMessage());
         }
     }
+
+    /**
+     * 内部接口:统计公司名下三类主体可用余额与充电锁定金额合计(账户模式切换前校验使用,只读)
+     */
+    @ApiOperation(value = "内部-统计公司分配余额", tags = {"内部调用"})
+    @PostMapping("/inner/sum-allocated-balance")
+    public R<CompanyAllocateSummaryVO> sumAllocatedBalance(@RequestParam("companyId") Integer companyId) {
+        try {
+            return R.ok(companyAllocateRecordService.sumAllocatedBalance(companyId));
+        } catch (RuntimeException ex) {
+            logger.error("统计公司分配余额失败:companyId={}", companyId, ex);
+            return R.fail("统计公司分配余额失败:" + ex.getMessage());
+        }
+    }
+
+    /**
+     * 内部接口:回收公司名下三类主体全部分配余额(账户模式切换:分配→共享,幂等)
+     */
+    @ApiOperation(value = "内部-回收公司分配余额", tags = {"内部调用"})
+    @PostMapping("/inner/recycle-allocated-balance")
+    public R<BigDecimal> recycleAllocatedBalance(@RequestParam("companyId") Integer companyId,
+                                                 @RequestParam("operatorName") String operatorName,
+                                                 @RequestParam(value = "companyName", required = false) String companyName,
+                                                 @RequestParam("companyBalanceBefore") BigDecimal companyBalanceBefore) {
+        try {
+            return R.ok(companyAllocateRecordService.recycleAllocatedBalance(companyId, operatorName, companyName,
+                    companyBalanceBefore));
+        } catch (RuntimeException ex) {
+            logger.error("回收公司分配余额失败:companyId={}", companyId, ex);
+            return R.fail("回收公司分配余额失败:" + ex.getMessage());
+        }
+    }
 }

--
Gitblit v1.7.1