From 57f0ac728903401fd0123ee300eb178bb569a08e Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 22 三月 2024 14:44:11 +0800
Subject: [PATCH] 修改bug
---
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java | 247 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 240 insertions(+), 7 deletions(-)
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
index 624625c..b657b71 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
@@ -1,6 +1,7 @@
package com.ruoyi.shop.controller.management;
import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
@@ -12,7 +13,10 @@
import com.ruoyi.shop.domain.vo.*;
import com.ruoyi.shop.service.shop.*;
import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
+import com.ruoyi.system.api.domain.poji.shop.Shop;
+import com.ruoyi.system.api.domain.poji.sys.SysUser;
import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo;
+import com.ruoyi.system.api.service.RemoteUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
@@ -27,8 +31,11 @@
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
+import java.rmi.server.ServerCloneException;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* @author jqs34
@@ -61,24 +68,120 @@
@Resource
private BankBranchCodeService bankBranchCodeService;
-
+ @Resource
+ private RemoteUserService sysUserService;
@RequestMapping(value = "/listMgtShopSimpleVo", method = RequestMethod.POST)
@ApiOperation(value = "获取简易商户列表")
public R<List<MgtShopListSimpleVo>> listMgtShopSimpleVo(@RequestBody MgtShopListDto mgtShopListDto) {
- List<MgtShopListSimpleVo> mgtShopListSimpleVoList = shopService.listMgtShopSimpleVo(mgtShopListDto);
+ // 获取当前登陆人的可视权限
+ SysUser sysUser = SecurityUtils.getSysUser();
+ // 店铺ids
+ List<Long> scope = new ArrayList<>();
+ if (sysUser!=null){
+ String dataScope = sysUser.getDataScope();
+ if (!sysUser.getUserName().equals("admin")){
+ if (org.springframework.util.StringUtils.hasLength(dataScope)){
+ switch (dataScope){
+ case "3":
+ // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+ // 根据用户id 查询同部门下所有员工id
+ List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData();
+ // 店铺ids
+ List<Long> data = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data);
+ }
+
+ break;
+ case "5":
+ // 仅个人数据 查询当前登陆人关联店铺下的用户
+ List<Long> longs = new ArrayList<>();
+ longs.add(sysUser.getUserId());
+ // 获取店铺ids
+ List<Long> data1 = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", longs)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data1.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data1);
+ }
+ break;
+ }
+ }
+ }
+ }
+ List<MgtShopListSimpleVo> mgtShopListSimpleVoList = shopService.listMgtShopSimpleVo(mgtShopListDto,scope);
return R.ok(mgtShopListSimpleVoList);
}
@RequestMapping(value = "/pageMgtShop", method = RequestMethod.POST)
@ApiOperation(value = "分页获取商户列表")
public R<Page<MgtShopPageVo>> pageMgtShop(@RequestBody MgtShopPageDto mgtShopPageDto) {
+ // 获取当前登陆人的可视权限
+ SysUser sysUser = SecurityUtils.getSysUser();
+ // 店铺ids
+ List<Long> scope = new ArrayList<>();
+ if (sysUser!=null){
+ String dataScope = sysUser.getDataScope();
+ if (!sysUser.getUserName().equals("admin")){
+ if (org.springframework.util.StringUtils.hasLength(dataScope)){
+ switch (dataScope){
+ case "3":
+ // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+ // 根据用户id 查询同部门下所有员工id
+ List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData();
+ // 店铺ids
+ List<Long> data = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data);
+ }
+
+ break;
+ case "5":
+ // 仅个人数据 查询当前登陆人关联店铺下的用户
+ List<Long> longs = new ArrayList<>();
+ longs.add(sysUser.getUserId());
+ // 获取店铺ids
+ List<Long> data1 = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", longs)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data1.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data1);
+ }
+ break;
+ }
+ }
+ }
+ }
+ if(null != mgtShopPageDto.getDeptId()){
+ R<List<SysUser>> r = sysUserService.getUsersByDeptId(mgtShopPageDto.getDeptId());
+ List<Long> collect = r.getData().stream().map(SysUser::getUserId).collect(Collectors.toList());
+ List<Shop> shops = shopService.getShopBySysUserIds(collect);
+ scope.addAll(shops.stream().map(Shop::getShopId).collect(Collectors.toList()));
+ }
+
Page<MgtShopPageVo> page = new Page<>();
page.setSize(mgtShopPageDto.getPageSize());
page.setCurrent(mgtShopPageDto.getPageNum());
- List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto);
+ List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto,scope);
return R.ok(page.setRecords(mgtShopPageVoList));
}
@@ -93,7 +196,48 @@
page.setSize(mgtShopPageDto.getPageSize());
page.setCurrent(mgtShopPageDto.getPageNum());
}
- List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto);
+ // 获取当前登陆人的可视权限
+ SysUser sysUser = SecurityUtils.getSysUser();
+ // 店铺ids
+ List<Long> scope = new ArrayList<>();
+ if (sysUser!=null){
+ String dataScope = sysUser.getDataScope();
+ if (!sysUser.getUserName().equals("admin")){
+ if (org.springframework.util.StringUtils.hasLength(dataScope)){
+ switch (dataScope){
+ case "3":
+ // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+ // 根据用户id 查询同部门下所有员工id
+ List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData();
+ // 店铺ids
+ List<Long> data = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 1))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ scope.addAll(data);
+ break;
+ case "5":
+ // 仅个人数据 查询当前登陆人关联店铺下的用户
+ List<Long> longs = new ArrayList<>();
+ longs.add(sysUser.getUserId());
+ // 获取店铺ids
+ List<Long> data1 = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", longs)
+ .eq("del_flag", 1))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ scope.addAll(data1);
+ break;
+ }
+ }
+ }
+ }
+ if(null != mgtShopPageDto.getDeptId()){
+ R<List<SysUser>> r = sysUserService.getUsersByDeptId(mgtShopPageDto.getDeptId());
+ List<Long> collect = r.getData().stream().map(SysUser::getUserId).collect(Collectors.toList());
+ List<Shop> shops = shopService.getShopBySysUserIds(collect);
+ scope.addAll(shops.stream().map(Shop::getShopId).collect(Collectors.toList()));
+ }
+ List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto,scope);
ExcelUtil<MgtShopPageVo> util = new ExcelUtil<MgtShopPageVo>(MgtShopPageVo.class);
util.exportExcel(response, mgtShopPageVoList, "商户列表");
}
@@ -282,7 +426,51 @@
Page<MgtShopAuthPageVo> page = new Page<>();
page.setSize(mgtShopAuthPageDto.getPageSize());
page.setCurrent(mgtShopAuthPageDto.getPageNum());
- List<MgtShopAuthPageVo> mgtShopAuthPageVoList = shopService.pageMgtShopAuth(page,mgtShopAuthPageDto);
+ // 获取当前登陆人的可视权限
+ SysUser sysUser = SecurityUtils.getSysUser();
+ // 店铺ids
+ List<Long> scope = new ArrayList<>();
+ if (sysUser!=null){
+ String dataScope = sysUser.getDataScope();
+ if (!sysUser.getUserName().equals("admin")){
+ if (org.springframework.util.StringUtils.hasLength(dataScope)){
+ switch (dataScope){
+ case "3":
+ // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+ // 根据用户id 查询同部门下所有员工id
+ List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData();
+ // 店铺ids
+ List<Long> data = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data);
+ }
+
+ break;
+ case "5":
+ // 仅个人数据 查询当前登陆人关联店铺下的用户
+ List<Long> longs = new ArrayList<>();
+ longs.add(sysUser.getUserId());
+ // 获取店铺ids
+ List<Long> data1 = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", longs)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data1.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data1);
+ }
+ break;
+ }
+ }
+ }
+ }
+ List<MgtShopAuthPageVo> mgtShopAuthPageVoList = shopService.pageMgtShopAuth(page,mgtShopAuthPageDto,scope);
return R.ok(page.setRecords(mgtShopAuthPageVoList));
}
@@ -325,10 +513,53 @@
@RequestMapping(value = "/pageMgtShopHFTXAuth", method = RequestMethod.POST)
@ApiOperation(value = "分页获取商户进件列表(汇付天下)")
public R<Page<MgtShopHFTXAuthPageVo>> pageMgtShopHFTXAuth(@RequestBody MgtShopHFTXAuthPageDto mgtShopAuthPageDto) {
+ // 获取当前登陆人的可视权限
+ SysUser sysUser = SecurityUtils.getSysUser();
+ // 店铺ids
+ List<Long> scope = new ArrayList<>();
+ if (sysUser!=null){
+ String dataScope = sysUser.getDataScope();
+ if (!sysUser.getUserName().equals("admin")){
+ if (org.springframework.util.StringUtils.hasLength(dataScope)){
+ switch (dataScope){
+ case "3":
+ // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺
+ // 根据用户id 查询同部门下所有员工id
+ List<Long> userIds = sysUserService.getUserIdsByDept(sysUser.getUserId()).getData();
+ // 店铺ids
+ List<Long> data = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", userIds)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data);
+ }
+ break;
+ case "5":
+ // 仅个人数据 查询当前登陆人关联店铺下的用户
+ List<Long> longs = new ArrayList<>();
+ longs.add(sysUser.getUserId());
+ // 获取店铺ids
+ List<Long> data1 = shopService.list(new QueryWrapper<Shop>()
+ .in("belong_user_id", longs)
+ .eq("del_flag", 0))
+ .stream().map(Shop::getShopId).collect(Collectors.toList());
+ if (data1.size()==0){
+ scope.add(0L);
+ }else{
+ scope.addAll(data1);
+ }
+ break;
+ }
+ }
+ }
+ }
Page<MgtShopHFTXAuthPageVo> page = new Page<>();
page.setSize(mgtShopAuthPageDto.getPageSize());
page.setCurrent(mgtShopAuthPageDto.getPageNum());
- List<MgtShopHFTXAuthPageVo> mgtShopHFTXAuthPageVos = shopService.pageMgtShopHFTXAuth(page, mgtShopAuthPageDto);
+ List<MgtShopHFTXAuthPageVo> mgtShopHFTXAuthPageVos = shopService.pageMgtShopHFTXAuth(page, mgtShopAuthPageDto,scope);
return R.ok(page.setRecords(mgtShopHFTXAuthPageVos));
}
@@ -336,7 +567,7 @@
@RequestMapping(value = "/mgtShopHFTXAuth", method = RequestMethod.POST)
@Log(title = "商户进件管理", businessType = BusinessType.UPDATE,operContent = "商户进件")
@ApiOperation(value = "平台商户进件(汇付天下)")
- public R mgtShopHFTXAuth(@Validated @RequestBody MgtShopHFTXAuthDto mgtShopHFTXAuthDto) {
+ public R mgtShopHFTXAuth(@RequestBody MgtShopHFTXAuthDto mgtShopHFTXAuthDto) {
Long userId = SecurityUtils.getUserId();
mgtShopHFTXAuthDto.setUserId(userId);
shopService.mgtShopHFTXAuth(mgtShopHFTXAuthDto);
@@ -364,6 +595,8 @@
}
+
+
@RequestMapping(value = "/getMgtShopHFTXAuthInfo", method = RequestMethod.POST)
@ApiOperation(value = "获取商户进件信息(汇付天下)")
public R<MgtShopHFTXAuthGetVo> getMgtShopHFTXAuthInfo(@Validated @RequestBody MgtShopHFTXAuthGetDto mgtShopHFTXAuthGetDto){
--
Gitblit v1.7.1