// using System; using Data.SeaHavenIndustries; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace Data.SeaHavenIndustries.Migrations { [DbContext(typeof(ApplicationDbContext))] partial class ApplicationDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.8") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); modelBuilder.HasSequence("WorkOrderInternalNumberSequence"); modelBuilder.Entity("Data.SeaHavenIndustries.Accounts", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("About") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("CurrencyCode") .HasColumnType("nvarchar(max)"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("FacebookUrl") .HasColumnType("nvarchar(max)"); b.Property("Importance") .HasColumnType("int"); b.Property("IndustryId") .HasColumnType("int"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LinkedInUrl") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("OwnerEmployeeId") .HasColumnType("int"); b.Property("Phone") .HasColumnType("nvarchar(max)"); b.Property("PrivacySetting") .HasColumnType("nvarchar(max)"); b.Property("ServiceInstructions") .HasColumnType("nvarchar(max)"); b.Property("Tags") .HasColumnType("nvarchar(max)"); b.Property("TerritoryId") .HasColumnType("int"); b.Property("TimeZone") .HasColumnType("nvarchar(max)"); b.Property("TwitterUrl") .HasColumnType("nvarchar(max)"); b.Property("Type") .HasColumnType("nvarchar(max)"); b.Property("Website") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("Accounts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Addresses", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("int"); b.Property("Address1") .HasColumnType("nvarchar(max)"); b.Property("Address2") .HasColumnType("nvarchar(max)"); b.Property("AddressType") .HasColumnType("nvarchar(max)"); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("ContactId") .HasColumnType("int"); b.Property("Country") .HasColumnType("nvarchar(max)"); b.Property("County") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("State") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("ContactId"); b.ToTable("Addresses"); }); modelBuilder.Entity("Data.SeaHavenIndustries.ApplicationUser", b => { b.Property("Id") .HasColumnType("nvarchar(450)"); b.Property("AccessFailedCount") .HasColumnType("int"); b.Property("Color") .HasColumnType("nvarchar(max)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("Contact") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeletedDate") .HasColumnType("datetime2"); b.Property("Email") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("EmailConfirmed") .HasColumnType("bit"); b.Property("FirstName") .HasColumnType("nvarchar(max)"); b.Property("Initials") .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastName") .HasColumnType("nvarchar(max)"); b.Property("Locations") .HasColumnType("nvarchar(max)"); b.Property("LockoutEnabled") .HasColumnType("bit"); b.Property("LockoutEnd") .HasColumnType("datetimeoffset"); b.Property("NormalizedEmail") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("NormalizedUserName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("PasswordHash") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumber") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumberConfirmed") .HasColumnType("bit"); b.Property("SecurityStamp") .HasColumnType("nvarchar(max)"); b.Property("TwoFactorEnabled") .HasColumnType("bit"); b.Property("Type") .HasColumnType("int"); b.Property("UniqueName") .HasColumnType("nvarchar(max)"); b.Property("UserImage") .HasColumnType("nvarchar(max)"); b.Property("UserName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedEmail") .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() .HasDatabaseName("UserNameIndex") .HasFilter("[NormalizedUserName] IS NOT NULL"); b.ToTable("AspNetUsers", (string)null); }); modelBuilder.Entity("Data.SeaHavenIndustries.Assets", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("int"); b.Property("AssetCode") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("IsActive") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("Name") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("LocationId"); b.ToTable("Assets"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Category", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("Categories"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Comments", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CommentType") .HasColumnType("nvarchar(max)"); b.Property("Commenter") .HasColumnType("nvarchar(max)"); b.Property("Commenttext") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("Documents") .HasColumnType("nvarchar(max)"); b.Property("ExternalCommentId") .HasColumnType("nvarchar(max)"); b.Property("ExternalSource") .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("ExternalSourceEmailS3Key") .HasMaxLength(2048) .HasColumnType("nvarchar(2048)"); b.Property("ExternalUpdatedAt") .HasColumnType("datetimeoffset"); b.Property("ExternalVersionHash") .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("RecordType") .HasColumnType("nvarchar(max)"); b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("WorkerOrderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DispatchId"); b.HasIndex("UserId"); b.HasIndex("WorkerOrderId"); b.ToTable("Comments"); }); modelBuilder.Entity("Data.SeaHavenIndustries.CompletionDocTemplate", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsActive") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Name") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ServiceKey") .IsRequired() .HasColumnType("nvarchar(450)"); b.Property("TemplateUrl") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("WorkOrderType") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("ServiceKey", "IsActive"); b.ToTable("CompletionDocTemplates"); }); modelBuilder.Entity("Data.SeaHavenIndustries.ContactDetails", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("About") .HasColumnType("nvarchar(max)"); b.Property("ContactId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DateOfBirth") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("FacebookUrl") .HasColumnType("nvarchar(max)"); b.Property("Gender") .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LinkedInUrl") .HasColumnType("nvarchar(max)"); b.Property("PrivacySetting") .HasColumnType("nvarchar(max)"); b.Property("Tags") .HasColumnType("nvarchar(max)"); b.Property("Territory") .HasColumnType("nvarchar(max)"); b.Property("TwitterUrl") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("ContactId"); b.ToTable("ContactDetails"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Contacts", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("int"); b.Property("Address1") .HasColumnType("nvarchar(max)"); b.Property("Address2") .HasColumnType("nvarchar(max)"); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("ContactType") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("FacebookUrl") .HasColumnType("nvarchar(max)"); b.Property("FirstName") .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LastName") .HasColumnType("nvarchar(max)"); b.Property("LinkedInUrl") .HasColumnType("nvarchar(max)"); b.Property("LocationId") .HasColumnType("int"); b.Property("MiddleName") .HasColumnType("nvarchar(max)"); b.Property("Owner") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumber") .HasColumnType("nvarchar(max)"); b.Property("State") .HasColumnType("nvarchar(max)"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("TwitterUrl") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("LocationId"); b.ToTable("Contacts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Department", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.HasKey("Id"); b.ToTable("Departments"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Dispatch", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AcceptToken") .HasColumnType("nvarchar(max)"); b.Property("AcknowledgedAt") .HasColumnType("datetime2"); b.Property("CommercialStatusUpdatedAt") .HasColumnType("datetime2"); b.Property("CompletedDate") .HasColumnType("datetime2"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DispatchNumber") .HasColumnType("nvarchar(max)"); b.Property("DispatchedAt") .HasColumnType("datetime2"); b.Property("EmailSent") .HasColumnType("bit"); b.Property("EstimatedArrivalAt") .HasColumnType("datetime2"); b.Property("EtaManualOverride") .HasColumnType("bit"); b.Property("InvoiceNumber") .HasColumnType("nvarchar(max)"); b.Property("InvoiceStatus") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("NTEAmount") .HasColumnType("decimal(18,2)"); b.Property("PONumber") .HasColumnType("nvarchar(max)"); b.Property("PaymentStatus") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ReplyToAddress") .HasColumnType("nvarchar(max)"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("rowversion"); b.Property("ScheduledDate") .HasColumnType("datetime2"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("TechPhone") .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("VendorId") .HasColumnType("int"); b.Property("VendorNotes") .HasMaxLength(2000) .HasColumnType("nvarchar(2000)"); b.Property("VerifiedAt") .HasColumnType("datetime2"); b.Property("VerifiedBy") .HasColumnType("nvarchar(max)"); b.Property("WorkOrderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("VendorId"); b.HasIndex("WorkOrderId"); b.ToTable("Dispatches"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchChecklistItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CompletedAt") .HasColumnType("datetime2"); b.Property("CompletedBy") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("IsCompleted") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("ItemText") .HasColumnType("nvarchar(max)"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("SortOrder") .HasColumnType("int"); b.Property("WorkOrderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DispatchId"); b.HasIndex("WorkOrderId"); b.ToTable("DispatchChecklistItems"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchSignoff", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("Signature") .HasColumnType("nvarchar(max)"); b.Property("SignatureMethod") .HasColumnType("nvarchar(max)"); b.Property("SignedAt") .HasColumnType("datetime2"); b.Property("SignoffType") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DispatchId"); b.ToTable("DispatchSignoffs"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchUpliftRequest", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("CurrentNTE") .HasColumnType("decimal(18,2)"); b.Property("DecidedAt") .HasColumnType("datetime2"); b.Property("DecidedByUserId") .HasColumnType("nvarchar(max)"); b.Property("DecisionNote") .HasColumnType("nvarchar(max)"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("EscalatedAt") .HasColumnType("datetime2"); b.Property("EvidenceDocumentId") .HasColumnType("int"); b.Property("ExpiresAt") .HasColumnType("datetime2"); b.Property("InitialNotificationSentAt") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("NotificationError") .HasMaxLength(500) .HasColumnType("nvarchar(500)"); b.Property("NotificationStatus") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("RequestKey") .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("RequestedByVendorName") .HasColumnType("nvarchar(max)"); b.Property("RequestedNTE") .HasColumnType("decimal(18,2)"); b.Property("RequiredTier") .HasColumnType("int"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("rowversion"); b.Property("Status") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("VendorReason") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DispatchId") .IsUnique() .HasFilter("[Status] IN ('Pending', 'ChangesRequested')"); b.HasIndex("EvidenceDocumentId"); b.HasIndex("DispatchId", "RequestKey") .IsUnique() .HasFilter("[RequestKey] IS NOT NULL"); b.ToTable("DispatchUpliftRequests"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchWorkOrder", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("DispatchId") .HasColumnType("int"); b.Property("WorkOrderId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("DispatchId"); b.HasIndex("WorkOrderId"); b.ToTable("DispatchWorkOrders"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DropdownOption", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Category") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("IsActive") .HasColumnType("bit"); b.Property("ParentValue") .HasColumnType("nvarchar(max)"); b.Property("SortOrder") .HasColumnType("int"); b.Property("Value") .IsRequired() .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("DropdownOptions"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Employee", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("About") .HasColumnType("nvarchar(max)"); b.Property("CanChangeProviderNumber") .HasColumnType("bit"); b.Property("ConfirmUserName") .HasColumnType("nvarchar(max)"); b.Property("CreatedBy") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DateOfBirth") .HasColumnType("datetime2"); b.Property("DepartmentId") .HasColumnType("int"); b.Property("EmployeeNumber") .HasColumnType("nvarchar(max)"); b.Property("FacebookUrl") .HasColumnType("nvarchar(max)"); b.Property("FirstName") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Gender") .HasColumnType("int"); b.Property("HireDate") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("JobTitleId") .HasColumnType("int"); b.Property("LastLogin") .HasColumnType("datetime2"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LastName") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("LinkedInUrl") .HasColumnType("nvarchar(max)"); b.Property("MiddleName") .HasColumnType("nvarchar(max)"); b.Property("PermissionGroupId") .HasColumnType("int"); b.Property("RegionId") .HasColumnType("int"); b.Property("SMSAddress") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("TimeZone") .HasColumnType("nvarchar(max)"); b.Property("TwitterUrl") .HasColumnType("nvarchar(max)"); b.Property("UserName") .HasColumnType("nvarchar(max)"); b.Property("Website") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DepartmentId"); b.HasIndex("JobTitleId"); b.HasIndex("RegionId"); b.ToTable("Employees"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeeAddress", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("CountryCode") .HasColumnType("nvarchar(max)"); b.Property("CountyId") .HasColumnType("int"); b.Property("EmployeeId") .HasColumnType("int"); b.Property("StateCode") .HasColumnType("nvarchar(max)"); b.Property("Street") .HasColumnType("nvarchar(max)"); b.Property("StreetLineTwo") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("EmployeeId") .IsUnique(); b.ToTable("EmployeeAddresses"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeeEmail", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Address") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("EmailTypeId") .HasColumnType("int"); b.Property("EmployeeId") .HasColumnType("int"); b.Property("IsPrimary") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("EmployeeId"); b.ToTable("EmployeeEmails"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeePhone", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("EmployeeId") .HasColumnType("int"); b.Property("Extension") .HasColumnType("nvarchar(max)"); b.Property("IsPrimary") .HasColumnType("bit"); b.Property("Number") .HasColumnType("nvarchar(max)"); b.Property("PhoneTypeId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("EmployeeId"); b.ToTable("EmployeePhones"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Events", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AllDay") .HasColumnType("bit"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("EndDate") .HasColumnType("datetime2"); b.Property("EndTime") .HasMaxLength(10) .HasColumnType("nvarchar(10)"); b.Property("EventColor") .IsRequired() .HasMaxLength(20) .HasColumnType("nvarchar(20)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Location") .HasMaxLength(150) .HasColumnType("nvarchar(150)"); b.Property("RecordID") .HasColumnType("int"); b.Property("RecordName") .HasColumnType("nvarchar(max)"); b.Property("RecordTargetType") .HasColumnType("nvarchar(max)"); b.Property("ReminderMinutes") .HasColumnType("int"); b.Property("StartDate") .HasColumnType("datetime2"); b.Property("StartTime") .HasMaxLength(10) .HasColumnType("nvarchar(10)"); b.Property("Title") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("Events"); }); modelBuilder.Entity("Data.SeaHavenIndustries.FollowUps", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AccountId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("EmployeeId") .HasColumnType("int"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("Reason") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ScheduleDate") .HasColumnType("datetime2"); b.Property("ScheduleStartTime") .HasColumnType("time"); b.Property("Status") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("WorkOrderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AccountId"); b.HasIndex("EmployeeId"); b.HasIndex("LocationId"); b.HasIndex("WorkOrderId"); b.ToTable("FollowUps"); }); modelBuilder.Entity("Data.SeaHavenIndustries.ForgetPasswordCode", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Code") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Email") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("UserId") .IsRequired() .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("ForgetPasswordCodes"); }); modelBuilder.Entity("Data.SeaHavenIndustries.JobTitle", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.HasKey("Id"); b.ToTable("JobTitles"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Locations", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Address1") .HasColumnType("nvarchar(max)"); b.Property("Address2") .HasColumnType("nvarchar(max)"); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("ExternalLocationId") .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("ExternalSource") .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Latitude") .HasColumnType("nvarchar(max)"); b.Property("Longitude") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumber") .HasColumnType("nvarchar(max)"); b.Property("State") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("Locations"); }); modelBuilder.Entity("Data.SeaHavenIndustries.PMSchedules", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AssetId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Frequency") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("IsActive") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("Name") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("StartDate") .HasColumnType("datetime2"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AssetId"); b.HasIndex("LocationId"); b.ToTable("PMSchedules"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Quotes", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("BillingAddress") .HasColumnType("nvarchar(max)"); b.Property("ContactId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("Date") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("PO") .HasColumnType("nvarchar(max)"); b.Property("ProjectName") .HasColumnType("nvarchar(max)"); b.Property("QuotId") .HasColumnType("nvarchar(max)"); b.Property("ShippingAddress") .HasColumnType("nvarchar(max)"); b.Property("SiteId") .HasColumnType("nvarchar(max)"); b.Property("SiteName") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("TT") .HasColumnType("nvarchar(max)"); b.Property("WorkorderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("ContactId"); b.HasIndex("WorkorderId"); b.ToTable("Quotes"); }); modelBuilder.Entity("Data.SeaHavenIndustries.QuotesLineItems", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Descriptions") .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Lineitem") .HasColumnType("decimal(18,2)"); b.Property("LineitemNumber") .HasColumnType("int"); b.Property("QuoteId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("QuoteId"); b.ToTable("QuotesLines"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Region", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.HasKey("Id"); b.ToTable("Regions"); }); modelBuilder.Entity("Data.SeaHavenIndustries.SitePreferredVendor", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("SortOrder") .HasColumnType("int"); b.Property("Trade") .HasColumnType("nvarchar(450)"); b.Property("UpdatedBy") .HasColumnType("nvarchar(max)"); b.Property("VendorId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("VendorId"); b.HasIndex("LocationId", "VendorId") .IsUnique() .HasFilter("[Trade] IS NULL"); b.HasIndex("LocationId", "VendorId", "Trade") .IsUnique() .HasFilter("[Trade] IS NOT NULL"); b.ToTable("SitePreferredVendors"); }); modelBuilder.Entity("Data.SeaHavenIndustries.TaskListTemplate", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("IsActive") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("TaskListTemplates"); }); modelBuilder.Entity("Data.SeaHavenIndustries.TaskListTemplateItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("ItemText") .HasColumnType("nvarchar(max)"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("SortOrder") .HasColumnType("int"); b.Property("TaskListTemplateId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("TaskListTemplateId"); b.ToTable("TaskListTemplateItems"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Template", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AfterPhotoAttachment") .HasColumnType("nvarchar(max)"); b.Property("AfterPhotoIssue") .HasColumnType("nvarchar(max)"); b.Property("AssignTo") .HasColumnType("nvarchar(450)"); b.Property("Attachments") .HasColumnType("nvarchar(max)"); b.Property("BeforPhotoAttachment") .HasColumnType("nvarchar(max)"); b.Property("BeforPhotoIssue") .HasColumnType("nvarchar(max)"); b.Property("CategoryId") .HasColumnType("int"); b.Property("ContactId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DueDate") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("PO") .HasColumnType("nvarchar(max)"); b.Property("Priority") .HasColumnType("nvarchar(max)"); b.Property("SignOffAttachment") .HasColumnType("nvarchar(max)"); b.Property("SignOffName") .HasColumnType("nvarchar(max)"); b.Property("SignOffSignature") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("TT") .HasColumnType("nvarchar(max)"); b.Property("WorkerOrderNumber") .HasColumnType("nvarchar(max)"); b.Property("WorkerOrderTitle") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AssignTo"); b.HasIndex("CategoryId"); b.HasIndex("ContactId"); b.HasIndex("LocationId"); b.ToTable("Templates"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Vendor", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Address") .HasColumnType("nvarchar(max)"); b.Property("AvailabilityStatus") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("AvailabilityUpdatedAt") .HasColumnType("datetime2"); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("CompanyId") .HasColumnType("int"); b.Property("CompanyName") .HasColumnType("nvarchar(max)"); b.Property("CompanyPhone") .HasColumnType("nvarchar(max)"); b.Property("ContactName") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("GoogleMapsUrl") .HasColumnType("nvarchar(max)"); b.Property("IsActive") .HasColumnType("bit"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Notes") .HasColumnType("nvarchar(max)"); b.Property("Phone") .HasColumnType("nvarchar(max)"); b.Property("PreferredContact") .HasColumnType("nvarchar(max)"); b.Property("State") .HasColumnType("nvarchar(max)"); b.Property("TradeSpecialties") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CompanyId"); b.ToTable("Vendors"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorAccessToken", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("ExpiresAt") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("IssuedAt") .HasColumnType("datetime2"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LastUsedAt") .HasColumnType("datetime2"); b.Property("RevokedAt") .HasColumnType("datetime2"); b.Property("Token") .IsRequired() .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("VendorId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Token") .IsUnique(); b.HasIndex("VendorId"); b.ToTable("VendorAccessTokens"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorAuditLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Actor") .HasColumnType("nvarchar(max)"); b.Property("CreatedAt") .HasColumnType("datetime2"); b.Property("FieldName") .HasColumnType("nvarchar(max)"); b.Property("NewValue") .HasColumnType("nvarchar(max)"); b.Property("OldValue") .HasColumnType("nvarchar(max)"); b.Property("VendorId") .HasColumnType("int"); b.Property("WorkOrderId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("VendorId"); b.ToTable("VendorAuditLogs"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorCompany", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Address") .HasColumnType("nvarchar(max)"); b.Property("City") .HasColumnType("nvarchar(max)"); b.Property("CompanyPhone") .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("GoogleMapsUrl") .HasColumnType("nvarchar(max)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Name") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("NormalizedName") .IsRequired() .HasColumnType("nvarchar(450)"); b.Property("Notes") .HasColumnType("nvarchar(max)"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("rowversion"); b.Property("State") .HasColumnType("nvarchar(max)"); b.Property("Zip") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique(); b.ToTable("VendorCompanies"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorCompletionDocument", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ContentType") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("OriginalFileName") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("Purpose") .IsRequired() .HasMaxLength(30) .HasColumnType("nvarchar(30)"); b.Property("RejectionReason") .HasColumnType("nvarchar(max)"); b.Property("ReplacesDocumentId") .HasColumnType("int"); b.Property("ReviewStatus") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ReviewedAt") .HasColumnType("datetime2"); b.Property("ScanStatus") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ScannedAt") .HasColumnType("datetime2"); b.Property("SizeBytes") .HasColumnType("bigint"); b.Property("StoredFileName") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("VendorId") .HasColumnType("int"); b.Property("Version") .HasColumnType("int"); b.Property("WorkOrderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("DispatchId"); b.HasIndex("VendorId"); b.HasIndex("WorkOrderId"); b.ToTable("VendorCompletionDocuments"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrder", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AfterPhotoAttachment") .HasColumnType("nvarchar(max)"); b.Property("AfterPhotoIssue") .HasColumnType("nvarchar(max)"); b.Property("AssignDate") .HasColumnType("date"); b.Property("AssignTo") .HasColumnType("nvarchar(450)"); b.Property("Attachments") .HasColumnType("nvarchar(max)"); b.Property("AvettaTask") .HasColumnType("nvarchar(max)"); b.Property("BeforPhotoAttachment") .HasColumnType("nvarchar(max)"); b.Property("BeforPhotoIssue") .HasColumnType("nvarchar(max)"); b.Property("Building") .HasColumnType("nvarchar(max)"); b.Property("CarriedOver") .HasColumnType("int"); b.Property("CompletedDate") .HasColumnType("datetime2"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("Customer") .HasColumnType("nvarchar(max)"); b.Property("DateReported") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DocStatus") .HasColumnType("int"); b.Property("DueDate") .HasColumnType("datetime2"); b.Property("ExternalAssignedTo") .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("ExternalLastOccurredAt") .HasColumnType("datetimeoffset"); b.Property("ExternalRecordType") .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("ExternalSource") .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("ExternalUpdatedAt") .HasColumnType("datetimeoffset"); b.Property("ExternalVersionHash") .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("ExternalWorkOrderId") .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("ExtraServices") .HasMaxLength(2000) .HasColumnType("nvarchar(2000)"); b.Property("FlagColor") .HasMaxLength(7) .HasColumnType("nvarchar(7)"); b.Property("InternalWONumber") .HasMaxLength(11) .HasColumnType("nvarchar(11)"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("LegacyStatus") .HasColumnType("nvarchar(max)"); b.Property("LifecycleStatus") .HasColumnType("int"); b.Property("LocationId") .HasColumnType("int"); b.Property("OperationalFlags") .HasColumnType("int"); b.Property("OriginalDate") .HasColumnType("date"); b.Property("OriginalWeek") .HasColumnType("date"); b.Property("PO") .HasColumnType("nvarchar(max)"); b.Property("PocName") .HasMaxLength(200) .HasColumnType("nvarchar(200)"); b.Property("PocNotes") .HasMaxLength(2000) .HasColumnType("nvarchar(2000)"); b.Property("PocPhone") .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("PrimaryDispatchId") .HasColumnType("int"); b.Property("Priority") .HasColumnType("nvarchar(max)"); b.Property("Problem") .HasColumnType("nvarchar(max)"); b.Property("RescheduleCount") .HasColumnType("int"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("rowversion"); b.Property("ScheduleWeekOnly") .HasColumnType("bit"); b.Property("ScheduledDate") .HasColumnType("datetime2"); b.Property("ScheduledEnd") .HasColumnType("datetime2"); b.Property("ScheduledStart") .HasColumnType("datetime2"); b.Property("Service") .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("ServiceNotes") .HasMaxLength(4000) .HasColumnType("nvarchar(4000)"); b.Property("Severity") .HasColumnType("nvarchar(max)"); b.Property("SignOffAttachment") .HasColumnType("nvarchar(max)"); b.Property("SignOffName") .HasColumnType("nvarchar(max)"); b.Property("SignOffSignature") .HasColumnType("nvarchar(max)"); b.Property("SiteCode") .HasMaxLength(32) .HasColumnType("nvarchar(32)"); b.Property("Source") .HasColumnType("nvarchar(max)"); b.Property("SourceEmailS3Key") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("nvarchar(max)"); b.Property("SubTrade") .HasColumnType("nvarchar(max)"); b.Property("TT") .HasColumnType("nvarchar(max)"); b.Property("TargetWeek") .HasColumnType("date"); b.Property("TechPhone") .HasMaxLength(50) .HasColumnType("nvarchar(50)"); b.Property("Trade") .HasColumnType("nvarchar(max)"); b.Property("VendorNTE") .HasColumnType("decimal(18,2)"); b.Property("VendorNotes") .HasMaxLength(2000) .HasColumnType("nvarchar(2000)"); b.Property("WorkOrderType") .HasColumnType("int"); b.Property("WorkerOrderNumber") .HasColumnType("nvarchar(max)"); b.Property("WorkerOrderTitle") .HasColumnType("nvarchar(max)"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.Property("istemplate") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("ExternalWorkOrderId") .IsUnique() .HasFilter("[ExternalWorkOrderId] IS NOT NULL AND [ExternalWorkOrderId] <> ''"); b.HasIndex("InternalWONumber") .HasFilter("[istemplate] = 0"); b.HasIndex("LocationId"); b.HasIndex("PrimaryDispatchId"); b.HasIndex("ScheduledDate"); b.HasIndex("SiteCode") .HasFilter("[istemplate] = 0"); b.HasIndex("WorkOrderType"); b.HasIndex("AssignTo", "ScheduledDate"); b.HasIndex("LifecycleStatus", "ScheduledDate") .HasFilter("[istemplate] = 0"); b.ToTable("workOrders"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderAttachments", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Attachments") .HasColumnType("nvarchar(max)"); b.Property("Category") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("WorkorderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("WorkorderId"); b.ToTable("workOrderAttachments"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderAuditLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("Action") .HasColumnType("nvarchar(max)"); b.Property("ActorType") .HasColumnType("nvarchar(max)"); b.Property("CorrelationId") .HasColumnType("nvarchar(max)"); b.Property("CreatedAt") .HasColumnType("datetime2"); b.Property("DispatchId") .HasColumnType("int"); b.Property("EventType") .HasColumnType("nvarchar(max)"); b.Property("FieldName") .HasColumnType("nvarchar(max)"); b.Property("NewValue") .HasColumnType("nvarchar(max)"); b.Property("OldValue") .HasColumnType("nvarchar(max)"); b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("WorkOrderId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("UserId"); b.HasIndex("WorkOrderId"); b.ToTable("WorkOrderAuditLogs"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderCategories", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CategoryId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("WorkorderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CategoryId"); b.HasIndex("WorkorderId"); b.ToTable("workOrderCategories"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderContacts", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ContactId") .HasColumnType("int"); b.Property("CreatedDate") .HasColumnType("datetime2"); b.Property("DeleterUserId") .HasColumnType("nvarchar(max)"); b.Property("DeletionTime") .HasColumnType("datetime2"); b.Property("IsDeleted") .HasColumnType("bit"); b.Property("LastModificationTime") .HasColumnType("datetime2"); b.Property("LastModifierUserId") .HasColumnType("int"); b.Property("Notes") .HasColumnType("nvarchar(max)"); b.Property("WorkorderId") .HasColumnType("int"); b.Property("createdby") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("ContactId"); b.HasIndex("WorkorderId"); b.ToTable("WorkOrderContacts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderExternalReceipt", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ExternalId") .IsRequired() .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("Kind") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)"); b.Property("ProcessedAt") .HasColumnType("datetimeoffset"); b.Property("Source") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("UpdatedAt") .HasColumnType("datetimeoffset"); b.Property("VersionHash") .IsRequired() .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.HasKey("Id"); b.HasIndex("Source", "Kind", "ExternalId") .IsUnique() .HasDatabaseName("IX_WorkOrderExternalReceipts_Source_Kind_ExternalId"); b.ToTable("WorkOrderExternalReceipts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderFieldLock", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("FieldName") .IsRequired() .HasColumnType("nvarchar(450)"); b.Property("LockedAt") .HasColumnType("datetime2"); b.Property("LockedByUserId") .HasColumnType("nvarchar(max)"); b.Property("WorkOrderId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("WorkOrderId", "FieldName") .IsUnique(); b.ToTable("WorkOrderFieldLocks"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderReconciliationJob", b => { b.Property("Id") .HasColumnType("int"); b.Property("CommentsProcessed") .HasColumnType("int"); b.Property("CompletedAt") .HasColumnType("datetimeoffset"); b.Property("ErrorCode") .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("FenceToken") .HasColumnType("uniqueidentifier"); b.Property("LeaseExpiresAt") .HasColumnType("datetimeoffset"); b.Property("Reason") .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("RequestedAt") .HasColumnType("datetimeoffset"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("rowversion"); b.Property("RunId") .HasColumnType("uniqueidentifier"); b.Property("StartedAt") .HasColumnType("datetimeoffset"); b.Property("State") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)"); b.Property("WorkOrdersProcessed") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("State"); b.ToTable("WorkOrderReconciliationJobs"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderWebhookDelivery", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("BodySha256") .IsRequired() .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("DeliveryId") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)"); b.Property("EventType") .IsRequired() .HasMaxLength(64) .HasColumnType("nvarchar(64)"); b.Property("OccurredAt") .HasColumnType("datetimeoffset"); b.Property("ProcessedAt") .HasColumnType("datetimeoffset"); b.HasKey("Id"); b.HasIndex("DeliveryId") .IsUnique(); b.ToTable("WorkOrderWebhookDeliveries"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderWeekRolledLedger", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("CorrelationId") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("ProcessedAt") .HasColumnType("datetime2"); b.Property("SourceWeekStart") .HasColumnType("date"); b.Property("WorkOrderId") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("WorkOrderId", "SourceWeekStart") .IsUnique(); b.ToTable("WorkOrderWeekRolledLedgers"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => { b.Property("Id") .HasColumnType("nvarchar(450)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("Name") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("NormalizedName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique() .HasDatabaseName("RoleNameIndex") .HasFilter("[NormalizedName] IS NOT NULL"); b.ToTable("AspNetRoles", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("RoleId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("RoleId"); b.ToTable("AspNetRoleClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("UserId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("AspNetUserClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.Property("LoginProvider") .HasColumnType("nvarchar(450)"); b.Property("ProviderKey") .HasColumnType("nvarchar(450)"); b.Property("ProviderDisplayName") .HasColumnType("nvarchar(max)"); b.Property("UserId") .IsRequired() .HasColumnType("nvarchar(450)"); b.HasKey("LoginProvider", "ProviderKey"); b.HasIndex("UserId"); b.ToTable("AspNetUserLogins", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("RoleId") .HasColumnType("nvarchar(450)"); b.HasKey("UserId", "RoleId"); b.HasIndex("RoleId"); b.ToTable("AspNetUserRoles", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.Property("UserId") .HasColumnType("nvarchar(450)"); b.Property("LoginProvider") .HasColumnType("nvarchar(450)"); b.Property("Name") .HasColumnType("nvarchar(450)"); b.Property("Value") .HasColumnType("nvarchar(max)"); b.HasKey("UserId", "LoginProvider", "Name"); b.ToTable("AspNetUserTokens", (string)null); }); modelBuilder.Entity("Data.SeaHavenIndustries.Addresses", b => { b.HasOne("Data.SeaHavenIndustries.Accounts", "Account") .WithMany("Addresses") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Contacts", "Contact") .WithMany() .HasForeignKey("ContactId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Account"); b.Navigation("Contact"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Assets", b => { b.HasOne("Data.SeaHavenIndustries.Accounts", "Account") .WithMany() .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Location") .WithMany() .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Account"); b.Navigation("Location"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Comments", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany("Comments") .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.ApplicationUser", "ApplicationUser") .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("Comments") .HasForeignKey("WorkerOrderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("ApplicationUser"); b.Navigation("Dispatch"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.ContactDetails", b => { b.HasOne("Data.SeaHavenIndustries.Contacts", "Contact") .WithMany() .HasForeignKey("ContactId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Contact"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Contacts", b => { b.HasOne("Data.SeaHavenIndustries.Accounts", "Account") .WithMany("Contacts") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Location") .WithMany() .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Account"); b.Navigation("Location"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Dispatch", b => { b.HasOne("Data.SeaHavenIndustries.Vendor", "Vendor") .WithMany("Dispatches") .HasForeignKey("VendorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("Dispatches") .HasForeignKey("WorkOrderId"); b.Navigation("Vendor"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchChecklistItem", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany("ChecklistItems") .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Dispatch"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchSignoff", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany("Signoffs") .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Dispatch"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchUpliftRequest", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany() .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.VendorCompletionDocument", "EvidenceDocument") .WithMany() .HasForeignKey("EvidenceDocumentId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Dispatch"); b.Navigation("EvidenceDocument"); }); modelBuilder.Entity("Data.SeaHavenIndustries.DispatchWorkOrder", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany("DispatchWorkOrders") .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Dispatch"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Employee", b => { b.HasOne("Data.SeaHavenIndustries.Department", "Department") .WithMany("Employees") .HasForeignKey("DepartmentId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.JobTitle", "JobTitle") .WithMany("Employees") .HasForeignKey("JobTitleId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Region", "Region") .WithMany("Employees") .HasForeignKey("RegionId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Department"); b.Navigation("JobTitle"); b.Navigation("Region"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeeAddress", b => { b.HasOne("Data.SeaHavenIndustries.Employee", "Employee") .WithOne("Address") .HasForeignKey("Data.SeaHavenIndustries.EmployeeAddress", "EmployeeId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Employee"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeeEmail", b => { b.HasOne("Data.SeaHavenIndustries.Employee", "Employee") .WithMany("Emails") .HasForeignKey("EmployeeId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Employee"); }); modelBuilder.Entity("Data.SeaHavenIndustries.EmployeePhone", b => { b.HasOne("Data.SeaHavenIndustries.Employee", "Employee") .WithMany("Phones") .HasForeignKey("EmployeeId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Employee"); }); modelBuilder.Entity("Data.SeaHavenIndustries.FollowUps", b => { b.HasOne("Data.SeaHavenIndustries.Accounts", "Account") .WithMany() .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Employee", "Employee") .WithMany() .HasForeignKey("EmployeeId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Location") .WithMany() .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Account"); b.Navigation("Employee"); b.Navigation("Location"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.PMSchedules", b => { b.HasOne("Data.SeaHavenIndustries.Assets", "Asset") .WithMany("PMSchedules") .HasForeignKey("AssetId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Location") .WithMany() .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Asset"); b.Navigation("Location"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Quotes", b => { b.HasOne("Data.SeaHavenIndustries.Contacts", "Contacts") .WithMany() .HasForeignKey("ContactId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("Quotes") .HasForeignKey("WorkorderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Contacts"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.QuotesLineItems", b => { b.HasOne("Data.SeaHavenIndustries.Quotes", "Quotes") .WithMany("LineItems") .HasForeignKey("QuoteId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Quotes"); }); modelBuilder.Entity("Data.SeaHavenIndustries.SitePreferredVendor", b => { b.HasOne("Data.SeaHavenIndustries.Locations", "Location") .WithMany() .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.Vendor", "Vendor") .WithMany("SitePreferences") .HasForeignKey("VendorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Location"); b.Navigation("Vendor"); }); modelBuilder.Entity("Data.SeaHavenIndustries.TaskListTemplateItem", b => { b.HasOne("Data.SeaHavenIndustries.TaskListTemplate", "Template") .WithMany("Items") .HasForeignKey("TaskListTemplateId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Template"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Template", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", "AssignToUser") .WithMany("Templates") .HasForeignKey("AssignTo") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Category", "Category") .WithMany("Templates") .HasForeignKey("CategoryId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Contacts", "POC") .WithMany() .HasForeignKey("ContactId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Locations") .WithMany("Templates") .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("AssignToUser"); b.Navigation("Category"); b.Navigation("Locations"); b.Navigation("POC"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Vendor", b => { b.HasOne("Data.SeaHavenIndustries.VendorCompany", "Company") .WithMany("Vendors") .HasForeignKey("CompanyId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Company"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorAccessToken", b => { b.HasOne("Data.SeaHavenIndustries.Vendor", "Vendor") .WithMany() .HasForeignKey("VendorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Vendor"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorAuditLog", b => { b.HasOne("Data.SeaHavenIndustries.Vendor", "Vendor") .WithMany("AuditLogs") .HasForeignKey("VendorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Vendor"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorCompletionDocument", b => { b.HasOne("Data.SeaHavenIndustries.Dispatch", "Dispatch") .WithMany("CompletionDocuments") .HasForeignKey("DispatchId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.Vendor", "Vendor") .WithMany() .HasForeignKey("VendorId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Dispatch"); b.Navigation("Vendor"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrder", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", "AssignToUser") .WithMany("WorkOrders") .HasForeignKey("AssignTo") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Locations", "Locations") .WithMany("workOrders") .HasForeignKey("LocationId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.Dispatch", "PrimaryDispatch") .WithMany() .HasForeignKey("PrimaryDispatchId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("AssignToUser"); b.Navigation("Locations"); b.Navigation("PrimaryDispatch"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderAttachments", b => { b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("workOrderAttachments") .HasForeignKey("WorkorderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderAuditLog", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", "User") .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("User"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderCategories", b => { b.HasOne("Data.SeaHavenIndustries.Category", "Category") .WithMany("WorkOrderCategories") .HasForeignKey("CategoryId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("WorkOrderCategories") .HasForeignKey("WorkorderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("Category"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderContacts", b => { b.HasOne("Data.SeaHavenIndustries.Contacts", "POC") .WithMany("WorkOrderContacts") .HasForeignKey("ContactId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("WorkOrderContacts") .HasForeignKey("WorkorderId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("POC"); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderFieldLock", b => { b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany("FieldLocks") .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrderWeekRolledLedger", b => { b.HasOne("Data.SeaHavenIndustries.WorkOrder", "WorkOrder") .WithMany() .HasForeignKey("WorkOrderId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("WorkOrder"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("Data.SeaHavenIndustries.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.HasOne("Data.SeaHavenIndustries.ApplicationUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); }); modelBuilder.Entity("Data.SeaHavenIndustries.Accounts", b => { b.Navigation("Addresses"); b.Navigation("Contacts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.ApplicationUser", b => { b.Navigation("Templates"); b.Navigation("WorkOrders"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Assets", b => { b.Navigation("PMSchedules"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Category", b => { b.Navigation("Templates"); b.Navigation("WorkOrderCategories"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Contacts", b => { b.Navigation("WorkOrderContacts"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Department", b => { b.Navigation("Employees"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Dispatch", b => { b.Navigation("ChecklistItems"); b.Navigation("Comments"); b.Navigation("CompletionDocuments"); b.Navigation("DispatchWorkOrders"); b.Navigation("Signoffs"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Employee", b => { b.Navigation("Address"); b.Navigation("Emails"); b.Navigation("Phones"); }); modelBuilder.Entity("Data.SeaHavenIndustries.JobTitle", b => { b.Navigation("Employees"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Locations", b => { b.Navigation("Templates"); b.Navigation("workOrders"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Quotes", b => { b.Navigation("LineItems"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Region", b => { b.Navigation("Employees"); }); modelBuilder.Entity("Data.SeaHavenIndustries.TaskListTemplate", b => { b.Navigation("Items"); }); modelBuilder.Entity("Data.SeaHavenIndustries.Vendor", b => { b.Navigation("AuditLogs"); b.Navigation("Dispatches"); b.Navigation("SitePreferences"); }); modelBuilder.Entity("Data.SeaHavenIndustries.VendorCompany", b => { b.Navigation("Vendors"); }); modelBuilder.Entity("Data.SeaHavenIndustries.WorkOrder", b => { b.Navigation("Comments"); b.Navigation("Dispatches"); b.Navigation("FieldLocks"); b.Navigation("Quotes"); b.Navigation("WorkOrderCategories"); b.Navigation("WorkOrderContacts"); b.Navigation("workOrderAttachments"); }); #pragma warning restore 612, 618 } } }