S8SysRoleSeedData.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. namespace Admin.NET.Plugin.AiDOP;
  2. using Yitter.IdGenerator;
  3. /// <summary>
  4. /// S8 业务角色的 SysRole 侧种子(与 S8RolePermissionSeedData 配套,双写系统角色表)。
  5. /// 与 AdoS8RolePermissionConfig 通过 Code 字段关联,非 Id。
  6. /// </summary>
  7. [IncreSeed]
  8. public class S8SysRoleSeedData : ISqlSugarEntitySeedData<SysRole>
  9. {
  10. public IEnumerable<SysRole> HasData()
  11. {
  12. var ct = DateTime.Parse("2026-04-18 00:00:00");
  13. // S8-CFG-NOTIFY-NONDEFAULT-ROLE-OPTIONS-FIX-1:改引用 canonical 单一来源(内容未变)。
  14. // 原先此处与 AidopTenantInitService 各存一份逐字相同的字面量,靠人工同步。
  15. return Array.ConvertAll(
  16. Admin.NET.Plugin.AiDOP.Infrastructure.S8.S8CanonicalRole.BusinessRoles,
  17. r => R(r.Code, r.Name, r.OrderNo, ct));
  18. }
  19. private static SysRole R(string code, string name, int orderNo, DateTime ct) =>
  20. new()
  21. {
  22. Id = YitIdHelper.NextId(),
  23. TenantId = SqlSugarConst.DefaultTenantId,
  24. Name = name,
  25. Code = code,
  26. OrderNo = orderNo,
  27. DataScope = DataScopeEnum.Self,
  28. Status = StatusEnum.Enable,
  29. Remark = "S8 业务角色(异常协同承接)",
  30. CreateTime = ct,
  31. };
  32. }