mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-17 16:28:41 +08:00
查询登录用户权限信息,使用UserUtils
This commit is contained in:
@@ -21,6 +21,7 @@ import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
|
|||||||
import com.jsowell.pile.service.IMemberBasicInfoService;
|
import com.jsowell.pile.service.IMemberBasicInfoService;
|
||||||
import com.jsowell.pile.service.IMemberPlateNumberRelationService;
|
import com.jsowell.pile.service.IMemberPlateNumberRelationService;
|
||||||
import com.jsowell.pile.service.IMemberTransactionRecordService;
|
import com.jsowell.pile.service.IMemberTransactionRecordService;
|
||||||
|
import com.jsowell.pile.util.UserUtils;
|
||||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberVO;
|
import com.jsowell.pile.vo.uniapp.MemberVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
||||||
@@ -74,7 +75,8 @@ public class MemberBasicInfoController extends BaseController {
|
|||||||
public RestApiResponse<?> getMerchantListByAuth() {
|
public RestApiResponse<?> getMerchantListByAuth() {
|
||||||
RestApiResponse<?> response = null;
|
RestApiResponse<?> response = null;
|
||||||
// List<MerchantInfoVO> list = memberBasicInfoService.getMerchantListByAuth(deptIds);
|
// List<MerchantInfoVO> list = memberBasicInfoService.getMerchantListByAuth(deptIds);
|
||||||
List<MerchantInfoVO> list = memberBasicInfoService.getMerchantListByAuth();
|
// List<MerchantInfoVO> list = memberBasicInfoService.getMerchantListByAuth();
|
||||||
|
List<MerchantInfoVO> list = UserUtils.getMerchantListByAuth();
|
||||||
if (CollectionUtils.isEmpty(list)) {
|
if (CollectionUtils.isEmpty(list)) {
|
||||||
list = new ArrayList<>();
|
list = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.jsowell.pile.domain.MemberBasicInfo;
|
|||||||
import com.jsowell.pile.dto.PlatformTesterDTO;
|
import com.jsowell.pile.dto.PlatformTesterDTO;
|
||||||
import com.jsowell.pile.dto.QueryMemberInfoDTO;
|
import com.jsowell.pile.dto.QueryMemberInfoDTO;
|
||||||
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
|
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
|
||||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
|
||||||
import com.jsowell.pile.vo.uniapp.MemberBalanceVO;
|
import com.jsowell.pile.vo.uniapp.MemberBalanceVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberVO;
|
import com.jsowell.pile.vo.uniapp.MemberVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
||||||
@@ -147,10 +146,4 @@ public interface IMemberBasicInfoService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<MemberBalanceVO> getMemberRefundAmount(List<String> memberIds);
|
List<MemberBalanceVO> getMemberRefundAmount(List<String> memberIds);
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取当前会员中的运营商列表(带权限校验)
|
|
||||||
*/
|
|
||||||
List<MerchantInfoVO> getMerchantListByAuth();
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,14 +4,10 @@ import com.github.pagehelper.PageHelper;
|
|||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import com.jsowell.common.constant.CacheConstants;
|
import com.jsowell.common.constant.CacheConstants;
|
||||||
import com.jsowell.common.constant.Constants;
|
import com.jsowell.common.constant.Constants;
|
||||||
import com.jsowell.common.core.domain.entity.SysDept;
|
|
||||||
import com.jsowell.common.core.domain.entity.SysUser;
|
|
||||||
import com.jsowell.common.core.domain.model.LoginUser;
|
|
||||||
import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
|
import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
|
||||||
import com.jsowell.common.core.redis.RedisCache;
|
import com.jsowell.common.core.redis.RedisCache;
|
||||||
import com.jsowell.common.enums.MemberWalletEnum;
|
import com.jsowell.common.enums.MemberWalletEnum;
|
||||||
import com.jsowell.common.util.DateUtils;
|
import com.jsowell.common.util.DateUtils;
|
||||||
import com.jsowell.common.util.SecurityUtils;
|
|
||||||
import com.jsowell.common.util.StringUtils;
|
import com.jsowell.common.util.StringUtils;
|
||||||
import com.jsowell.pile.domain.*;
|
import com.jsowell.pile.domain.*;
|
||||||
import com.jsowell.pile.dto.PlatformTesterDTO;
|
import com.jsowell.pile.dto.PlatformTesterDTO;
|
||||||
@@ -23,7 +19,6 @@ import com.jsowell.pile.mapper.MemberWalletInfoMapper;
|
|||||||
import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
||||||
import com.jsowell.pile.service.*;
|
import com.jsowell.pile.service.*;
|
||||||
import com.jsowell.pile.util.UserUtils;
|
import com.jsowell.pile.util.UserUtils;
|
||||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
|
||||||
import com.jsowell.pile.vo.uniapp.MemberBalanceVO;
|
import com.jsowell.pile.vo.uniapp.MemberBalanceVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberVO;
|
import com.jsowell.pile.vo.uniapp.MemberVO;
|
||||||
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
||||||
@@ -39,7 +34,6 @@ import org.springframework.util.StopWatch;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 会员基础信息Service业务层处理
|
* 会员基础信息Service业务层处理
|
||||||
@@ -425,54 +419,4 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
return memberWalletLogMapper.getMemberRefundAmount(memberIds);
|
return memberWalletLogMapper.getMemberRefundAmount(memberIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取当前会员中的运营商列表(带权限校验)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public List<MerchantInfoVO> getMerchantListByAuth() {
|
|
||||||
List<MerchantInfoVO> resultList = Lists.newArrayList();
|
|
||||||
// 获取登录用户 所有有权限运营商
|
|
||||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
||||||
if (Objects.isNull(loginUser)) {
|
|
||||||
return resultList;
|
|
||||||
}
|
|
||||||
// 获取登录用户对应的user对象
|
|
||||||
SysUser user = loginUser.getUser();
|
|
||||||
if (Objects.isNull(user)) {
|
|
||||||
return resultList;
|
|
||||||
}
|
|
||||||
// 获取所属部门id
|
|
||||||
SysDept dept = user.getDept();
|
|
||||||
if (Objects.isNull(dept)) {
|
|
||||||
return resultList;
|
|
||||||
}
|
|
||||||
String deptLevel = dept.getDeptLevel();
|
|
||||||
String deptId = String.valueOf(dept.getDeptId());
|
|
||||||
if (Constants.ZERO.equals(deptLevel)) {
|
|
||||||
// 平台级权限 查询所有生效的运营商
|
|
||||||
resultList = pileMerchantInfoService.selectAll();
|
|
||||||
} else if (Constants.ONE.equals(deptLevel)) {
|
|
||||||
// 一级运营商权限 查询该一级运营商下面的所有运营商
|
|
||||||
PileMerchantInfo merchantInfo = pileMerchantInfoService.queryInfoByDeptId(deptId);
|
|
||||||
resultList = pileMerchantInfoService.selectListByFirstMerchant(merchantInfo.getId() + "");
|
|
||||||
} else if (Constants.TWO.equals(deptLevel) ) {
|
|
||||||
// 二级运营商权限 返回自身运营商
|
|
||||||
MerchantInfoVO merchantInfoVO = pileMerchantInfoService.queryMerchantInfoVOByDeptId(deptId);
|
|
||||||
if (Objects.nonNull(merchantInfoVO)) {
|
|
||||||
resultList.add(merchantInfoVO);
|
|
||||||
}
|
|
||||||
} else if (Constants.THREE.equals(deptLevel)) {
|
|
||||||
// 站点权限 返回自身运营商
|
|
||||||
PileStationInfo stationInfo = pileStationInfoService.queryInfoByDeptId(deptId);
|
|
||||||
if (Objects.nonNull(stationInfo)) {
|
|
||||||
MerchantInfoVO merchantInfoVO = pileMerchantInfoService.getMerchantInfoVO(stationInfo.getMerchantId() + "");
|
|
||||||
if (Objects.nonNull(merchantInfoVO)) {
|
|
||||||
resultList.add(merchantInfoVO);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return resultList;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,17 +2,24 @@ package com.jsowell.pile.util;
|
|||||||
|
|
||||||
import com.alibaba.fastjson2.JSONObject;
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
|
import com.jsowell.common.constant.Constants;
|
||||||
import com.jsowell.common.core.domain.entity.SysDept;
|
import com.jsowell.common.core.domain.entity.SysDept;
|
||||||
import com.jsowell.common.core.domain.entity.SysUser;
|
import com.jsowell.common.core.domain.entity.SysUser;
|
||||||
import com.jsowell.common.core.domain.model.LoginUser;
|
import com.jsowell.common.core.domain.model.LoginUser;
|
||||||
import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
|
import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
|
||||||
import com.jsowell.common.util.SecurityUtils;
|
import com.jsowell.common.util.SecurityUtils;
|
||||||
|
import com.jsowell.pile.domain.PileMerchantInfo;
|
||||||
|
import com.jsowell.pile.domain.PileStationInfo;
|
||||||
import com.jsowell.pile.service.IMemberBasicInfoService;
|
import com.jsowell.pile.service.IMemberBasicInfoService;
|
||||||
|
import com.jsowell.pile.service.IPileMerchantInfoService;
|
||||||
|
import com.jsowell.pile.service.IPileStationInfoService;
|
||||||
|
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 后管登录用户工具类
|
* 后管登录用户工具类
|
||||||
@@ -25,10 +32,17 @@ public class UserUtils {
|
|||||||
// 2.注入想引用的对象的静态实例
|
// 2.注入想引用的对象的静态实例
|
||||||
private static IMemberBasicInfoService memberBasicInfoService;
|
private static IMemberBasicInfoService memberBasicInfoService;
|
||||||
|
|
||||||
|
private static IPileMerchantInfoService pileMerchantInfoService;
|
||||||
|
|
||||||
|
private static IPileStationInfoService pileStationInfoService;
|
||||||
|
|
||||||
// 3.初始化有参构造器
|
// 3.初始化有参构造器
|
||||||
@Autowired
|
@Autowired
|
||||||
public UserUtils(IMemberBasicInfoService memberBasicInfoService) {
|
public UserUtils(IMemberBasicInfoService memberBasicInfoService, IPileMerchantInfoService pileMerchantInfoService,
|
||||||
|
IPileStationInfoService pileStationInfoService) {
|
||||||
UserUtils.memberBasicInfoService = memberBasicInfoService;
|
UserUtils.memberBasicInfoService = memberBasicInfoService;
|
||||||
|
UserUtils.pileMerchantInfoService = pileMerchantInfoService;
|
||||||
|
UserUtils.pileStationInfoService = pileStationInfoService;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 4.使用
|
// 4.使用
|
||||||
@@ -72,4 +86,52 @@ public class UserUtils {
|
|||||||
}
|
}
|
||||||
return resultVO;
|
return resultVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前会员中的运营商列表(带权限校验)
|
||||||
|
*/
|
||||||
|
public static List<MerchantInfoVO> getMerchantListByAuth() {
|
||||||
|
List<MerchantInfoVO> resultList = Lists.newArrayList();
|
||||||
|
// 获取登录用户 所有有权限运营商
|
||||||
|
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||||
|
if (Objects.isNull(loginUser)) {
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
// 获取登录用户对应的user对象
|
||||||
|
SysUser user = loginUser.getUser();
|
||||||
|
if (Objects.isNull(user)) {
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
// 获取所属部门id
|
||||||
|
SysDept dept = user.getDept();
|
||||||
|
if (Objects.isNull(dept)) {
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
String deptLevel = dept.getDeptLevel();
|
||||||
|
String deptId = String.valueOf(dept.getDeptId());
|
||||||
|
if (Constants.ZERO.equals(deptLevel)) {
|
||||||
|
// 平台级权限 查询所有生效的运营商
|
||||||
|
resultList = pileMerchantInfoService.selectAll();
|
||||||
|
} else if (Constants.ONE.equals(deptLevel)) {
|
||||||
|
// 一级运营商权限 查询该一级运营商下面的所有运营商
|
||||||
|
PileMerchantInfo merchantInfo = pileMerchantInfoService.queryInfoByDeptId(deptId);
|
||||||
|
resultList = pileMerchantInfoService.selectListByFirstMerchant(merchantInfo.getId() + "");
|
||||||
|
} else if (Constants.TWO.equals(deptLevel) ) {
|
||||||
|
// 二级运营商权限 返回自身运营商
|
||||||
|
MerchantInfoVO merchantInfoVO = pileMerchantInfoService.queryMerchantInfoVOByDeptId(deptId);
|
||||||
|
if (Objects.nonNull(merchantInfoVO)) {
|
||||||
|
resultList.add(merchantInfoVO);
|
||||||
|
}
|
||||||
|
} else if (Constants.THREE.equals(deptLevel)) {
|
||||||
|
// 站点权限 返回自身运营商
|
||||||
|
PileStationInfo stationInfo = pileStationInfoService.queryInfoByDeptId(deptId);
|
||||||
|
if (Objects.nonNull(stationInfo)) {
|
||||||
|
MerchantInfoVO merchantInfoVO = pileMerchantInfoService.getMerchantInfoVO(stationInfo.getMerchantId() + "");
|
||||||
|
if (Objects.nonNull(merchantInfoVO)) {
|
||||||
|
resultList.add(merchantInfoVO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
package com.jsowell.pile.vo.base;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 登录用户详情VO
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class LoginUserDetailVO {
|
||||||
|
/**
|
||||||
|
* 有权限的一级运营商idList
|
||||||
|
* 平台级账号有多个一级运营商权限
|
||||||
|
* 其他账号只有一个
|
||||||
|
*/
|
||||||
|
private List<String> firstMerchantIdList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前会员中的运营商列表
|
||||||
|
*/
|
||||||
|
private List<MerchantInfoVO> merchantInfoVOList;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user