From 09faa36132c8cbada5327649875534ef01c1a3b1 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期四, 11 十二月 2025 20:44:31 +0800
Subject: [PATCH] feat: 优化任务里程统计

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java |   46 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
index 59e7588..2b08014 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java
@@ -1,6 +1,8 @@
 package com.ruoyi.web.controller.system;
 
 import java.util.List;
+
+import com.ruoyi.common.core.domain.entity.SysUser;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -21,6 +23,7 @@
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.service.ISysDeptService;
+import com.ruoyi.system.service.ISysUserService;
 
 /**
  * 閮ㄩ棬淇℃伅
@@ -34,10 +37,12 @@
     @Autowired
     private ISysDeptService deptService;
 
+    @Autowired
+    private ISysUserService userService;
+
     /**
      * 鑾峰彇閮ㄩ棬鍒楄〃
      */
-    @PreAuthorize("@ss.hasPermi('system:dept:list')")
     @GetMapping("/list")
     public AjaxResult list(SysDept dept)
     {
@@ -46,9 +51,31 @@
     }
 
     /**
+     * 鍩轰簬褰撳墠鐢ㄦ埛鐨� OA_OrderClass 杩斿洖鍒嗗叕鍙稿垪琛�
+     */
+    @GetMapping("/branch/by-oa")
+    public AjaxResult listBranchByOaOrderClass()
+    {
+        com.ruoyi.common.core.domain.model.LoginUser loginUser = com.ruoyi.common.utils.SecurityUtils.getLoginUser();
+        com.ruoyi.common.core.domain.entity.SysUser user = loginUser.getUser();
+        java.util.List<com.ruoyi.common.core.domain.entity.SysDept> result = deptService.computeBranchCompaniesForUser(user);
+        return success(result);
+    }
+
+    /**
+     * 鍩轰簬鎸囧畾鐢ㄦ埛ID鐨� OA_OrderClass 杩斿洖鍒嗗叕鍙稿垪琛紝骞堕檮鍔犺鐢ㄦ埛鎵�灞炲垎鍏徃
+     */
+    @GetMapping("/branch/by-user/{userId}")
+    public AjaxResult listBranchByUser(@PathVariable("userId") Long userId)
+    {
+        SysUser user = userService.selectUserById(userId);
+        List<SysDept> result = deptService.computeBranchCompaniesForUser(user);
+        return success(result);
+    }
+
+    /**
      * 鏌ヨ閮ㄩ棬鍒楄〃锛堟帓闄よ妭鐐癸級
      */
-    @PreAuthorize("@ss.hasPermi('system:dept:list')")
     @GetMapping("/list/exclude/{deptId}")
     public AjaxResult excludeChild(@PathVariable(value = "deptId", required = false) Long deptId)
     {
@@ -60,7 +87,6 @@
     /**
      * 鏍规嵁閮ㄩ棬缂栧彿鑾峰彇璇︾粏淇℃伅
      */
-    @PreAuthorize("@ss.hasPermi('system:dept:query')")
     @GetMapping(value = "/{deptId}")
     public AjaxResult getInfo(@PathVariable Long deptId)
     {
@@ -129,4 +155,18 @@
         deptService.checkDeptDataScope(deptId);
         return toAjax(deptService.deleteDeptById(deptId));
     }
+    
+    /**
+     * 鏍规嵁service_class鏌ヨ閮ㄩ棬淇℃伅
+     */
+    @GetMapping("/service-class/{serviceClass}")
+    public AjaxResult getDeptByServiceClass(@PathVariable String serviceClass)
+    {
+        SysDept dept = deptService.selectDeptByServiceClass(serviceClass);
+        if (dept != null) {
+            return success(dept);
+        } else {
+            return error("鏈壘鍒板搴旂殑閮ㄩ棬淇℃伅");
+        }
+    }
 }

--
Gitblit v1.9.1