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 | 148 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 133 insertions(+), 15 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 043a529..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 @@ -2,23 +2,33 @@ 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.domain.dto.MgtReplayStaffSuggestDto; -import com.ruoyi.system.domain.dto.MgtStaffSuggestPageDto; -import com.ruoyi.system.domain.dto.MgtTagStaffSuggestDto; +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; import com.ruoyi.system.domain.vo.MgtStaffSuggestPageVo; import com.ruoyi.system.domain.vo.MgtStaffSuggestTagVo; import com.ruoyi.system.service.config.StaffSuggestService; +import com.ruoyi.system.service.staff.SysStaffService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -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.validation.annotation.Validated; +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 @@ -27,21 +37,67 @@ * @description: TODO * @date 2023 2023/6/11 18:36 */ -@Api(value = "平台端员工相关接口", tags = "平台端员工相关接口", description = "平台端员工相关接口") +@Api(value = "管理后台员工相关接口", tags = "管理后台员工相关接口", description = "管理后台员工相关接口") @RestController @RequestMapping("/mgt/staff") public class MgtStaffController { + @Resource + private RemoteUserService sysUserService; @Resource private StaffSuggestService staffSuggestService; - /*@RequestMapping(value = "/listMgtDeptStaff", method = RequestMethod.POST) + @Resource + private SysStaffService sysStaffService; + + @RequestMapping(value = "/listMgtDeptStaff", method = RequestMethod.POST) @ApiOperation(value = "获取部门员工列表") - public R<List<MgtDeptStaffListVo>> listMgtStaffSuggestTag(@RequestBody MgtBaseGetDto mgtBaseGetDto) { - List<MgtStaffSuggestTagVo> mgtStaffSuggestTagVoList= staffSuggestService.listMgtStaffSuggestTag(Long.valueOf(mgtBaseGetDto.getId())); - return R.ok(mgtStaffSuggestTagVoList); - }*/ + 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 = "通过权限获取部门员工列表") + public R<List<MgtDeptStaffListVo>> listMgtDeptStaffByPermission() { + Long userId = SecurityUtils.getUserId(); + List<MgtDeptStaffListVo> mgtDeptStaffListVoList= sysStaffService.listMgtDeptStaffByPermission(userId); + return R.ok(mgtDeptStaffListVoList); + } @RequestMapping(value = "/pageMgtStaffSuggest", method = RequestMethod.POST) @@ -52,11 +108,30 @@ Page<MgtStaffSuggestPageVo> page = new Page<>(); page.setSize(mgtStaffSuggestPageDto.getPageSize()); page.setCurrent(mgtStaffSuggestPageDto.getPageNum()); - List<MgtStaffSuggestPageVo> mgtShopSuggestPageVoList = staffSuggestService.pageMgtStaffSuggest(page,mgtStaffSuggestPageDto); - return R.ok(page.setRecords(mgtShopSuggestPageVoList)); + List<MgtStaffSuggestPageVo> staffSuggestPageVoList = staffSuggestService.pageMgtStaffSuggest(page,mgtStaffSuggestPageDto); + return R.ok(page.setRecords(staffSuggestPageVoList)); + } + + @RequestMapping(value = "/exportPageMgtStaffSuggest", method = RequestMethod.POST) + @ApiOperation(value = "导出员工建议列表") + public void exportPageMgtStaffSuggest(MgtStaffSuggestPageDto mgtStaffSuggestPageDto, HttpServletResponse response) { + Long userId = SecurityUtils.getUserId(); + mgtStaffSuggestPageDto.setUserId(userId); + Page<MgtStaffSuggestPageVo> page = new Page<>(); + 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); + util.exportExcel(response, staffSuggestPageVoList, "员工建议列表"); } @RequestMapping(value = "/mgtReplayStaffSuggest", method = RequestMethod.POST) + @Log(title = "建议管理", businessType = BusinessType.UPDATE,operContent = "平台回复会员建议") @ApiOperation(value = "平台回复会员建议") public R mgtReplayStaffSuggest(@RequestBody MgtReplayStaffSuggestDto mgtReplayStaffSuggestDto) { Long userId = SecurityUtils.getUserId(); @@ -73,6 +148,7 @@ } @RequestMapping(value = "/mgtEditStaffSuggestTag", method = RequestMethod.POST) + @Log(title = "建议管理", businessType = BusinessType.UPDATE,operContent = "编辑会员建议标签") @ApiOperation(value = "平台编辑会员建议标签") public R mgtEditStaffSuggestTag(@RequestBody MgtTagStaffSuggestDto mgtTagStaffSuggestDto) { Long userId = SecurityUtils.getUserId(); @@ -80,4 +156,46 @@ staffSuggestService.mgtEditStaffSuggestTag(mgtTagStaffSuggestDto); return R.ok(); } + + @RequestMapping(value = "/pageMgtStaff", method = RequestMethod.POST) + @ApiOperation(value = "平台获取员工列表") + public R<Page<MgtStaffPageVo>> pageMgtStaff(@RequestBody MgtStaffPageDto mgtStaffPageDto) { + Long userId = SecurityUtils.getUserId(); + mgtStaffPageDto.setUserId(userId); + Page<MgtStaffPageVo> page = new Page<>(); + page.setSize(mgtStaffPageDto.getPageSize()); + page.setCurrent(mgtStaffPageDto.getPageNum()); + List<MgtStaffPageVo> staffPageVoList = sysStaffService.pageMgtStaff(page,mgtStaffPageDto); + return R.ok(page.setRecords(staffPageVoList)); + } + + @RequestMapping(value = "/mgtEditStaff", method = RequestMethod.POST) + @Log(title = "员工管理", businessType = BusinessType.UPDATE,operContent = "编辑员工") + @ApiOperation(value = "平台编辑员工") + public R mgtEditStaff(@Validated @RequestBody MgtStaffEditDto mgtStaffEditDto) { + Long userId = SecurityUtils.getUserId(); + mgtStaffEditDto.setUserId(userId); + sysStaffService.mgtStaffEdit(mgtStaffEditDto); + return R.ok(); + } + + @RequestMapping(value = "/mgtDeleteStaff", method = RequestMethod.POST) + @Log(title = "员工管理", businessType = BusinessType.DELETE,operContent = "删除员工") + @ApiOperation(value = "平台删除员工") + public R mgtStaffEdit(@RequestBody MgtBaseGetDto mgtBaseGetDto) { + Long userId = SecurityUtils.getUserId(); + mgtBaseGetDto.setUserId(userId); + 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