1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- package com.qmth.ops.api.security;
- import com.qmth.boot.core.exception.UnauthorizedException;
- import com.qmth.boot.core.security.model.AccessEntity;
- import com.qmth.ops.api.dto.LoginResult;
- import com.qmth.ops.biz.domain.User;
- import com.qmth.ops.biz.service.UserPermissionService;
- public class AdminSession implements AccessEntity {
- private User user;
- private UserPermissionService userPermissionService;
- public AdminSession(User user, UserPermissionService userPermissionService) {
- this.user = user;
- this.userPermissionService = userPermissionService;
- }
- public LoginResult getLoginResult(String fileServer) {
- LoginResult result = new LoginResult();
- result.setId(user.getId());
- result.setName(user.getName());
- result.setRole(user.getRole());
- result.setSession(getIdentity());
- result.setToken(getSecret());
- result.setFileServer(fileServer);
- return result;
- }
- public User getUser() {
- return user;
- }
- public void permissionCheck(Permission permission) {
- if (!userPermissionService.hasPermission(user, permission, null)) {
- throw new UnauthorizedException("没有[" + permission.getName() + "]操作权限");
- }
- }
- public void permissionCheck(Permission permission, Object data) {
- if (!userPermissionService.hasPermission(user, permission, data)) {
- throw new UnauthorizedException("没有[" + permission.getName() + "]操作权限");
- }
- }
- @Override
- public String getIdentity() {
- return user.getId().toString();
- }
- @Override
- public String getSecret() {
- return user.getAccessToken();
- }
- }
|