4 changed files with 99 additions and 7 deletions
-
95src/main/java/com/example/demo/domain/vo/AdminVo.java
-
2src/main/java/com/example/demo/mapper/PermissionMapper.java
-
2src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java
-
7src/main/resources/mapper/PermissionMapper.xml
@ -0,0 +1,95 @@ |
|||
package com.example.demo.domain.vo; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; |
|||
import lombok.Data; |
|||
import lombok.NoArgsConstructor; |
|||
import org.springframework.security.core.GrantedAuthority; |
|||
import org.springframework.security.core.authority.SimpleGrantedAuthority; |
|||
import org.springframework.security.core.userdetails.UserDetails; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.*; |
|||
|
|||
@Data |
|||
@NoArgsConstructor |
|||
@JsonIgnoreProperties(ignoreUnknown = true) |
|||
public class AdminVo implements UserDetails, Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
private Integer id; // 主键ID |
|||
private String adminName; // 用户姓名 |
|||
private String account; // 账号 |
|||
private String password; // 密码 |
|||
private String machineId; // 第一个机器码 |
|||
private String machineIds; //第二个机器码 |
|||
private Byte adminStatus; // 状态(启用/不启用) |
|||
private String market; // 地区 |
|||
private String postiton; // 职位 |
|||
private String remark; // 备注 |
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") |
|||
private Date createTime; // 创建时间 |
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") |
|||
private Date updateTime; // 更新时间 |
|||
private Integer roleId; |
|||
|
|||
|
|||
@Override |
|||
@JsonIgnore |
|||
public Collection<? extends GrantedAuthority> getAuthorities() { |
|||
Set<GrantedAuthority> authorities = new HashSet<>(); |
|||
Optional.ofNullable(postiton) |
|||
.map(Integer::valueOf) |
|||
.ifPresent(permValue -> { |
|||
switch (permValue) { |
|||
case 1: |
|||
authorities.add(new SimpleGrantedAuthority("ROLE_SUPER_ADMIN")); |
|||
break; |
|||
case 2: |
|||
authorities.add(new SimpleGrantedAuthority("ROLE_ADMIN")); |
|||
break; |
|||
case 3: |
|||
authorities.add(new SimpleGrantedAuthority("ROLE_AUDITORS")); |
|||
break; |
|||
case 5: |
|||
authorities.add(new SimpleGrantedAuthority("Branch_Manager")); |
|||
break; |
|||
default: |
|||
// 可以添加默认角色或处理未知权限 |
|||
break; |
|||
} |
|||
}); |
|||
return authorities; |
|||
} |
|||
@Override |
|||
public String getUsername() { |
|||
return account; |
|||
} |
|||
|
|||
@Override |
|||
@JsonIgnore |
|||
public boolean isAccountNonExpired() { |
|||
return true; // 默认账户未过期 |
|||
} |
|||
|
|||
@Override |
|||
@JsonIgnore |
|||
public boolean isAccountNonLocked() { |
|||
return true; // 默认账户未锁定 |
|||
} |
|||
|
|||
@Override |
|||
@JsonIgnore |
|||
public boolean isCredentialsNonExpired() { |
|||
return true; // 默认凭证未过期 |
|||
} |
|||
|
|||
@Override |
|||
@JsonIgnore |
|||
public boolean isEnabled() { |
|||
return adminStatus != null && adminStatus == 1; |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue