namespace Admin.NET.Plugin.AiDOP.Infrastructure; /// /// 严格租户解析:只信认证后的 JWT。无有效租户或超管未选目标租户则抛异常。 /// 业务数据的查询与写入一律用 。 /// public static class AidopTenantScope { /// /// 超管未选目标租户时的拒绝哨兵(框架默认租户)。绝不作为业务数据归属。 /// public static long MainTenantId => SqlSugarConst.DefaultTenantId; /// /// 严格可信租户解析:只来自认证后 JWT;无 Token(<=0) 或超管未选主租户 → 拒绝; /// 不读前端 tenantId、无默认回退。 /// public static long ResolveOrThrow(UserManager userManager) { ArgumentNullException.ThrowIfNull(userManager); var tid = userManager.TenantId; if (tid <= 0) throw Oops.Oh("无法确定当前租户,请重新登录或选择目标租户"); if (userManager.SuperAdmin && tid == MainTenantId) throw Oops.Oh("超级管理员操作前必须选择目标租户"); return tid; } }