namespace Admin.NET.Plugin.AiDOP.Infrastructure; /// /// WP0-D4:qms_* 表 tenant_id 解析(优先入参,其次登录租户,最后系统默认)。 /// public static class QmsTenantScope { public const long DefaultTenantId = 1300000000001L; public static long Resolve(long? inputTenantId, long? userTenantId = null) { if (inputTenantId is > 0) return inputTenantId.Value; if (userTenantId is > 0) return userTenantId.Value; return DefaultTenantId; } /// 从当前请求 UserManager 解析租户(无登录时回落默认)。无可选参数,可安全用于表达式树外局部变量。 public static long Current() { try { var um = App.GetRequiredService(); return Resolve(null, um.TenantId); } catch { return Resolve(null, null); } } /// 优先使用显式入参租户。 public static long Current(long inputTenantId) => Resolve(inputTenantId, null); }