diff --git a/api/CcsSso.Core.DbMigrations/Migrations/20230327094219_Add_UserAccessRolePending_OrganisationUserGroupId.Designer.cs b/api/CcsSso.Core.DbMigrations/Migrations/20230327094219_Add_UserAccessRolePending_OrganisationUserGroupId.Designer.cs
new file mode 100644
index 00000000..2247e693
--- /dev/null
+++ b/api/CcsSso.Core.DbMigrations/Migrations/20230327094219_Add_UserAccessRolePending_OrganisationUserGroupId.Designer.cs
@@ -0,0 +1,2834 @@
+//
+using System;
+using CcsSso.DbPersistence;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+
+namespace CcsSso.Core.DbMigrations.Migrations
+{
+ [DbContext(typeof(DataContext))]
+ [Migration("20230327094219_Add_UserAccessRolePending_OrganisationUserGroupId")]
+ partial class Add_UserAccessRolePending_OrganisationUserGroupId
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("Relational:MaxIdentifierLength", 63)
+ .HasAnnotation("ProductVersion", "5.0.10")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.AuditLog", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("Application")
+ .HasColumnType("text");
+
+ b.Property("Device")
+ .HasColumnType("text");
+
+ b.Property("Event")
+ .HasColumnType("text");
+
+ b.Property("EventTimeUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("IpAddress")
+ .HasColumnType("text");
+
+ b.Property("ReferenceData")
+ .HasColumnType("text");
+
+ b.Property("UserId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.ToTable("AuditLog");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.AutoValidationRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("AssignToAdmin")
+ .HasColumnType("boolean");
+
+ b.Property("AssignToOrg")
+ .HasColumnType("boolean");
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("IsBothFailed")
+ .HasColumnType("boolean");
+
+ b.Property("IsBothSuccess")
+ .HasColumnType("boolean");
+
+ b.Property("IsBuyerFailed")
+ .HasColumnType("boolean");
+
+ b.Property("IsBuyerSuccess")
+ .HasColumnType("boolean");
+
+ b.Property("IsSupplier")
+ .HasColumnType("boolean");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.ToTable("AutoValidationRole");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.BulkUploadDetail", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("BulkUploadStatus")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("DocUploadId")
+ .HasColumnType("text");
+
+ b.Property("FailedUserCount")
+ .HasColumnType("integer");
+
+ b.Property("FileKey")
+ .HasColumnType("text");
+
+ b.Property("FileKeyId")
+ .HasColumnType("text");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("MigrationEndedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("MigrationStartedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("MigrationStringContent")
+ .HasColumnType("text");
+
+ b.Property("OrganisationId")
+ .HasColumnType("text");
+
+ b.Property("ProcessedUserCount")
+ .HasColumnType("integer");
+
+ b.Property("TotalOrganisationCount")
+ .HasColumnType("integer");
+
+ b.Property("TotalUserCount")
+ .HasColumnType("integer");
+
+ b.Property("ValidationErrorDetails")
+ .HasColumnType("text");
+
+ b.HasKey("Id");
+
+ b.HasIndex("FileKeyId")
+ .IsUnique();
+
+ b.ToTable("BulkUploadDetail");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.CcsService", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ActivateOrganisations")
+ .HasColumnType("boolean");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("Description")
+ .HasColumnType("text");
+
+ b.Property("GlobalLevelOrganisationAccess")
+ .HasColumnType("boolean");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("ServiceClientId")
+ .HasColumnType("text");
+
+ b.Property("ServiceCode")
+ .HasColumnType("text");
+
+ b.Property("ServiceName")
+ .HasColumnType("text");
+
+ b.Property("ServiceUrl")
+ .HasColumnType("text");
+
+ b.Property("TimeOutLength")
+ .HasColumnType("bigint");
+
+ b.HasKey("Id");
+
+ b.ToTable("CcsService");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.CcsServiceLogin", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsServiceId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IdamUserLoginId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("TimedOut")
+ .HasColumnType("boolean");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsServiceId");
+
+ b.HasIndex("IdamUserLoginId");
+
+ b.ToTable("CcsServiceLogin");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.CcsServiceRoleGroup", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ApprovalRequired")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("DefaultEligibility")
+ .HasColumnType("text");
+
+ b.Property("Description")
+ .HasColumnType("text");
+
+ b.Property("DisplayOrder")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("Key")
+ .HasColumnType("text");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("MfaEnabled")
+ .HasColumnType("boolean");
+
+ b.Property("Name")
+ .HasColumnType("text");
+
+ b.Property("OrgTypeEligibility")
+ .HasColumnType("integer");
+
+ b.Property("SubscriptionTypeEligibility")
+ .HasColumnType("integer");
+
+ b.Property("TradeEligibility")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.ToTable("CcsServiceRoleGroup");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.CcsServiceRoleMapping", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("CcsServiceRoleGroupId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.HasIndex("CcsServiceRoleGroupId");
+
+ b.ToTable("CcsServiceRoleMapping");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.CountryDetails", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("Code")
+ .HasColumnType("text");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("Name")
+ .HasColumnType("text");
+
+ b.HasKey("Id");
+
+ b.ToTable("CountryDetails");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.ExternalServiceRoleMapping", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsServiceId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationEligibleRoleId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsServiceId");
+
+ b.HasIndex("OrganisationEligibleRoleId");
+
+ b.ToTable("ExternalServiceRoleMapping");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.IdamUserLogin", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsLoginDateTime")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CcsLogoutDateTime")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("ClientDevice")
+ .HasColumnType("text");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("DeviceType")
+ .HasColumnType("integer");
+
+ b.Property("IdentityProviderId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("Location")
+ .HasColumnType("text");
+
+ b.Property("LoginSuccessful")
+ .HasColumnType("boolean");
+
+ b.Property("UserId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("IdentityProviderId");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("IdamUserLogin");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.IdamUserLoginRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IdamUserLoginId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("UserId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.HasIndex("IdamUserLoginId");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("IdamUserLoginRole");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationAudit", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("Actioned")
+ .HasColumnType("text");
+
+ b.Property("ActionedBy")
+ .HasColumnType("text");
+
+ b.Property("ActionedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("OrganisationId")
+ .HasColumnType("integer");
+
+ b.Property("SchemeIdentifier")
+ .HasColumnType("text");
+
+ b.Property("Status")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("OrganisationId");
+
+ b.ToTable("OrganisationAudit");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationAuditEvent", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("Actioned")
+ .HasColumnType("text");
+
+ b.Property("ActionedBy")
+ .HasColumnType("text");
+
+ b.Property("Date")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("Event")
+ .HasColumnType("text");
+
+ b.Property("FirstName")
+ .HasColumnType("text");
+
+ b.Property("GroupId")
+ .HasColumnType("uuid");
+
+ b.Property("LastName")
+ .HasColumnType("text");
+
+ b.Property("OrganisationId")
+ .HasColumnType("integer");
+
+ b.Property("Roles")
+ .HasColumnType("text");
+
+ b.Property("SchemeIdentifier")
+ .HasColumnType("text");
+
+ b.HasKey("Id");
+
+ b.HasIndex("OrganisationId");
+
+ b.ToTable("OrganisationAuditEvent");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationEligibleIdentityProvider", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IdentityProviderId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("IdentityProviderId");
+
+ b.HasIndex("OrganisationId");
+
+ b.ToTable("OrganisationEligibleIdentityProvider");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationEligibleRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("MfaEnabled")
+ .HasColumnType("boolean");
+
+ b.Property("OrganisationId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.HasIndex("OrganisationId");
+
+ b.ToTable("OrganisationEligibleRole");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationEligibleRolePending", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.HasIndex("OrganisationId");
+
+ b.ToTable("OrganisationEligibleRolePending");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.OrganisationGroupEligibleRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationEligibleRoleId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationUserGroupId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("OrganisationEligibleRoleId");
+
+ b.HasIndex("OrganisationUserGroupId");
+
+ b.ToTable("OrganisationGroupEligibleRole");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.ServicePermission", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsServiceId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("ServicePermissionName")
+ .HasColumnType("text");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsServiceId");
+
+ b.ToTable("ServicePermission");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.ServiceRolePermission", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("CcsAccessRoleId")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("ServicePermissionId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CcsAccessRoleId");
+
+ b.HasIndex("ServicePermissionId");
+
+ b.ToTable("ServiceRolePermission");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.SiteContact", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("AssignedContactType")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("ContactId")
+ .HasColumnType("integer");
+
+ b.Property("ContactPointId")
+ .HasColumnType("integer");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OriginalContactId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ContactPointId");
+
+ b.ToTable("SiteContact");
+ });
+
+ modelBuilder.Entity("CcsSso.Core.DbModel.Entity.UserIdentityProvider", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("OrganisationEligibleIdentityProviderId")
+ .HasColumnType("integer");
+
+ b.Property("UserId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.HasIndex("OrganisationEligibleIdentityProviderId");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("UserIdentityProvider");
+ });
+
+ modelBuilder.Entity("CcsSso.DbModel.Entity.CcsAccessRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ApprovalRequired")
+ .HasColumnType("integer");
+
+ b.Property("CcsAccessRoleDescription")
+ .HasColumnType("text");
+
+ b.Property("CcsAccessRoleName")
+ .HasColumnType("text");
+
+ b.Property("CcsAccessRoleNameKey")
+ .HasColumnType("text");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("DefaultEligibility")
+ .HasColumnType("text");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("MfaEnabled")
+ .HasColumnType("boolean");
+
+ b.Property("OrgTypeEligibility")
+ .HasColumnType("integer");
+
+ b.Property("SubscriptionTypeEligibility")
+ .HasColumnType("integer");
+
+ b.Property("TradeEligibility")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.ToTable("CcsAccessRole");
+ });
+
+ modelBuilder.Entity("CcsSso.DbModel.Entity.ContactDetail", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("EffectiveFrom")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("EffectiveTo")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.HasKey("Id");
+
+ b.ToTable("ContactDetail");
+ });
+
+ modelBuilder.Entity("CcsSso.DbModel.Entity.ContactPoint", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn);
+
+ b.Property("AssignedContactType")
+ .HasColumnType("integer");
+
+ b.Property("ConcurrencyKey")
+ .IsConcurrencyToken()
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("bytea");
+
+ b.Property("ContactDetailId")
+ .HasColumnType("integer");
+
+ b.Property("ContactPointReasonId")
+ .HasColumnType("integer");
+
+ b.Property("CreatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("CreatedUserId")
+ .HasColumnType("integer");
+
+ b.Property("IsDeleted")
+ .HasColumnType("boolean");
+
+ b.Property("IsSite")
+ .HasColumnType("boolean");
+
+ b.Property("LastUpdatedOnUtc")
+ .HasColumnType("timestamp without time zone");
+
+ b.Property("LastUpdatedUserId")
+ .HasColumnType("integer");
+
+ b.Property