const TokenKey = 'App-Token' const TenantIdKey = 'TENANT_ID' export function getToken() { return uni.getStorageSync(TokenKey) } export function setToken(token) { return uni.setStorageSync(TokenKey, token) } export function removeToken() { return uni.removeStorageSync(TokenKey) } export function setTenantId(TenantId) { return uni.setStorageSync(TenantIdKey, TenantId); } export function getTenantId() { return uni.getStorageSync(TenantIdKey) } export function hasRole(roleCode) { const roleList = uni.getStorageSync('role') if (roleList && roleList.length > 0) { const roleInfo = roleList.find(f => f.code === roleCode) if (roleInfo) { return true } } return false } export function hasRoleNew(...roleCodes) { const roleList = uni.getStorageSync('role') if (roleList && roleList.length > 0) { // 检查用户是否拥有任意一个指定角色 return roleCodes.some(roleCode => roleList.some(role => role.code === roleCode) ) } return false } export function setStorageWithExpiry(key, value, ttl) { const now = new Date(); // 计算过期时间 const item = { value: value, expiry: now.getTime() + ttl * 1000, }; // 将数据对象转换为字符串存储 uni.setStorageSync(key, JSON.stringify(item)); } // 获取本地存储的数据,检查是否过期 export function getStorageWithExpiry(key) { // 从本地存储获取数据 const itemStr = uni.getStorageSync(key); if (!itemStr) { return null; // 未找到数据 } const item = JSON.parse(itemStr); const now = new Date(); // 检查项目是否过期 if (now.getTime() > item.expiry) { // 如果过期,从存储中移除该项 uni.removeStorageSync(key); return null; } return item.value; // 数据未过期,返回数据 }