From 1442f149019ee0590389abd7a88a79c4d9b59034 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 27 五月 2025 18:23:34 +0800
Subject: [PATCH] bug修改

---
 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java |   90 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 90 insertions(+), 0 deletions(-)

diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java
index cfcf91e..60dca9e 100644
--- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java
+++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/HomePageController.java
@@ -1,6 +1,8 @@
 package com.ruoyi.admin.controller;
 
+import com.ruoyi.admin.entity.Franchisee;
 import com.ruoyi.admin.request.UserDataCountRequest;
+import com.ruoyi.admin.service.FranchiseeService;
 import com.ruoyi.admin.service.MasterWorkerService;
 import com.ruoyi.admin.service.UserService;
 import com.ruoyi.admin.vo.MasterWorkerRankVO;
@@ -8,9 +10,11 @@
 import com.ruoyi.admin.vo.UserTrendsVO;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.order.api.entity.OrderCountRequest;
 import com.ruoyi.order.api.entity.OrderResultVO;
 import com.ruoyi.order.api.feignClient.OrderClient;
+import com.ruoyi.system.api.model.LoginUser;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -19,6 +23,7 @@
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -37,6 +42,8 @@
     private UserService userService;
     @Resource
     private OrderClient orderClient;
+    @Resource
+    private TokenService tokenService;
 
     /**
      * 用户数据统计
@@ -47,6 +54,35 @@
     @ApiOperation(value = "后台-用户数据统计", tags = {"后台-首页"})
     @PostMapping(value = "/userDataCount")
     public R<UserDataCountVO> userDataCount(@RequestBody UserDataCountRequest userDataCountRequest) {
+            LoginUser loginUser = tokenService.getLoginUser();
+        if (null == loginUser) {
+            return R.loginExpire("登录失效!");
+        }
+
+        Integer franchiseeId = loginUser.getSysUser().getFranchiseeId();
+        String[] siteIds = new String[0];
+        if (franchiseeId!=null){
+            Franchisee byId = franchiseeService.getById(franchiseeId);
+            siteIds = byId.getSiteIds().split(",");
+            if (loginUser.getIsFranchisee()&&siteIds.length==0){
+                return R.ok();
+            }
+        }
+        userDataCountRequest.setSiteIds(Arrays.asList(siteIds));
+
+
+        if (loginUser.getIsFranchisee()||!userDataCountRequest.getCityList().isEmpty()) {
+            if (null == userDataCountRequest.getCityList() || userDataCountRequest.getCityList().isEmpty()) {
+                userDataCountRequest.setCityList(loginUser.getCityList());
+            }
+//            else {
+////                userDataCountRequest.getCityList().addAll(loginUser.getCityList());
+//            }
+            R<List<Integer>> listR = orderClient.queryIdsBycodeAndSite(userDataCountRequest.getCityList(),userDataCountRequest.getSiteIds());
+
+            return R.ok(userService.userDataCount1(userDataCountRequest, listR.getData(),userDataCountRequest.getSiteIds()));
+
+        }
         return R.ok(userService.userDataCount(userDataCountRequest));
     }
 
@@ -59,9 +95,26 @@
     @ApiOperation(value = "后台-用户增量", tags = {"后台-首页"})
     @PostMapping(value = "/userTrends")
     public R<List<UserTrendsVO>> userTrends(@RequestBody List<String> cityList) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        if (null == loginUser) {
+            return R.loginExpire("登录失效!");
+        }
+        if (loginUser.getIsFranchisee()||!cityList.isEmpty()) {
+            if (null == cityList || cityList.isEmpty()) {
+                cityList = loginUser.getCityList();
+            }
+//            else {
+////                cityList.addAll(loginUser.getCityList());
+//            }
+            R<List<Integer>> listR = orderClient.queryIdsBycode(cityList);
+
+            return R.ok(userService.userTrends1(cityList,listR.getData()));
+        }
         return R.ok(userService.userTrends(cityList));
     }
 
+    @Resource
+    private FranchiseeService franchiseeService;
     /**
      * 回收订单统计
      *
@@ -71,6 +124,28 @@
     @ApiOperation(value = "后台-回收订单统计", tags = {"后台-首页"})
     @PostMapping(value = "/orderCountHome")
     public R<OrderResultVO> orderCountHome(@RequestBody OrderCountRequest orderCount) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        if (null == loginUser) {
+            return R.loginExpire("登录失效!");
+        }
+        if (loginUser.getIsFranchisee()) {
+            if (null == orderCount.getCityList() || orderCount.getCityList().isEmpty()) {
+                orderCount.setCityList(loginUser.getCityList());
+            } else {
+//                orderCount.getCityList().addAll(loginUser.getCityList());
+            }
+        }
+        Integer franchiseeId = loginUser.getSysUser().getFranchiseeId();
+        String[] siteIds = new String[0];
+        if (franchiseeId!=null) {
+            Franchisee byId = franchiseeService.getById(franchiseeId);
+            siteIds = byId.getSiteIds().split(",");
+            orderCount.setSiteIds(siteIds);
+            if (loginUser.getIsFranchisee() && siteIds.length == 0) {
+                return R.ok(new OrderResultVO());
+            }
+        }
+        orderCount.setSiteIds(siteIds);
         return orderClient.orderCountHome(orderCount);
     }
 
@@ -83,6 +158,21 @@
     @ApiOperation(value = "后台-师傅接单排行", tags = {"后台-首页"})
     @PostMapping(value = "/workerRanking")
     public R<List<MasterWorkerRankVO>> workerRanking(@RequestBody List<String> cityList) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        if (null == loginUser) {
+            return R.loginExpire("登录失效!");
+        }
+        if (loginUser.getIsFranchisee()) {
+            if (null == cityList || cityList.isEmpty()) {
+                cityList = loginUser.getCityList();
+            } else {
+//                cityList.addAll(loginUser.getCityList());
+            }
+        }
+        List<MasterWorkerRankVO> masterWorkerRankVOS = masterWorkerService.workerRanking(cityList);
+        if (masterWorkerRankVOS.size()>10){
+            return R.ok(masterWorkerRankVOS.subList(0,10));
+        }
         return R.ok(masterWorkerService.workerRanking(cityList));
     }
 

--
Gitblit v1.7.1