package com.hxzk.gps.util.GetUser; import cn.dev33.satoken.stp.StpUtil; import java.util.Optional; // 定义一个公共的工具类 public class UserInfoUtil { // 私有化构造函数,防止实例化该工具类 private UserInfoUtil() { } // 公共静态方法,用于获取用户名 public static String getUserName() { String loginId = StpUtil.getLoginIdAsString(); return splitLoginId(loginId, 0); } // 公共静态方法,用于获取用户角色 public static String getUserRole() { String loginId = StpUtil.getLoginIdAsString(); return splitLoginId(loginId, 1); } // 公共静态方法,用于获取用户所在公司 public static String getUserCompany() { String loginId = StpUtil.getLoginIdAsString(); return splitLoginId(loginId, 2); } // 公共静态方法,用于获取用户所在公司ID public static String getUserCompanyId() { String loginId = StpUtil.getLoginIdAsString(); return splitLoginId(loginId, 3); } // 封装一个辅助方法,用于分割登录 ID 并获取指定部分 private static String splitLoginId(String loginId, int index) { String[] parts = loginId.split("-"); return parts[index]; } public static String isNullGetCompanyId(String companyid){ return Optional.ofNullable(companyid) .orElse(UserInfoUtil.getUserCompanyId()); } }