From afa0dbb4f54e7244835dd67ec33c3e545f122f71 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 17 一月 2025 16:40:43 +0800
Subject: [PATCH] bug修改

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java |   67 +++++++++++++++++++++++++++++----
 1 files changed, 59 insertions(+), 8 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
index ad4926a..6a24756 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
@@ -3,10 +3,13 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
+import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.api.service.RemoteUserService;
 import com.ruoyi.system.domain.dto.*;
 import com.ruoyi.system.domain.vo.MgtDeptStaffListVo;
 import com.ruoyi.system.domain.vo.MgtStaffPageVo;
@@ -17,14 +20,15 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
 import java.util.List;
+
+import static com.ruoyi.common.core.web.domain.AjaxResult.success;
 
 /**
  * @author jqs34
@@ -38,7 +42,8 @@
 @RequestMapping("/mgt/staff")
 public class MgtStaffController {
 
-
+    @Resource
+    private RemoteUserService sysUserService;
 
     @Resource
     private StaffSuggestService staffSuggestService;
@@ -48,10 +53,43 @@
 
     @RequestMapping(value = "/listMgtDeptStaff", method = RequestMethod.POST)
     @ApiOperation(value = "获取部门员工列表")
-    public R<List<MgtDeptStaffListVo>> listMgtDeptStaff() {
-        List<MgtDeptStaffListVo> mgtDeptStaffListVoList= sysStaffService.listMgtDeptStaff();
+    public R<List<MgtDeptStaffListVo>> listMgtDeptStaff(@RequestBody ListMgtDeptStaffDto listMgtDeptStaffDto) {
+        // 获取当前登陆人的可视权限
+        SysUser sysUser = SecurityUtils.getSysUser();
+        // 如果当前登陆人权限是查看部门数据
+        Long deptId = null;
+        // 如果当前登陆人是查看个人数据
+        Long userId  = null;
+        if (sysUser!=null){
+            String dataScope = sysUser.getDataScope();
+            if (!sysUser.getUserName().equals("admin")){
+                if (org.springframework.util.StringUtils.hasLength(dataScope)){
+                    switch (dataScope){
+                        case "3":
+                            // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+                            deptId = sysUser.getDeptId();
+                            break;
+                        case "5":
+                            // 仅个人数据 查询当前登陆人关联店铺下的用户
+                            userId = sysUser.getUserId();
+                            break;
+                    }
+                }
+            }
+        }
+        List<MgtDeptStaffListVo> mgtDeptStaffListVoList= sysStaffService.listMgtDeptStaff(deptId,userId, listMgtDeptStaffDto.getName());
         return R.ok(mgtDeptStaffListVoList);
     }
+
+
+    @RequestMapping(value = "/listDeptStaff", method = RequestMethod.POST)
+    @ApiOperation(value = "获取所有部门员工列表")
+    public R<List<MgtDeptStaffListVo>> listDeptStaff() {
+        List<MgtDeptStaffListVo> mgtDeptStaffListVoList= sysStaffService.listMgtDeptStaff(null,null, null);
+        return R.ok(mgtDeptStaffListVoList);
+    }
+
+
 
     @RequestMapping(value = "/listMgtDeptStaffByPermission", method = RequestMethod.POST)
     @ApiOperation(value = "通过权限获取部门员工列表")
@@ -80,9 +118,12 @@
         Long userId = SecurityUtils.getUserId();
         mgtStaffSuggestPageDto.setUserId(userId);
         Page<MgtStaffSuggestPageVo> page = new Page<>();
-        if(page.getSize()>5000){
+        if(mgtStaffSuggestPageDto.getPageSize() > 5000){
             page.setSize(5000);
             page.setCurrent(1);
+        }else{
+            page.setSize(mgtStaffSuggestPageDto.getPageSize());
+            page.setCurrent(mgtStaffSuggestPageDto.getPageNum());
         }
         List<MgtStaffSuggestPageVo> staffSuggestPageVoList = staffSuggestService.pageMgtStaffSuggest(page,mgtStaffSuggestPageDto);
         ExcelUtil<MgtStaffSuggestPageVo> util = new ExcelUtil<MgtStaffSuggestPageVo>(MgtStaffSuggestPageVo.class);
@@ -147,4 +188,14 @@
         sysStaffService.mgtDeleteStaff(mgtBaseGetDto);
         return R.ok();
     }
+
+    @ApiOperation(value = "导入员工数据")
+    @PostMapping("/importSysStaff")
+    public AjaxResult importSysStaff(@RequestPart("file") MultipartFile file) throws Exception
+    {
+        ExcelUtil<MgtSysStaffImportDto> util = new ExcelUtil<MgtSysStaffImportDto>(MgtSysStaffImportDto.class);
+        List<MgtSysStaffImportDto> sysStaffImportDtoList = util.importExcel(file.getInputStream());
+        String message = sysStaffService.importSysStaff(sysStaffImportDtoList);
+        return success(message);
+    }
 }

--
Gitblit v1.7.1