1.账号权限补充
2.角色相关接口
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
package com.czg.service.account.dto;
|
||||
|
||||
public record PageDTO(Integer page, Integer size) {
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package com.czg.service.account.service;
|
||||
|
||||
|
||||
import com.czg.service.account.dto.SysLoginDTO;
|
||||
import com.czg.service.account.vo.LoginVO;
|
||||
|
||||
/**
|
||||
* @author Administrator
|
||||
@@ -9,5 +10,5 @@ import com.czg.service.account.dto.SysLoginDTO;
|
||||
public interface AuthorizationService {
|
||||
Object getCaptcha();
|
||||
|
||||
Object login(SysLoginDTO loginDTO);
|
||||
LoginVO login(SysLoginDTO loginDTO);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package com.czg.service.account.service;
|
||||
|
||||
/**
|
||||
* @author Administrator
|
||||
*/
|
||||
public interface PermissionService {
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.czg.service.account.service;
|
||||
|
||||
import com.czg.service.account.dto.PageDTO;
|
||||
import com.mybatisflex.core.paginate.Page;
|
||||
import com.mybatisflex.core.service.IService;
|
||||
import com.czg.service.account.entity.SysRole;
|
||||
|
||||
@@ -14,4 +16,6 @@ import java.util.List;
|
||||
public interface SysRoleService extends IService<SysRole> {
|
||||
|
||||
List<SysRole> getByUserId(Long id);
|
||||
|
||||
Page<SysRole> getList(PageDTO pageDTO);
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.czg.sa.StpKit;
|
||||
import com.czg.service.account.entity.*;
|
||||
import com.czg.service.account.mapper.SysMenuMapper;
|
||||
import com.czg.service.account.service.*;
|
||||
import com.czg.service.account.vo.LoginVO;
|
||||
import com.mybatisflex.core.query.QueryChain;
|
||||
import com.wf.captcha.SpecCaptcha;
|
||||
import jakarta.annotation.Resource;
|
||||
@@ -61,7 +62,7 @@ public class AuthorizationServiceImpl implements AuthorizationService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object login(SysLoginDTO loginDTO) {
|
||||
public LoginVO login(SysLoginDTO loginDTO) {
|
||||
// Object code = redisService.get(RedisCst.LOGIN_CODE + loginDTO.uuid());
|
||||
// if (!"666666".equals(loginDTO.code()) && code == null || !code.equals(loginDTO.code())) {
|
||||
// throw new RuntimeException("验证码错误");
|
||||
@@ -103,6 +104,7 @@ public class AuthorizationServiceImpl implements AuthorizationService {
|
||||
}
|
||||
|
||||
StpKit.ADMIN.login(user.getId());
|
||||
StpKit.ADMIN.setAdmin(user.getIsAdmin());
|
||||
// 查询角色
|
||||
List<SysRole> roleList = sysRoleService.getByUserId(user.getId());
|
||||
List<String> roleNames = roleList.stream().map(SysRole::getName).collect(Collectors.toList());
|
||||
@@ -110,8 +112,6 @@ public class AuthorizationServiceImpl implements AuthorizationService {
|
||||
// 权限赋予
|
||||
List<String> promissionList = sysMenuMapper.selectByUserId(user.getId(), null).stream().map(SysMenu::getPermission).filter(StrUtil::isNotBlank).collect(Collectors.toList());
|
||||
StpKit.ADMIN.addPermissionList(promissionList);
|
||||
return Map.of("tokenInfo", StpKit.ADMIN.getTokenInfo(),
|
||||
"loginType", loginDTO.loginType(),
|
||||
"shopInfo", shopInfo);
|
||||
return new LoginVO(StpKit.ADMIN.getTokenInfo(), promissionList, loginDTO.loginType(), shopInfo);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.czg.service.account.service.impl;
|
||||
|
||||
import com.czg.service.account.service.PermissionService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author zs
|
||||
*/
|
||||
@Service
|
||||
public class PermissionServiceImpl implements PermissionService {
|
||||
}
|
||||
@@ -1,5 +1,9 @@
|
||||
package com.czg.service.account.service.impl;
|
||||
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.service.account.dto.PageDTO;
|
||||
import com.mybatisflex.core.paginate.Page;
|
||||
import com.mybatisflex.core.query.QueryChain;
|
||||
import com.mybatisflex.spring.service.impl.ServiceImpl;
|
||||
import com.czg.service.account.entity.SysRole;
|
||||
import com.czg.service.account.mapper.SysRoleMapper;
|
||||
@@ -21,4 +25,13 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> imp
|
||||
public List<SysRole> getByUserId(Long id) {
|
||||
return mapper.selectByUserId(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<SysRole> getList(PageDTO pageDTO) {
|
||||
QueryChain<SysRole> queryChain = queryChain();
|
||||
if (!StpKit.ADMIN.isAdmin()) {
|
||||
queryChain.eq(SysRole::getCreateUserId, StpKit.ADMIN.getLoginIdAsLong());
|
||||
}
|
||||
return queryChain.page(new Page<>(pageDTO.page(), pageDTO.size()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.czg.service.account.vo;
|
||||
|
||||
import cn.dev33.satoken.stp.SaTokenInfo;
|
||||
import com.czg.service.account.entity.TbShopInfo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public record LoginVO(
|
||||
// token信息
|
||||
SaTokenInfo tokenInfo,
|
||||
// 接口权限集合
|
||||
List<String> promissionList,
|
||||
// 登录类型
|
||||
Integer loginType,
|
||||
// 店铺信息
|
||||
TbShopInfo shopInfo
|
||||
) {
|
||||
}
|
||||
Reference in New Issue
Block a user