ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java
@@ -43,6 +43,11 @@ } @Override public R<List<Long>> getShopIdsByUserIds(List<Long> userIds) { return R.fail("通过用户ids获取店铺ids失败:" + throwable.getMessage()); } @Override public R<ShopAuthenticationHftxVo> getShopHFTXSubMchId(@RequestBody Long shopId){ return R.fail("获取微信商户号失败:" + throwable.getMessage()); } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java
@@ -24,7 +24,8 @@ @PostMapping("/shop/getShopSubMchId") public R<String> getShopSubMchId(@RequestBody Long shopId); @PostMapping("/shop/getShopIdsByUserIds") public R<List<Long>> getShopIdsByUserIds(@RequestBody List<Long> userIds); @PostMapping("/shop/getShopHFTXSubMchId") public R<ShopAuthenticationHftxVo> getShopHFTXSubMchId(@RequestBody Long shopId); ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtMemberController.java
@@ -57,6 +57,9 @@ Page<MgtMemberPageVo> page = new Page<>(); page.setSize(mgtMemberPageDto.getPageSize()); page.setCurrent(mgtMemberPageDto.getPageNum()); // 获取当前登陆人的可视权限 Long userId = SecurityUtils.getUserId(); List<MgtMemberPageVo> mgtShopPageVoList = memberService.pageMgtMember(page,mgtMemberPageDto); return R.ok(page.setRecords(mgtShopPageVoList)); } ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java
@@ -75,7 +75,8 @@ * @param merMemberPageDto * @return */ List<MgtMemberPageVo> pageMgtMember(Page page, @Param("param") MgtMemberPageDto merMemberPageDto); List<MgtMemberPageVo> pageMgtMember(Page page, @Param("param") MgtMemberPageDto merMemberPageDto, @Param("list")List<Long> list); /** * @description 删除标签 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -903,6 +903,7 @@ */ @Override public List<MgtMemberPageVo> pageMgtMember(Page page, MgtMemberPageDto merMemberPageDto) { List<Activeness> activenessList = remoteConfigService.listActiveness().getData(); Date nowDay = new Date(); if (merMemberPageDto.getActivenessId() != null) { @@ -932,8 +933,37 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); merMemberPageDto.setStartBirthday(startBirthday.format(formatter)); } // 获取当前登陆人的可视权限 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.getShopIdsByUserIds(userIds).getData(); scope.addAll(data); break; case "5": // 仅个人数据 查询当前登陆人关联店铺下的用户 List<Long> longs = new ArrayList<>(); longs.add(sysUser.getUserId()); // 获取店铺ids List<Long> data1 = shopService.getShopIdsByUserIds(longs).getData(); scope.addAll(data1); break; } } } } //查询获取结果列表 List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto); List<MgtMemberPageVo> memberPageVoList = memberMapper.pageMgtMember(page, merMemberPageDto,scope); //处理活跃度返回 if (memberPageVoList != null && !memberPageVoList.isEmpty()) { if (activenessList != null && !activenessList.isEmpty()) { ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
@@ -313,6 +313,12 @@ <if test="param.memberTags != null and param.memberTags != ''"> AND tm.user_tags REGEXP #{param.memberTags} </if> <if test="list != null and list.size()>0"> AND tm.relation_shop_id IN <foreach collection="list" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> ORDER BY tm.create_time DESC </select> ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -3955,14 +3955,52 @@ List<Long> userIdList = new ArrayList<>(); if (mgtBasePlatformDto.getUserId() != null) { userIdList.add(mgtBasePlatformDto.getUserId()); } else { // 如果当前登陆人的可视权限是仅个人 只选择了部门也只能看自己的数据 SysUser sysUser = SecurityUtils.getSysUser(); if (sysUser.getDataScope().equals("5")){ userIdList.add(sysUser.getUserId()); } else { MgtUserIdByDept mgtUserIdByDept = new MgtUserIdByDept(); mgtUserIdByDept.setDeptId(mgtBasePlatformDto.getUserId()); mgtUserIdByDept.setDeptId(mgtBasePlatformDto.getDeptId()); mgtUserIdByDept = remoteConfigService.getUserIdByDept(mgtUserIdByDept).getData(); userIdList = mgtUserIdByDept.getUserIdList(); } } if (!userIdList.isEmpty()) { mgtBasePlatformDto.setUserIdList(userIdList); } }else{ // 没有选择筛选部门和员工 获取当前登陆人的可视权限 SysUser sysUser = SecurityUtils.getSysUser(); // 如果当前登陆人是查看个人数据 Long userId1 = null; // 如果当前登陆人权限是查看部门数据 List<Long> userList = 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": // 本部门数据 查询当前登陆人属于哪个部门 查询这个部门下所有员工关联的所有店铺 MgtUserIdByDept mgtUserIdByDept = new MgtUserIdByDept(); mgtUserIdByDept.setDeptId(sysUser.getDeptId()); mgtUserIdByDept = remoteConfigService.getUserIdByDept(mgtUserIdByDept).getData(); userList = mgtUserIdByDept.getUserIdList(); mgtBasePlatformDto.setDeptId(sysUser.getDeptId()); mgtBasePlatformDto.setUserIdList(userList); case "5": // 仅个人数据 查询当前登陆人关联店铺下的用户 userId1 = sysUser.getUserId(); userList.add(userId1); mgtBasePlatformDto.setDeptId(sysUser.getDeptId()); mgtBasePlatformDto.setUserIdList(userList); break; } } } } } MgtTotalOrderTotalVo mgtTotalOrderTotalVo = new MgtTotalOrderTotalVo(); @@ -3989,6 +4027,7 @@ mgtTotalOrderTotalVo.setGoodsTypeMoneyList(Lists.newArrayList()); mgtTotalOrderTotalVo.setGoodsRankList(Lists.newArrayList()); mgtTotalOrderTotalVo.setOrderFromRankList(Lists.newArrayList()); List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData(); if (mgtBasePlatformDto.getUserId() != null || StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) { if(shopIdList==null||shopIdList.isEmpty()){ ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
@@ -30,6 +30,8 @@ import javax.annotation.Resource; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; /** * @author jqs34 @@ -78,7 +80,16 @@ @Autowired private ShopAuthenticationHftxService shopAuthenticationHftxService; @PostMapping("/getShopIdsByUserIds") public R<List<Long>> getShopIdsByUserIds(@RequestBody List<Long> userIds) { // 店铺ids List<Long> list = shopService.list(new QueryWrapper<Shop>() .in("belong_user_id", userIds) .eq("del_flag", 0)) .stream().map(Shop::getShopId).collect(Collectors.toList()); return R.ok(list); } /** * 企业微信H5登录 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,10 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * @author jqs34 @@ -61,24 +67,95 @@ @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()); 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()); 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()); 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()); scope.addAll(data1); break; } } } } 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 +170,42 @@ 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; } } } } List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto,scope); ExcelUtil<MgtShopPageVo> util = new ExcelUtil<MgtShopPageVo>(MgtShopPageVo.class); util.exportExcel(response, mgtShopPageVoList, "商户列表"); } @@ -282,7 +394,42 @@ 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()); 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()); scope.addAll(data1); break; } } } } List<MgtShopAuthPageVo> mgtShopAuthPageVoList = shopService.pageMgtShopAuth(page,mgtShopAuthPageDto,scope); return R.ok(page.setRecords(mgtShopAuthPageVoList)); } @@ -325,10 +472,45 @@ @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()); 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()); 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)); } ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java
@@ -39,7 +39,7 @@ * @param mgtShopPageDto * @return */ List<MgtShopPageVo> pageMgtShop(Page page, @Param("param") MgtShopPageDto mgtShopPageDto); List<MgtShopPageVo> pageMgtShop(Page page, @Param("param") MgtShopPageDto mgtShopPageDto,@Param("list") List<Long> scope); /** @@ -101,7 +101,8 @@ * @param mgtShopListDto * @return List<MgtShopListSimpleVo> */ List<MgtShopListSimpleVo> listMgtShopSimpleVo(@Param("param")MgtShopListDto mgtShopListDto); List<MgtShopListSimpleVo> listMgtShopSimpleVo(@Param("param")MgtShopListDto mgtShopListDto, @Param("list")List<Long> list); /** * @description 通过id获取商户列表 @@ -130,7 +131,8 @@ * @author jqs34 * @date 2023/6/15 0:05 */ List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, @Param("param")MgtShopAuthPageDto mgtShopAuthPageDto); List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, @Param("param")MgtShopAuthPageDto mgtShopAuthPageDto, @Param("list")List<Long> scope); /** @@ -139,7 +141,8 @@ * @param mgtShopAuthPageDto * @return */ List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, @Param("param") MgtShopHFTXAuthPageDto mgtShopAuthPageDto); List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, @Param("param") MgtShopHFTXAuthPageDto mgtShopAuthPageDto, @Param("list")List<Long> scope); ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -552,12 +552,13 @@ * @return */ @Override public List<MgtShopPageVo> pageMgtShop(Page page, MgtShopPageDto mgtShopPageDto){ public List<MgtShopPageVo> pageMgtShop(Page page, MgtShopPageDto mgtShopPageDto,List<Long> scope){ if (StringUtils.isNotBlank(mgtShopPageDto.getShopTags())) { mgtShopPageDto.setShopTags(mgtShopPageDto.getShopTags().replace(",", "|")); } // 分页查询商铺信息 List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageMgtShop(page, mgtShopPageDto); List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageMgtShop(page, mgtShopPageDto,scope); // 如果查询结果不为空 if (!mgtShopPageVoList.isEmpty()) { // 创建签约用户ID集合和所属用户ID集合 @@ -1043,8 +1044,8 @@ * @return List<MgtShopListSimpleVo> */ @Override public List<MgtShopListSimpleVo> listMgtShopSimpleVo(MgtShopListDto mgtShopListDto){ return shopMapper.listMgtShopSimpleVo(mgtShopListDto); public List<MgtShopListSimpleVo> listMgtShopSimpleVo(MgtShopListDto mgtShopListDto,List<Long> scope){ return shopMapper.listMgtShopSimpleVo(mgtShopListDto,scope); } /** @@ -1081,8 +1082,8 @@ * @date 2023/6/14 23:01 */ @Override public List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, MgtShopAuthPageDto mgtShopAuthPageDto){ return shopMapper.pageMgtShopAuth(page, mgtShopAuthPageDto); public List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, MgtShopAuthPageDto mgtShopAuthPageDto,List<Long> scope){ return shopMapper.pageMgtShopAuth(page, mgtShopAuthPageDto,scope); } /** @@ -1092,8 +1093,9 @@ * @return */ @Override public List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, MgtShopHFTXAuthPageDto mgtShopAuthPageDto) { return shopMapper.pageMgtShopHFTXAuth(page, mgtShopAuthPageDto); public List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, MgtShopHFTXAuthPageDto mgtShopAuthPageDto, List<Long> scope) { return shopMapper.pageMgtShopHFTXAuth(page, mgtShopAuthPageDto,scope); } /** ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java
@@ -70,7 +70,7 @@ * @param mgtShopPageDto * @return */ List<MgtShopPageVo> pageMgtShop(Page page, MgtShopPageDto mgtShopPageDto); List<MgtShopPageVo> pageMgtShop(Page page, MgtShopPageDto mgtShopPageDto,List<Long> scope); /** * 获取商户详情 @@ -161,7 +161,7 @@ * @param mgtShopListDto * @return List<MgtShopListSimpleVo> */ List<MgtShopListSimpleVo> listMgtShopSimpleVo(MgtShopListDto mgtShopListDto); List<MgtShopListSimpleVo> listMgtShopSimpleVo(MgtShopListDto mgtShopListDto,List<Long> scope); /** * @description 通过id获取商户列表 @@ -190,7 +190,8 @@ * @author jqs34 * @date 2023/6/15 0:05 */ List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, MgtShopAuthPageDto mgtShopAuthPageDto); List<MgtShopAuthPageVo> pageMgtShopAuth(Page page, MgtShopAuthPageDto mgtShopAuthPageDto, List<Long> scope); /** @@ -199,7 +200,7 @@ * @param mgtShopAuthPageDto * @return */ List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, MgtShopHFTXAuthPageDto mgtShopAuthPageDto); List<MgtShopHFTXAuthPageVo> pageMgtShopHFTXAuth(Page page, MgtShopHFTXAuthPageDto mgtShopAuthPageDto,List<Long> scope); /** ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -392,6 +392,12 @@ AND (ts.shop_name LIKE CONCAT('%',#{param.keyword},'%') OR ts.shopowner_name LIKE CONCAT('%',#{param.keyword},'%') OR ts.shopowner_phone LIKE CONCAT('%',#{param.keyword},'%') OR ts.shop_number LIKE CONCAT('%',#{param.keyword},'%')) </if> <if test="list !=null and list.size()>0" > AND ts.shop_id IN <foreach collection="list" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> ORDER BY ts.create_time DESC </select> @@ -515,7 +521,12 @@ <if test="param.keyword!=null and param.keyword!=''"> AND shop_name LIKE CONCAT('%',#{param.keyword},'%') </if> <if test="list !=null and list.size()>0" > AND shop_id IN <foreach collection="list" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> </select> <select id="listShopSimpleVoByIds" resultType="com.ruoyi.system.api.domain.vo.MgtSimpleShopVo"> @@ -592,6 +603,12 @@ <if test="param.shopStatus!=null and param.shopStatus!=''"> AND ts.shop_status = #{param.shopStatus} </if> <if test="list!=null and list.size()>0"> AND ts.shop_id IN <foreach collection="list" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> ORDER BY auditStatusSort ASC,ts.create_time DESC </select> @@ -629,6 +646,12 @@ <if test="param.shopStatus!=null and param.shopStatus!=''"> AND a.shop_status = #{param.shopStatus} </if> <if test="list!=null and list.size()>0"> AND a.shop_id IN <foreach collection="list" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> ORDER BY a.create_time DESC </select> ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
@@ -8,6 +8,8 @@ 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; @@ -23,6 +25,7 @@ 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; @@ -39,7 +42,8 @@ @RequestMapping("/mgt/staff") public class MgtStaffController { @Resource private RemoteUserService sysUserService; @Resource private StaffSuggestService staffSuggestService; @@ -50,7 +54,31 @@ @RequestMapping(value = "/listMgtDeptStaff", method = RequestMethod.POST) @ApiOperation(value = "获取部门员工列表") public R<List<MgtDeptStaffListVo>> listMgtDeptStaff() { List<MgtDeptStaffListVo> mgtDeptStaffListVoList= sysStaffService.listMgtDeptStaff(); // 获取当前登陆人的可视权限 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); return R.ok(mgtDeptStaffListVoList); } ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java
@@ -28,7 +28,7 @@ * @param * @return List<MgtDeptStaffListVo> */ List<MgtDeptStaffListVo> listMgtDeptStaff(); List<MgtDeptStaffListVo> listMgtDeptStaff(@Param("deptId") Long deptId,@Param("userId")Long userId); /** * @description 获取部门员工列表 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java
@@ -89,8 +89,8 @@ * @return List<MgtDeptStaffListVo> */ @Override public List<MgtDeptStaffListVo> listMgtDeptStaff(){ return sysStaffMapper.listMgtDeptStaff(); public List<MgtDeptStaffListVo> listMgtDeptStaff(Long deptId,Long userId){ return sysStaffMapper.listMgtDeptStaff(deptId,userId); } /** @@ -102,16 +102,31 @@ */ @Override public List<MgtDeptStaffListVo>listMgtDeptStaffByPermission(Long userId){ SysUser sysUser = sysUserService.selectUserById(userId); String dataScope = sysUser.getDataScope(); List<MgtDeptStaffListVo> deptStaffListVoList; if(dataScope!=null&&dataScope.equals("4")){ deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),null); }else if(dataScope!=null&&dataScope.equals("5")){ deptStaffListVoList = sysStaffMapper.listMgtDeptStaffByDept(sysUser.getDeptId(),sysUser.getUserId()); }else{ deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(); // 获取当前登陆人的可视权限 SysUser sysUser = sysUserService.selectUserById(userId); // 如果当前登陆人权限是查看部门数据 Long deptId = null; // 如果当前登陆人是查看个人数据 Long userId1 = 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": // 仅个人数据 查询当前登陆人关联店铺下的用户 userId1 = sysUser.getUserId(); break; } } } } deptStaffListVoList = sysStaffMapper.listMgtDeptStaff(deptId,userId1); return deptStaffListVoList; } ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java
@@ -30,7 +30,7 @@ * @param * @return List<MgtDeptStaffListVo> */ List<MgtDeptStaffListVo> listMgtDeptStaff(); List<MgtDeptStaffListVo> listMgtDeptStaff(Long deptId,Long userId); /** * @description 通过权限获取部门员工列表 ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml
@@ -20,6 +20,12 @@ FROM sys_dept sd LEFT JOIN sys_user su ON sd.dept_id = su.dept_id WHERE sd.del_flag = "0" AND su.del_flag = "0" AND su.status = "0" <if test="deptId != null"> AND sd.dept_id = #{deptId} </if> <if test="userId != null "> AND su.user_id = #{userId} </if> </select> <select id="listMgtDeptStaffByDept" resultMap="deptStaffResultMap">