diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementHealthCheck.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementHealthCheck.cs index 2a7b29038..ff00e8b92 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementHealthCheck.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementHealthCheck.cs @@ -7,6 +7,7 @@ public class FundingAgreementHealthCheckTask public bool? DraftedFundingAgreementHealthCheck { get; set; } public bool? RegionalDirectorSignedOffFundingAgreementHealthCheck { get; set; } public bool? MinisterSignedOffFundingAgreementHealthCheck { get; set; } + public bool? IncludedSignedOffImpactAssessment { get; set; } public bool? SavedFundingAgreementHealthCheckInWorkplacesFolder { get; set; } } } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementSubmission.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementSubmission.cs index 007463cfd..fc1d38b25 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementSubmission.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Contracts/Project/Tasks/FundingAgreementSubmission.cs @@ -5,6 +5,7 @@ public class FundingAgreementSubmissionTask public bool? DraftedFundingAgreementSubmission { get; set; } public bool? RegionalDirectorSignedOffFundingAgreementSubmission { get; set; } public bool? MinisterSignedOffFundingAgreementSubmission { get; set; } + public bool? IncludedSignedOffImpactAssessment { get; set; } public bool? SavedFundingAgreementSubmissionInWorkplacesFolder { get; set; } } } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Helpers/DatabaseModelBuilder.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Helpers/DatabaseModelBuilder.cs index 19911aee9..13a69ef13 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Helpers/DatabaseModelBuilder.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Helpers/DatabaseModelBuilder.cs @@ -23,6 +23,7 @@ public static Kpi BuildProject() result.ProjectStatusUrnWhenGivenOne = _fixture.Create(); result.ProjectStatusFreeSchoolApplicationWave = _fixture.Create(); result.ProjectStatusRealisticYearOfOpening = _fixture.Create(); + result.RyooWd = result.ProjectStatusRealisticYearOfOpening; result.ProjectStatusDateOfEntryIntoPreOpening = _fixture.Create(); result.ProjectStatusProvisionalOpeningDateAgreedWithTrust = _fixture.Create(); result.ProjectStatusActualOpeningDate = _fixture.Create(); @@ -83,8 +84,8 @@ public static Kpi BuildProjectMandatoryFieldsOnly() UpperStatus = _fixture.Create().Substring(0, 10), FsType = _fixture.Create().Substring(0, 13), FsType1 = _fixture.Create().Substring(0, 15), - MatUnitProjects = _fixture.Create().Substring(0, 31), - SponsorUnitProjects = _fixture.Create() + MatUnitProjects = "Other", + SponsorUnitProjects = "Free Schools (including Studio Schools)" }; return result; @@ -203,6 +204,7 @@ public static Milestones BuildFundingAgreementHealthCheckTask(string rid) result.FsgPreOpeningMilestonesMfadDraftedFaHealthCheck = true; result.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaHealthCheck = false; result.FsgPreOpeningMilestonesMfadMinisterSignedOffFaHealthCheck = false; + result.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck = false; result.FsgPreOpeningMilestonesMfadSavedFaHealthCheckInWorkplacesFolder = false; return result; @@ -217,6 +219,7 @@ public static Milestones BuildFundingAgreementSubmissionTask(string rid) result.FsgPreOpeningMilestonesMfadDraftedFaSubmission = true; result.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaSubmission = false; result.FsgPreOpeningMilestonesMfadMinisterSignedOffFaSubmission = false; + result.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission = false; result.FsgPreOpeningMilestonesMfadSavedFaSubmissionInWorkplacesFolder = false; return result; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/ProjectApiTests.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/ProjectApiTests.cs index 7bd029654..f34856d6d 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/ProjectApiTests.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/ProjectApiTests.cs @@ -68,8 +68,8 @@ public async Task When_CreateProject_Returns_NewProjectFields_201(ProjectType pr createdProject.UpperStatus.Should().BeEmpty(); createdProject.FsType.Should().BeEmpty(); createdProject.FsType1.Should().BeEmpty(); - createdProject.MatUnitProjects.Should().BeEmpty(); - createdProject.SponsorUnitProjects.Should().BeEmpty(); + createdProject.MatUnitProjects.Should().Be("Other"); + createdProject.SponsorUnitProjects.Should().Be("Free Schools (including Studio Schools)"); createdProject.SchoolDetailsGeographicalRegion.Should().Be(projectDetails.Region); createdProject.SchoolDetailsLocalAuthority.Should().Be(projectDetails.LocalAuthorityCode); createdProject.LocalAuthority.Should().Be(projectDetails.LocalAuthority); @@ -118,6 +118,8 @@ public async Task When_CreateProject_Returns_NewProjectFields_201(ProjectType pr createdProject.ProjectStatusFreeSchoolsApplicationNumber.Should().BeEmpty(); createdProject.Wave.Should().Be("FS - Presumption"); } + + createdProject.RyooWd.Should().Be("Awaiting Year"); } [Fact] diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/DatesTaskApiTests.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/DatesTaskApiTests.cs index 36c378425..d49e508c1 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/DatesTaskApiTests.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/DatesTaskApiTests.cs @@ -1,8 +1,10 @@ using Dfe.ManageFreeSchoolProjects.API.Contracts.Project.Tasks; using Dfe.ManageFreeSchoolProjects.API.Tests.Fixtures; using Dfe.ManageFreeSchoolProjects.API.Tests.Helpers; +using Dfe.ManageFreeSchoolProjects.API.Constants; using System.Threading.Tasks; using System; +using System.Linq; namespace Dfe.ManageFreeSchoolProjects.API.Tests.Integration.Tasks { @@ -44,6 +46,47 @@ public async Task Patch_DatesTask_Returns_201() projectResponse.Dates.ProjectClosedDate.Should().Be(DateTenDaysInFuture); projectResponse.Dates.RealisticYearOfOpening.Should().Be(request.Dates.RealisticYearOfOpening); projectResponse.SchoolName.Should().Be(project.ProjectStatusCurrentFreeSchoolName); + + using var contextPostSave = _testFixture.GetContext(); + var updatedProject = contextPostSave.Kpi.First(p => p.ProjectStatusProjectId == projectId); + updatedProject.RyooWd.Should().Be(request.Dates.RealisticYearOfOpening); + } + + [Fact] + public async Task Patch_DatesTask_NoRYOOSetsDefaultValue() + { + var project = DatabaseModelBuilder.BuildProject(); + var projectId = project.ProjectStatusProjectId; + + using var context = _testFixture.GetContext(); + context.Kpi.Add(project); + await context.SaveChangesAsync(); + + var DateTenDaysInFuture = new DateTime().AddDays(10); + var DateNineDaysInFuture = new DateTime().AddDays(9); + + var request = new UpdateProjectByTaskRequest() + { + Dates = new DatesTask() + { + DateOfEntryIntoPreopening = DateTenDaysInFuture, + ProvisionalOpeningDateAgreedWithTrust = DateNineDaysInFuture, + ProjectClosedDate = DateTenDaysInFuture, + RealisticYearOfOpening = "", + } + }; + + var projectResponse = await _client.UpdateProjectTask(projectId, request, TaskName.Dates.ToString()); + + projectResponse.Dates.DateOfEntryIntoPreopening.Should().Be(DateTenDaysInFuture); + projectResponse.Dates.ProvisionalOpeningDateAgreedWithTrust.Should().Be(DateNineDaysInFuture); + projectResponse.Dates.ProjectClosedDate.Should().Be(DateTenDaysInFuture); + projectResponse.Dates.RealisticYearOfOpening.Should().Be(request.Dates.RealisticYearOfOpening); + projectResponse.SchoolName.Should().Be(project.ProjectStatusCurrentFreeSchoolName); + + using var contextPostSave = _testFixture.GetContext(); + var updatedProject = contextPostSave.Kpi.First(p => p.ProjectStatusProjectId == projectId); + updatedProject.RyooWd.Should().Be(ProjectConstants.RYOODefaultValue); } } } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementHealthCheckApiTests.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementHealthCheckApiTests.cs index 88bcb7fc8..3702fe537 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementHealthCheckApiTests.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementHealthCheckApiTests.cs @@ -39,8 +39,10 @@ public async Task Patch_FundingAgreementHealthCheck_Returns_201() .Be(request.FundingAgreementHealthCheck.DraftedFundingAgreementHealthCheck); projectResponse.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck.Should() .Be(request.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck); - projectResponse.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck.Should() - .Be(request.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck); + projectResponse.FundingAgreementHealthCheck.MinisterSignedOffFundingAgreementHealthCheck.Should() + .Be(request.FundingAgreementHealthCheck.MinisterSignedOffFundingAgreementHealthCheck); + projectResponse.FundingAgreementHealthCheck.IncludedSignedOffImpactAssessment.Should() + .Be(request.FundingAgreementHealthCheck.IncludedSignedOffImpactAssessment); projectResponse.FundingAgreementHealthCheck.SavedFundingAgreementHealthCheckInWorkplacesFolder.Should() .Be(request.FundingAgreementHealthCheck.SavedFundingAgreementHealthCheckInWorkplacesFolder); @@ -65,7 +67,9 @@ public async Task Patch_ExistingFundingArrangement_Returns_201() FundingAgreementHealthCheck = new FundingAgreementHealthCheckTask() { DraftedFundingAgreementHealthCheck = true, - RegionalDirectorSignedOffFundingAgreementHealthCheck = true, + RegionalDirectorSignedOffFundingAgreementHealthCheck = false, + MinisterSignedOffFundingAgreementHealthCheck = true, + IncludedSignedOffImpactAssessment = true, SavedFundingAgreementHealthCheckInWorkplacesFolder = true } }; @@ -77,8 +81,10 @@ public async Task Patch_ExistingFundingArrangement_Returns_201() .Be(request.FundingAgreementHealthCheck.DraftedFundingAgreementHealthCheck); projectResponse.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck.Should() .Be(request.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck); - projectResponse.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck.Should() - .Be(request.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck); + projectResponse.FundingAgreementHealthCheck.MinisterSignedOffFundingAgreementHealthCheck.Should() + .Be(request.FundingAgreementHealthCheck.MinisterSignedOffFundingAgreementHealthCheck); + projectResponse.FundingAgreementHealthCheck.IncludedSignedOffImpactAssessment.Should() + .Be(request.FundingAgreementHealthCheck.IncludedSignedOffImpactAssessment); projectResponse.FundingAgreementHealthCheck.SavedFundingAgreementHealthCheckInWorkplacesFolder.Should() .Be(request.FundingAgreementHealthCheck.SavedFundingAgreementHealthCheckInWorkplacesFolder); } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementSubmissionApiTests.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementSubmissionApiTests.cs index 355ee7a74..af9368ac1 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementSubmissionApiTests.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/FundingAgreementSubmissionApiTests.cs @@ -39,8 +39,10 @@ public async Task Patch_FundingAgreementSubmission_Returns_201() .Be(request.FundingAgreementSubmission.DraftedFundingAgreementSubmission); projectResponse.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission.Should() .Be(request.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission); - projectResponse.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission.Should() - .Be(request.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission); + projectResponse.FundingAgreementSubmission.MinisterSignedOffFundingAgreementSubmission.Should() + .Be(request.FundingAgreementSubmission.MinisterSignedOffFundingAgreementSubmission); + projectResponse.FundingAgreementSubmission.IncludedSignedOffImpactAssessment.Should() + .Be(request.FundingAgreementSubmission.IncludedSignedOffImpactAssessment); projectResponse.FundingAgreementSubmission.SavedFundingAgreementSubmissionInWorkplacesFolder.Should() .Be(request.FundingAgreementSubmission.SavedFundingAgreementSubmissionInWorkplacesFolder); @@ -65,7 +67,9 @@ public async Task Patch_ExistingFundingArrangement_Returns_201() FundingAgreementSubmission = new FundingAgreementSubmissionTask() { DraftedFundingAgreementSubmission = true, - RegionalDirectorSignedOffFundingAgreementSubmission = true, + RegionalDirectorSignedOffFundingAgreementSubmission = false, + MinisterSignedOffFundingAgreementSubmission = true, + IncludedSignedOffImpactAssessment = true, SavedFundingAgreementSubmissionInWorkplacesFolder = true } }; @@ -77,8 +81,10 @@ public async Task Patch_ExistingFundingArrangement_Returns_201() .Be(request.FundingAgreementSubmission.DraftedFundingAgreementSubmission); projectResponse.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission.Should() .Be(request.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission); - projectResponse.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission.Should() - .Be(request.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission); + projectResponse.FundingAgreementSubmission.MinisterSignedOffFundingAgreementSubmission.Should() + .Be(request.FundingAgreementSubmission.MinisterSignedOffFundingAgreementSubmission); + projectResponse.FundingAgreementSubmission.IncludedSignedOffImpactAssessment.Should() + .Be(request.FundingAgreementSubmission.IncludedSignedOffImpactAssessment); projectResponse.FundingAgreementSubmission.SavedFundingAgreementSubmissionInWorkplacesFolder.Should() .Be(request.FundingAgreementSubmission.SavedFundingAgreementSubmissionInWorkplacesFolder); } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/KickoffMeetingTaskApiTests.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/KickoffMeetingTaskApiTests.cs index 9e7bfbc01..d13221481 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/KickoffMeetingTaskApiTests.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API.Tests/Integration/Tasks/KickoffMeetingTaskApiTests.cs @@ -1,7 +1,9 @@ using Dfe.ManageFreeSchoolProjects.API.Contracts.Project.Tasks; using Dfe.ManageFreeSchoolProjects.API.Tests.Fixtures; using Dfe.ManageFreeSchoolProjects.API.Tests.Helpers; +using Dfe.ManageFreeSchoolProjects.API.Constants; using System; +using System.Linq; using System.Threading.Tasks; namespace Dfe.ManageFreeSchoolProjects.API.Tests.Integration.Tasks @@ -42,6 +44,10 @@ public async Task Patch_NewKickOffMeeting_Returns_201() projectResponse.KickOffMeeting.RealisticYearOfOpening.Should().Be(request.KickOffMeeting.RealisticYearOfOpening); projectResponse.KickOffMeeting.FundingArrangementAgreed.Should().Be(request.KickOffMeeting.FundingArrangementAgreed); projectResponse.KickOffMeeting.FundingArrangementDetailsAgreed.Should().Be(request.KickOffMeeting.FundingArrangementDetailsAgreed); + + using var contextPostSave = _testFixture.GetContext(); + var updatedProject = contextPostSave.Kpi.First(p => p.ProjectStatusProjectId == projectId); + updatedProject.RyooWd.Should().Be(request.KickOffMeeting.RealisticYearOfOpening); } [Fact] @@ -77,6 +83,49 @@ public async Task Patch_ExistingKickOffMeeting_Returns_201() projectResponse.KickOffMeeting.RealisticYearOfOpening.Should().Be(request.KickOffMeeting.RealisticYearOfOpening); projectResponse.KickOffMeeting.FundingArrangementAgreed.Should().Be(request.KickOffMeeting.FundingArrangementAgreed); projectResponse.KickOffMeeting.FundingArrangementDetailsAgreed.Should().Be(request.KickOffMeeting.FundingArrangementDetailsAgreed); + + using var contextPostSave = _testFixture.GetContext(); + var updatedProject = contextPostSave.Kpi.First(p => p.ProjectStatusProjectId == projectId); + updatedProject.RyooWd.Should().Be(request.KickOffMeeting.RealisticYearOfOpening); + } + + [Fact] + public async Task Patch_ExistingKickOffMeeting_NoRYOOSetsDefaultValue() + { + var project = DatabaseModelBuilder.BuildProject(); + var projectId = project.ProjectStatusProjectId; + + using var context = _testFixture.GetContext(); + context.Kpi.Add(project); + + var kickOffMeetingTask = DatabaseModelBuilder.BuildKickOffMeetingTask(project.Rid); + context.Milestones.Add(kickOffMeetingTask); + + await context.SaveChangesAsync(); + + var dateNineDaysInFuture = new DateTime().AddDays(9); + + var request = new UpdateProjectByTaskRequest() + { + KickOffMeeting = new KickOffMeetingTask() + { + FundingArrangementAgreed = true, + RealisticYearOfOpening = "", + FundingArrangementDetailsAgreed = "text", + SavedDocumentsInWorkplacesFolder = true + } + }; + + var projectResponse = await _client.UpdateProjectTask(projectId, request, TaskName.KickOffMeeting.ToString()); + + projectResponse.KickOffMeeting.SavedDocumentsInWorkplacesFolder.Should().Be(request.KickOffMeeting.SavedDocumentsInWorkplacesFolder); + projectResponse.KickOffMeeting.RealisticYearOfOpening.Should().Be(request.KickOffMeeting.RealisticYearOfOpening); + projectResponse.KickOffMeeting.FundingArrangementAgreed.Should().Be(request.KickOffMeeting.FundingArrangementAgreed); + projectResponse.KickOffMeeting.FundingArrangementDetailsAgreed.Should().Be(request.KickOffMeeting.FundingArrangementDetailsAgreed); + + using var contextPostSave = _testFixture.GetContext(); + var updatedProject = contextPostSave.Kpi.First(p => p.ProjectStatusProjectId == projectId); + updatedProject.RyooWd.Should().Be(ProjectConstants.RYOODefaultValue); } } } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/Constants/Constants.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/Constants/Constants.cs new file mode 100644 index 000000000..2d8285b71 --- /dev/null +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/Constants/Constants.cs @@ -0,0 +1,9 @@ +namespace Dfe.ManageFreeSchoolProjects.API.Constants +{ + public static class ProjectConstants + { + public const string RYOODefaultValue = "Awaiting Year"; + public const string MATUnitProjects = "Other"; + public const string SponsorUnitProjects = "Free Schools (including Studio Schools)"; + } +} diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/CreateProjectService.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/CreateProjectService.cs index b74ef4daa..3f795d55c 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/CreateProjectService.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/CreateProjectService.cs @@ -7,6 +7,7 @@ using Dfe.ManageFreeSchoolProjects.API.UseCases.Tasks; using Dfe.ManageFreeSchoolProjects.Data; using Dfe.ManageFreeSchoolProjects.Data.Entities.Existing; +using Dfe.ManageFreeSchoolProjects.API.Constants; using Microsoft.EntityFrameworkCore; namespace Dfe.ManageFreeSchoolProjects.API.UseCases.Project @@ -83,6 +84,7 @@ private Po MapToPo(ProjectDetails proj, string rid) private static Kpi MapToKpi(ProjectDetails proj, string rid, Trust trust) { + return new Kpi { Rid = rid, @@ -96,8 +98,8 @@ private static Kpi MapToKpi(ProjectDetails proj, string rid, Trust trust) UpperStatus = "", FsType = "", FsType1 = "", - MatUnitProjects = "", - SponsorUnitProjects = "", + MatUnitProjects = ProjectConstants.MATUnitProjects, + SponsorUnitProjects = ProjectConstants.SponsorUnitProjects, SchoolDetailsGeographicalRegion = proj.Region, SchoolDetailsLocalAuthority = proj.LocalAuthorityCode, LocalAuthority = proj.LocalAuthority, @@ -122,6 +124,8 @@ private static Kpi MapToKpi(ProjectDetails proj, string rid, Trust trust) ProjectStatusProvisionalOpeningDateAgreedWithTrust = proj.ProvisionalOpeningDate, KeyContactsFsgLeadContact = proj.ProjectAssignedToName, KeyContactsFsgLeadContactEmail = proj.ProjectAssignedToEmail, + RyooWd = ProjectConstants.RYOODefaultValue + }; } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/Dates/UpdateDatesTaskService.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/Dates/UpdateDatesTaskService.cs index d36739e15..01b2c7a04 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/Dates/UpdateDatesTaskService.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/Dates/UpdateDatesTaskService.cs @@ -1,4 +1,5 @@ -using DocumentFormat.OpenXml.Drawing; +using Microsoft.IdentityModel.Tokens; +using Dfe.ManageFreeSchoolProjects.API.Constants; namespace Dfe.ManageFreeSchoolProjects.API.UseCases.Project.Tasks.Dates { @@ -9,6 +10,7 @@ public async Task Update(UpdateTaskServiceParameters parameters) var dbKpi = parameters.Kpi; var task = parameters.Request.Dates; + if (task == null) { return; @@ -20,6 +22,7 @@ public async Task Update(UpdateTaskServiceParameters parameters) dbKpi.ProjectStatusDateCancelled = task.ProjectCancelledDate; dbKpi.ProjectStatusDateWithdrawn = task.ProjectWithdrawnDate; dbKpi.ProjectStatusRealisticYearOfOpening = task.RealisticYearOfOpening; + dbKpi.RyooWd = task.RealisticYearOfOpening.IsNullOrEmpty() ? ProjectConstants.RYOODefaultValue : task.RealisticYearOfOpening; } } } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/FundingAgreementHealthCheckTaskBuilder.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/FundingAgreementHealthCheckTaskBuilder.cs index 4b050ed45..f09948125 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/FundingAgreementHealthCheckTaskBuilder.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/FundingAgreementHealthCheckTaskBuilder.cs @@ -18,6 +18,7 @@ public static FundingAgreementHealthCheckTask Build(Milestones milestones) DraftedFundingAgreementHealthCheck = milestones.FsgPreOpeningMilestonesMfadDraftedFaHealthCheck, RegionalDirectorSignedOffFundingAgreementHealthCheck = milestones.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaHealthCheck, MinisterSignedOffFundingAgreementHealthCheck = milestones.FsgPreOpeningMilestonesMfadMinisterSignedOffFaHealthCheck, + IncludedSignedOffImpactAssessment = milestones.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck, SavedFundingAgreementHealthCheckInWorkplacesFolder = milestones.FsgPreOpeningMilestonesMfadSavedFaHealthCheckInWorkplacesFolder }; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/UpdateFundingAgreementHealthCheckTaskService.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/UpdateFundingAgreementHealthCheckTaskService.cs index 6a5863adf..4d4ff3b14 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/UpdateFundingAgreementHealthCheckTaskService.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementHealthCheck/UpdateFundingAgreementHealthCheckTaskService.cs @@ -36,6 +36,7 @@ public async Task Update(UpdateTaskServiceParameters parameters) milestone.FsgPreOpeningMilestonesMfadDraftedFaHealthCheck = task.DraftedFundingAgreementHealthCheck; milestone.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaHealthCheck = task.RegionalDirectorSignedOffFundingAgreementHealthCheck; milestone.FsgPreOpeningMilestonesMfadMinisterSignedOffFaHealthCheck = task.MinisterSignedOffFundingAgreementHealthCheck; + milestone.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck = task.IncludedSignedOffImpactAssessment; milestone.FsgPreOpeningMilestonesMfadSavedFaHealthCheckInWorkplacesFolder = task.SavedFundingAgreementHealthCheckInWorkplacesFolder; await _context.SaveChangesAsync(); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/FundingAgreementSubmissionTaskBuilder.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/FundingAgreementSubmissionTaskBuilder.cs index 5c4a533cc..f144e7f23 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/FundingAgreementSubmissionTaskBuilder.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/FundingAgreementSubmissionTaskBuilder.cs @@ -17,6 +17,7 @@ public static FundingAgreementSubmissionTask Build(Milestones milestones) DraftedFundingAgreementSubmission = milestones.FsgPreOpeningMilestonesMfadDraftedFaSubmission, RegionalDirectorSignedOffFundingAgreementSubmission = milestones.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaSubmission, MinisterSignedOffFundingAgreementSubmission = milestones.FsgPreOpeningMilestonesMfadMinisterSignedOffFaSubmission, + IncludedSignedOffImpactAssessment = milestones.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission, SavedFundingAgreementSubmissionInWorkplacesFolder = milestones.FsgPreOpeningMilestonesMfadSavedFaSubmissionInWorkplacesFolder }; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/UpdateFundingAgreementSubmissionTaskService.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/UpdateFundingAgreementSubmissionTaskService.cs index 8fdc457a0..4013b49c3 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/UpdateFundingAgreementSubmissionTaskService.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/FundingAgreementSubmission/UpdateFundingAgreementSubmissionTaskService.cs @@ -36,6 +36,7 @@ public async Task Update(UpdateTaskServiceParameters parameters) milestone.FsgPreOpeningMilestonesMfadDraftedFaSubmission = task.DraftedFundingAgreementSubmission; milestone.FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaSubmission = task.RegionalDirectorSignedOffFundingAgreementSubmission; milestone.FsgPreOpeningMilestonesMfadMinisterSignedOffFaSubmission = task.MinisterSignedOffFundingAgreementSubmission; + milestone.FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission = task.IncludedSignedOffImpactAssessment; milestone.FsgPreOpeningMilestonesMfadSavedFaSubmissionInWorkplacesFolder = task.SavedFundingAgreementSubmissionInWorkplacesFolder; await _context.SaveChangesAsync(); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/KickOffMeeting/UpdateKickOfMeetingTaskService.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/KickOffMeeting/UpdateKickOfMeetingTaskService.cs index dc27c1be1..489d65768 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/KickOffMeeting/UpdateKickOfMeetingTaskService.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.API/UseCases/Project/Tasks/KickOffMeeting/UpdateKickOfMeetingTaskService.cs @@ -1,5 +1,7 @@ using Dfe.ManageFreeSchoolProjects.Data; using Microsoft.EntityFrameworkCore; +using Microsoft.IdentityModel.Tokens; +using Dfe.ManageFreeSchoolProjects.API.Constants; namespace Dfe.ManageFreeSchoolProjects.API.UseCases.Project.Tasks.KickOffMeeting { @@ -32,6 +34,7 @@ public async Task Update(UpdateTaskServiceParameters parameters) } dbKpi.ProjectStatusRealisticYearOfOpening = task.RealisticYearOfOpening; + dbKpi.RyooWd = task.RealisticYearOfOpening.IsNullOrEmpty() ? ProjectConstants.RYOODefaultValue : task.RealisticYearOfOpening; db.FsgPreOpeningMilestonesFundingArrangementAgreedBetweenLaAndSponsor = task.FundingArrangementAgreed; db.FsgPreOpeningMilestonesDetailsOfFundingArrangementAgreedBetweenLaAndSponsor = task.FundingArrangementDetailsAgreed; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/api/domain.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/api/domain.ts index e8e10e690..461c16bd3 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/api/domain.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/api/domain.ts @@ -28,6 +28,7 @@ export type CreateProjectRequest = { export type ProjectDetailsRequest = { projectId: string; + projectType: string; schoolName: string; applicationNumber?: string; applicationWave: string; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-central-project.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-central-project.cy.ts new file mode 100644 index 000000000..ae449bd70 --- /dev/null +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-central-project.cy.ts @@ -0,0 +1,282 @@ +import { Logger } from "cypress/common/logger"; +import { ProjectRecordCreator } from "cypress/constants/cypressConstants"; +import dataGenerator from "cypress/fixtures/dataGenerator"; +import createProjectPage from "cypress/pages/createProject/createProjectPage"; +import homePage from "cypress/pages/homePage"; +import summaryPage from "cypress/pages/task-summary-base"; + +describe("Testing the central route project creation journey", () => { + beforeEach(() => { + cy.login({ role: "POTATO" }); + cy.visit(Cypress.env('url')); + }); + + it("Should NOT allow a NON-projectrecordcreator user to access certain URLs", () => { + + Logger.log("Testing that NON-projectrecordcreator role is UNABLE to access Create individual project URLs") + //Define the URLs that should trigger a failure for the "POTATO"/NON-projectrecordcreator user + const unauthorizedUrls = [ + "/project/create/method", + "project/create/application-number", + "/project/create/application-wave", + "/project/create/school", + "/project/create/region", + "/project/create/localauthority", + "project/create/school-type", + "/project/create/checkyouranswers", + "/project/create/confirmation"]; + + //Verify that the "NON-Projectrecordcreator" user cannot access unauthorized URLs + cy.location().should((loc) => { + const currentUrl = loc.href; + if (unauthorizedUrls.some(url => currentUrl.includes(url))) { + //Fail the test if the user is on an unauthorized URL + throw new Error("Test failed because the 'NON-Projectrecordcreator' user is on an unauthorized URL"); + } + }); + }); + + it("Should NOT allow a NON-projectrecordcreator user to create a new project using the form", () => { + Logger.log("Testing that a NON-projectrecordcreator role DOES NOT have the green Create new projects CTA"); + cy.contains('Create new projects').should('not.exist'); + cy.executeAccessibilityTests(); + }); + + describe("Creating an individual project - Create new project button should display for projectrecordcreator role", () => { + beforeEach(() => { + cy.login({ role: ProjectRecordCreator }); + cy.visit('/'); + }); + + it("Should display Create a project card for projectRecordCreator role", () => { + Logger.log("Testing that a projectrecordcreator role DOES have the green Create new projects CTA"); + cy.contains('Create a project').should('be.visible'); + cy.executeAccessibilityTests(); + }); + }); + + describe("Creating an individual project - Create a Central route new project", () => { + beforeEach(() => { + cy.login({ role: ProjectRecordCreator }); + cy.visit('/'); + }); + + it("Should create a project", () => { + const applicationNumber = dataGenerator.generateTemporaryId(10); + const applicationWave = dataGenerator.generateTemporaryId(10); + const temporaryProjectId = dataGenerator.generateTemporaryId(25); + const schoolName = dataGenerator.generateSchoolName(); + const TestTrn = "TR00111"; + + cy.executeAccessibilityTests(); + + homePage.createNewProjects(); + + Logger.log("Check method required"); + cy.executeAccessibilityTests(); + + createProjectPage + .continue() + .errorMessage("Select what project you want to create"); + + cy.executeAccessibilityTests(); + + createProjectPage + .selectOption("Central") + .continue(); + + Logger.log("Check application number validation"); + createProjectPage + .titleIs("What is the application number?") + .continue() + .errorMessage("Enter the application number") + .enterApplicationNumber("TYTDHGC6746467467467") + .continue() + .errorMessage("The application number must be 10 characters or less") + //enter valid application number + .enterApplicationNumber(applicationNumber) + .continue() + + Logger.log("Check application wave validation"); + createProjectPage + .titleIs("What is the application wave?") + .continue() + .errorMessage("Enter the application wave") + //enter valid application wave + .enterApplicationWave(applicationWave) + .continue() + + cy.executeAccessibilityTests(); + + Logger.log("Enter Valid project ID"); + createProjectPage + .enterProjectId(temporaryProjectId) + .continue(); + + cy.executeAccessibilityTests(); + Logger.log("Enter school name"); + + createProjectPage + .enterSchoolName(schoolName) + .continue(); + + createProjectPage + .titleIs("What is the region of the school?") + .continue() + .errorMessage("Select the region") + + cy.executeAccessibilityTests(); + + Logger.log("Select East of England"); + createProjectPage + .selectOption("East of England") + .continue(); + + Logger.log("Check local authority required"); + createProjectPage + .titleIs("What is the local authority?") + .continue() + .errorMessage("Select the local authority"); + + cy.executeAccessibilityTests(); + + Logger.log("Select Local authority"); + createProjectPage + .selectOption("Luton") + .continue(); + + Logger.log("Enter valid trust"); + createProjectPage + .enterTRN(TestTrn) + .continue(); + + Logger.log("Confirm trust validation"); + createProjectPage + .titleIs("Confirm the trust") + .continue() + .errorMessage("Select yes if the trust is correct"); + + cy.executeAccessibilityTests(); + + Logger.log("Selecting No returns to previous page"); + createProjectPage + .selectOption("No") + .continue() + .titleIs("Search for a trust by TRN") + .enterTRN(TestTrn) + .continue(); + + createProjectPage + .titleIs("Confirm the trust") + .back() + .titleIs("Search for a trust by TRN") + .enterTRN(TestTrn) + .continue(); + + createProjectPage + .titleIs("Confirm the trust") + .hasCorrectTrustName("Aurora Academies Trust") + .hasCorrectTrustType("MAT (multi-academy trust)") + .selectOption("Yes") + .continue(); + + Logger.log("Selecting Mainstream school type"); + createProjectPage + .selectOption("Mainstream") + .continue(); + + Logger.log("Set class types"); + createProjectPage + .titleIs("Will it have any of these provisions?") + .setNurseryTo("Yes") + .setSixthFormTo("Yes") + .setResidentialOrBoarding("Yes") + .setAlternativeProvisionTo("Yes") + .setSpecialEducationNeedsTo("No") + .setResidentialOrBoarding("Yes") + .continue(); + + Logger.log("Selecting Secondary school phase"); + createProjectPage + .titleIs("What is the school phase?") + .selectOption("Secondary") + .continue(); + + //enter valid age-range values + createProjectPage + .enterAgeRangeFrom("2") + .enterAgeRangeTo("7") + .continue(); + + Logger.log("Enter valid capacity"); + createProjectPage + .enterNurseryCapacity("200") + .enterReceptionToYear6("0") + .enterYear7ToYear11("400") + .enterYear12ToYear14("150") + .continue(); + + Logger.log("Select Designation"); + createProjectPage + .selectOption("Designation") + .continue(); + + cy.executeAccessibilityTests(); + + Logger.log("Select Greek Orthodox"); + createProjectPage + .selectOption("Greek Orthodox") + .continue() + + Logger.log("Enter valid provisional opening date"); + createProjectPage + .setProvisionalOpeningDate("1", "10", "2035") + .continue(); + cy.executeAccessibilityTests(); + + Logger.log("Set email"); + createProjectPage + .enterProjectAssignedToName("joe bloggs") + .enterProjectAssignedToEmail("test.person@education.gov.uk") + .continue(); + + Logger.log("Check answers"); + summaryPage.inOrder() + .summaryShows("Project type").HasValue("Central").HasChangeLink() + .summaryShows("Application number").HasValue(applicationNumber).HasChangeLink() + .summaryShows("Application wave").HasValue(applicationWave).HasChangeLink() + .summaryShows("Temporary Project ID").HasValue(temporaryProjectId).HasChangeLink() + .summaryShows("Current free school name").HasValue(schoolName).HasChangeLink() + .summaryShows("Region").HasValue("East of England").HasChangeLink() + .summaryShows("Local authority").HasValue("Luton").HasChangeLink() + .summaryShows("Trust").HasValue("Aurora Academies Trust").HasChangeLink() + .summaryShows("School type").HasValue("Mainstream").HasChangeLink() + .summaryShows("Nursery").HasValue("Yes").HasChangeLink() + .summaryShows("Sixth form").HasValue("Yes").HasChangeLink() + .summaryShows("Residential or boarding").HasValue("Yes").HasChangeLink() + .summaryShows("Alternative provision").HasValue("Yes").HasChangeLink() + .summaryShows("Special educational needs").HasValue("No").HasChangeLink() + .summaryShows("School phase").HasValue("Secondary").HasChangeLink() + .summaryShows("Age range").HasValue("2-7").HasChangeLink() + .summaryShows("Nursery capacity").HasValue("200").HasChangeLink() + .summaryShows("Reception to year 6 capacity").HasValue("0").HasChangeLink() + .summaryShows("Year 7 to year 11 capacity").HasValue("400").HasChangeLink() + .summaryShows("Year 12 to year 14 capacity").HasValue("150").HasChangeLink() + .summaryShows("Faith status").HasValue("Designation").HasChangeLink() + .summaryShows("Faith type").HasValue("Greek Orthodox").HasChangeLink() + .summaryShows("Provisional opening date agreed with trust").HasValue("1 October 2035").HasChangeLink() + .summaryShows("Project assigned to").HasValue("joe bloggs").HasChangeLink() + .summaryShows("Email").HasValue("test.person@education.gov.uk").HasChangeLink(); + + cy.executeAccessibilityTests(); + + createProjectPage.clickCreateProject(); + + Logger.log("Confirm created"); + createProjectPage.hasConfirmedProjectId(temporaryProjectId) + .hasConfirmedEmailMessage("We have sent a notification email to test.person@education.gov.uk.") + + cy.executeAccessibilityTests(); + }); + }); +}); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-individual-project.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-presumption-project.cy.ts similarity index 96% rename from Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-individual-project.cy.ts rename to Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-presumption-project.cy.ts index a96198cde..cc3f8d941 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-individual-project.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/create-presumption-project.cy.ts @@ -5,7 +5,7 @@ import createProjectPage from "cypress/pages/createProject/createProjectPage"; import homePage from "cypress/pages/homePage"; import summaryPage from "cypress/pages/task-summary-base"; -describe("Testing the project creation journey", () => { +describe("Testing the presumption route project creation journey", () => { beforeEach(() => { cy.login({ role: "POTATO" }); cy.visit(Cypress.env('url')); @@ -46,14 +46,14 @@ describe("Testing the project creation journey", () => { cy.visit('/'); }); - it("Should display Create new projects button for projectRecordCreator role", () => { + it("Should display Create a project card for projectRecordCreator role", () => { Logger.log("Testing that a projectrecordcreator role DOES have the green Create new projects CTA"); - cy.contains('Create new projects').should('be.visible'); + cy.contains('Create a project').should('be.visible'); cy.executeAccessibilityTests(); }); }); - describe("Creating an individual project - Create a new project", () => { + describe("Creating an individual project - Create a Presumption route new project", () => { beforeEach(() => { cy.login({ role: ProjectRecordCreator }); cy.visit('/'); @@ -73,12 +73,12 @@ describe("Testing the project creation journey", () => { createProjectPage .continue() - .errorMessage("Select what you want to do"); + .errorMessage("Select what project you want to create"); cy.executeAccessibilityTests(); createProjectPage - .selectOption("Create one project") + .selectOption("Presumption") .continue(); Logger.log("Check project id validation"); @@ -389,6 +389,7 @@ describe("Testing the project creation journey", () => { Logger.log("Check answers"); summaryPage.inOrder() + .summaryShows("Project type").HasValue("Presumption").HasChangeLink() .summaryShows("Temporary Project ID").HasValue(temporaryProjectId).HasChangeLink() .summaryShows("Current free school name").HasValue(schoolName).HasChangeLink() .summaryShows("Region").HasValue("East of England").HasChangeLink() @@ -398,8 +399,8 @@ describe("Testing the project creation journey", () => { .summaryShows("Nursery").HasValue("Yes").HasChangeLink() .summaryShows("Sixth form").HasValue("Yes").HasChangeLink() .summaryShows("Residential or boarding").HasValue("Yes").HasChangeLink() - .summaryShows("Alternative provision (specialist resource provision)").HasValue("Yes").HasChangeLink() - .summaryShows("Special educational needs (specialist resource provision)").HasValue("No").HasChangeLink() + .summaryShows("Alternative provision").HasValue("Yes").HasChangeLink() + .summaryShows("Special educational needs").HasValue("No").HasChangeLink() .summaryShows("School phase").HasValue("Secondary").HasChangeLink() .summaryShows("Age range").HasValue("2-7").HasChangeLink() .summaryShows("Nursery capacity").HasValue("200").HasChangeLink() @@ -435,7 +436,7 @@ describe("Testing the project creation journey", () => { Logger.log("Use individual method"); createProjectPage - .selectOption("Create one project") + .selectOption("Presumption") .continue(); Logger.log("Enter Valid project ID"); @@ -520,6 +521,7 @@ describe("Testing the project creation journey", () => { Logger.log("Check answers"); summaryPage.inOrder() + .summaryShows("Project type").HasValue("Presumption").HasChangeLink() .summaryShows("Temporary Project ID").HasValue(temporaryProjectId).HasChangeLink() .summaryShows("Current free school name").HasValue(schoolName).HasChangeLink() .summaryShows("Region").HasValue("East of England").HasChangeLink() @@ -529,8 +531,8 @@ describe("Testing the project creation journey", () => { .summaryShows("Nursery").HasValue("No").HasChangeLink() .summaryShows("Sixth form").HasValue("Yes").HasChangeLink() .summaryShows("Residential or boarding").HasValue("No").HasChangeLink() - .summaryShows("Alternative provision (specialist resource provision)").HasValue("No").HasChangeLink() - .summaryShows("Special educational needs (specialist resource provision)").HasValue("Yes").HasChangeLink() + .summaryShows("Alternative provision").HasValue("No").HasChangeLink() + .summaryShows("Special educational needs").HasValue("Yes").HasChangeLink() .summaryShows("School phase").HasValue("Secondary").HasChangeLink() .summaryShows("Age range").HasValue("2-7").HasChangeLink() .summaryShows("Reception to year 6 capacity").HasValue("0").HasChangeLink() @@ -627,14 +629,14 @@ describe("Testing the project creation journey", () => { createProjectPage.setAlternativeProvisionTo("Yes") .continue(); summaryPage - .SummaryHasValue("Alternative provision (specialist resource provision)", "Yes") + .SummaryHasValue("Alternative provision", "Yes") Logger.log("Change Special educational needs") summaryPage.clickChangeFor("Special educational needs"); createProjectPage.setSpecialEducationNeedsTo("No") .continue(); summaryPage - .SummaryHasValue("Special educational needs (specialist resource provision)", "No") + .SummaryHasValue("Special educational needs", "No") Logger.log("Change School phase") summaryPage.clickChangeFor("School phase"); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/homepage.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/homepage.cy.ts index 2c36b74d0..f57877606 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/homepage.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/homepage.cy.ts @@ -32,7 +32,7 @@ describe("Testing the home page", () => { }); }); - it("Should be able to filter projects by project ID", () => { + it.only("Should be able to filter projects by project ID", () => { homePage.openFilter().withProjectFilter(projectTitlePrefix).applyFilters(); projectTable @@ -40,7 +40,7 @@ describe("Testing the home page", () => { .then((row) => { row.hasProjectId(firstProject.projectId); row.hasProjectTitle(firstProject.schoolName); - row.hasProjectType(firstProject.projectType); + row.hasProjectType('Presumption' || 'Central Route'); row.hasStatus("Pre-opening"); }); @@ -49,7 +49,6 @@ describe("Testing the home page", () => { .then((row) => { row.hasProjectId(secondProject.projectId); row.hasProjectTitle(secondProject.schoolName); - row.hasProjectType(firstProject.projectType); row.hasStatus("Pre-opening"); row.hasViewLink('View'); }); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/project-overview.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/project-overview.cy.ts index 92a8667fe..3919af1e3 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/project-overview.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/project-overview.cy.ts @@ -42,7 +42,7 @@ describe("Testing project overview", () => { homePage.createNewProjects(); createProjectPage - .selectOption("Create one project") + .selectOption("Presumption") .continue(); createProjectPage diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-health-check.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-health-check.cy.ts index fb27bbc27..dd5ef8456 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-health-check.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-health-check.cy.ts @@ -38,6 +38,7 @@ describe("Testing Funding agreement health check Task", () => { .summaryShows("Drafted a funding agreement (FA) health check").IsEmpty().HasChangeLink() .summaryShows("Regional Director has signed-off the FA health check (if applicable)").IsEmpty().HasChangeLink() .summaryShows("Minister has signed-off the FA health check (if applicable)").IsEmpty().HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the health check").IsEmpty().HasChangeLink() .summaryShows("Saved the health check in Workplaces folder").IsEmpty().HasChangeLink() .isNotMarkedAsComplete(); @@ -67,6 +68,7 @@ describe("Testing Funding agreement health check Task", () => { fundingAgreementHealthCheckEditPage .checkDraftedFAHealthCheck() .checkMinisterSignedOffFAHealthCheck() + .checkIncludedSignedOffImpactAssessment() .clickContinue() summaryPage @@ -76,6 +78,7 @@ describe("Testing Funding agreement health check Task", () => { .summaryShows("Drafted a funding agreement (FA) health check").HasValue("Yes").HasChangeLink() .summaryShows("Regional Director has signed-off the FA health check (if applicable)").IsEmpty().HasChangeLink() .summaryShows("Minister has signed-off the FA health check (if applicable)").HasValue("Yes").HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the health check").HasValue("Yes").HasChangeLink() .summaryShows("Saved the health check in Workplaces folder").IsEmpty().HasChangeLink() .isNotMarkedAsComplete(); @@ -96,6 +99,7 @@ describe("Testing Funding agreement health check Task", () => { .summaryShows("Drafted a funding agreement (FA) health check").HasValue("Yes").HasChangeLink() .summaryShows("Regional Director has signed-off the FA health check (if applicable)").HasValue("Yes").HasChangeLink() .summaryShows("Minister has signed-off the FA health check (if applicable)").IsEmpty().HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the health check").HasValue("Yes").HasChangeLink() .summaryShows("Saved the health check in Workplaces folder").HasValue("Yes").HasChangeLink() .isNotMarkedAsComplete() .MarkAsComplete() diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-submission.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-submission.cy.ts index 743ed0274..ef8e70e07 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-submission.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement-submission.cy.ts @@ -38,6 +38,7 @@ describe("Testing Funding agreement submission Task", () => { .summaryShows("Drafted a funding agreement (FA) submission").IsEmpty().HasChangeLink() .summaryShows("Regional Director has signed-off the FA submission (if applicable)").IsEmpty().HasChangeLink() .summaryShows("Minister has signed-off the FA submission (if applicable)").IsEmpty().HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the submission").IsEmpty().HasChangeLink() .summaryShows("Saved the submission in Workplaces folder").IsEmpty().HasChangeLink() .isNotMarkedAsComplete(); @@ -67,6 +68,7 @@ describe("Testing Funding agreement submission Task", () => { fundingAgreementSubmissionEditPage .checkDraftedFASubmission() .checkMinisterSignedOffFASubmission() + .checkIncludedSignedOffImpactAssessment() .clickContinue() summaryPage @@ -76,6 +78,7 @@ describe("Testing Funding agreement submission Task", () => { .summaryShows("Drafted a funding agreement (FA) submission").HasValue("Yes").HasChangeLink() .summaryShows("Regional Director has signed-off the FA submission (if applicable)").IsEmpty().HasChangeLink() .summaryShows("Minister has signed-off the FA submission (if applicable)").HasValue("Yes").HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the submission").HasValue("Yes").HasChangeLink() .summaryShows("Saved the submission in Workplaces folder").IsEmpty().HasChangeLink() .isNotMarkedAsComplete(); @@ -96,6 +99,7 @@ describe("Testing Funding agreement submission Task", () => { .summaryShows("Drafted a funding agreement (FA) submission").HasValue("Yes").HasChangeLink() .summaryShows("Regional Director has signed-off the FA submission (if applicable)").HasValue("Yes").HasChangeLink() .summaryShows("Minister has signed-off the FA submission (if applicable)").IsEmpty().HasChangeLink() + .summaryShows("Included a signed-off impact assessment in the submission").HasValue("Yes").HasChangeLink() .summaryShows("Saved the submission in Workplaces folder").HasValue("Yes").HasChangeLink() .isNotMarkedAsComplete() .MarkAsComplete() diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/createProject/createProjectPage.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/createProject/createProjectPage.ts index e9d88e0c0..0fce51626 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/createProject/createProjectPage.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/createProject/createProjectPage.ts @@ -28,6 +28,16 @@ class CreateProjectPage { return this; } + public enterApplicationNumber(value: string) { + cy.getByTestId("application-number").clear().type(value); + return this; + } + + public enterApplicationWave(value: string) { + cy.getByTestId("application-wave").clear().type(value); + return this; + } + public hasProjectId(value: string) { cy.getByTestId("projectid").should("have.value", value); return this; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/homePage.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/homePage.ts index 902d305dc..2c4194aeb 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/homePage.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/homePage.ts @@ -1,13 +1,13 @@ class HomePage { - public createNewProjects(): this { - cy.contains("Create new projects").click(); + public createNewProjects(): this { + cy.contains("Create a project").click(); // cy.login({role: ProjectRecordCreator}) return this; } public createProject(): this { - cy.getByTestId("create-project-button").click(); + cy.getByTestId("create-project").click(); return this; } diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-health-check.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-health-check.cy.ts index 42d6f0c84..33cda26b9 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-health-check.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-health-check.cy.ts @@ -30,6 +30,16 @@ class FundingAgreementHealthCheckPage { return this } + checkIncludedSignedOffImpactAssessment(): this { + cy.getById("included-signed-off-impact-assessment").check() + return this + } + + uncheckIncludedSignedOffImpactAssessment(): this { + cy.getById("included-signed-off-impact-assessment").uncheck() + return this + } + checkSavedFAHealthCheckInWorkplacesFolder(): this { cy.getById("saved-fa-health-check-in-workplaces-folder").check() return this diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-submission.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-submission.cy.ts index 67763c2b2..1c179c244 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-submission.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/pages/tasks/pre-opening/edit-funding-agreement-submission.cy.ts @@ -30,6 +30,16 @@ class FundingAgreementSubmissionPage { return this } + checkIncludedSignedOffImpactAssessment(): this { + cy.getById("included-signed-off-impact-assessment").check() + return this + } + + uncheckIncludedSignedOffImpactAssessment(): this { + cy.getById("included-signed-off-impact-assessment").uncheck() + return this + } + checkSavedFASubmissionInWorkplacesFolder(): this { cy.getById("saved-fa-submission-in-workplaces-folder").check() return this diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Entities/Milestones.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Entities/Milestones.cs index a5cd13d04..c7b9ee1c7 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Entities/Milestones.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Entities/Milestones.cs @@ -187,5 +187,9 @@ public partial class Milestones public string PFACMWhyAMeetingWasNotHeld { get; set; } public string FsgPreOpeningInspectionConditionsMetNotApplicable { get; set; } + + public bool? FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck { get; set; } + + public bool? FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission { get; set; } } } \ No newline at end of file diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.Designer.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.Designer.cs new file mode 100644 index 000000000..20bf2ebb1 --- /dev/null +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.Designer.cs @@ -0,0 +1,12852 @@ +// +using System; +using Dfe.ManageFreeSchoolProjects.Data; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace Dfe.ManageFreeSchoolProjects.Data.Migrations +{ + [DbContext(typeof(MfspContext))] + [Migration("20241003144517_FundingAgreementIncludedImpactAssesment")] + partial class FundingAgreementIncludedImpactAssesment + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "8.0.6") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.BasicNeed", b => + { + b.Property("FreeSchoolName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Free school name"); + + b.Property("Phase") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.Property("PostcodeUsedHere") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Postcode used here"); + + b.Property("PrimaryPlanningAreaCode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Primary planning area code"); + + b.Property("PrimaryPlanningAreaName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Primary planning area name"); + + b.Property("ProjectId") + .HasMaxLength(25) + .IsUnicode(false) + .HasColumnType("varchar(25)") + .HasColumnName("Project ID"); + + b.Property("SecondaryPlanningAreaCode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Secondary planning area code"); + + b.Property("SecondaryPlanningAreaName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Secondary planning area name"); + + b.Property("_201920PrimaryPhaseLocalAreaSSNoPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Primary Phase Local Area S/S No. places"); + + b.Property("_201920PrimaryPhaseLocalAreaSSPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Primary Phase Local Area S/S % places"); + + b.Property("_201920PrimaryPhasePlanningAreaSSNoPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Primary Phase Planning Area S/S No. places"); + + b.Property("_201920PrimaryPhasePlanningAreaSSPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Primary Phase Planning Area S/S % places"); + + b.Property("_201920SecondaryPhaseLocalAreaSSNoPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Secondary Phase Local Area S/S No. places"); + + b.Property("_201920SecondaryPhaseLocalAreaSSPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Secondary Phase Local Area S/S % places"); + + b.Property("_201920SecondaryPhasePlanningAreaSSNoPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Secondary Phase Planning Area S/S No. places"); + + b.Property("_201920SecondaryPhasePlanningAreaSSPlaces") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("2019/20 Secondary Phase Planning Area S/S % places"); + + b.ToTable("Basic_Need", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Br", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("BudgetRecordsAcquisitionCostVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Acquisition cost VAT"); + + b.Property("BudgetRecordsAcquisitionManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.Acquisition manual override"); + + b.Property("BudgetRecordsAqusitionRevenue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Aqusition Revenue"); + + b.Property("BudgetRecordsBroadband") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Broadband"); + + b.Property("BudgetRecordsBudgetApprovalProcess") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Budget approval process"); + + b.Property("BudgetRecordsBudgetId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Budget ID"); + + b.Property("BudgetRecordsBudgetStage") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Budget stage"); + + b.Property("BudgetRecordsBudgetStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Budget status"); + + b.Property("BudgetRecordsCcfPropertyBudgetUplift") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.CCF property budget uplift"); + + b.Property("BudgetRecordsConstructionAmountIncludingSurveys") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Construction amount , including surveys"); + + b.Property("BudgetRecordsConstructionAmountIncludingSurveysVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Construction amount , including surveys VAT"); + + b.Property("BudgetRecordsConstructionManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.Construction manual override"); + + b.Property("BudgetRecordsConstructionRevenue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Construction revenue"); + + b.Property("BudgetRecordsCostOfReInstatementOfTemporaryAccommodation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Cost of re-instatement of temporary accommodation"); + + b.Property("BudgetRecordsCostPerPupil") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Cost Per Pupil"); + + b.Property("BudgetRecordsEfaCapitalRegionalDdApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.EFA Capital Regional DD (approval status)"); + + b.Property("BudgetRecordsEfaCapitalRegionalDdApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.EFA Capital Regional DD (approver name)"); + + b.Property("BudgetRecordsEfaCapitalRegionalDdDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.EFA Capital Regional DD (decision date)"); + + b.Property("BudgetRecordsFfEManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.FF&E manual override"); + + b.Property("BudgetRecordsFinalCarCcfFormLink") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Budget Records.Final CAR / CCF Form link"); + + b.Property("BudgetRecordsFinalPropertyModelLink") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Budget Records.Final property model link"); + + b.Property("BudgetRecordsFinalTechnicalFundingAllocationModelLink") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Budget Records.Final technical funding allocation model link"); + + b.Property("BudgetRecordsFixturesFurnitureAndEquipment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Fixtures, Furniture, and Equipment"); + + b.Property("BudgetRecordsFixturesFurnitureAndEquipmentVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Fixtures, Furniture, and Equipment VAT"); + + b.Property("BudgetRecordsFpmuApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FPMU (approval status)"); + + b.Property("BudgetRecordsFpmuApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FPMU (approver name)"); + + b.Property("BudgetRecordsFpmuDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.FPMU (decision date)"); + + b.Property("BudgetRecordsFscDivisionalDirectorApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FSC Divisional Director (approval status)"); + + b.Property("BudgetRecordsFscDivisionalDirectorApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FSC Divisional Director (approver name)"); + + b.Property("BudgetRecordsFscDivisionalDirectorDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.FSC Divisional Director (decision date)"); + + b.Property("BudgetRecordsFscHeadOfFinanceApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FSC Head of Finance (approval status)"); + + b.Property("BudgetRecordsFscHeadOfFinanceApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.FSC Head of Finance (approver name)"); + + b.Property("BudgetRecordsFscHeadOfFinanceDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.FSC Head of Finance (decision date)"); + + b.Property("BudgetRecordsIctActives") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.ICT actives"); + + b.Property("BudgetRecordsIctBudgetManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.ICT budget manual override"); + + b.Property("BudgetRecordsIctDecantCost") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.ICT decant cost"); + + b.Property("BudgetRecordsIctEquipmentHardware") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.ICT equipment/hardware"); + + b.Property("BudgetRecordsIctPassives") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.ICT passives"); + + b.Property("BudgetRecordsIndependentFinanceReviewerApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Finance Reviewer (approval status)"); + + b.Property("BudgetRecordsIndependentFinanceReviewerApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Finance Reviewer (approver name)"); + + b.Property("BudgetRecordsIndependentFinanceReviewerDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Independent Finance Reviewer (decision date)"); + + b.Property("BudgetRecordsIndependentPropertyReviewerApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Property Reviewer (approval status)"); + + b.Property("BudgetRecordsIndependentPropertyReviewerApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Property Reviewer (approver name)"); + + b.Property("BudgetRecordsIndependentPropertyReviewerDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Independent Property Reviewer (decision date)"); + + b.Property("BudgetRecordsIndependentTechnicalCostQsApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Technical & Cost QS (approval status)"); + + b.Property("BudgetRecordsIndependentTechnicalCostQsApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Independent Technical & Cost QS (approver name)"); + + b.Property("BudgetRecordsIndependentTechnicalCostQsDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Independent Technical & Cost QS (decision date)"); + + b.Property("BudgetRecordsInflationBaseDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Inflation base date"); + + b.Property("BudgetRecordsLegalFeesConstructionAdviceIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Legal fees - construction advice (Inc VAT)"); + + b.Property("BudgetRecordsLiveBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Live budget"); + + b.Property("BudgetRecordsLocatedInvestmentCommitteeApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Located Investment Committee (approval status)"); + + b.Property("BudgetRecordsLocatedInvestmentCommitteeApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Located Investment Committee (approver name)"); + + b.Property("BudgetRecordsLocatedInvestmentCommitteeDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Located Investment Committee (decision date)"); + + b.Property("BudgetRecordsMinisterApprovalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Minister (approval status)"); + + b.Property("BudgetRecordsMinisterApproverName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Minister (approver name)"); + + b.Property("BudgetRecordsMinisterDecisionDate") + .HasColumnType("date") + .HasColumnName("Budget Records.Minister (decision date)"); + + b.Property("BudgetRecordsNumberOfPupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Number of pupils"); + + b.Property("BudgetRecordsProjectCode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Project code"); + + b.Property("BudgetRecordsProjectName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Project name"); + + b.Property("BudgetRecordsPropertyManagementCosts") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Property management costs"); + + b.Property("BudgetRecordsRevenueManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.Revenue manual override"); + + b.Property("BudgetRecordsTechnicalFeesIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Technical fees (inc VAT)"); + + b.Property("BudgetRecordsTechnicalFeesSurveysIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Technical fees - surveys (inc VAT)"); + + b.Property("BudgetRecordsTemporaryConstructionIncludingSurveys") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary construction, including surveys"); + + b.Property("BudgetRecordsTemporaryConstructionIncludingSurveysVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary construction, including surveys - VAT"); + + b.Property("BudgetRecordsTemporarySiteIctPassives") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary site ICT passives"); + + b.Property("BudgetRecordsTemporarySiteManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.Temporary site manual override"); + + b.Property("BudgetRecordsTemporarySitesLegalFeesConstructionAdviceIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary sites - legal fees construction advice (inc VAT)"); + + b.Property("BudgetRecordsTemporarySitesTechnicalFeesIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary sites - technical fees (inc VAT)"); + + b.Property("BudgetRecordsTemporarySitesTechnicalFeesSurveysIncVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Temporary sites - technical fees surveys (inc VAT)"); + + b.Property("BudgetRecordsThirdPartyContributions") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Third party contributions"); + + b.Property("BudgetRecordsTotalAcquisitionCostExcVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total acquisition cost ( exc VAT )"); + + b.Property("BudgetRecordsTotalAcquisitionLegalFees") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total acquisition legal fees"); + + b.Property("BudgetRecordsTotalCapitalBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total capital budget"); + + b.Property("BudgetRecordsTotalConstructionBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total construction budget"); + + b.Property("BudgetRecordsTotalFfEBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total FF&E budget"); + + b.Property("BudgetRecordsTotalIctBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total ICT budget"); + + b.Property("BudgetRecordsTotalManualOverride") + .HasColumnType("bit") + .HasColumnName("Budget Records.Total manual override"); + + b.Property("BudgetRecordsTotalPropertyBudgetInclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total property budget ( incl VAT)"); + + b.Property("BudgetRecordsTotalPropertyFees") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total property fees"); + + b.Property("BudgetRecordsTotalRevenue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total revenue"); + + b.Property("BudgetRecordsTotalTemporarySitesBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.Total temporary sites budget"); + + b.Property("BudgetRecordsVatOnFees") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.VAT on fees"); + + b.Property("BudgetRecordsWipNotes") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget Records.WIP notes"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.HasKey("Rid"); + + b.ToTable("BR", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("BRHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Bs", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("BudgetSummaryAcquisitionBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Acquisition budget"); + + b.Property("BudgetSummaryBudgetApprovalDate") + .HasColumnType("date") + .HasColumnName("Budget summary.Budget approval date"); + + b.Property("BudgetSummaryBudgetApprovalProcess") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Budget approval process"); + + b.Property("BudgetSummaryBudgetStageSummary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Budget stage summary"); + + b.Property("BudgetSummaryCapitalCostTier") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Capital cost tier"); + + b.Property("BudgetSummaryConstructionBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Construction budget"); + + b.Property("BudgetSummaryCostPlan1Approved") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Cost Plan 1 approved"); + + b.Property("BudgetSummaryCostPlan2Approved") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Cost Plan 2 approved"); + + b.Property("BudgetSummaryCostsAtPracticalCompletionApproved") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Costs at practical completion approved"); + + b.Property("BudgetSummaryFfEBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.FF&E budget"); + + b.Property("BudgetSummaryFinalAccountsAgreed") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Final accounts agreed"); + + b.Property("BudgetSummaryIctBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.ICT budget"); + + b.Property("BudgetSummaryIsTheLaMakingAFinancialContributionTowardsThisProject") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Is the LA making a financial contribution towards this project?"); + + b.Property("BudgetSummaryLaContributionType") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Budget summary.LA Contribution type"); + + b.Property("BudgetSummaryOtherContributionType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Other contribution type"); + + b.Property("BudgetSummaryPreCarFundingApproved") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Pre CAR funding approved"); + + b.Property("BudgetSummaryPreCarFundingRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Pre CAR funding required"); + + b.Property("BudgetSummaryStoreBudgetRecordName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Store budget record name"); + + b.Property("BudgetSummaryTemporarySiteBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Temporary Site budget"); + + b.Property("BudgetSummaryTotalCapitalBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Total capital budget"); + + b.Property("BudgetSummaryTotalRevenue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Budget summary.Total Revenue"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("BS", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("BSHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.ConstructData", b => + { + b.Property("CapitalProjectRag") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Capital Project RAG"); + + b.Property("CapitalProjectRagRatingCommentary") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Capital Project RAG Rating Commentary"); + + b.Property("DateOfHoTSecuredOnTemporaryAccommodationSiteIfRequired") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Date of HoT secured on temporary accommodation site, if required"); + + b.Property("HoTAgreedForSiteForMainSchoolBuildingActual") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("HoT Agreed for site for Main School Building (Actual)"); + + b.Property("IsThisTheMainPlanningRecord") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Is this the main planning record?"); + + b.Property("LastRefreshDate") + .HasColumnType("date"); + + b.Property("MainSchoolBuildingFirstReadyForOccupationActual") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Main School Building first ready for occupation (Actual)"); + + b.Property("MainSchoolBuildingFirstReadyForOccupationForecast") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Main School Building first ready for occupation (Forecast)"); + + b.Property("PlanningDecision") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Planning decision"); + + b.Property("PlanningRisk") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Planning risk"); + + b.Property("PlanningSiteId") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Planning Site ID"); + + b.Property("PostcodeOfSite") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Postcode of site"); + + b.Property("PracticalCompletionCertificateIssuedDateA") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Practical Completion Certificate issued date (A)"); + + b.Property("ProjectDirector") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Project Director"); + + b.Property("ProjectId") + .IsRequired() + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Project ID"); + + b.Property("ProjectManager") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Project Manager"); + + b.Property("RegionalHead") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Regional Head"); + + b.Property("SiteId") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Site ID"); + + b.Property("SiteIdentifiedForMainSchoolBuildingActual") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Site identified for main school building (Actual)"); + + b.Property("SiteStatus") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Site status"); + + b.Property("TemporaryAccommodationFirstReadyForOccupationActual") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Temporary accommodation first ready for occupation (Actual)"); + + b.Property("TemporaryAccommodationFirstReadyForOccupationForecast") + .IsUnicode(false) + .HasColumnType("date") + .HasColumnName("Temporary accommodation first ready for occupation (Forecast)"); + + b.Property("TemporaryRagRating") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Temporary RAG rating"); + + b.Property("TemporaryRagRatingCommentary") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Temporary RAG Rating Commentary"); + + b.Property("TypeOfSite") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Type of Site"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("constructData", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Construction", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("IctDetailsBroadbandOrdered") + .HasColumnType("date") + .HasColumnName("ICT Details.Broadband ordered"); + + b.Property("IctDetailsIctProcurementRouteAgreedWithTrust") + .HasColumnType("date") + .HasColumnName("ICT Details.ICT procurement route agreed with Trust"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("SiteDetailsAreaOfExistingBuildingsM2PermanentArea") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Site Details.Area of existing buildings m2 : Permanent Area"); + + b.Property("SiteDetailsAreaOfExistingBuildingsM2TemporaryArea") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Site Details.Area of existing buildings m2 : Temporary Area"); + + b.Property("SiteDetailsAreaOfHardStandingM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of hard standing m2"); + + b.Property("SiteDetailsAreaOfMajorRefurbishmentM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of major refurbishment m2"); + + b.Property("SiteDetailsAreaOfMinorRefurbishmentM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of minor refurbishment m2"); + + b.Property("SiteDetailsAreaOfMugaPlayingFieldsM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of MUGA / playing fields m2"); + + b.Property("SiteDetailsAreaOfNewBuildM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of new build m2"); + + b.Property("SiteDetailsAreaOfRefreshM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of refresh m2"); + + b.Property("SiteDetailsAreaOfRefurbishmentM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of refurbishment m2"); + + b.Property("SiteDetailsAreaOfTemporaryAccommodationRequiredM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Area of temporary accommodation required m2"); + + b.Property("SiteDetailsLocation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site Details.Location"); + + b.Property("SiteDetailsMaximumGrossAreaRequiredM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Maximum gross area required m2"); + + b.Property("SiteDetailsMinimumGrossAreaRequiredM2") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site Details.Minimum gross area required m2"); + + b.Property("SiteDetailsSprinklerInstallationType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site Details.Sprinkler Installation Type"); + + b.Property("SiteDetailsSprinklerType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site Details.Sprinkler Type"); + + b.Property("SiteDetailsSprinklers") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site Details.Sprinklers"); + + b.Property("SiteDetailsTypeOfWorks") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site Details.Type of works"); + + b.HasKey("Rid"); + + b.ToTable("Construction", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("ConstructionHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Contracts", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("Contract1stSectionalCompletionActual") + .HasColumnType("date") + .HasColumnName("Contract.1st sectional completion (actual)"); + + b.Property("Contract1stSectionalCompletionForecast") + .HasColumnType("date") + .HasColumnName("Contract.1st sectional completion (forecast)"); + + b.Property("Contract2ndSectionalCompletionActual") + .HasColumnType("date") + .HasColumnName("Contract.2nd sectional completion (actual)"); + + b.Property("Contract2ndSectionalCompletionForecast") + .HasColumnType("date") + .HasColumnName("Contract.2nd sectional completion (forecast)"); + + b.Property("Contract3rdSectionalCompletionActual") + .HasColumnType("date") + .HasColumnName("Contract.3rd sectional completion (actual)"); + + b.Property("Contract3rdSectionalCompletionForecast") + .HasColumnType("date") + .HasColumnName("Contract.3rd sectional completion (forecast)"); + + b.Property("ContractAddressOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Address of site"); + + b.Property("ContractAllWorksCompleteInclStatutoryCertificationIssuedActual") + .HasColumnType("date") + .HasColumnName("Contract.All works complete (incl statutory certification issued) (actual)"); + + b.Property("ContractAllWorksCompleteInclStatutoryCertificationIssuedForecast") + .HasColumnType("date") + .HasColumnName("Contract.All works complete (incl statutory certification issued) (forecast)"); + + b.Property("ContractAwardOption") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Award Option"); + + b.Property("ContractBiddersDay") + .HasColumnType("date") + .HasColumnName("Contract.Bidders Day"); + + b.Property("ContractConstructionSiteOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Construction Site Open"); + + b.Property("ContractContractAwardValueExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract Award value (excl VAT)"); + + b.Property("ContractContractBudgetValueExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract budget value (excl VAT)"); + + b.Property("ContractContractCategory") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract Category"); + + b.Property("ContractContractId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract ID"); + + b.Property("ContractContractNotes") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Contract.Contract notes"); + + b.Property("ContractContractProcurementStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract Procurement Status"); + + b.Property("ContractContractReference") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract reference"); + + b.Property("ContractContractType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contract Type"); + + b.Property("ContractContractingParty") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contracting party"); + + b.Property("ContractContractor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contractor"); + + b.Property("ContractContractorAppointedSpmPcsaEwaOtherActual") + .HasColumnType("date") + .HasColumnName("Contract.Contractor appointed (SPM / PCSA / EWA / Other) (actual)"); + + b.Property("ContractContractorAppointedSpmPcsaEwaOtherForecast") + .HasColumnType("date") + .HasColumnName("Contract.Contractor appointed (SPM / PCSA / EWA / Other) (forecast)"); + + b.Property("ContractContractorSProposalsApprovedActual") + .HasColumnType("date") + .HasColumnName("Contract.Contractor’s proposals approved (actual)"); + + b.Property("ContractContractorSProposalsApprovedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Contractor’s proposals approved (forecast)"); + + b.Property("ContractContractorSProposalsSubmittedActual") + .HasColumnType("date") + .HasColumnName("Contract.Contractor’s proposals submitted (actual)"); + + b.Property("ContractContractorSProposalsSubmittedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Contractor’s proposals submitted (forecast)"); + + b.Property("ContractContractorWorkingToBepEirsThroughoutDesignConstructionHandover") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Contractor working to BEP & EIRs throughout design, construction & handover?"); + + b.Property("ContractDateDevelopmentAgreementSigned") + .HasColumnType("date") + .HasColumnName("Contract.Date Development agreement signed"); + + b.Property("ContractDateOfClosedContractStatus") + .HasColumnType("date") + .HasColumnName("Contract.Date of Closed contract status"); + + b.Property("ContractDateOfSdbcApproval") + .HasColumnType("date") + .HasColumnName("Contract.Date of SDBC approval"); + + b.Property("ContractDateOfSdbcSubmission") + .HasColumnType("date") + .HasColumnName("Contract.Date of SDBC submission"); + + b.Property("ContractDeliveryParty") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Delivery party"); + + b.Property("ContractDeliveryPartyIfOther") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Delivery party - if other"); + + b.Property("ContractEarlyWorksCostsExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Early works costs (excl VAT)"); + + b.Property("ContractEndOfDefectsLiabilityCertificatesLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.End of defects liability certificates link"); + + b.Property("ContractEnterIntoMainContractActual") + .HasColumnType("date") + .HasColumnName("Contract.Enter into main contract (actual)"); + + b.Property("ContractEnterIntoMainContractForecast") + .HasColumnType("date") + .HasColumnName("Contract.Enter into main contract (forecast)"); + + b.Property("ContractExternalTechnicalAdviserAppointedActual") + .HasColumnType("date") + .HasColumnName("Contract.External Technical Adviser appointed (actual)"); + + b.Property("ContractFeasibilityReportApprovedByEsfaActual") + .HasColumnType("date") + .HasColumnName("Contract.Feasibility report approved by ESFA (actual)"); + + b.Property("ContractFeasibilityReportLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Feasibility report link"); + + b.Property("ContractFeasibilityReportSubmittedToEsfaActual") + .HasColumnType("date") + .HasColumnName("Contract.Feasibility report submitted to ESFA (actual)"); + + b.Property("ContractFeasibiltyReportStarted") + .HasColumnType("date") + .HasColumnName("Contract.Feasibilty report started"); + + b.Property("ContractFinalAccountsAgreedActual") + .HasColumnType("date") + .HasColumnName("Contract.Final accounts agreed (actual)"); + + b.Property("ContractFinalAccountsAgreedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Final accounts agreed (forecast)"); + + b.Property("ContractFinalContractValueExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Final contract value (excl VAT)"); + + b.Property("ContractGifaForActualContractM2") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.GIFA for actual contract (m2)"); + + b.Property("ContractHasTheBepBeenReceivedFromTheContractor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Has the BEP been received from the contractor?"); + + b.Property("ContractHaveTheAirsBeenIssued") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Have the AIRs been issued?"); + + b.Property("ContractHaveTheEirsBeenIssued") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Have the EIRs been issued?"); + + b.Property("ContractHseF10NotificationOfConstructionProjectFormSubmittedActual") + .HasColumnType("date") + .HasColumnName("Contract.HSE F10 notification of construction project form submitted (actual)"); + + b.Property("ContractId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ContractID"); + + b.Property("ContractIsBimRequiredForTheProject") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Is BIM required for the project?"); + + b.Property("ContractIsThisThePrincipalConstructionContractForThePermanentSchoolBuilding") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Is this the principal construction contract for the permanent school building?"); + + b.Property("ContractLatestContractValueExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Latest contract value (excl VAT)"); + + b.Property("ContractLinkToApprovedBc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Link to Approved BC"); + + b.Property("ContractLinkToDevelopmentAgreement") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Link to Development agreement"); + + b.Property("ContractMakingGoodDefectsReinstatementWorksCompleteActual") + .HasColumnType("date") + .HasColumnName("Contract.Making good defects / reinstatement works complete (actual)"); + + b.Property("ContractMakingGoodDefectsReinstatementWorksCompleteForecast") + .HasColumnType("date") + .HasColumnName("Contract.Making good defects / reinstatement works complete (forecast)"); + + b.Property("ContractModular") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Modular"); + + b.Property("ContractNameOfDeliveryParty") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Name of Delivery Party"); + + b.Property("ContractNameOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Name of site"); + + b.Property("ContractPlannedProgrammeSetWithTa") + .HasColumnType("date") + .HasColumnName("Contract.Planned programme set with TA"); + + b.Property("ContractPlanningApplicationId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Planning application ID"); + + b.Property("ContractPlanningApplicationSubmittedActual") + .HasColumnType("date") + .HasColumnName("Contract.Planning application submitted (actual)"); + + b.Property("ContractPlanningApplicationSubmittedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Planning application submitted (forecast)"); + + b.Property("ContractPlanningDecisionGrantedActual") + .HasColumnType("date") + .HasColumnName("Contract.Planning decision granted (actual)"); + + b.Property("ContractPlanningDecisionGrantedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Planning decision granted (forecast)"); + + b.Property("ContractPostcodeOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Postcode of site"); + + b.Property("ContractPracticalCompletionCertificateIssuedActual") + .HasColumnType("date") + .HasColumnName("Contract.Practical completion certificate issued (actual)"); + + b.Property("ContractPracticalCompletionCertificateIssuedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Practical completion certificate issued (forecast)"); + + b.Property("ContractPracticalCompletionCertificateLink") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("Contract.Practical completion certificate link"); + + b.Property("ContractPrincipalDesigner") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Principal designer"); + + b.Property("ContractProcurementOption") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Procurement Option"); + + b.Property("ContractProcurementRoute") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Procurement route"); + + b.Property("ContractProcurementStartTenderIssuedActual") + .HasColumnType("date") + .HasColumnName("Contract.Procurement start / Tender Issued (actual)"); + + b.Property("ContractProcurementStartTenderIssuedForecast") + .HasColumnType("date") + .HasColumnName("Contract.Procurement start / Tender Issued (forecast)"); + + b.Property("ContractProportionOfNewBuild") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Proportion of New Build"); + + b.Property("ContractRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.RAG rating"); + + b.Property("ContractReasonForClosedContractStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Reason for Closed contract status"); + + b.Property("ContractSectionalCompletionCertificatesLink") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("Contract.Sectional completion certificates link"); + + b.Property("ContractSiteId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Site ID"); + + b.Property("ContractSiteVisit") + .HasColumnType("date") + .HasColumnName("Contract.Site Visit"); + + b.Property("ContractStartOnSiteActual") + .HasColumnType("date") + .HasColumnName("Contract.Start on site (actual)"); + + b.Property("ContractStartOnSiteForecast") + .HasColumnType("date") + .HasColumnName("Contract.Start on site (forecast)"); + + b.Property("ContractTenderReportApprovedByEfaActual") + .HasColumnType("date") + .HasColumnName("Contract.Tender report approved by EFA (actual)"); + + b.Property("ContractTenderReportApprovedByEfaForecast") + .HasColumnType("date") + .HasColumnName("Contract.Tender report approved by EFA (forecast)"); + + b.Property("ContractTenderReportLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Tender report link"); + + b.Property("ContractTenderReportSubmittedToEfaActual") + .HasColumnType("date") + .HasColumnName("Contract.Tender report submitted to EFA (actual)"); + + b.Property("ContractTenderReportSubmittedToEfaForecast") + .HasColumnType("date") + .HasColumnName("Contract.Tender report submitted to EFA (forecast)"); + + b.Property("ContractTypeOfContractorAppointment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Type of contractor appointment"); + + b.Property("ContractTypeOfContractorAppointmentIfOther") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Type of contractor appointment if other"); + + b.Property("ContractTypeOfWorks") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contract.Type of works"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.HasKey("Rid"); + + b.ToTable("Contracts", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("ContractsHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Fal", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("FundingApprovalLettersFundingApprovalLetterIssuedDate") + .HasColumnType("date") + .HasColumnName("Funding Approval Letters.Funding approval letter issued date"); + + b.Property("FundingApprovalLettersFundingApprovalLetterRecipient") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Funding approval letter recipient"); + + b.Property("FundingApprovalLettersFundingApprovalLetterTotalValue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Funding approval letter Total value"); + + b.Property("FundingApprovalLettersId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.ID"); + + b.Property("FundingApprovalLettersLinkToFundingApprovalLetter") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Link to funding approval letter"); + + b.Property("FundingApprovalLettersTotalConstruction") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Total construction"); + + b.Property("FundingApprovalLettersTotalFfEBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Total FF&E budget"); + + b.Property("FundingApprovalLettersTotalIctBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Total ICT budget"); + + b.Property("FundingApprovalLettersTotalTemporarySiteBudget") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Funding Approval Letters.Total temporary site budget"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.HasKey("Rid"); + + b.ToTable("FAL", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("FALHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.FsKim", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("GeneralDetailsAcademyLaestab") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Academy LAESTAB"); + + b.Property("GeneralDetailsAcademyName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Academy Name"); + + b.Property("GeneralDetailsAcademyStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Academy Status"); + + b.Property("GeneralDetailsAcademyUkprn") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("General Details.Academy UKPRN"); + + b.Property("GeneralDetailsAcademyUrn") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Academy URN"); + + b.Property("GeneralDetailsLaestab") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.LAESTAB"); + + b.Property("GeneralDetailsLocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Local Authority"); + + b.Property("GeneralDetailsPhase") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Phase"); + + b.Property("GeneralDetailsProjectName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Project Name"); + + b.Property("GeneralDetailsProjectStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Project status"); + + b.Property("GeneralDetailsReBrokeredDate") + .HasColumnType("date") + .HasColumnName("General Details.Re-brokered date"); + + b.Property("GeneralDetailsRouteOfProject") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.Route of Project"); + + b.Property("GeneralDetailsRscRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.RSC Region"); + + b.Property("GeneralDetailsUrn") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("General Details.URN"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ReBrokerageStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Re-brokerage status"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("FS_KIM", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("FS_KIMHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Kai", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("ApplicationDetailsAnyOtherFreedomsTheSchoolIntendsToUse") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Any other freedoms the school intends to use"); + + b.Property("ApplicationDetailsAreAnyMembersOfTheGroupAlsoInvolvedInOtherApplicationsToOpenFreeSchoolsInThisRound") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Are any members of the group also involved in other applications to open free schools in this round?"); + + b.Property("ApplicationDetailsAreThereAnyConnectionsWithOtherOrganisationsWithinTheUkOrOverseas") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Are there any connections with other organisations within the UK or overseas?"); + + b.Property("ApplicationDetailsAreThereAnyConnectionsWithReligiousOrganisationsOrInstitutions") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Are there any connections with religious organisations or institutions?"); + + b.Property("ApplicationDetailsCompanyAddress") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Company address"); + + b.Property("ApplicationDetailsCompanyName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Company name"); + + b.Property("ApplicationDetailsCompanyRegistrationNumber") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Company registration number"); + + b.Property("ApplicationDetailsDateLaDecisionExpected") + .HasColumnType("date") + .HasColumnName("Application Details.Date LA decision expected"); + + b.Property("ApplicationDetailsDateProposalsExpected") + .HasColumnType("date") + .HasColumnName("Application Details.Date proposals expected"); + + b.Property("ApplicationDetailsDateSpecificationIssuedByLa") + .HasColumnType("date") + .HasColumnName("Application Details.Date specification issued by LA"); + + b.Property("ApplicationDetailsDateWhenCompanyWasIncorporated") + .HasColumnType("date") + .HasColumnName("Application Details.Date when company was incorporated"); + + b.Property("ApplicationDetailsDetailsOfAnyConnectionsWithReligiousOrganisationsOrInstitutions") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Details of any connections with religious organisations or institutions"); + + b.Property("ApplicationDetailsDetailsOfConnectionsWithOrganisationsWithinTheUkOrOverseas") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Details of connections with organisations within the UK or overseas"); + + b.Property("ApplicationDetailsDidTheProposerGroupHaveHelpAndSupportFromAnotherCompanyOrOrganisation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Did the proposer group have help and support from another company or organisation?"); + + b.Property("ApplicationDetailsDidTheProposerGroupSeekHelpAndSupportFromTheNewSchoolsNetwork") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Did the proposer group seek help and support from the New Schools Network?"); + + b.Property("ApplicationDetailsDoesTheGroupRunASchoolInTheLocalArea") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Does the group run a school in the local area?"); + + b.Property("ApplicationDetailsDoesTheGroupRunASchoolOfTheSamePhaseAndType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Does the group run a school of the same phase and type?"); + + b.Property("ApplicationDetailsForIndependentSchoolsLinkToTheMostRecentInspectionReport") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.For independent schools, link to the most recent inspection report"); + + b.Property("ApplicationDetailsForIndependentSchoolsNameRatingAndUniqueReferenceNumber") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.For independent schools, name, rating and unique reference number"); + + b.Property("ApplicationDetailsHasTheGroupAppliedBeforeToOpenThisSchoolWhetherUnderTheCurrentNameOrAnotherName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Has the group applied before to open this school, whether under the current name or another name?"); + + b.Property("ApplicationDetailsHasThePrincipalDesignateBeenIdentified") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Has the principal designate been identified?"); + + b.Property("ApplicationDetailsHasTheProposerGroupEstablishedATrustInAccordanceWithTheDfEModelArticlesOfAssociation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Has the proposer group established a trust in accordance with the DfE model articles of association?"); + + b.Property("ApplicationDetailsHowDoesTheProposerDescribeTheirGroup") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.How does the proposer describe their group?"); + + b.Property("ApplicationDetailsHowManyApplicationsIsTheProposerGroupSeekingToOpenInThisApplicationRound") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.How many applications is the proposer group seeking to open in this application round?"); + + b.Property("ApplicationDetailsIfANurseryIsProposedPleaseStatePupilCapacity") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.If a nursery is proposed, please state pupil capacity"); + + b.Property("ApplicationDetailsIfANurseryIsProposedPleaseStateTheAgeRange") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.If a nursery is proposed, please state the age range"); + + b.Property("ApplicationDetailsIfANurseryIsProposedStateNurseryPupilCapacityAndAgeRange") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.If a nursery is proposed, state nursery pupil capacity and age range"); + + b.Property("ApplicationDetailsIfASixthFormIsProposedPleaseStateTheSixthFormPupilCapacity") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.If a sixth form is proposed, please state the sixth form pupil capacity"); + + b.Property("ApplicationDetailsIfTheTrustRunsAcademiesFreeSchoolsHasAnythingChangedInTheTrustWithinTheLastMonth") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.If the trust runs academies/free schools, has anything changed in the trust within the last month?"); + + b.Property("ApplicationDetailsIfYesAndTheNameOfTheSchoolWasDifferentStateWhatTheOriginalNameWas") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.If yes and the name of the school was different, state what the original name was:"); + + b.Property("ApplicationDetailsIfYesStateTheNamesSOfTheOrganisationsSAndDescribeTheirRole") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.If yes, state the names (s) of the organisations(s) and describe their role"); + + b.Property("ApplicationDetailsIfYesWhenDidTheGroupLastApply") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.If yes, when did the group last apply?"); + + b.Property("ApplicationDetailsInWhichLocalAuthorityDistrictIsYourPreferredLocation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.In which local authority district is your preferred location?"); + + b.Property("ApplicationDetailsIsAnyoneConnectedWithThisApplicationRelatedInAnyWay") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Is anyone connected with this application related in any way?"); + + b.Property("ApplicationDetailsIsTheProposalADirectResultOfARequestFromGroups") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Is the proposal a direct result of a request from groups"); + + b.Property("ApplicationDetailsIsTheProposerGroupPlanningToContractTheManagementOfTheSchoolToAnotherOrganisation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Is the proposer group planning to contract the management of the school to another organisation?"); + + b.Property("ApplicationDetailsLaClosingDateForReceiptOfProposals") + .HasColumnType("date") + .HasColumnName("Application Details.LA closing date for receipt of proposals"); + + b.Property("ApplicationDetailsLinkToPreRegistration") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Link to pre-registration"); + + b.Property("ApplicationDetailsLinkToSpecification") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Link to specification"); + + b.Property("ApplicationDetailsMaximumCapacityOfTheFreeSchoolIncluding1619SixthFormButNotIncludingNursery") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Maximum capacity of the free school (including 16-19/sixth form, but not including nursery)"); + + b.Property("ApplicationDetailsNamesAndUniqueReferenceNumberSForEachOfTheTrustSOpenSchools") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Names and unique reference number(s) for each of the trust's open schools"); + + b.Property("ApplicationDetailsNumberOfCompanyMembers") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Number of company members"); + + b.Property("ApplicationDetailsNumberOfTrustees") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Number of trustees"); + + b.Property("ApplicationDetailsProposalsReceived") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Proposals received"); + + b.Property("ApplicationDetailsProposedChairOfTrustees") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Proposed chair of trustees"); + + b.Property("ApplicationDetailsStateYearTheSchoolWillHaveTheOpeningAndPanNumber") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.State year the school will have the opening and PAN number"); + + b.Property("ApplicationDetailsTimeDedicatedToFaithStudiesHoursPerWeek") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Time dedicated to faith studies (hours per week)"); + + b.Property("ApplicationDetailsTimeDedicatedToMinorityLanguageStudyHoursPerWeek") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Time dedicated to minority language study (hours per week)"); + + b.Property("ApplicationDetailsWillTheSchoolAdoptNonStandardTermsAndConditionsForTeachers") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Will the school adopt non-standard terms and conditions for teachers?"); + + b.Property("ApplicationDetailsWillTheSchoolAdoptTheNationalCurriculum") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Will the school adopt the national curriculum?"); + + b.Property("ApplicationDetailsWillTheSchoolEmployTeachersWithoutQualifiedTeacherStatusQts") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Will the school employ teachers without qualified teacher status (QTS)?"); + + b.Property("ApplicationDetailsWillTheSchoolHaveADistinctivePedagogyOrEducationalPhilosophyForExampleSteinerOrMontessori") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Application Details.Will the school have a distinctive pedagogy or educational philosophy, for example Steiner or Montessori?"); + + b.Property("ApplicationDetailsWillTheSchoolOperateANonStandardSchoolDay") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Will the school operate a non-standard school day?"); + + b.Property("ApplicationDetailsWillTheSchoolOperateANonStandardSchoolYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Application Details.Will the school operate a non-standard school year?"); + + b.Property("AssessmentCriteriaAreYouRecommendingApprovalOfThe1619Element") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Criteria.Are you recommending approval of the 16-19 element?"); + + b.Property("AssessmentCriteriaConditions") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Assessment Criteria.Conditions"); + + b.Property("AssessmentCriteriaFinalRecommendation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Criteria.Final recommendation"); + + b.Property("AssessmentCriteriaFinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Criteria.Final Score"); + + b.Property("AssessmentCriteriaNurseryRecommendation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Criteria.Nursery recommendation"); + + b.Property("AssessmentCriteriaNurseryRecommendationCommentary") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Assessment Criteria.Nursery recommendation commentary"); + + b.Property("AssessmentCriteriaRecommendationCommentary") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Assessment Criteria.Recommendation commentary"); + + b.Property("AssessmentDetailsDateOfLaFsPresumptionAssessment") + .HasColumnType("date") + .HasColumnName("Assessment Details.Date of LA FS presumption assessment"); + + b.Property("AssessmentDetailsDateOfRscHtbPresumptionDecisionMeeting") + .HasColumnType("date") + .HasColumnName("Assessment Details.Date of RSC/HTB presumption decision meeting"); + + b.Property("AssessmentDetailsDfERepresentationOnFsPresumptionPanel") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.DfE representation on FS presumption panel?"); + + b.Property("AssessmentDetailsEqualitiesImpactAssessment") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Assessment Details.Equalities impact assessment"); + + b.Property("AssessmentDetailsInterviewAttendees") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Assessment Details.Interview Attendees"); + + b.Property("AssessmentDetailsInterviewPanel") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Assessment Details.Interview panel"); + + b.Property("AssessmentDetailsMinisterialPostInterviewDecision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Ministerial post-interview decision"); + + b.Property("AssessmentDetailsMinisterialPostPaperDecision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Ministerial post-paper decision"); + + b.Property("AssessmentDetailsNameOfDfEIndividualSOnFsPresumptionAssessmentPanel") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Name of DfE individual(s) on FS presumption assessment panel"); + + b.Property("AssessmentDetailsPostInterviewRecommendationToTheMinister") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Post-interview recommendation to the Minister"); + + b.Property("AssessmentDetailsPostPaperRecommendationToTheMinister") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Post-paper recommendation to the Minister"); + + b.Property("AssessmentDetailsRscPaperBasedRecommendation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.RSC paper-based recommendation"); + + b.Property("AssessmentDetailsRscPostInterviewRecommendation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.RSC post-interview recommendation"); + + b.Property("AssessmentDetailsWasSuccessfulFsPresumptionSponsorRecommendedByTheLa") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Assessment Details.Was successful FS presumption sponsor recommended by the LA?"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("SectionBNeedB11619ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1(16-19) Application assessment comments"); + + b.Property("SectionBNeedB11619ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1(16-19) Application assessment score"); + + b.Property("SectionBNeedB11619CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B1(16-19) Characteristics (Old)"); + + b.Property("SectionBNeedB11619CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B1(16-19) Characteristics (Wave 14)"); + + b.Property("SectionBNeedB11619FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1(16-19) Final score"); + + b.Property("SectionBNeedB11619Indicators") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1(16-19) Indicators"); + + b.Property("SectionBNeedB11619InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1(16-19) Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionBNeedB11619IsTheLocalAuthoritySupportiveOfTheSchool") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1(16-19) Is the Local Authority supportive of the school?"); + + b.Property("SectionBNeedB11619ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1(16-19) Score after interview"); + + b.Property("SectionBNeedB11619SiftAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1(16-19) Sift assessment comments"); + + b.Property("SectionBNeedB11619SiftAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1(16-19) Sift assessment score"); + + b.Property("SectionBNeedB11ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.1 Application assessment comments"); + + b.Property("SectionBNeedB11ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.1 Application assessment score"); + + b.Property("SectionBNeedB11CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B1.1 Characteristics (Old)"); + + b.Property("SectionBNeedB11CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B1.1 Characteristics (Wave 14)"); + + b.Property("SectionBNeedB11FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.1 Final score"); + + b.Property("SectionBNeedB11IndicatorsContributory") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.1 Indicators - Contributory"); + + b.Property("SectionBNeedB11IndicatorsCore") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.1 Indicators - Core"); + + b.Property("SectionBNeedB11InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.1 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionBNeedB11IsTheLocalAuthoritySupportiveOfTheSchool") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.1 Is the Local Authority supportive of the school?"); + + b.Property("SectionBNeedB11ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.1 Score after interview"); + + b.Property("SectionBNeedB11SiftAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.1 Sift assessment comments"); + + b.Property("SectionBNeedB11SiftAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.1 Sift assessment score"); + + b.Property("SectionBNeedB12ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.2 Application assessment comments"); + + b.Property("SectionBNeedB12ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.2 Application assessment score"); + + b.Property("SectionBNeedB12FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.2 Final score"); + + b.Property("SectionBNeedB12InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.2 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionBNeedB12ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.2 Score after interview"); + + b.Property("SectionBNeedB12SiftAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B1.2 Sift assessment comments"); + + b.Property("SectionBNeedB12SiftAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B1.2 Sift assessment score"); + + b.Property("SectionBNeedB21619ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2(16-19) Application assessment comments"); + + b.Property("SectionBNeedB21619ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2(16-19) Application assessment score"); + + b.Property("SectionBNeedB21619CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B2(16-19) Characteristics (Old)"); + + b.Property("SectionBNeedB21619CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B2(16-19) Characteristics (Wave 14)"); + + b.Property("SectionBNeedB21619FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2(16-19) Final score"); + + b.Property("SectionBNeedB21619IndicatorsContributory") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2(16-19) Indicators – Contributory"); + + b.Property("SectionBNeedB21619IndicatorsCore") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2(16-19) Indicators – Core"); + + b.Property("SectionBNeedB21619InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2(16-19) Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionBNeedB21619ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2(16-19) Score after interview"); + + b.Property("SectionBNeedB21619SiftAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2(16-19) Sift assessment comments"); + + b.Property("SectionBNeedB21619SiftAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2(16-19) Sift assessment score"); + + b.Property("SectionBNeedB2ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2 Application assessment comments"); + + b.Property("SectionBNeedB2ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2 Application assessment score"); + + b.Property("SectionBNeedB2CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B2 Characteristics (Old)"); + + b.Property("SectionBNeedB2CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section B - Need.B2 Characteristics (Wave 14)"); + + b.Property("SectionBNeedB2FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2 Final score"); + + b.Property("SectionBNeedB2IndicatorsContributory") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2 Indicators – Contributory"); + + b.Property("SectionBNeedB2IndicatorsCore") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2 Indicators - Core"); + + b.Property("SectionBNeedB2InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionBNeedB2ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2 Score after interview"); + + b.Property("SectionBNeedB2SiftAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B2 Sift assessment comments"); + + b.Property("SectionBNeedB2SiftAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B2 Sift assessment score"); + + b.Property("SectionBNeedBNAfterInterviewNurseryNeedSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B(N) After interview nursery need summary comments"); + + b.Property("SectionBNeedBNEngagementWithTheLocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.B(N) Engagement with the local authority"); + + b.Property("SectionBNeedBNNurseryNeedInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B(N) Nursery need interview prompts"); + + b.Property("SectionBNeedBNNurseryNeedSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.B(N) Nursery need summary comments"); + + b.Property("SectionBNeedFinalTotalPercentageScoreForSectionB") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.Final total percentage score for Section B"); + + b.Property("SectionBNeedNeedApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.Need application assessment score"); + + b.Property("SectionBNeedNeedCommentaryAndInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.Need commentary and interview prompts"); + + b.Property("SectionBNeedNeedSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section B - Need.Need summary comments"); + + b.Property("SectionBNeedPostcode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.Postcode"); + + b.Property("SectionBNeedWillWeContinueToAssess1619") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section B - Need.Will we continue to assess 16-19?"); + + b.Property("SectionCVisionC1ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.C1 Application assessment comments"); + + b.Property("SectionCVisionC1ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.C1 Application assessment score"); + + b.Property("SectionCVisionC1CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section C - Vision.C1 Characteristics (Old)"); + + b.Property("SectionCVisionC1CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section C - Vision.C1 Characteristics (Wave 14)"); + + b.Property("SectionCVisionC1FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.C1 Final score"); + + b.Property("SectionCVisionC1InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.C1 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionCVisionC1ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.C1 Score after interview"); + + b.Property("SectionCVisionCNAfterInterviewSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.C(N) After interview summary comments"); + + b.Property("SectionCVisionCNAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.C(N) Assessment"); + + b.Property("SectionCVisionCNAssessmentAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.C(N) Assessment after interview"); + + b.Property("SectionCVisionCNAssessmentSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.C(N) Assessment summary comments"); + + b.Property("SectionCVisionCNNurseryVisionInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.C(N) Nursery vision interview prompts"); + + b.Property("SectionCVisionFinalTotalPercentageScoreForSectionC") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.Final total percentage score for section C"); + + b.Property("SectionCVisionVisionApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section C - Vision.Vision application assessment score"); + + b.Property("SectionCVisionVisionInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.Vision interview prompts"); + + b.Property("SectionCVisionVisionSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section C - Vision.Vision summary comments"); + + b.Property("SectionDEngagementCharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section D - Engagement.Characteristics (Old)"); + + b.Property("SectionDEngagementCharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section D - Engagement.Characteristics (Wave 14)"); + + b.Property("SectionDEngagementD1ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section D - Engagement.D1 Application assessment comments"); + + b.Property("SectionDEngagementD1ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section D - Engagement.D1 Application assessment score"); + + b.Property("SectionDEngagementD1FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section D - Engagement.D1 Final score"); + + b.Property("SectionDEngagementD1InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section D - Engagement.D1 Interview comments - evidence that led to a score change (if applicable)"); + + b.Property("SectionDEngagementD1ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section D - Engagement.D1 Score after interview"); + + b.Property("SectionDEngagementEngagementWithParentsAndTheLocalCommunityApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section D - Engagement.Engagement with parents and the local community application assessment score"); + + b.Property("SectionDEngagementEngagementWithParentsAndTheLocalCommunityInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section D - Engagement.Engagement with parents and the local community interview prompts"); + + b.Property("SectionDEngagementEngagementWithParentsAndTheLocalCommunitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section D - Engagement.Engagement with parents and the local community summary comments"); + + b.Property("SectionDEngagementFinalTotalPercentageScoreForSectionD") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section D - Engagement.Final total percentage score for section D"); + + b.Property("SectionEEducationPlanE1ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E1 Application assessment comments"); + + b.Property("SectionEEducationPlanE1ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E1 Application assessment score"); + + b.Property("SectionEEducationPlanE1CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E1 Characteristics (Old)"); + + b.Property("SectionEEducationPlanE1CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E1 Characteristics (Wave 14)"); + + b.Property("SectionEEducationPlanE1FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E1 Final score"); + + b.Property("SectionEEducationPlanE1InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E1 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionEEducationPlanE1ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E1 Score after interview"); + + b.Property("SectionEEducationPlanE2ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E2 Application assessment comments"); + + b.Property("SectionEEducationPlanE2ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E2 Application assessment score"); + + b.Property("SectionEEducationPlanE2CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E2 Characteristics (Old)"); + + b.Property("SectionEEducationPlanE2CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E2 Characteristics (Wave 14)"); + + b.Property("SectionEEducationPlanE2FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E2 Final score"); + + b.Property("SectionEEducationPlanE2InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E2 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionEEducationPlanE2ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E2 Score after interview"); + + b.Property("SectionEEducationPlanE3ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E3 Application assessment comments"); + + b.Property("SectionEEducationPlanE3ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E3 Application assessment score"); + + b.Property("SectionEEducationPlanE3CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E3 Characteristics (Old)"); + + b.Property("SectionEEducationPlanE3CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E3 Characteristics (Wave 14)"); + + b.Property("SectionEEducationPlanE3FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E3 Final score"); + + b.Property("SectionEEducationPlanE3InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E3 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionEEducationPlanE3ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E3 Score after interview"); + + b.Property("SectionEEducationPlanE4ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E4 Application assessment comments"); + + b.Property("SectionEEducationPlanE4ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E4 Application assessment score"); + + b.Property("SectionEEducationPlanE4CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E4 Characteristics (Old)"); + + b.Property("SectionEEducationPlanE4CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section E - Education Plan.E4 Characteristics (Wave 14)"); + + b.Property("SectionEEducationPlanE4FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E4 Final score"); + + b.Property("SectionEEducationPlanE4InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E4 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionEEducationPlanE4ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E4 Score after interview"); + + b.Property("SectionEEducationPlanENAfterInterviewModelAndViabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E(N) After interview model and viability summary comments"); + + b.Property("SectionEEducationPlanENModelType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.E(N) Model type"); + + b.Property("SectionEEducationPlanENNurseryModelAndViabilityInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E(N) Nursery model and viability interview prompts"); + + b.Property("SectionEEducationPlanENNurseryModelAndViabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.E(N) Nursery model and viability summary comments"); + + b.Property("SectionEEducationPlanEducationAdviserAssessment") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.Education adviser assessment"); + + b.Property("SectionEEducationPlanEducationPlanApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.Education plan application assessment score"); + + b.Property("SectionEEducationPlanEducationPlanInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.Education plan interview prompts"); + + b.Property("SectionEEducationPlanEducationPlanSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.Education plan summary comments"); + + b.Property("SectionEEducationPlanFinalTotalPercentageScoreForSectionE") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.Final total percentage score for section E"); + + b.Property("SectionEEducationPlanIoDResidentialRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.IoD Residential RAG"); + + b.Property("SectionEEducationPlanIoDSchoolBasedRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section E - Education Plan.IoD School Based RAG"); + + b.Property("SectionEEducationPlanRagCommentaryBox") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section E - Education Plan.RAG commentary box"); + + b.Property("SectionFCapacityAndCapabilityCapacityAndCapabilityApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.Capacity and capability application assessment score"); + + b.Property("SectionFCapacityAndCapabilityCapacityAndCapabilityInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.Capacity and capability interview prompts"); + + b.Property("SectionFCapacityAndCapabilityCapacityAndCapabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.Capacity and capability summary comments"); + + b.Property("SectionFCapacityAndCapabilityDoesTheProposerGroupHaveAnyOpenSchools") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.Does the proposer group have any open schools?"); + + b.Property("SectionFCapacityAndCapabilityDoesTheProposerGroupRunAnyOpenStateFundedSchools") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.Does the proposer group run any open state funded schools?"); + + b.Property("SectionFCapacityAndCapabilityExistingProviderSummary") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.Existing provider summary"); + + b.Property("SectionFCapacityAndCapabilityF1ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F1 Application assessment comments"); + + b.Property("SectionFCapacityAndCapabilityF1ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F1 Application assessment score"); + + b.Property("SectionFCapacityAndCapabilityF1CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F1 Characteristics (Old)"); + + b.Property("SectionFCapacityAndCapabilityF1CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F1 Characteristics (Wave 14)"); + + b.Property("SectionFCapacityAndCapabilityF1FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F1 Final score"); + + b.Property("SectionFCapacityAndCapabilityF1InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F1 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionFCapacityAndCapabilityF1ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F1 Score after interview"); + + b.Property("SectionFCapacityAndCapabilityF2ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F2 Application assessment comments"); + + b.Property("SectionFCapacityAndCapabilityF2ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F2 Application assessment score"); + + b.Property("SectionFCapacityAndCapabilityF2CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F2 Characteristics (Old)"); + + b.Property("SectionFCapacityAndCapabilityF2CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F2 Characteristics (Wave 14)"); + + b.Property("SectionFCapacityAndCapabilityF2FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F2 Final score"); + + b.Property("SectionFCapacityAndCapabilityF2InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F2 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionFCapacityAndCapabilityF2ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F2 Score after interview"); + + b.Property("SectionFCapacityAndCapabilityF3ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F3 Application assessment comments"); + + b.Property("SectionFCapacityAndCapabilityF3ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F3 Application assessment score"); + + b.Property("SectionFCapacityAndCapabilityF3CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F3 Characteristics (Old)"); + + b.Property("SectionFCapacityAndCapabilityF3CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section F - Capacity and capability.F3 Characteristics (Wave 14)"); + + b.Property("SectionFCapacityAndCapabilityF3FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F3 Final score"); + + b.Property("SectionFCapacityAndCapabilityF3InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F3 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionFCapacityAndCapabilityF3ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F3 Score after interview"); + + b.Property("SectionFCapacityAndCapabilityFNAfterInterviewCapacityAndCapabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F(N) After interview capacity and capability summary comments"); + + b.Property("SectionFCapacityAndCapabilityFNNurseryCapacityAndCapabilityInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F(N) Nursery capacity and capability interview prompts"); + + b.Property("SectionFCapacityAndCapabilityFNNurseryCapacityAndCapabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.F(N) Nursery capacity and capability summary comments"); + + b.Property("SectionFCapacityAndCapabilityFNTrustSNurseryExperience") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.F(N) Trust's nursery experience"); + + b.Property("SectionFCapacityAndCapabilityFinalTotalPercentageScoreForSectionF") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.Final total percentage score for section F"); + + b.Property("SectionFCapacityAndCapabilityMatReview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.MAT Review"); + + b.Property("SectionFCapacityAndCapabilityMembersNamesExperienceAndExpertise") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.Members' names, experience and expertise"); + + b.Property("SectionFCapacityAndCapabilitySingleList") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section F - Capacity and capability.Single list"); + + b.Property("SectionFCapacityAndCapabilityTrusteesNamesExperienceAndExpertise") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section F - Capacity and capability.Trustees' names, experience and expertise"); + + b.Property("SectionGFinancialViabilityFinalTotalPercentageScoreForSectionG") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.Final total percentage score for section G"); + + b.Property("SectionGFinancialViabilityFinancialViabilityApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.Financial viability application assessment score"); + + b.Property("SectionGFinancialViabilityFinancialViabilityInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.Financial viability interview prompts"); + + b.Property("SectionGFinancialViabilityFinancialViabilitySummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.Financial viability summary comments"); + + b.Property("SectionGFinancialViabilityG1ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.G1 Application assessment comments"); + + b.Property("SectionGFinancialViabilityG1ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G1 Application assessment score"); + + b.Property("SectionGFinancialViabilityG1CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section G - Financial viability.G1 Characteristics (Old)"); + + b.Property("SectionGFinancialViabilityG1CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section G - Financial viability.G1 Characteristics (Wave 14)"); + + b.Property("SectionGFinancialViabilityG1FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G1 Final score"); + + b.Property("SectionGFinancialViabilityG1InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.G1 Interview comments - evidence that led to a score change (if applicable)"); + + b.Property("SectionGFinancialViabilityG1ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G1 Score after interview"); + + b.Property("SectionGFinancialViabilityG2ApplicationAssessmentComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.G2 Application assessment comments"); + + b.Property("SectionGFinancialViabilityG2ApplicationAssessmentScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G2 Application assessment score"); + + b.Property("SectionGFinancialViabilityG2CharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section G - Financial viability.G2 Characteristics (Old)"); + + b.Property("SectionGFinancialViabilityG2CharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section G - Financial viability.G2 Characteristics (Wave 14)"); + + b.Property("SectionGFinancialViabilityG2FinalScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G2 Final score"); + + b.Property("SectionGFinancialViabilityG2InterviewCommentsEvidenceThatLedToAScoreChangeIfApplicable") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section G - Financial viability.G2 Interview comments – evidence that led to a score change (if applicable)"); + + b.Property("SectionGFinancialViabilityG2ScoreAfterInterview") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section G - Financial viability.G2 Score after interview"); + + b.Property("SectionHTheProposedSiteAddress") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Address"); + + b.Property("SectionHTheProposedSiteCostTier") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Cost Tier"); + + b.Property("SectionHTheProposedSiteHasASiteBeenIdentified") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Has a site been identified?"); + + b.Property("SectionHTheProposedSiteHighCostOutlier") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.High cost outlier"); + + b.Property("SectionHTheProposedSiteHighCostOutlierCommentaryBox") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.High cost outlier commentary box"); + + b.Property("SectionHTheProposedSitePlanningPermissionCharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section H - The proposed site.Planning permission characteristics (Old)"); + + b.Property("SectionHTheProposedSitePlanningPermissionCharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section H - The proposed site.Planning permission characteristics (Wave 14)"); + + b.Property("SectionHTheProposedSitePlanningRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Planning RAG"); + + b.Property("SectionHTheProposedSitePlanningRagComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Planning RAG comments"); + + b.Property("SectionHTheProposedSitePlanningRagConfidence") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Planning RAG confidence"); + + b.Property("SectionHTheProposedSitePostcode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Postcode"); + + b.Property("SectionHTheProposedSitePropertyRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Property RAG"); + + b.Property("SectionHTheProposedSitePropertyRagComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Property RAG comments"); + + b.Property("SectionHTheProposedSitePropertyRagConfidence") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Property RAG confidence"); + + b.Property("SectionHTheProposedSiteProposedSiteInterviewPrompts") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Proposed site interview prompts"); + + b.Property("SectionHTheProposedSiteSiteAvailabilityComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Site availability comments"); + + b.Property("SectionHTheProposedSiteSiteAvailabilityConfidence") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Site availability confidence"); + + b.Property("SectionHTheProposedSiteSiteAvailabilityRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section H - The proposed site.Site availability RAG"); + + b.Property("SectionHTheProposedSiteSiteSummaryComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section H - The proposed site.Site summary comments"); + + b.Property("SectionHTheProposedSiteTenureCharacteristicsOld") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section H - The proposed site.Tenure characteristics (Old)"); + + b.Property("SectionHTheProposedSiteTenureCharacteristicsWave14") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Section H - The proposed site.Tenure characteristics (Wave 14)"); + + b.Property("SectionIDueDiligenceComments") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section I - Due Diligence.Comments"); + + b.Property("SectionIDueDiligenceDateOfChecks") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Date of checks"); + + b.Property("SectionIDueDiligenceDidDdcedReportAnythingOfConcernOrInterest") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Did DDCED report anything of concern or interest?"); + + b.Property("SectionIDueDiligenceHasFsdEngagedWithOtherAreasOfTheDepartmentArddOtherUnitsWithinFsd") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section I - Due Diligence.Has FSD engaged with other areas of the department? (ARDD, other units within FSD)"); + + b.Property("SectionIDueDiligenceHaveDueDiligenceChecksBeenUndertakenByFsd") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Have due diligence checks been undertaken by FSD?"); + + b.Property("SectionIDueDiligenceHavePotentialRisksBeenEscalatedAndActionsIdentified") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Have potential risks been escalated and actions identified?"); + + b.Property("SectionIDueDiligenceIsADdcedRepresentativeRequiredToSitOnTheInterviewPanel") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Is a DDCED representative required to sit on the interview panel?"); + + b.Property("SectionIDueDiligenceIsThereAnythingOfConcernOrInterest") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Is there anything of concern or interest?"); + + b.Property("SectionIDueDiligenceLinkToDueDiligenceChecklist") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Section I - Due Diligence.Link to due diligence checklist"); + + b.Property("SectionIDueDiligencePleaseProvideDetailsAndSuggestedActionsRemedies") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section I - Due Diligence.Please provide details and suggested actions/remedies"); + + b.Property("SectionIDueDiligencePleaseProvideDetailsAndSuggestedActionsRemediesDdced") + .HasMaxLength(4799) + .IsUnicode(false) + .HasColumnType("varchar(4799)") + .HasColumnName("Section I - Due Diligence.Please provide details and suggested actions/remedies (DDCED)"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("KAI", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("KAIHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Kpi", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("AprilIndicator") + .IsRequired() + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("April Indicator"); + + b.Property("BasicNeedAdditionalEvidenceOfNeed") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Basic Need.Additional evidence of need"); + + b.Property("BasicNeedAdditionalEvidenceOfNeedSecondary") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("Basic Need.Additional evidence of need - secondary"); + + b.Property("BasicNeedAdditionalEvidenceOfNeedSecondaryAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Additional evidence of need - secondary (assessment)"); + + b.Property("BasicNeedKp02PlanningAreaCode") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Basic Need.KP02_Planning area code"); + + b.Property("BasicNeedKp04PlanningAreaCode") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Basic Need.KP04_Planning area code"); + + b.Property("BasicNeedPercentageShortfallInLocalAreaAllYearGroupsInScapYear4") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Percentage shortfall in local area (all year groups in SCAP year +4)"); + + b.Property("BasicNeedPercentageShortfallInLocalAreaAllYearGroupsInScapYear4Secondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Percentage shortfall in local area (all year groups in SCAP year +4) - secondary"); + + b.Property("BasicNeedPercentageShortfallInLocalAreaYearOfOpeningAllYearGroups") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Percentage shortfall in local area — year of opening (all year groups)"); + + b.Property("BasicNeedPercentageShortfallInLocalAreaYearOfOpeningAllYearGroupsSecondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Percentage shortfall in local area - year of opening (all year groups) - secondary"); + + b.Property("BasicNeedPlanningAreaCodeSecondary") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Basic Need.Planning area code - secondary"); + + b.Property("BasicNeedPlanningAreaCodeSecondaryAssessment") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Basic Need.Planning area code - secondary (assessment)"); + + b.Property("BasicNeedSchoolInLocalAreaWithAShortfallOfPlacesInLocalArea") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in local area with a shortfall of places in local area"); + + b.Property("BasicNeedSchoolInLocalAreaWithAShortfallOfPlacesInLocalAreaSecondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in local area with a shortfall of places in local area - secondary"); + + b.Property("BasicNeedSchoolInLocalAreaWithAShortfallOfPlacesSecondaryAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in local area with a shortfall of places - secondary (assessment)"); + + b.Property("BasicNeedSchoolInPlanningAreaOfBasicNeed") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in planning area of basic need"); + + b.Property("BasicNeedSchoolInPlanningAreaOfBasicNeedAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in planning area of basic need (assessment)"); + + b.Property("BasicNeedSchoolInPlanningAreaOfBasicNeedSecondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in planning area of basic need - secondary"); + + b.Property("BasicNeedSchoolInPlanningAreaOfBasicNeedSecondaryAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.School in planning area of basic need - secondary (assessment)"); + + b.Property("BasicNeedShortfallOfPlacesInLocalAreaAllYearGroupsInScapYear4") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Basic Need.Shortfall of places in local area (all year groups in SCAP year +4)"); + + b.Property("BasicNeedShortfallOfPlacesInLocalAreaAllYearGroupsInScapYear4Secondary") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Basic Need.Shortfall of places in local area (all year groups in SCAP year +4) - secondary"); + + b.Property("BasicNeedShortfallOfPlacesInLocalAreaYearOfOpeningAllYearGroups") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Basic Need.Shortfall of places in local area — year of opening (all year groups)"); + + b.Property("BasicNeedShortfallOfPlacesInLocalAreaYearOfOpeningAllYearGroupsSecondary") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Basic Need.Shortfall of places in local area - year of opening (all year groups) - secondary"); + + b.Property("BasicNeedYearOfProjectedNeedSecondaryAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Year of projected need - secondary (assessment)"); + + b.Property("BasicNeedYearOfScapSurvey") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Year of SCAP survey"); + + b.Property("BasicNeedYearOfScapSurveySecondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Basic Need.Year of SCAP survey - secondary"); + + b.Property("CommunicationsArchivedLinesToTake") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Communications.Archived lines to take"); + + b.Property("CommunicationsCurrentLinesToTake") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Communications.Current lines to take"); + + b.Property("CommunicationsMediaPenPortrait") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Communications.Media pen portrait"); + + b.Property("ContingencyPlanningBackUpField") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Contingency Planning.Back-up Field"); + + b.Property("ContingencyPlanningCanCurrentCohortRemainInSchool") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.Can current cohort remain in school?"); + + b.Property("ContingencyPlanningCanSchoolTakeOnAnotherCohort") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.Can school take on another cohort?"); + + b.Property("ContingencyPlanningCanTempsBeExtended") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Contingency Planning.Can temps be extended?"); + + b.Property("ContingencyPlanningEssentialThatItIsDeliveredForSeptemberOrCurrentScheduledDateInTheRealisticYearOfOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.Essential that it is delivered for September (or current scheduled date) in the Realistic Year of Opening?"); + + b.Property("ContingencyPlanningExtraInformation") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Contingency Planning.Extra information"); + + b.Property("ContingencyPlanningFscDeliverabilityAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.FSC Deliverability Assessment"); + + b.Property("ContingencyPlanningFscDeliverabilityComment") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Contingency Planning.FSC Deliverability Comment"); + + b.Property("ContingencyPlanningHowLongCanTempsBeExtended") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Contingency Planning.How long can temps be extended?"); + + b.Property("ContingencyPlanningHowManyStudentsWillNeedAlternativeArrangements") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Contingency Planning.How many students will need alternative arrangements?"); + + b.Property("ContingencyPlanningIfOtherWhy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.If 'Other', why?"); + + b.Property("ContingencyPlanningIfOtherWhyForRAndAExplainAnythingBeingExploredOrNextSteps") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.If 'Other', why? (for R and A, explain anything being explored or next steps)"); + + b.Property("ContingencyPlanningIfYesWhy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.If ‘Yes’, why?"); + + b.Property("ContingencyPlanningProjectedLengthOfDelayToProject") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.Projected length of delay to project"); + + b.Property("ContingencyPlanningRddRationale") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.RDD Rationale"); + + b.Property("ContingencyPlanningRddSiteContingencyRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.RDD Site Contingency RAG"); + + b.Property("ContingencyPlanningSiteShutdown") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contingency Planning.Site shutdown"); + + b.Property("FsType") + .IsRequired() + .HasMaxLength(14) + .IsUnicode(false) + .HasColumnType("varchar(14)") + .HasColumnName("FS_Type"); + + b.Property("FsType1") + .IsRequired() + .HasMaxLength(16) + .IsUnicode(false) + .HasColumnType("varchar(16)") + .HasColumnName("FS_Type_1"); + + b.Property("KeyContactsAddressOfLeadProposer") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Key Contacts.Address of lead proposer"); + + b.Property("KeyContactsAllocatedLawFirm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Allocated law firm"); + + b.Property("KeyContactsAssessmentTeamLeader") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Assessment team leader"); + + b.Property("KeyContactsChairOfGovernorsEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of Governors email"); + + b.Property("KeyContactsChairOfGovernorsMat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of governors MAT"); + + b.Property("KeyContactsChairOfGovernorsMatEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of governors MAT email"); + + b.Property("KeyContactsChairOfGovernorsMatPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of governors MAT phone"); + + b.Property("KeyContactsChairOfGovernorsMatRole") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of governors MAT role"); + + b.Property("KeyContactsChairOfGovernorsName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of Governors name"); + + b.Property("KeyContactsChairOfGovernorsPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Chair of Governors phone"); + + b.Property("KeyContactsCommercialManager") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Commercial Manager"); + + b.Property("KeyContactsEaOnceSchoolIsOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.EA once school is open"); + + b.Property("KeyContactsEducationAdviserAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Education adviser (assessment)"); + + b.Property("KeyContactsEducationAdviserPreOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Education adviser (pre-opening)"); + + b.Property("KeyContactsEsfaAcademiesSeniorAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA academies senior adviser"); + + b.Property("KeyContactsEsfaCapitalHeadOfRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital Head of Region"); + + b.Property("KeyContactsEsfaCapitalProjectDirector") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital project director"); + + b.Property("KeyContactsEsfaCapitalProjectDirectorEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital project director email"); + + b.Property("KeyContactsEsfaCapitalProjectManager") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital project manager"); + + b.Property("KeyContactsEsfaCapitalProjectManagerEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital project manager email"); + + b.Property("KeyContactsEsfaCapitalProjectManagerFirm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Capital project manager firm"); + + b.Property("KeyContactsEsfaLinkOfficer") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA Link Officer"); + + b.Property("KeyContactsEsfaPropertyLead") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA property lead"); + + b.Property("KeyContactsEsfaRegionalPropertyLead") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA regional property lead"); + + b.Property("KeyContactsEsfaTechnicalAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ESFA technical adviser"); + + b.Property("KeyContactsFrameworkPlanningConsultant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Framework planning consultant"); + + b.Property("KeyContactsFrameworkPlanningFirm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Framework planning firm"); + + b.Property("KeyContactsFrameworkPlanningFirmOther") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Framework planning firm – other"); + + b.Property("KeyContactsFsgAssessmentLead") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG assessment lead"); + + b.Property("KeyContactsFsgGrade6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG Grade 6"); + + b.Property("KeyContactsFsgGrade6Email") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG Grade 6 email"); + + b.Property("KeyContactsFsgLeadContact") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG lead contact"); + + b.Property("KeyContactsFsgLeadContactEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG lead contact email"); + + b.Property("KeyContactsFsgTeamLeader") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG team leader"); + + b.Property("KeyContactsFsgTeamLeaderEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.FSG team leader email"); + + b.Property("KeyContactsIctAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.ICT adviser"); + + b.Property("KeyContactsInterviewChair") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Interview chair"); + + b.Property("KeyContactsLeadProposerEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Lead proposer email "); + + b.Property("KeyContactsLeadProposerName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Lead proposer name"); + + b.Property("KeyContactsLeadProposerPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Lead proposer phone"); + + b.Property("KeyContactsLegalFirm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Legal firm"); + + b.Property("KeyContactsLegalManager") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Legal manager"); + + b.Property("KeyContactsLocalAuthorityContactPresumptionProject") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Local authority contact (presumption project)"); + + b.Property("KeyContactsLocatEdAcquisitionManager") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.LocatED acquisition manager"); + + b.Property("KeyContactsNamedContactOnceSchoolIsOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Named contact once school is open"); + + b.Property("KeyContactsOfstedContact") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Ofsted contact"); + + b.Property("KeyContactsOfstedContactEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Ofsted contact email"); + + b.Property("KeyContactsOfstedContactPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Ofsted contact phone"); + + b.Property("KeyContactsOfstedContactRole") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Ofsted contact role"); + + b.Property("KeyContactsPlanningAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Planning Adviser"); + + b.Property("KeyContactsPostCodeForMapping") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.PostCode for Mapping"); + + b.Property("KeyContactsPostcode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Postcode"); + + b.Property("KeyContactsPrincipalDesignateEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Principal Designate email"); + + b.Property("KeyContactsPrincipalDesignateName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Principal Designate Name"); + + b.Property("KeyContactsPrincipalDesignatePhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Principal Designate phone"); + + b.Property("KeyContactsPropertyAdviserAllocated") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Property adviser allocated"); + + b.Property("KeyContactsPropertyDocumentRepositoryLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Property document repository link"); + + b.Property("KeyContactsPropertyFirmDealing") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Property firm dealing"); + + b.Property("KeyContactsSchoolAddress") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Key Contacts.School address"); + + b.Property("KeyContactsSeniorExecutiveLeaderEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Senior Executive Leader email"); + + b.Property("KeyContactsSeniorExecutiveLeaderName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Senior Executive Leader name"); + + b.Property("KeyContactsSeniorExecutiveLeaderPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Senior Executive Leader phone"); + + b.Property("KeyContactsStrategicDesignAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Strategic design adviser"); + + b.Property("KeyContactsTechnicalAdvisoryFirm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Technical advisory firm"); + + b.Property("KeyContactsTrustSIctLeadContact") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Trust's ICT lead contact"); + + b.Property("KeyContactsTrustSIctLeadContactEmail") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Trust's ICT lead contact email"); + + b.Property("KeyContactsTrustSIctLeadContactPhone") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Key Contacts.Trust's ICT lead contact phone"); + + b.Property("LeadSponsorId") + .HasMaxLength(7) + .IsUnicode(false) + .HasColumnType("varchar(7)") + .HasColumnName("Lead sponsor ID"); + + b.Property("LeadSponsorName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Lead sponsor name"); + + b.Property("LocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local authority"); + + b.Property("MatUnitProjects") + .IsRequired() + .HasMaxLength(32) + .IsUnicode(false) + .HasColumnType("varchar(32)") + .HasColumnName("MAT Unit Projects"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ProjectStatusActualDateOfOpeningInPermanentAccommodation") + .HasColumnType("date") + .HasColumnName("Project Status.Actual date of opening in permanent accommodation"); + + b.Property("ProjectStatusActualDateOfOpeningInTemporaryAccommodation") + .HasColumnType("date") + .HasColumnName("Project Status.Actual date of opening in temporary accommodation"); + + b.Property("ProjectStatusActualOpeningDate") + .HasColumnType("date") + .HasColumnName("Project Status.Actual opening date"); + + b.Property("ProjectStatusCommentaryForCancellation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Commentary for cancellation"); + + b.Property("ProjectStatusCommentaryForFirstDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Commentary for first deferral"); + + b.Property("ProjectStatusCommentaryForSecondDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Commentary for second deferral"); + + b.Property("ProjectStatusCommentaryForThirdDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Commentary for third deferral"); + + b.Property("ProjectStatusCommentaryForWithdrawal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Commentary for withdrawal"); + + b.Property("ProjectStatusCurrentFreeSchoolName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Current free school name"); + + b.Property("ProjectStatusDateCancelled") + .HasColumnType("date") + .HasColumnName("Project Status.Date cancelled"); + + b.Property("ProjectStatusDateClosed") + .HasColumnType("date") + .HasColumnName("Project Status.Date closed"); + + b.Property("ProjectStatusDateOfApplicationIfOutsideWave") + .HasColumnType("date") + .HasColumnName("Project Status.Date of application if outside wave"); + + b.Property("ProjectStatusDateOfEntryIntoPreOpening") + .HasColumnType("date") + .HasColumnName("Project Status.Date of entry into pre-opening"); + + b.Property("ProjectStatusDateOfFirstDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.Date of first deferral"); + + b.Property("ProjectStatusDateOfSecondDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.Date of second deferral"); + + b.Property("ProjectStatusDateOfThirdDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.Date of third deferral"); + + b.Property("ProjectStatusDateWithdrawn") + .HasColumnType("date") + .HasColumnName("Project Status.Date withdrawn"); + + b.Property("ProjectStatusFreeSchoolApplicationWave") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Free school application wave"); + + b.Property("ProjectStatusFreeSchoolPenPortrait") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Project Status.Free school pen portrait"); + + b.Property("ProjectStatusFreeSchoolsApplicationNumber") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("Project Status.Free schools application number"); + + b.Property("ProjectStatusHasProjectBeenCancelled") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has project been cancelled?"); + + b.Property("ProjectStatusHasProjectBeenDeferredForASecondTime") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has project been deferred for a second time?"); + + b.Property("ProjectStatusHasProjectBeenDeferredForAThirdTime") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has project been deferred for a third time?"); + + b.Property("ProjectStatusHasProjectBeenWithdrawn") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has project been withdrawn?"); + + b.Property("ProjectStatusHasTheFreeSchoolChangedItsName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has the free school changed its name?"); + + b.Property("ProjectStatusHasTheProjectBeenDeferred") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Has the project been deferred?"); + + b.Property("ProjectStatusKp05ReasonForSiteDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.KP05_Reason for site deferral"); + + b.Property("ProjectStatusKp06ReasonForSiteDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.KP06_Reason for site deferral"); + + b.Property("ProjectStatusNewOpeningDateFollowingFirstDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.New opening date following first deferral"); + + b.Property("ProjectStatusNewOpeningDateFollowingSecondDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.New opening date following second deferral"); + + b.Property("ProjectStatusNewOpeningDateFollowingThirdDeferral") + .HasColumnType("date") + .HasColumnName("Project Status.New opening date following third deferral"); + + b.Property("ProjectStatusPlannedMoveDateToPermanentSite") + .HasColumnType("date") + .HasColumnName("Project Status.Planned move date to permanent site"); + + b.Property("ProjectStatusPreviousFreeSchoolName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Previous free school name"); + + b.Property("ProjectStatusPrimaryReasonForCancellation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Primary reason for cancellation"); + + b.Property("ProjectStatusPrimaryReasonForFirstDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Primary reason for first deferral"); + + b.Property("ProjectStatusPrimaryReasonForSecondDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Primary reason for second deferral"); + + b.Property("ProjectStatusPrimaryReasonForThirdDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Primary reason for third deferral"); + + b.Property("ProjectStatusPrimaryReasonForWithdrawal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Primary reason for withdrawal"); + + b.Property("ProjectStatusProjectId") + .HasMaxLength(25) + .IsUnicode(false) + .HasColumnType("varchar(25)") + .HasColumnName("Project Status.Project ID"); + + b.Property("ProjectStatusProjectStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Project status"); + + b.Property("ProjectStatusProvisionalOpeningDateAgreedWithTrust") + .HasColumnType("date") + .HasColumnName("Project Status.Provisional opening date agreed with trust"); + + b.Property("ProjectStatusRealisticYearOfOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Realistic year of opening"); + + b.Property("ProjectStatusReasonForSiteCancellation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Reason for site cancellation"); + + b.Property("ProjectStatusReasonForSiteDeferral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Reason for site deferral"); + + b.Property("ProjectStatusReasonForSiteWithdrawal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Reason for site withdrawal"); + + b.Property("ProjectStatusRebrokeredUrn") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Rebrokered URN"); + + b.Property("ProjectStatusTrustsPreferredYearOfOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.Trusts preferred year of opening"); + + b.Property("ProjectStatusUrnWhenGivenOne") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Status.URN (when given one)"); + + b.Property("RatProvisionalOpeningDateAgreedWithTrust") + .HasColumnType("date") + .HasColumnName("RAT Provisional opening date agreed with trust"); + + b.Property("RyooWd") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("RYOO_WD"); + + b.Property("SchoolDetailsAeaCatagory") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.AEA Catagory"); + + b.Property("SchoolDetailsAgeRange") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Age range"); + + b.Property("SchoolDetailsAlternativeProvision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Alternative Provision"); + + b.Property("SchoolDetailsConstituency") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Constituency"); + + b.Property("SchoolDetailsConstituencyID") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Constituency ID"); + + b.Property("SchoolDetailsConstituencyMp") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Constituency MP"); + + b.Property("SchoolDetailsDeprivationDecline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Deprivation decline"); + + b.Property("SchoolDetailsDetailsOfResidentialBoardingProvision") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("School Details.Details of residential/boarding provision"); + + b.Property("SchoolDetailsDistinguishingFeatures") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("School Details.Distinguishing features"); + + b.Property("SchoolDetailsDistrict") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.District"); + + b.Property("SchoolDetailsEfaTerritory") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.EFA Territory"); + + b.Property("SchoolDetailsEmployerPartners") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Employer Partners"); + + b.Property("SchoolDetailsEmployerSponsorsUtcsSsOnly") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Employer sponsors - UTCs/SS only"); + + b.Property("SchoolDetailsFaithStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Faith status"); + + b.Property("SchoolDetailsFaithType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Faith type"); + + b.Property("SchoolDetailsGender") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Gender"); + + b.Property("SchoolDetailsGeographicalRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Geographical Region"); + + b.Property("SchoolDetailsIndependentConverter") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Independent converter"); + + b.Property("SchoolDetailsLaestabWhenGivenOne") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.LAESTAB (when given one)"); + + b.Property("SchoolDetailsLeadSponsorId") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("School Details.Lead sponsor ID"); + + b.Property("SchoolDetailsLeadSponsorName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Lead sponsor name"); + + b.Property("SchoolDetailsLocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Local authority"); + + b.Property("SchoolDetailsLocalAuthorityControl") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Local authority control"); + + b.Property("SchoolDetailsNeetInLa") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.% NEET in LA"); + + b.Property("SchoolDetailsNumberOfFormsOfEntry") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Number of forms of entry"); + + b.Property("SchoolDetailsNursery") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Nursery"); + + b.Property("SchoolDetailsOtherPartners") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Other Partners"); + + b.Property("SchoolDetailsPleaseSpecifyOtherFaithType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Please specify other faith type"); + + b.Property("SchoolDetailsPleaseSpecifyOtherTypeOfProposerGroup") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Please specify other type of proposer group"); + + b.Property("SchoolDetailsPoliticalParty") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Political party"); + + b.Property("SchoolDetailsResidentialOrBoardingProvision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Residential or boarding provision"); + + b.Property("SchoolDetailsRscRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.RSC region"); + + b.Property("SchoolDetailsSchoolPhasePrimarySecondary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.School phase (primary, secondary)"); + + b.Property("SchoolDetailsSchoolTypeMainstreamApEtc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.School type (mainstream, AP etc)"); + + b.Property("SchoolDetailsSixthForm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Sixth form"); + + b.Property("SchoolDetailsSixthFormType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Sixth form type"); + + b.Property("SchoolDetailsSizeOfGoverningBody") + .HasMaxLength(2) + .IsUnicode(false) + .HasColumnType("varchar(2)") + .HasColumnName("School Details.Size of Governing Body"); + + b.Property("SchoolDetailsSpecialEducationNeeds") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Special Education Needs"); + + b.Property("SchoolDetailsSpecialism") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Specialism"); + + b.Property("SchoolDetailsSpecialistResourceProvision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Specialist Resource Provision"); + + b.Property("SchoolDetailsSponsorType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Sponsor type"); + + b.Property("SchoolDetailsStartOfTermDate") + .HasColumnType("date") + .HasColumnName("School Details.Start of term date"); + + b.Property("SchoolDetailsTrustId") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("School Details.Trust ID"); + + b.Property("SchoolDetailsTrustName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Trust name"); + + b.Property("SchoolDetailsTrustType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Trust type"); + + b.Property("SchoolDetailsTypeOfProposerGroup") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.Type of proposer group"); + + b.Property("SchoolDetailsUniversitySponsor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Details.University Sponsor"); + + b.Property("SponsorUnitProjects") + .IsRequired() + .HasMaxLength(39) + .IsUnicode(false) + .HasColumnType("varchar(39)") + .HasColumnName("Sponsor Unit Projects"); + + b.Property("TrustId") + .HasMaxLength(7) + .IsUnicode(false) + .HasColumnType("varchar(7)") + .HasColumnName("Trust ID"); + + b.Property("TrustName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Trust name"); + + b.Property("TrustType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Trust type"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.Property("UpperStatus") + .IsRequired() + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("Upper Status"); + + b.Property("UserId") + .HasColumnType("int"); + + b.Property("Wave") + .IsRequired() + .HasMaxLength(16) + .IsUnicode(false) + .HasColumnType("varchar(16)"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.HasIndex("UserId"); + + b.ToTable("KPI", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("KPIHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.LaData", b => + { + b.Property("LocalAuthoritiesLaCode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.LA Code"); + + b.Property("LocalAuthoritiesCapitalCostTier") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.Capital cost tier"); + + b.Property("LocalAuthoritiesGeographicalRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.Geographical region"); + + b.Property("LocalAuthoritiesLaLondonBased") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.LA London Based"); + + b.Property("LocalAuthoritiesLaName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.LA Name"); + + b.Property("LocalAuthoritiesLondonNotLondon") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.London/Not London"); + + b.Property("LocalAuthoritiesRscRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local Authorities.RSC Region"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.HasKey("LocalAuthoritiesLaCode"); + + b.ToTable("LA_Data", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("LA_DataHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Milestones", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("DraftGovernancePlanAndAssessmentSharedWithEsfa") + .HasColumnType("bit"); + + b.Property("DraftGovernancePlanAndAssessmentSharedWithExpert") + .HasColumnType("bit"); + + b.Property("DraftGovernancePlanAssessedUsingTemplate") + .HasColumnType("bit"); + + b.Property("DraftGovernancePlanDocumentsSavedInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("DraftGovernancePlanFedBackToTrust") + .HasColumnType("bit"); + + b.Property("DraftGovernancePlanReceivedDate") + .HasColumnType("datetime2"); + + b.Property("DraftGovernancePlanReceivedFromTrust") + .HasColumnType("bit"); + + b.Property("EqualitiesAssessmentCompletedEPR") + .HasColumnType("bit"); + + b.Property("EqualitiesAssessmentSavedEPRInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FSGPreOpeningMilestonesEducationBriefPupilAssessmentAndTrackingHistory") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Pupil assessment and tracking history in place"); + + b.Property("FSGPreOpeningMilestonesEducationBriefSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Education Brief Saved To Workplaces"); + + b.Property("FSGPreOpeningMilestonesEducationPlanInBrief") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Education Plan In Brief"); + + b.Property("FSGPreOpeningMilestonesEducationPolicesInBrief") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Education Policies In Brief"); + + b.Property("FSGPreOpeningMilestonesGIASApplicationFormSent") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones.GIASApplicationFormSent"); + + b.Property("FSGPreOpeningMilestonesGIASCheckedTrustInformation") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones.GIASCheckedTrustInformation"); + + b.Property("FSGPreOpeningMilestonesGIASSavedToWorkspaces") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones.GIASSavedToWorkspaces"); + + b.Property("FSGPreOpeningMilestonesGIASURNSent") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones.GIASURNSent"); + + b.Property("FinalGovernancePlanAgreed") + .HasColumnType("bit"); + + b.Property("FinancePlanSavedInWorkplacesFolder") + .HasColumnType("int"); + + b.Property("FsgPreOpeningDeletedAnyCopiesOfChairsDBSCertificate") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningDeletedEmailsContainingSuitabilityAndDeclarationForms") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenProjectBriefToEducationEstates") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Project Brief To Education Estates"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenProjectBriefToNewDeliveryOfficer") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Project Brief To New Delivery Officer"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenProjectBriefToSfso") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Project Brief To Sfso"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenSavedToWorkplacesFolderAnnexB") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Saved To Workplaces Folder AnnexB"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenSavedToWorkplacesFolderAnnexE") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Saved To Workplaces Folder AnnexE"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenSavedToWorkplacesFolderProjectBrief") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Saved To Workplaces Folder Project Brief"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenSentEmailsToRelevantContacts") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Sent Emails To Relevant Contacts"); + + b.Property("FsgPreOpeningMilestoneMovingToOpenSentEmailsToSchoolsPrinciple") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening Milestones. Moving To Open Sent Emails To Schools Principle"); + + b.Property("FsgPreOpeningMilestoneSavedExternalExpertSpecsToWorkplacesFolder") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. saved external expert specs to workplaces folder"); + + b.Property("FsgPreOpeningMilestonesAcceptedOffersComments") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("Fsg Pre Opening Milestones. Accepted Offers Comments"); + + b.Property("FsgPreOpeningMilestonesAcceptedOffersEmailSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Accepted Offers Email Saved To Workplaces"); + + b.Property("FsgPreOpeningMilestonesAdmissionsArrangementsComplyWithPolicies") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Admissions Arrangements Comply With Policies"); + + b.Property("FsgPreOpeningMilestonesAdmissionsArrangementsRecommendedTemplate") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Admissions Arrangements Recommended Template"); + + b.Property("FsgPreOpeningMilestonesAdmissionsArrangementsSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Admissions Arrangements Saved To Workplaces"); + + b.Property("FsgPreOpeningMilestonesAppEvActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.AppEv Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesAppEvApplicable") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.AppEv Applicable"); + + b.Property("FsgPreOpeningMilestonesAppEvBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.AppEv Baseline date"); + + b.Property("FsgPreOpeningMilestonesAppEvForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.AppEv Forecast date"); + + b.Property("FsgPreOpeningMilestonesAppEvReasonNotApplicable") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("FSG Pre Opening Milestones.AppEv - Reason not applicable"); + + b.Property("FsgPreOpeningMilestonesApplicationsEvidenceBuildUpFormSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. applications evidence build up form saved to workplaces"); + + b.Property("FsgPreOpeningMilestonesApplicationsEvidenceComments") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("Fsg Pre Opening Milestones. applications evidence comments"); + + b.Property("FsgPreOpeningMilestonesApplicationsEvidenceConfirmedPupilNumbers") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. applications evidence confirmed pupil numbers"); + + b.Property("FsgPreOpeningMilestonesApplicationsEvidenceUnderwritingAgreementSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. applications evidence underwriting agreement saved to workplaces"); + + b.Property("FsgPreOpeningMilestonesAppointedPrincipalDesignate") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. appointed principal designate"); + + b.Property("FsgPreOpeningMilestonesBefpActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.BEFP Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesBefpApplicable") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.BEFP Applicable"); + + b.Property("FsgPreOpeningMilestonesBefpBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.BEFP Baseline date"); + + b.Property("FsgPreOpeningMilestonesBefpForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.BEFP Forecast date"); + + b.Property("FsgPreOpeningMilestonesBefpReasonNotApplicable") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("FSG Pre Opening Milestones.BEFP - Reason not applicable"); + + b.Property("FsgPreOpeningMilestonesBlockAndContentDetailsToOpenersSpreadSheet") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Block And Content Details To Openers SpreadSheet"); + + b.Property("FsgPreOpeningMilestonesCapacityDataMatchesFundingAgreement") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. capacity data matches funding agreement"); + + b.Property("FsgPreOpeningMilestonesCapacityDataMatchesGiasRegistration") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. capacity data matches gias registration"); + + b.Property("FsgPreOpeningMilestonesCoGappActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.CoGapp Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesCoGappBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.CoGapp Baseline date"); + + b.Property("FsgPreOpeningMilestonesCoGappForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.CoGapp Forecast date"); + + b.Property("FsgPreOpeningMilestonesCommissionedExternalExpertVisit") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. commissioned external expert visit"); + + b.Property("FsgPreOpeningMilestonesCommissionedExternalExpertVisitToSchool") + .HasColumnType("int") + .HasColumnName("Fsg Pre Opening Milestones. commissioned external expert visit to school"); + + b.Property("FsgPreOpeningMilestonesDbscActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSC Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesDbscBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSC Baseline date"); + + b.Property("FsgPreOpeningMilestonesDbscForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSC Forecast date"); + + b.Property("FsgPreOpeningMilestonesDbsiActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSI Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesDbsiBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSI Baseline date"); + + b.Property("FsgPreOpeningMilestonesDbsiForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DBSI Forecast date"); + + b.Property("FsgPreOpeningMilestonesDetailsOfFundingArrangementAgreedBetweenLaAndSponsor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Details of Funding arrangement agreed between LA and Sponsor"); + + b.Property("FsgPreOpeningMilestonesDgpActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DGP Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesDgpBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DGP Baseline date"); + + b.Property("FsgPreOpeningMilestonesDgpForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.DGP Forecast date"); + + b.Property("FsgPreOpeningMilestonesDocumentsAndG6SavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Documents And G6 Saved To Workplaces"); + + b.Property("FsgPreOpeningMilestonesEaoActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAO Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesEaoBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAO Baseline date"); + + b.Property("FsgPreOpeningMilestonesEaoForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAO Forecast date"); + + b.Property("FsgPreOpeningMilestonesEaoMilestoneApplicable") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.EAO - Milestone applicable"); + + b.Property("FsgPreOpeningMilestonesEaoReasonNotApplicable") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("FSG Pre Opening Milestones.EAO - Reason not applicable"); + + b.Property("FsgPreOpeningMilestonesEapolActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAPol Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesEapolBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAPol Baseline date"); + + b.Property("FsgPreOpeningMilestonesEapolForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EAPol Forecast date"); + + b.Property("FsgPreOpeningMilestonesEdBrActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EdBr Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesEdBrBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EdBr Baseline date"); + + b.Property("FsgPreOpeningMilestonesEdBrForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.EdBr Forecast date"); + + b.Property("FsgPreOpeningMilestonesExternalExpertVisitDate") + .HasColumnType("date") + .HasColumnName("Fsg Pre Opening Milestones. external expert visit date"); + + b.Property("FsgPreOpeningMilestonesFaActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FA Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesFaBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FA Baseline date"); + + b.Property("FsgPreOpeningMilestonesFaForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FA Forecast date"); + + b.Property("FsgPreOpeningMilestonesFcpActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FCP Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesFcpBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FCP Baseline date"); + + b.Property("FsgPreOpeningMilestonesFcpForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FCP Forecast date"); + + b.Property("FsgPreOpeningMilestonesFfpConfirmedTrustHasProvidedFinalPlan") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesFfpGrade6SignedOffFinalPlanDate") + .HasColumnType("datetime2"); + + b.Property("FsgPreOpeningMilestonesFfpSavedFinalPlanInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesFfpSentFinalPlanToRevenueFundingMailbox") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesFgpaActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FGPA Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesFgpaBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FGPA Baseline date"); + + b.Property("FsgPreOpeningMilestonesFgpaForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FGPA Forecast date"); + + b.Property("FsgPreOpeningMilestonesFpaActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FPA Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesFpaBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FPA Baseline date"); + + b.Property("FsgPreOpeningMilestonesFpaForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FPA Forecast date"); + + b.Property("FsgPreOpeningMilestonesFsrdActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FSRD Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesFsrdBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FSRD Baseline date"); + + b.Property("FsgPreOpeningMilestonesFsrdForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.FSRD Forecast date"); + + b.Property("FsgPreOpeningMilestonesFundingArrangementAgreedBetweenLaAndSponsor") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesGiasActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.GIAS Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesGiasBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.GIAS Baseline date"); + + b.Property("FsgPreOpeningMilestonesGiasForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.GIAS Forecast date"); + + b.Property("FsgPreOpeningMilestonesHaveYouCompletedAndSavedYourRiskAppraisalForm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Have you completed and saved your Risk Appraisal Form?"); + + b.Property("FsgPreOpeningMilestonesIaeaActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.IAEA Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesIaeaBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.IAEA Baseline date"); + + b.Property("FsgPreOpeningMilestonesIaeaForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.IAEA Forecast date"); + + b.Property("FsgPreOpeningMilestonesImpactAssessmentDone") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening. Milestones Impact Assessment Done"); + + b.Property("FsgPreOpeningMilestonesImpactAssessmentSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("FSG Pre Opening. Milestones Impact Assessment Saved To Workplaces"); + + b.Property("FsgPreOpeningMilestonesInspectionBlockDecided") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Inspection Block Decided"); + + b.Property("FsgPreOpeningMilestonesInspectionConditionsMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Inspection conditions met?"); + + b.Property("FsgPreOpeningMilestonesIsThisProjectRatedHighOrLowRiskForEducation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Is this project rated high or low risk for education?"); + + b.Property("FsgPreOpeningMilestonesIsThisProjectRatedHighOrLowRiskForFinance") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Is this project rated high or low risk for finance?"); + + b.Property("FsgPreOpeningMilestonesIsThisProjectRatedHighOrLowRiskForGovernance") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Is this project rated high or low risk for governance?"); + + b.Property("FsgPreOpeningMilestonesKickOffMeetingHeldActualDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.Kick off meeting held Actual Date"); + + b.Property("FsgPreOpeningMilestonesKickoffMeetingDocumentsSavedInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesLinkToRiskAppraisalForm") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Link to Risk Appraisal Form"); + + b.Property("FsgPreOpeningMilestonesMaaActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MAA Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesMaaBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MAA Baseline date"); + + b.Property("FsgPreOpeningMilestonesMaaForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MAA Forecast date"); + + b.Property("FsgPreOpeningMilestonesMfadActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MFAD Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesMfadBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MFAD Baseline date"); + + b.Property("FsgPreOpeningMilestonesMfadDraftedFaHealthCheck") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadDraftedFaSubmission") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.MFAD Forecast date"); + + b.Property("FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadMinisterSignedOffFaHealthCheck") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadMinisterSignedOffFaSubmission") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaHealthCheck") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadRegionalDirectorSignedOffFaSubmission") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadSavedFaDocumentsInWorkspacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadSavedFaHealthCheckInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadSavedFaSubmissionInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadSharedFaWithTheTrust") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadTailoredAModelFundingAgreement") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadTrustAgreesWithModelFa") + .HasColumnType("int"); + + b.Property("FsgPreOpeningMilestonesMi101CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI101_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi103CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI103_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi105LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI105_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi107LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI107_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi109LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI109_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi111LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI111_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi113LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI113_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi115LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI115_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi117LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI117_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi119LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI119_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi121LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI121_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi123LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI123_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi125LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI125_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi127LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI127_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi129LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI129_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi131LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI131_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi133LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI133_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi135LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI135_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi137LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI137_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi139LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI139_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi141LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI141_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi143LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI143_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi145LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI145_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi147LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI147_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi149LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI149_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi151LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI151_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi153LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI153_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi155LinkToSavedDocument") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("FSG Pre Opening Milestones.MI155_Link to saved document"); + + b.Property("FsgPreOpeningMilestonesMi54CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI54_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi56CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI56_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi58CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI58_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi60CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI60_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi62CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI62_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi64CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI64_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi66CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI66_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi68CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI68_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi70CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI70_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi72CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI72_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi74CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI74_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi76CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI76_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi78CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI78_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi80CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI80_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi81CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI81_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi83CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI83_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi85CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI85_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi87CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI87_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi89CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI89_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi91CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI91_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi93CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI93_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi95CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI95_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi97CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI97_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesMi99CommentsOnDecisionToApproveIfApplicable") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("FSG Pre Opening Milestones.MI99_Comments on decision to approve (if applicable)"); + + b.Property("FsgPreOpeningMilestonesOfstedAndTrustLiaisonDetailsConfirmed") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Ofsted And Trust Liaison Details Confirmed"); + + b.Property("FsgPreOpeningMilestonesOprActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.OPR Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesOprBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.OPR Baseline date"); + + b.Property("FsgPreOpeningMilestonesOprForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.OPR Forecast date"); + + b.Property("FsgPreOpeningMilestonesOutcomeOfInspectionAsAdvisedByOfsted") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Outcome of inspection as advised by Ofsted"); + + b.Property("FsgPreOpeningMilestonesOutcomeOfRom") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.Outcome of ROM"); + + b.Property("FsgPreOpeningMilestonesPdappActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PDapp Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesPdappBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PDapp Baseline date"); + + b.Property("FsgPreOpeningMilestonesPdappForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PDapp Forecast date"); + + b.Property("FsgPreOpeningMilestonesPfacmActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PFACM Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesPfacmBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PFACM Baseline date"); + + b.Property("FsgPreOpeningMilestonesPfacmForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.PFACM Forecast date"); + + b.Property("FsgPreOpeningMilestonesPfacmMilestoneApplicable") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.PFACM - Milestone applicable"); + + b.Property("FsgPreOpeningMilestonesPfacmReasonNotApplicable") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("FSG Pre Opening Milestones.PFACM - Reason not applicable"); + + b.Property("FsgPreOpeningMilestonesProcessDetailsProvided") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Process Details Provided"); + + b.Property("FsgPreOpeningMilestonesProposedToOpenOnGias") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Proposed To Open On Gias"); + + b.Property("FsgPreOpeningMilestonesRomActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.ROM Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesRomBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.ROM Baseline date"); + + b.Property("FsgPreOpeningMilestonesRomConditionsMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.ROM conditions met?"); + + b.Property("FsgPreOpeningMilestonesRomForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.ROM Forecast date"); + + b.Property("FsgPreOpeningMilestonesRomReasonNotApplicable") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("FSG Pre Opening Milestones.ROM - Reason not applicable"); + + b.Property("FsgPreOpeningMilestonesS9lActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.S9L Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesS9lBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.S9L Baseline date"); + + b.Property("FsgPreOpeningMilestonesS9lForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.S9L Forecast date"); + + b.Property("FsgPreOpeningMilestonesSapActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SAP Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesSapBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SAP Baseline date"); + + b.Property("FsgPreOpeningMilestonesSapForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SAP Forecast Date"); + + b.Property("FsgPreOpeningMilestonesSccActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCC Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesSccBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCC Baseline date"); + + b.Property("FsgPreOpeningMilestonesSccForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCC Forecast date"); + + b.Property("FsgPreOpeningMilestonesSchoolReceivedEnoughApplications") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. school received enough applications"); + + b.Property("FsgPreOpeningMilestonesScrActualDateOfCompletion") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCR Actual date of completion"); + + b.Property("FsgPreOpeningMilestonesScrBaselineDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCR Baseline date"); + + b.Property("FsgPreOpeningMilestonesScrForecastDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.SCR Forecast date"); + + b.Property("FsgPreOpeningMilestonesScrFulfilsSection10StatutoryDuty") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesScrReceived") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesScrSavedFindingsInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesSeenEvidenceOfAcceptedOffers") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Seen Evidence Of Accepted Offers"); + + b.Property("FsgPreOpeningMilestonesSharedOutcomeWithTrust") + .HasColumnType("bit") + .HasColumnName("Fsg Pre Opening Milestones. Shared Outcome With Trust"); + + b.Property("FsgPreOpeningMilestonesSiteKickOffMeetingHeldActualDate") + .HasColumnType("date") + .HasColumnName("FSG Pre Opening Milestones.Site Kick off meeting held ( actual date)"); + + b.Property("FsgPreOpeningMilestonesViewCostPlan1") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.View Cost Plan 1"); + + b.Property("FsgPreOpeningMilestonesViewCostPlan2") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSG Pre Opening Milestones.View Cost Plan 2"); + + b.Property("FsgPreOpeningNonSpecialistChecksDoneOnAllTrustMembersAndTrustees") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningReceivedChairOfTrusteesCountersignedCertificate") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningRequestedCounterExtremismChecks") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningSavedNonSpecialistChecksSpreadsheetInWorkplaces") + .HasColumnType("bit"); + + b.Property("GovernancePlanAndAssessmentSharedWithLocalAuthority") + .HasColumnType("bit"); + + b.Property("LAAgreedPupilNumbers") + .HasColumnType("int"); + + b.Property("MAAArrangementsMatchGovernancePlans") + .HasColumnType("bit"); + + b.Property("MAAChairHaveSubmittedConfirmation") + .HasColumnType("bit"); + + b.Property("MAACheckedSubmittedArticlesMatch") + .HasColumnType("bit"); + + b.Property("PFACMCommissionedAnExternalExpertToAttendMeetingsIfApplicable") + .HasColumnType("bit"); + + b.Property("PFACMSavedMeetingNoteInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("PFACMSentAnEmailToTheTrust") + .HasColumnType("bit"); + + b.Property("PFACMTypeOfMeetingHeld") + .HasColumnType("nvarchar(max)"); + + b.Property("PFACMWhyAMeetingWasNotHeld") + .HasColumnType("nvarchar(max)"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ROMCommissionedAnExternalExpertToAttendMeetingsIfApplicable") + .HasColumnType("bit"); + + b.Property("ROMPrincipalDesignateHasProvidedChecklist") + .HasColumnType("bit"); + + b.Property("ROMSavedTheExternalROMReportInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("ROMSavedTheInternalROMReportInWorkplacesFolder") + .HasColumnType("bit"); + + b.Property("ROMTypeOfMeetingHeld") + .HasColumnType("nvarchar(max)"); + + b.Property("ROMWhyAMeetingWasNotHeld") + .HasColumnType("nvarchar(max)"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("Milestones", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("MilestonesHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.OfstedArchive", b => + { + b.Property("InspectionDate") + .HasColumnType("date") + .HasColumnName("Inspection date"); + + b.Property("OfstedRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Rating"); + + b.Property("Urn") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("URN"); + + b.ToTable("Ofsted_Archive", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.OfstedFsg", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("EducationalEstablishmentAddressPostcode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.Address postcode"); + + b.Property("EducationalEstablishmentConstituency") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.Constituency"); + + b.Property("EducationalEstablishmentDateClosed") + .HasColumnType("date") + .HasColumnName("Educational Establishment.Date Closed"); + + b.Property("EducationalEstablishmentDistrict") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.District"); + + b.Property("EducationalEstablishmentLaestab") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.LAESTAB"); + + b.Property("EducationalEstablishmentLocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.Local authority"); + + b.Property("EducationalEstablishmentOpenDate") + .HasColumnType("date") + .HasColumnName("Educational Establishment.Open date"); + + b.Property("EducationalEstablishmentRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.Region"); + + b.Property("EducationalEstablishmentRscRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.RSC Region"); + + b.Property("EducationalEstablishmentSchoolName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.School name"); + + b.Property("EducationalEstablishmentSchoolPhase") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.School phase"); + + b.Property("EducationalEstablishmentSchoolType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.School type"); + + b.Property("EducationalEstablishmentStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Educational Establishment.Status"); + + b.Property("EducationalEstablishmentUrn") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("Educational Establishment.URN"); + + b.Property("LocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local authority"); + + b.Property("OfstedDataModerationDate") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Moderation date"); + + b.Property("OfstedDataModerationDateL") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Moderation date L"); + + b.Property("OfstedDataNumberOfMonthsInCategory4") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Number of months in Category 4"); + + b.Property("OfstedDataNumberOfMonthsInCategory4L") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Number of months in Category 4 L"); + + b.Property("OfstedDataOfstedSection5CategoryOfConcern") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Category Of Concern"); + + b.Property("OfstedDataOfstedSection5CategoryOfConcernL") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Category Of Concern L"); + + b.Property("OfstedDataOfstedSection5DateInCategory4") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 Date in Category 4"); + + b.Property("OfstedDataOfstedSection5DateInCategory4L") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 Date in Category 4 L"); + + b.Property("OfstedDataOfstedSection5DateOutOfCategory4") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 Date out of Category 4"); + + b.Property("OfstedDataOfstedSection5DateOutOfCategory4L") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 Date out of Category 4 L"); + + b.Property("OfstedDataOfstedSection5EffectivenessLeadershipAndManagement") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Effectiveness leadership and management"); + + b.Property("OfstedDataOfstedSection5InspectionDate") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 inspection date"); + + b.Property("OfstedDataOfstedSection5InspectionDateL") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 5 inspection date L"); + + b.Property("OfstedDataOfstedSection5OutcomesForChildrenAndLearners") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Outcomes for children and learners"); + + b.Property("OfstedDataOfstedSection5OverallEffectiveness") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Overall effectiveness"); + + b.Property("OfstedDataOfstedSection5OverallEffectivenessL") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Overall effectiveness L"); + + b.Property("OfstedDataOfstedSection5PersonalDevelopmentBehaviourAndWelfare") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Personal development, behaviour and welfare"); + + b.Property("OfstedDataOfstedSection5QualityOfTeachingLearningAndAssessment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Quality of teaching, learning and assessment"); + + b.Property("OfstedDataOfstedSection5SixthFormProvision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 5 Sixth form provision"); + + b.Property("OfstedDataOfstedSection8InspectionDate") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Ofsted section 8 inspection date"); + + b.Property("OfstedDataOfstedSection8Judgement") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Ofsted section 8 judgement"); + + b.Property("OfstedDataPreviousOfstedSection5InspectionDate") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Previous Ofsted section 5 inspection date"); + + b.Property("OfstedDataPreviousOfstedSection5InspectionDateL") + .HasColumnType("date") + .HasColumnName("Ofsted Data.Previous Ofsted section 5 inspection date L"); + + b.Property("OfstedDataPreviousOfstedSection5OverallEffectiveness") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Previous Ofsted section 5 Overall effectiveness"); + + b.Property("OfstedDataPreviousOfstedSection5OverallEffectivenessL") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Ofsted Data.Previous Ofsted section 5 Overall effectiveness L"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("Phase") + .IsRequired() + .HasMaxLength(3) + .IsUnicode(false) + .HasColumnType("varchar(3)"); + + b.Property("ProjectUrn") + .HasMaxLength(25) + .IsUnicode(false) + .HasColumnType("varchar(25)") + .HasColumnName("Project URN"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("Ofsted_FSG", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("Ofsted_FSGHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Opens", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("CurrentStatusCaseNote") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Current Status.Case note"); + + b.Property("CurrentStatusDateOfLatestCaseNote") + .HasColumnType("date") + .HasColumnName("Current Status.Date of latest case note"); + + b.Property("CurrentStatusDueDiligenceConcerns") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Current Status.Due diligence concerns?"); + + b.Property("CurrentStatusEfaTerritoryConcernLevel") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Current Status.EFA territory concern level"); + + b.Property("CurrentStatusFinancialConcerns") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Current Status.Financial concerns"); + + b.Property("CurrentStatusGovernanceAndCompliance") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Current Status.Governance and compliance"); + + b.Property("CurrentStatusIntervention") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Current Status.Intervention"); + + b.Property("CurrentStatusIrregularity") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Current Status.Irregularity"); + + b.Property("CurrentStatusPrincipalSameAsOnOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Current Status.Principal same as on opening"); + + b.Property("FinancialChecksAdditionalDebtDeficit") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Additional Debt/ Deficit"); + + b.Property("FinancialChecksBudgetReturnSubmittedByLastDeadline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Budget return submitted by last deadline"); + + b.Property("FinancialChecksFinancialNoticeToImproveIssued") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Financial Notice to Improve issued"); + + b.Property("FinancialChecksFinancialStatementsQualified") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Financial statements qualified"); + + b.Property("FinancialChecksFinancialStatementsSubmittedByLastDeadline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Financial statements submitted by last deadline"); + + b.Property("FinancialChecksFmgsReturnSubmittedByLastDeadline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.FMGS return submitted by last deadline"); + + b.Property("FinancialChecksMindedToIssueFnti") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Minded to issue FNTI"); + + b.Property("FinancialChecksMostRecentAuditedAccountsReceivedOnTime") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Most recent audited accounts received on time"); + + b.Property("FinancialChecksProjectDevelopmentGrantFinalReturnReceived") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Project Development Grant final return received"); + + b.Property("FinancialChecksRegularityOpinionQualified") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Regularity opinion qualified"); + + b.Property("FinancialChecksTotalOutstandingPna") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Total Outstanding PNA"); + + b.Property("FinancialChecksTotalRevenueLiabilities") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Checks.Total Revenue Liabilities"); + + b.Property("OpenPupilNumbersAcceptedApplicationsYr10ForNextYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Accepted applications Yr 10 for next year"); + + b.Property("OpenPupilNumbersAcceptedApplicationsYr12ForNextYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Accepted applications Yr 12 for next year"); + + b.Property("OpenPupilNumbersApplicationsYr10ForTheComingYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Applications Yr 10 for the coming year"); + + b.Property("OpenPupilNumbersApplicationsYr12ForTheComingYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Applications Yr 12 for the coming year"); + + b.Property("OpenPupilNumbersCapacityAgreedInPreOpening") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Capacity agreed in pre-opening"); + + b.Property("OpenPupilNumbersCensusDate") + .HasColumnType("date") + .HasColumnName("Open Pupil Numbers.Census date"); + + b.Property("OpenPupilNumbersCurrentPupilsOnRoll") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Current pupils on roll"); + + b.Property("OpenPupilNumbersDateEfaRingRoundPupilNumbersUpdated") + .HasColumnType("date") + .HasColumnName("Open Pupil Numbers.Date EFA ring round pupil numbers updated"); + + b.Property("OpenPupilNumbersEfaRingRoundPupilNumbers") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.EFA ring round pupil numbers"); + + b.Property("OpenPupilNumbersFull") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.%full"); + + b.Property("OpenPupilNumbersFundedNumberForTheComingYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Funded number for the coming year"); + + b.Property("OpenPupilNumbersFundedNumberForTheCurrentAcademicYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Funded number for the current academic year"); + + b.Property("OpenPupilNumbersNorAsOfFundedNumber") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.NOR as % of funded number"); + + b.Property("OpenPupilNumbersReception") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Reception"); + + b.Property("OpenPupilNumbersTotal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.Total"); + + b.Property("OpenPupilNumbersViabilityThresholdForTheComingYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Viability threshold for the coming year"); + + b.Property("OpenPupilNumbersViabilityThresholdForTheCurrentAcademicYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Viability threshold for the current academic year"); + + b.Property("OpenPupilNumbersY12Y14Total") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.Y12 - Y14 Total"); + + b.Property("OpenPupilNumbersY7Y11Total") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.Y7 - Y11 Total"); + + b.Property("OpenPupilNumbersYear1") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 1"); + + b.Property("OpenPupilNumbersYear10") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 10"); + + b.Property("OpenPupilNumbersYear11") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 11"); + + b.Property("OpenPupilNumbersYear12") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 12"); + + b.Property("OpenPupilNumbersYear13") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 13"); + + b.Property("OpenPupilNumbersYear14") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 14"); + + b.Property("OpenPupilNumbersYear2") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 2"); + + b.Property("OpenPupilNumbersYear3") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 3"); + + b.Property("OpenPupilNumbersYear4") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 4"); + + b.Property("OpenPupilNumbersYear5") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 5"); + + b.Property("OpenPupilNumbersYear6") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 6"); + + b.Property("OpenPupilNumbersYear7") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 7"); + + b.Property("OpenPupilNumbersYear8") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 8"); + + b.Property("OpenPupilNumbersYear9") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Open Pupil Numbers.Year 9"); + + b.Property("OpenPupilNumbersYrY6Total") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Open Pupil Numbers.YR - Y6 Total"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("Opens", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("OpensHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Pdfd", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ProjectDirectorForecastingDashboardActualDateOfOpeningActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Actual date of opening (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardAllPupilsOutOfTemporaryAccommodationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.All pupils out of temporary accommodation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardAllPupilsOutOfTemporaryAccommodationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.All pupils out of temporary accommodation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardAllPupilsOutOfTemporaryAccommodationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.All pupils out of temporary accommodation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardAllPupilsOutOfTemporaryAccommodationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.All pupils out of temporary accommodation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardCapitalProjectRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Capital Project RAG Rating"); + + b.Property("ProjectDirectorForecastingDashboardCapitalProjectRagRatingCommentary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Project Director Forecasting Dashboard.Capital Project RAG Rating commentary"); + + b.Property("ProjectDirectorForecastingDashboardCompleteOnSiteForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Complete on site for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardCompleteOnSiteForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Complete on site for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardCompleteOnSiteForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Complete on site for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardCompleteOnSiteForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Complete on site for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardConstruction") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Construction"); + + b.Property("ProjectDirectorForecastingDashboardConstructionCommentary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Project Director Forecasting Dashboard.Construction commentary"); + + b.Property("ProjectDirectorForecastingDashboardContractorAppointedForMainSchoolBuildingSpmEwaPcsaActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Contractor appointed for main school building (SPM, EWA, PCSA) (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardContractorAppointedForMainSchoolBuildingSpmEwaPcsaRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Contractor appointed for main school building (SPM, EWA, PCSA) (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardContractorAppointedForMainSchoolBuildingSpmEwaPcsaRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Contractor appointed for main school building (SPM, EWA, PCSA) (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardContractorAppointedForMainSchoolBuildingSpmEwaPcsaRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Contractor appointed for main school building (SPM, EWA, PCSA) (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfCompletionOnTemporaryAccommodationSiteIfRequiredActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of completion on temporary accommodation site, if required (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfCompletionOnTemporaryAccommodationSiteIfRequiredRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of completion on temporary accommodation site, if required (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfCompletionOnTemporaryAccommodationSiteIfRequiredRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of completion on temporary accommodation site, if required (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfCompletionOnTemporaryAccommodationSiteIfRequiredRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of completion on temporary accommodation site, if required (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of HoT secured on temporary accommodation site, if required (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of HoT secured on temporary accommodation site, if required (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of HoT secured on temporary accommodation site, if required (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of HoT secured on temporary accommodation site, if required (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of positive planning decision notice secured for main school building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of positive planning decision notice secured for main school building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of positive planning decision notice secured for main school building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardDateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Date of positive planning decision notice secured for main school building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardEndOfProjectNoMoreCapitalSpendEndOfDefectsActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.End of Project (No more capital spend/end of defects) (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardEndOfProjectNoMoreCapitalSpendEndOfDefectsRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.End of Project (No more capital spend/end of defects) (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardEndOfProjectNoMoreCapitalSpendEndOfDefectsRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.End of Project (No more capital spend/end of defects) (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardEndOfProjectNoMoreCapitalSpendEndOfDefectsRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.End of Project (No more capital spend/end of defects) (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Contract for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Contract for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Contract for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Contract for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForTheInitialProvisionOfTemporaryAccommodationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into contract for the initial provision of temporary accommodation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForTheInitialProvisionOfTemporaryAccommodationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into contract for the initial provision of temporary accommodation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForTheInitialProvisionOfTemporaryAccommodationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into contract for the initial provision of temporary accommodation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoContractForTheInitialProvisionOfTemporaryAccommodationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into contract for the initial provision of temporary accommodation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoFundingAgreementActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Funding Agreement (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoFundingAgreementRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Funding Agreement (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoFundingAgreementRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Funding Agreement (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardEnterIntoFundingAgreementRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Enter into Funding Agreement (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardEsfaProjectDirectorRp1DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.ESFA Project Director (RP1) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardEsfaProjectDirectorRp2DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.ESFA Project Director (RP2) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardEsfaProjectDirectorRp3DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.ESFA Project Director (RP3) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardExchangeOnSiteForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Exchange on site for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardExchangeOnSiteForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Exchange on site for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardExchangeOnSiteForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Exchange on site for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardExchangeOnSiteForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Exchange on site for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardFdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.FD_Year"); + + b.Property("ProjectDirectorForecastingDashboardFeasibilityStartedForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Feasibility Started for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardFsgLeadContactActualLastUpdated") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.FSG Lead Contact (Actual) (Last Updated)"); + + b.Property("ProjectDirectorForecastingDashboardFsgLeadContactRp1LastUpdated") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.FSG Lead Contact (RP1) (Last Updated)"); + + b.Property("ProjectDirectorForecastingDashboardFsgLeadContactRp2LastUpdated") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.FSG Lead Contact (RP2) (Last Updated)"); + + b.Property("ProjectDirectorForecastingDashboardFsgLeadContactRp3LastUpdated") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.FSG Lead Contact (RP3) (Last Updated)"); + + b.Property("ProjectDirectorForecastingDashboardHoTAgreedForSiteForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.HoT Agreed for site for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardHoTAgreedForSiteForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.HoT Agreed for site for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardHoTAgreedForSiteForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.HoT Agreed for site for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardHoTAgreedForSiteForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.HoT Agreed for site for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredAdditionalTemporaryAccommodationReadyForOccupationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, additional temporary accommodation ready for occupation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredAdditionalTemporaryAccommodationReadyForOccupationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, additional temporary accommodation ready for occupation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredAdditionalTemporaryAccommodationReadyForOccupationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, additional temporary accommodation ready for occupation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredAdditionalTemporaryAccommodationReadyForOccupationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, additional temporary accommodation ready for occupation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredEnterIntoContractForAdditionalTemporaryAccommodationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, enter into contract for additional temporary accommodation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredEnterIntoContractForAdditionalTemporaryAccommodationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, enter into contract for additional temporary accommodation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredEnterIntoContractForAdditionalTemporaryAccommodationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, enter into contract for additional temporary accommodation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardIfRequiredEnterIntoContractForAdditionalTemporaryAccommodationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.If required, enter into contract for additional temporary accommodation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardLastUpdatedByPd") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Last Updated by PD"); + + b.Property("ProjectDirectorForecastingDashboardMainSchoolBuildingFirstReadyForOccupationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Main School Building first ready for occupation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardMainSchoolBuildingFirstReadyForOccupationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Main School Building first ready for occupation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardMainSchoolBuildingFirstReadyForOccupationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Main School Building first ready for occupation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardMainSchoolBuildingFirstReadyForOccupationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Main School Building first ready for occupation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardPlanning") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Planning"); + + b.Property("ProjectDirectorForecastingDashboardPlanningCommentary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Project Director Forecasting Dashboard.Planning commentary"); + + b.Property("ProjectDirectorForecastingDashboardPracticalCompletionOfContractForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Practical completion of contract for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardPracticalCompletionOfContractForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Practical completion of contract for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardPracticalCompletionOfContractForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Practical completion of contract for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardPracticalCompletionOfContractForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Practical completion of contract for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardProperty") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Property"); + + b.Property("ProjectDirectorForecastingDashboardPropertyCommentary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Project Director Forecasting Dashboard.Property commentary"); + + b.Property("ProjectDirectorForecastingDashboardRealisticYearOfOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Realistic Year of Opening"); + + b.Property("ProjectDirectorForecastingDashboardRhFreezeDataForReportingPeriodRp1DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.RH - Freeze data for Reporting Period (RP1) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardRhFreezeDataForReportingPeriodRp2DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.RH - Freeze data for Reporting Period (RP2) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardRhFreezeDataForReportingPeriodRp3DateApproved") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.RH - Freeze data for Reporting Period (RP3) (Date Approved)"); + + b.Property("ProjectDirectorForecastingDashboardSiteIdenfitifiedForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Site idenfitified for main school building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfConstructionOfMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of construction of main school building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfConstructionOfMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of construction of main school building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfConstructionOfMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of construction of main school building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfConstructionOfMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of construction of main school building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfProcurementForMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of procurement for Main School Building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfProcurementForMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of procurement for Main School Building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfProcurementForMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of procurement for Main School Building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardStartOfProcurementForMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Start of procurement for Main School Building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardSubmissionOfPlanningPermissionForPermanentMainSchoolBuildingActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Submission of planning permission for permanent main school building (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardSubmissionOfPlanningPermissionForPermanentMainSchoolBuildingRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Submission of planning permission for permanent main school building (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardSubmissionOfPlanningPermissionForPermanentMainSchoolBuildingRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Submission of planning permission for permanent main school building (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardSubmissionOfPlanningPermissionForPermanentMainSchoolBuildingRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Submission of planning permission for permanent main school building (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardTemporary") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Forecasting Dashboard.Temporary"); + + b.Property("ProjectDirectorForecastingDashboardTemporaryAccommodationFirstReadyForOccupationActual") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Temporary accommodation first ready for occupation (Actual)"); + + b.Property("ProjectDirectorForecastingDashboardTemporaryAccommodationFirstReadyForOccupationRp1") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Temporary accommodation first ready for occupation (RP1)"); + + b.Property("ProjectDirectorForecastingDashboardTemporaryAccommodationFirstReadyForOccupationRp2") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Temporary accommodation first ready for occupation (RP2)"); + + b.Property("ProjectDirectorForecastingDashboardTemporaryAccommodationFirstReadyForOccupationRp3") + .HasColumnType("date") + .HasColumnName("Project Director Forecasting Dashboard.Temporary accommodation first ready for occupation (RP3)"); + + b.Property("ProjectDirectorForecastingDashboardTemporaryCommentary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Project Director Forecasting Dashboard.Temporary commentary"); + + b.HasKey("Rid"); + + b.ToTable("PDFD", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PDFDHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.PdfdArchive", b => + { + b.Property("ActualDateOfOpeningActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Actual date of opening (Actual)"); + + b.Property("AllPupilsOutOfTemporaryAccommodationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("All pupils out of temporary accommodation (Actual)"); + + b.Property("AllPupilsOutOfTemporaryAccommodationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("All pupils out of temporary accommodation (Forecast)"); + + b.Property("CapitalProjectRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Capital Project RAG Rating"); + + b.Property("CompleteOnSiteAcquisitionForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Complete on site acquisition for Main School Building (Actual)"); + + b.Property("CompleteOnSiteAcquisitionForMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Complete on site acquisition for Main School Building (Forecast)"); + + b.Property("ContractorAppointedForMainSchoolBuildingSpmEwaPcsaActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contractor appointed for main school building (SPM, EWA, PCSA) (Actual)"); + + b.Property("ContractorAppointedForMainSchoolBuildingSpmEwaPcsaForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Contractor appointed for main school building (SPM, EWA, PCSA) (Forecast)"); + + b.Property("DateHoTSecuredOnSiteForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date HoT secured on site for main school building (Actual)"); + + b.Property("DateHoTSecuredOnSiteForMainSchoolBuildingBaseline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date HoT secured on site for main school building (Baseline)"); + + b.Property("DateOfCompletionOnTemporaryAccommodationSiteIfRequiredActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of completion on temporary accommodation site, if required (Actual)"); + + b.Property("DateOfCompletionOnTemporaryAccommodationSiteIfRequiredForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of completion on temporary accommodation site, if required (Forecast)"); + + b.Property("DateOfExchangeOnSiteForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of exchange on site for main school building (Actual)"); + + b.Property("DateOfExchangeOnSiteForMainSchoolBuildingBaseline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of exchange on site for main school building (Baseline)"); + + b.Property("DateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of HoT secured on temporary accommodation site, if required (Actual)"); + + b.Property("DateOfHoTSecuredOnTemporaryAccommodationSiteIfRequiredForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of HoT secured on temporary accommodation site, if required (Forecast)"); + + b.Property("DateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of positive planning decision notice secured for main school building (Actual)"); + + b.Property("DateOfPositivePlanningDecisionNoticeSecuredForMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Date of positive planning decision notice secured for main school building (Forecast)"); + + b.Property("EndOfProjectNoMoreCapitalSpendEndOfDefectsActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("End of Project (No more capital spend/end of defects) (Actual)"); + + b.Property("EndOfProjectNoMoreCapitalSpendEndOfDefectsForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("End of Project (No more capital spend/end of defects) (Forecast)"); + + b.Property("EnterIntoContractForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into Contract for Main School Building (Actual)"); + + b.Property("EnterIntoContractForMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into Contract for Main School Building (Forecast)"); + + b.Property("EnterIntoContractForTheInitialProvisionOfTemporaryAccommodationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into contract for the initial provision of temporary accommodation (Actual)"); + + b.Property("EnterIntoContractForTheInitialProvisionOfTemporaryAccommodationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into contract for the initial provision of temporary accommodation (Forecast)"); + + b.Property("EnterIntoFundingAgreementActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into Funding Agreement (Actual)"); + + b.Property("EnterIntoFundingAgreementForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Enter into Funding Agreement (Forecast)"); + + b.Property("FeasibilityStartedForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Feasibility Started for Main School Building (Actual)"); + + b.Property("FreeSchoolName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Free School Name"); + + b.Property("HeadOfRegion") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Head of Region"); + + b.Property("IfRequiredAdditionalTemporaryAccommodationReadyForOccupationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("If required, additional temporary accommodation ready for occupation (Actual)"); + + b.Property("IfRequiredAdditionalTemporaryAccommodationReadyForOccupationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("If required, additional temporary accommodation ready for occupation (Forecast)"); + + b.Property("IfRequiredEnterIntoContractForAdditionalTemporaryAccommodationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("If required, enter into contract for additional temporary accommodation (Actual)"); + + b.Property("IfRequiredEnterIntoContractForAdditionalTemporaryAccommodationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("If required, enter into contract for additional temporary accommodation (Forecast)"); + + b.Property("MainSchoolBuildingFirstReadyToBeOpenedForOccupationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Main school building first ready to be opened for occupation (Actual)"); + + b.Property("MainSchoolBuildingFirstReadyToBeOpenedForOccupationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Main school building first ready to be opened for occupation (Forecast)"); + + b.Property("Month") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.Property("PracticalCompletionOfContractForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Practical completion of contract for Main School Building (Actual)"); + + b.Property("PracticalCompletionOfContractForMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Practical completion of contract for Main School Building (Forecast)"); + + b.Property("ProjectDirector") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director"); + + b.Property("ProjectDirectorApproval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Director Approval"); + + b.Property("ProjectId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project ID"); + + b.Property("ProjectManager") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Manager"); + + b.Property("RealisticYearOfOpening") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Realistic Year of Opening"); + + b.Property("RegionalHeadFreezeDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Regional Head - Freeze Date"); + + b.Property("SiteIdentifiedForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site identified for main school building (Actual)"); + + b.Property("StartOfConstructionOfMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Start of construction of main school building (Actual)"); + + b.Property("StartOfConstructionOfMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Start of construction of main school building (Forecast)"); + + b.Property("StartOfProcurementForMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Start of procurement for Main School Building (Actual)"); + + b.Property("StartOfProcurementForMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Start of procurement for Main School Building (Forecast)"); + + b.Property("SubmissionOfPlanningPermissionForPermanentMainSchoolBuildingActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Submission of planning permission for permanent main school building (Actual)"); + + b.Property("SubmissionOfPlanningPermissionForPermanentMainSchoolBuildingForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Submission of planning permission for permanent main school building (Forecast)"); + + b.Property("TemporaryAccommodationFirstReadyForOccupationActual") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary accommodation first ready for occupation (Actual)"); + + b.Property("TemporaryAccommodationFirstReadyForOccupationForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary accommodation first ready for occupation (Forecast)"); + + b.ToTable("PDFD_Archive", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Pdgl", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ProjectDeliveryGrantLetterPdglId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Delivery Grant Letter.PDGL ID"); + + b.Property("ProjectDeliveryGrantLetterProjectDeliveryGrantLetterIssuedDate") + .HasColumnType("date") + .HasColumnName("Project Delivery Grant Letter.Project Delivery Grant Letter issued date"); + + b.Property("ProjectDeliveryGrantLetterProjectDeliveryGrantLetterTotalValue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Delivery Grant Letter.Project Delivery Grant Letter total value"); + + b.HasKey("Rid"); + + b.ToTable("PDGL", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PDGLHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.PerfFsg", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("SchoolPerformanceDataKs1Ks2ValueAdded") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS1-KS2 value added"); + + b.Property("SchoolPerformanceDataKs2AverageScoreInMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 Average score in maths"); + + b.Property("SchoolPerformanceDataKs2AverageScoreInReading") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 Average score in reading"); + + b.Property("SchoolPerformanceDataKs2EngProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 Eng progress"); + + b.Property("SchoolPerformanceDataKs2ExpectedStandardInMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 expected standard in maths"); + + b.Property("SchoolPerformanceDataKs2ExpectedStandardInReading") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 expected standard in reading"); + + b.Property("SchoolPerformanceDataKs2ExpectedStandardInReadingWritingAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 expected standard in reading writing and maths"); + + b.Property("SchoolPerformanceDataKs2ExpectedStandardInWriting") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 expected standard in writing"); + + b.Property("SchoolPerformanceDataKs2HighInMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 high in maths"); + + b.Property("SchoolPerformanceDataKs2HighInReading") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 high in reading"); + + b.Property("SchoolPerformanceDataKs2HighInReadingWritingAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 high in reading, writing and maths"); + + b.Property("SchoolPerformanceDataKs2HighInWriting") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 high in writing"); + + b.Property("SchoolPerformanceDataKs2Ks4ValueAdded") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2-KS4 value added"); + + b.Property("SchoolPerformanceDataKs2Ks4ValueAddedPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2-KS4 value added Pr"); + + b.Property("SchoolPerformanceDataKs2Level4EngMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 4+ Eng maths"); + + b.Property("SchoolPerformanceDataKs2Level4Maths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 4+ maths"); + + b.Property("SchoolPerformanceDataKs2Level4ReadWriteMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 4+ read write maths"); + + b.Property("SchoolPerformanceDataKs2Level4Reading") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 4+ reading"); + + b.Property("SchoolPerformanceDataKs2Level4Writing") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 4+ writing"); + + b.Property("SchoolPerformanceDataKs2Level5EngMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 5+ Eng maths"); + + b.Property("SchoolPerformanceDataKs2Level5Maths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 5+ maths"); + + b.Property("SchoolPerformanceDataKs2Level5ReadWriteMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 5+ read write maths"); + + b.Property("SchoolPerformanceDataKs2Level5Reading") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 5+ reading"); + + b.Property("SchoolPerformanceDataKs2Level5Writing") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 level 5+ writing"); + + b.Property("SchoolPerformanceDataKs2MathsProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 maths progress"); + + b.Property("SchoolPerformanceDataKs2MathsProgressLowerConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 maths progress lower confidence interval"); + + b.Property("SchoolPerformanceDataKs2MathsProgressScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 maths progress score"); + + b.Property("SchoolPerformanceDataKs2MathsProgressUpperConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 maths progress upper confidence interval"); + + b.Property("SchoolPerformanceDataKs2Pupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 pupils"); + + b.Property("SchoolPerformanceDataKs2PupilsAchievingAHighScoreInReadingWritingAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 pupils achieving a high score in reading, writing and maths"); + + b.Property("SchoolPerformanceDataKs2ReadProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 read progress"); + + b.Property("SchoolPerformanceDataKs2ReadingProgressLowerConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 reading progress lower confidence interval"); + + b.Property("SchoolPerformanceDataKs2ReadingProgressScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 reading progress score"); + + b.Property("SchoolPerformanceDataKs2ReadingProgressUpperConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 reading progress upper confidence interval"); + + b.Property("SchoolPerformanceDataKs2WriteProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 write progress"); + + b.Property("SchoolPerformanceDataKs2WritingProgressLowerConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 writing progress lower confidence interval"); + + b.Property("SchoolPerformanceDataKs2WritingProgressScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 writing progress score"); + + b.Property("SchoolPerformanceDataKs2WritingProgressUpperConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS2 writing progress upper confidence interval"); + + b.Property("SchoolPerformanceDataKs45acIncEngMath") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 5AC inc Eng math"); + + b.Property("SchoolPerformanceDataKs45acIncEngMathPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 5AC inc Eng math Pr"); + + b.Property("SchoolPerformanceDataKs45acIncEngMathPupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 5AC inc Eng math Pupils"); + + b.Property("SchoolPerformanceDataKs4AchievingAStandardPass5OrAboveInEnglishAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 achieving a ‘standard pass’ (5 or above) in English and maths"); + + b.Property("SchoolPerformanceDataKs4AchievingAStandardPass5OrAboveInEnglishAndMathsPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 achieving a ‘standard pass’ (5 or above) in English and maths Pr"); + + b.Property("SchoolPerformanceDataKs4AchievingAStrongPass5OrAboveInEnglishAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 achieving a ‘strong pass’ (5 or above) in English and maths"); + + b.Property("SchoolPerformanceDataKs4AchievingAStrongPass5OrAboveInEnglishAndMathsPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 achieving a ‘strong pass’ (5 or above) in English and maths Pr"); + + b.Property("SchoolPerformanceDataKs4Attainment8Score") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score"); + + b.Property("SchoolPerformanceDataKs4Attainment8ScoreEbacc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score - Ebacc"); + + b.Property("SchoolPerformanceDataKs4Attainment8ScoreEnglish") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score - English"); + + b.Property("SchoolPerformanceDataKs4Attainment8ScoreMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score - Maths"); + + b.Property("SchoolPerformanceDataKs4Attainment8ScoreOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score - Open"); + + b.Property("SchoolPerformanceDataKs4Attainment8ScorePr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Attainment 8 score Pr"); + + b.Property("SchoolPerformanceDataKs4CInEnglishAndMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 C + in English and maths"); + + b.Property("SchoolPerformanceDataKs4CInEnglishAndMathsPupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 C + in English and maths Pupils"); + + b.Property("SchoolPerformanceDataKs4Ebacc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 EBacc"); + + b.Property("SchoolPerformanceDataKs4EbaccPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 EBacc Pr"); + + b.Property("SchoolPerformanceDataKs4EbaccPupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Ebacc Pupils"); + + b.Property("SchoolPerformanceDataKs4EngProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Eng progress"); + + b.Property("SchoolPerformanceDataKs4EngProgressPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 Eng progress Pr"); + + b.Property("SchoolPerformanceDataKs4MathsProgress") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 maths progress"); + + b.Property("SchoolPerformanceDataKs4MathsProgressPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 maths progress Pr"); + + b.Property("SchoolPerformanceDataKs4Progress8LowerConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 lower confidence interval"); + + b.Property("SchoolPerformanceDataKs4Progress8LowerConfidenceIntervalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 lower confidence interval Pr"); + + b.Property("SchoolPerformanceDataKs4Progress8Pupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 pupils"); + + b.Property("SchoolPerformanceDataKs4Progress8PupilsPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 pupils Pr"); + + b.Property("SchoolPerformanceDataKs4Progress8Score") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score"); + + b.Property("SchoolPerformanceDataKs4Progress8ScoreEbacc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score -Ebacc"); + + b.Property("SchoolPerformanceDataKs4Progress8ScoreEnglish") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score - English"); + + b.Property("SchoolPerformanceDataKs4Progress8ScoreMaths") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score - Maths"); + + b.Property("SchoolPerformanceDataKs4Progress8ScoreOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score - Open"); + + b.Property("SchoolPerformanceDataKs4Progress8ScorePr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 score Pr"); + + b.Property("SchoolPerformanceDataKs4Progress8UpperConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 upper confidence interval"); + + b.Property("SchoolPerformanceDataKs4Progress8UpperConfidenceIntervalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 progress 8 upper confidence interval Pr"); + + b.Property("SchoolPerformanceDataKs4Pupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 pupils"); + + b.Property("SchoolPerformanceDataKs4PupilsPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS4 pupils Pr"); + + b.Property("SchoolPerformanceDataKs5ApsPerEntryAcademic") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 APS per entry (Academic)"); + + b.Property("SchoolPerformanceDataKs5ApsPerEntryAcademicPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 APS per entry (Academic) Pr"); + + b.Property("SchoolPerformanceDataKs5ApsPerEntryAppliedGeneral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 APS per entry (applied general)"); + + b.Property("SchoolPerformanceDataKs5ApsPerEntryVocational") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 APS per entry (Vocational)"); + + b.Property("SchoolPerformanceDataKs5ApsPerEntryVocationalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 APS per entry (Vocational) Pr"); + + b.Property("SchoolPerformanceDataKs5PupilsAcademic") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (academic)"); + + b.Property("SchoolPerformanceDataKs5PupilsAcademicPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (academic) Pr"); + + b.Property("SchoolPerformanceDataKs5PupilsAll") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (all)"); + + b.Property("SchoolPerformanceDataKs5PupilsAllPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (all)PR"); + + b.Property("SchoolPerformanceDataKs5PupilsAppliedGeneral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (applied general)"); + + b.Property("SchoolPerformanceDataKs5PupilsAppliedGeneralPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 pupils (applied general) Pr"); + + b.Property("SchoolPerformanceDataKs5ValueAddedAcademic") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (academic)"); + + b.Property("SchoolPerformanceDataKs5ValueAddedAcademicPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (academic) Pr"); + + b.Property("SchoolPerformanceDataKs5ValueAddedAppliedGeneral") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (applied general)"); + + b.Property("SchoolPerformanceDataKs5ValueAddedAppliedGeneralPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (applied general) Pr"); + + b.Property("SchoolPerformanceDataKs5ValueAddedLowerConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added lower confidence interval"); + + b.Property("SchoolPerformanceDataKs5ValueAddedLowerConfidenceIntervalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added lower confidence interval Pr"); + + b.Property("SchoolPerformanceDataKs5ValueAddedUpperConfidenceInterval") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added upper confidence interval"); + + b.Property("SchoolPerformanceDataKs5ValueAddedUpperConfidenceIntervalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added upper confidence interval Pr"); + + b.Property("SchoolPerformanceDataKs5ValueAddedVocational") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (Vocational)"); + + b.Property("SchoolPerformanceDataKs5ValueAddedVocationalPr") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.KS5 value added (Vocational) Pr"); + + b.Property("SchoolPerformanceDataNumberOfPupils") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.Number of pupils"); + + b.Property("SchoolPerformanceDataProgress8OptIn") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("School Performance Data.Progress 8 opt in"); + + b.Property("SchoolPerformanceDataYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("School Performance Data.Year"); + + b.HasKey("Rid"); + + b.ToTable("Perf_FSG", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("Perf_FSGHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.PerfFsgLocal", b => + { + b.Property("Attainment8ScoreLaAverage") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Attainment 8 Score LA Average"); + + b.Property("InEducationPercentage") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("In Education (percentage)"); + + b.Property("Ks4CInEnglishMathsLaAverage") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS4 C+ in English & Maths LA Average (%)"); + + b.Property("Ks4EbaccEnteredForEbacc") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS4 Ebacc (% entered for Ebacc)"); + + b.Property("Ks5ALevelApsPerEntry") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS5 A-Level (APS per Entry)"); + + b.Property("Ks5AcademicProgressScore") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS5 Academic Progress Score"); + + b.Property("Ks5AcademicProgressScoreAverageGrade") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS5 Academic Progress Score (Average Grade)"); + + b.Property("Ks5TechLevelApsPerEntry") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS5 Tech Level (APS per Entry)"); + + b.Property("Ks5TechLevelApsPerEntryLaAverage") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("KS5 Tech Level (APS per Entry - LA Average)"); + + b.Property("ProjectId") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("Project ID"); + + b.Property("TotalOfStudentsStayingInEducationOrEmployment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Total % of students staying in education or employment"); + + b.Property("Urn") + .HasMaxLength(10) + .IsUnicode(false) + .HasColumnType("varchar(10)") + .HasColumnName("URN"); + + b.Property("Year") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)"); + + b.ToTable("Perf_FSG_Local", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Planning", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("PlanningRecordAddressManualOverwrite") + .HasColumnType("bit") + .HasColumnName("Planning Record.Address - Manual overwrite?"); + + b.Property("PlanningRecordAddressOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Address of site"); + + b.Property("PlanningRecordAppealDecision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Appeal decision"); + + b.Property("PlanningRecordAppealProcedure") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Appeal procedure"); + + b.Property("PlanningRecordAppealRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Appeal required?"); + + b.Property("PlanningRecordClassCExpiryDateActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Class C expiry date (Actual)"); + + b.Property("PlanningRecordDateAppealSubmittedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date appeal submitted (actual)"); + + b.Property("PlanningRecordDateAppealSubmittedForecast") + .HasColumnType("date") + .HasColumnName("Planning Record.Date appeal submitted (forecast)"); + + b.Property("PlanningRecordDateAppealValidatedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date appeal validated (actual)"); + + b.Property("PlanningRecordDateLetterSentToLocalPlanningAuthorityActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date letter sent to local planning authority (Actual)"); + + b.Property("PlanningRecordDateLetterSentToLocalPlanningAuthorityForecast") + .HasColumnType("date") + .HasColumnName("Planning Record.Date letter sent to local planning authority (Forecast)"); + + b.Property("PlanningRecordDateOfAppealDecisionNoticeActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date of appeal decision notice (actual)"); + + b.Property("PlanningRecordDateOfAppealDecisionNoticeForecast") + .HasColumnType("date") + .HasColumnName("Planning Record.Date of appeal decision notice (forecast)"); + + b.Property("PlanningRecordDateOfPlanningDecisionNoticeActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date of planning decision notice (actual)"); + + b.Property("PlanningRecordDateOfPlanningDecisionNoticeForecast") + .HasColumnType("date") + .HasColumnName("Planning Record.Date of planning decision notice (forecast)"); + + b.Property("PlanningRecordDateOfStatutoryDeterminationActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date of statutory determination (actual)"); + + b.Property("PlanningRecordDatePlanningApplicationSubmittedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date planning application submitted (actual)"); + + b.Property("PlanningRecordDatePlanningApplicationSubmittedForecast") + .HasColumnType("date") + .HasColumnName("Planning Record.Date planning application submitted (forecast)"); + + b.Property("PlanningRecordDatePlanningApplicationValidatedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date planning application validated (actual)"); + + b.Property("PlanningRecordDatePlanningAppraisalCompletedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.Date planning appraisal completed (actual)"); + + b.Property("PlanningRecordDescriptionOfDevelopment") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Planning Record.Description of development"); + + b.Property("PlanningRecordIsPlanningPermissionRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Is planning permission required?"); + + b.Property("PlanningRecordIsThisTheMainPlanningRecord") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Is this the main planning record?"); + + b.Property("PlanningRecordJrChallengePeriodFinishedActual") + .HasColumnType("date") + .HasColumnName("Planning Record.JR challenge period finished (actual)"); + + b.Property("PlanningRecordLocalPlanningAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Local planning authority"); + + b.Property("PlanningRecordLpaApplicationReference") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.LPA application reference"); + + b.Property("PlanningRecordNameManualOverwrite") + .HasColumnType("bit") + .HasColumnName("Planning Record.Name - Manual overwrite?"); + + b.Property("PlanningRecordPlanningAppraisalCompleted") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Planning appraisal completed"); + + b.Property("PlanningRecordPlanningDecision") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Planning decision"); + + b.Property("PlanningRecordPlanningLeadComments") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("Planning Record.Planning Lead comments"); + + b.Property("PlanningRecordPlanningPermissionLimitedToASpecificTimeAndExpiryPeriod") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Planning permission limited to a specific time and expiry period"); + + b.Property("PlanningRecordPlanningRisk") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Planning risk"); + + b.Property("PlanningRecordPostcodeManualOverwrite") + .HasColumnType("bit") + .HasColumnName("Planning Record.Postcode - Manual overwrite?"); + + b.Property("PlanningRecordPostcodeOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Postcode of site"); + + b.Property("PlanningRecordPrNameOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.PR_Name of site"); + + b.Property("PlanningRecordPrPlanningPermissionExpiryDateActual") + .HasColumnType("date") + .HasColumnName("Planning Record.PR_Planning permission expiry date (actual)"); + + b.Property("PlanningRecordSiteId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Site ID"); + + b.Property("PlanningRecordStorePlanningRecordId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Store planning record ID"); + + b.Property("PlanningRecordTypeOfPlanningRequired") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Planning Record.Type of planning required"); + + b.Property("PlanningRecordWasPlanningSecuredInTimeForSchoolRequirements") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Planning Record.Was planning secured in time for school requirements?"); + + b.HasKey("Rid"); + + b.ToTable("Planning", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PlanningHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.PlanningQa", b => + { + b.Property("AppealProcedureHighlight") + .HasColumnType("int") + .HasColumnName("Appeal procedure highlight"); + + b.Property("AppealRequiredHighlight") + .HasColumnType("int") + .HasColumnName("Appeal required? highlight"); + + b.Property("ClassCExpiryDateActualHighlight") + .HasColumnType("int") + .HasColumnName("Class C expiry date (Actual) highlight"); + + b.Property("DateAppealSubmittedActualHighlight") + .HasColumnType("int") + .HasColumnName("Date appeal submitted (actual) highlight"); + + b.Property("DateAppealSubmittedForecastHighlight") + .HasColumnType("int") + .HasColumnName("Date appeal submitted (forecast) highlight"); + + b.Property("DateAppealValidatedActualHighlight") + .HasColumnType("int") + .HasColumnName("Date appeal validated (actual) highlight"); + + b.Property("DateLetterSentToLocalPlanningAuthorityActualHighlight") + .HasColumnType("int") + .HasColumnName("Date letter sent to local planning authority (Actual) highlight"); + + b.Property("DateLetterSentToLocalPlanningAuthorityForecastHighlight") + .HasColumnType("int") + .HasColumnName("Date letter sent to local planning authority (Forecast) highlight"); + + b.Property("DateOfAppealDecisionNoticeActualHighlight") + .HasColumnType("int") + .HasColumnName("Date of appeal decision notice (actual) highlight"); + + b.Property("DateOfAppealDecisionNoticeForecastHighlight") + .HasColumnType("int") + .HasColumnName("Date of appeal decision notice (forecast) highlight"); + + b.Property("DateOfPlanningDecisionNoticeActualHighlight") + .HasColumnType("int") + .HasColumnName("Date of planning decision notice (actual) highlight"); + + b.Property("DateOfPlanningDecisionNoticeForecastHighlight") + .HasColumnType("int") + .HasColumnName("Date of planning decision notice (forecast) highlight"); + + b.Property("DateOfStatutoryDeterminationActualHighlight") + .HasColumnType("int") + .HasColumnName("Date of statutory determination (actual) highlight"); + + b.Property("DatePlanningApplicationSubmittedActualHighlight") + .HasColumnType("int") + .HasColumnName("Date planning application submitted (actual) highlight"); + + b.Property("DatePlanningApplicationSubmittedForecastHighlight") + .HasColumnType("int") + .HasColumnName("Date planning application submitted (forecast) highlight"); + + b.Property("DatePlanningApplicationValidatedActualHighlight") + .HasColumnType("int") + .HasColumnName("Date planning application validated (actual) highlight"); + + b.Property("LpaApplicationReferenceHighlight") + .HasColumnType("int") + .HasColumnName("LPA application reference highlight"); + + b.Property("Month") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.Property("PlanningPermissionExpiryDateActualHighlight") + .HasColumnType("int") + .HasColumnName("Planning permission expiry date (actual) highlight"); + + b.Property("PlanningPermissionLimitedToASpecificTimeAndExpiryPeriodHighlight") + .HasColumnType("int") + .HasColumnName("Planning permission limited to a specific time and expiry period highlight"); + + b.Property("PlanningRiskHighlight") + .HasColumnType("int") + .HasColumnName("Planning risk highlight"); + + b.Property("TypeOfPlanningRequiredHighlight") + .HasColumnType("int") + .HasColumnName("Type of planning required highlight"); + + b.ToTable("Planning_QA", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Po", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("FinancialPlanningOptInToRpa") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Planning.Opt in to RPA"); + + b.Property("FinancialPlanningStartDateOfRpa") + .HasColumnType("date") + .HasColumnName("Financial Planning.Start date of RPA"); + + b.Property("FinancialPlanningTypeOfRpaCover") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Financial Planning.Type of RPA cover"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PdgFirstVariationGrantLetterSavedToWorkplaces") + .HasColumnType("bit"); + + b.Property("PdgFourthVariationGrantLetterSavedToWorkplaces") + .HasColumnType("bit"); + + b.Property("PdgGrantLetterLinkSavedToWorkplaces") + .HasColumnType("bit") + .HasColumnName("PdgGrantLetterLinkSavedToWorkplaces"); + + b.Property("PdgInitialGrantLetterDate") + .HasColumnType("datetime2"); + + b.Property("PdgInitialGrantLetterLink") + .HasColumnType("nvarchar(max)"); + + b.Property("PdgInitialGrantLetterSavedToWorkplaces") + .HasColumnType("bit"); + + b.Property("PdgIsWriteOffSetup") + .HasColumnType("bit") + .HasColumnName("PdgIsWriteOffSetup"); + + b.Property("PdgSecondVariationGrantLetterSavedToWorkplaces") + .HasColumnType("bit"); + + b.Property("PdgThirdVariationGrantLetterSavedToWorkplaces") + .HasColumnType("bit"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ProjectDevelopmentGrantFunding1stPdgGrantVariationDate") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.1st PDG grant variation date"); + + b.Property("ProjectDevelopmentGrantFunding1stPdgGrantVariationLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.1st PDG grant variation link"); + + b.Property("ProjectDevelopmentGrantFunding1stWriteOffApprovedInFsgBy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.1st write off approved in FSG by"); + + b.Property("ProjectDevelopmentGrantFunding2ndDateWriteOffApprovedByFinanceBusinessPartners") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.2nd Date write off approved by Finance Business Partners"); + + b.Property("ProjectDevelopmentGrantFunding2ndFinanceBusinessPartnerApprovalReceivedFrom") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.2nd Finance Business Partner Approval received from"); + + b.Property("ProjectDevelopmentGrantFunding2ndLinkWriteOffPaperworkRepository") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.2nd Link write off paperwork repository"); + + b.Property("ProjectDevelopmentGrantFunding2ndPdgGrantVariationDate") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.2nd PDG grant variation date"); + + b.Property("ProjectDevelopmentGrantFunding2ndPdgGrantVariationLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.2nd PDG grant variation link"); + + b.Property("ProjectDevelopmentGrantFunding2ndWriteOffApprovedInFsgBy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.2nd write off approved in FSG by"); + + b.Property("ProjectDevelopmentGrantFunding3rdDateWriteOffApprovedByFinanceBusinessPartners") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.3rd Date write off approved by Finance Business Partners"); + + b.Property("ProjectDevelopmentGrantFunding3rdFinanceBusinessPartnerApprovalReceivedFrom") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.3rd Finance Business Partner Approval received from"); + + b.Property("ProjectDevelopmentGrantFunding3rdLinkWriteOffPaperworkRepository") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.3rd Link write off paperwork repository"); + + b.Property("ProjectDevelopmentGrantFunding3rdPdgGrantVariationDate") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.3rd PDG grant variation date"); + + b.Property("ProjectDevelopmentGrantFunding3rdPdgGrantVariationLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.3rd PDG grant variation link"); + + b.Property("ProjectDevelopmentGrantFunding3rdWriteOffApprovedInFsgBy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.3rd write off approved in FSG by"); + + b.Property("ProjectDevelopmentGrantFunding4thPdgGrantVariationDate") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.4th PDG grant variation date"); + + b.Property("ProjectDevelopmentGrantFunding4thPdgGrantVariationLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.4th PDG grant variation link"); + + b.Property("ProjectDevelopmentGrantFundingAmountApprovedFor1stWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount approved for 1st write off"); + + b.Property("ProjectDevelopmentGrantFundingAmountApprovedFor2ndWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount approved for 2nd write off"); + + b.Property("ProjectDevelopmentGrantFundingAmountApprovedFor3rdWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount approved for 3rd write off"); + + b.Property("ProjectDevelopmentGrantFundingAmountCleared") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount Cleared"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf10thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 10th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf10thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 10th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf11thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 11th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf11thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 11th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf12thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 12th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf12thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 12th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf1stPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 1st payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf1stPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 1st payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf1stRefund") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 1st refund "); + + b.Property("ProjectDevelopmentGrantFundingAmountOf2ndPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 2nd payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf2ndPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 2nd payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf2ndRefund") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 2nd refund "); + + b.Property("ProjectDevelopmentGrantFundingAmountOf3rdPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 3rd payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf3rdPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 3rd payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf3rdRefund") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 3rd refund"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf4thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 4th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf4thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 4th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf5thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 5th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf5thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 5th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf6thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 6th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf6thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 6th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf7thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 7th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf7thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 7th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf8thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 8th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf8thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 8th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf9thPayment") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 9th payment"); + + b.Property("ProjectDevelopmentGrantFundingAmountOf9thPaymentDue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount of 9th payment due"); + + b.Property("ProjectDevelopmentGrantFundingAmountRealised") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount Realised"); + + b.Property("ProjectDevelopmentGrantFundingAmountToBeUnderwritten") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Amount to be Underwritten"); + + b.Property("ProjectDevelopmentGrantFundingContingencyClearedRealised") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Contingency Cleared / Realised"); + + b.Property("ProjectDevelopmentGrantFundingDateNextFinancialStatementBudgetProfileIsDueBack") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date next financial statement / budget profile is due back"); + + b.Property("ProjectDevelopmentGrantFundingDateOf10thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 10th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf10thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 10th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf11thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 11th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf11thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 11th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf12thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 12th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf12thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 12th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf1stActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 1st actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf1stPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 1st payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf1stRefund") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 1st refund"); + + b.Property("ProjectDevelopmentGrantFundingDateOf1stWriteOff") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 1st write off"); + + b.Property("ProjectDevelopmentGrantFundingDateOf2ndActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 2nd actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf2ndPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 2nd payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf2ndRefund") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 2nd refund"); + + b.Property("ProjectDevelopmentGrantFundingDateOf2ndWriteOff") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 2nd write off"); + + b.Property("ProjectDevelopmentGrantFundingDateOf3rdActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 3rd actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf3rdPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 3rd payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf3rdRefund") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 3rd refund"); + + b.Property("ProjectDevelopmentGrantFundingDateOf3rdWriteOff") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 3rd write off"); + + b.Property("ProjectDevelopmentGrantFundingDateOf4thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 4th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf4thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 4th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf5thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 5th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf5thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 5th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf6thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 6th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf6thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 6th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf7thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 7th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf7thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 7th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf8thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 8th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf8thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 8th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDateOf9thActualPayment") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 9th actual payment"); + + b.Property("ProjectDevelopmentGrantFundingDateOf9thPaymentDue") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date of 9th payment due"); + + b.Property("ProjectDevelopmentGrantFundingDatePaymentsStopped") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date payments stopped"); + + b.Property("ProjectDevelopmentGrantFundingDateSop7ActionTaken") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date SOP7 action Taken"); + + b.Property("ProjectDevelopmentGrantFundingDateUnderwriteApproved") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date underwrite approved"); + + b.Property("ProjectDevelopmentGrantFundingDateWriteOffApprovedByFinanceBusinessPartners") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.Date write off approved by Finance Business Partners"); + + b.Property("ProjectDevelopmentGrantFundingFinanceBusinessPartnerApprovalReceivedFrom") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Finance Business Partner Approval received from"); + + b.Property("ProjectDevelopmentGrantFundingInitialGrantAllocation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Initial grant allocation"); + + b.Property("ProjectDevelopmentGrantFundingLinkWriteOffPaperworkRepository") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Link write off paperwork repository"); + + b.Property("ProjectDevelopmentGrantFundingManuallyOverwrite") + .HasColumnType("bit") + .HasColumnName("Project Development Grant Funding.Manually overwrite?"); + + b.Property("ProjectDevelopmentGrantFundingPaymentAmountWrittenOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Payment amount written off"); + + b.Property("ProjectDevelopmentGrantFundingPaymentsStopped") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Payments stopped"); + + b.Property("ProjectDevelopmentGrantFundingPdgGrantLetterDate") + .HasColumnType("date") + .HasColumnName("Project Development Grant Funding.PDG grant letter date"); + + b.Property("ProjectDevelopmentGrantFundingPdgGrantLetterLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.PDG grant letter link"); + + b.Property("ProjectDevelopmentGrantFundingPeriodOfUnderwrite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Period of Underwrite"); + + b.Property("ProjectDevelopmentGrantFundingPo01ManuallyOverwrite") + .HasColumnType("bit") + .HasColumnName("Project Development Grant Funding.PO01_Manually Overwrite"); + + b.Property("ProjectDevelopmentGrantFundingReasonFor1stWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Reason for 1st write off"); + + b.Property("ProjectDevelopmentGrantFundingReasonFor2ndWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Reason for 2nd write off"); + + b.Property("ProjectDevelopmentGrantFundingReasonFor3rdWriteOff") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Reason for 3rd write off"); + + b.Property("ProjectDevelopmentGrantFundingReasonForLiability") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Reason for Liability"); + + b.Property("ProjectDevelopmentGrantFundingRevisedGrantAllocation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Revised grant allocation"); + + b.Property("ProjectDevelopmentGrantFundingSop7ActionTaken") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.SOP7 Action Taken"); + + b.Property("ProjectDevelopmentGrantFundingSopSupplierNumber") + .HasMaxLength(8) + .IsUnicode(false) + .HasColumnType("varchar(8)") + .HasColumnName("Project Development Grant Funding.SOP Supplier Number"); + + b.Property("ProjectDevelopmentGrantFundingStoppedPaymentsAuthorisedBy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Stopped payments authorised by"); + + b.Property("ProjectDevelopmentGrantFundingTotalPaymentsMade") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Total payments made"); + + b.Property("ProjectDevelopmentGrantFundingUnderwriteApprovedBy") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Project Development Grant Funding.Underwrite approved by"); + + b.Property("PupilNumbersAndCapacityAcademicYearFifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year - Fifth year"); + + b.Property("PupilNumbersAndCapacityAcademicYearFirstYear") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Academic year - First year"); + + b.Property("PupilNumbersAndCapacityAcademicYearFourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year - Fourth year"); + + b.Property("PupilNumbersAndCapacityAcademicYearSecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year - Second year"); + + b.Property("PupilNumbersAndCapacityAcademicYearSeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year - Seventh year"); + + b.Property("PupilNumbersAndCapacityAcademicYearSixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year - Sixth year"); + + b.Property("PupilNumbersAndCapacityAcademicYearThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Academic year- Third year"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsPanY12Y14") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs PAN Y12-Y14"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsPanY7Y11") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs PAN Y7-Y11"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsPanYrY6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs PAN YR-Y6"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsViabilityY12Y14") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs viability Y12-Y14"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsViabilityY7Y11") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs viability Y7-Y11"); + + b.Property("PupilNumbersAndCapacityAcceptedApplicationsVsViabilityYrY6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% accepted applications vs viability YR-Y6"); + + b.Property("PupilNumbersAndCapacityAdmissionsBody") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Admissions body"); + + b.Property("PupilNumbersAndCapacityCellA10Year8CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A10 Year 8 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA11Year9CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A11 Year 9 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA12Year10CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A12 Year 10 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA13Year11CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A13 Year 11 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA14Year12CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A14 Year 12 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA15Year13CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A15 Year 13 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA16Year14CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A16 Year 14 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA1NurseryCurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A1 Nursery - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA2ReceptionCurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A2 Reception - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA3Year1CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A3 Year 1 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA4Year2CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A4 Year 2 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA5Year3CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A5 Year 3 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA6Year4CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A6 Year 4 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA7Year5CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A7 Year 5 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA8Year6CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A8 Year 6 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellA9Year7CurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_A9 Year 7 - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellB10Year8FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B10 Year 8 - First year"); + + b.Property("PupilNumbersAndCapacityCellB11Year9FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B11 Year 9 - First year"); + + b.Property("PupilNumbersAndCapacityCellB12Year10FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B12 Year 10 - First year"); + + b.Property("PupilNumbersAndCapacityCellB13Year11FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B13 Year 11 - First year"); + + b.Property("PupilNumbersAndCapacityCellB14Year12FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B14 Year 12 - First year"); + + b.Property("PupilNumbersAndCapacityCellB15Year13FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B15 Year 13 - First year"); + + b.Property("PupilNumbersAndCapacityCellB16Year14FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B16 Year 14 - First year"); + + b.Property("PupilNumbersAndCapacityCellB1NurseryFirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B1 Nursery - First year"); + + b.Property("PupilNumbersAndCapacityCellB2ReceptionFirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B2 Reception - First year"); + + b.Property("PupilNumbersAndCapacityCellB3Year1FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B3 Year 1 - First year"); + + b.Property("PupilNumbersAndCapacityCellB4Year2FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B4 Year 2 - First year"); + + b.Property("PupilNumbersAndCapacityCellB5Year3FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B5 Year 3 - First year"); + + b.Property("PupilNumbersAndCapacityCellB6Year4FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B6 Year 4 - First year"); + + b.Property("PupilNumbersAndCapacityCellB7Year5FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B7 Year 5 - First year"); + + b.Property("PupilNumbersAndCapacityCellB8Year6FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B8 Year 6 - First year"); + + b.Property("PupilNumbersAndCapacityCellB9Year7FirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_B9 Year 7 - First year"); + + b.Property("PupilNumbersAndCapacityCellC10Year8SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C10 Year 8 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC11Year9SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C11 Year 9 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC12Year10SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C12 Year 10 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC13Year11SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C13 Year 11 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC14Year12SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C14 Year 12 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC15Year13SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C15 Year 13 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC16Year14SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C16 Year 14 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC1NurserySecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C1 Nursery - Second year"); + + b.Property("PupilNumbersAndCapacityCellC2ReceptionSecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C2 Reception - Second year"); + + b.Property("PupilNumbersAndCapacityCellC3Year1SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C3 Year 1 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC4Year2SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C4 Year 2 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC5Year3SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C5 Year 3 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC6Year4SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C6 Year 4 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC7Year5SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C7 Year 5 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC8Year6SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C8 Year 6 - Second year"); + + b.Property("PupilNumbersAndCapacityCellC9Year7SecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_C9 Year 7 - Second year"); + + b.Property("PupilNumbersAndCapacityCellD10Year8ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D10 Year 8 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD11Year9ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D11 Year 9 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD12Year10ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D12 Year 10 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD13Year11ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D13 Year 11 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD14Year12ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D14 Year 12 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD15Year13ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D15 Year 13 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD16Year14ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D16 Year 14 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD1NurseryThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D1 Nursery - Third year"); + + b.Property("PupilNumbersAndCapacityCellD2ReceptionThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D2 Reception - Third year"); + + b.Property("PupilNumbersAndCapacityCellD3Year1ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D3 Year 1 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD4Year2ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D4 Year 2 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD5Year3ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D5 Year 3 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD6Year4ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D6 Year 4 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD7Year5ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D7 Year 5 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD8Year6ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D8 Year 6 - Third year"); + + b.Property("PupilNumbersAndCapacityCellD9Year7ThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_D9 Year 7 - Third year"); + + b.Property("PupilNumbersAndCapacityCellE10Year8FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E10 Year 8 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE11Year9FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E11 Year 9 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE12Year10FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E12 Year 10 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE13Year11FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E13 Year 11 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE14Year12FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E14 Year 12 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE15Year13FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E15 Year 13 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE16Year14FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E16 Year 14 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE1NurseryFourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E1 Nursery - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE2ReceptionFourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E2 Reception - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE3Year1FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E3 Year 1 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE4Year2FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E4 Year 2 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE5Year3FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E5 Year 3 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE6Year4FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E6 Year 4 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE7Year5FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E7 Year 5 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE8Year6FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E8 Year 6 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellE9Year7FourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_E9 Year 7 - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellF10Year8FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F10 Year 8 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF11Year9FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F11 Year 9 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF12Year10FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F12 Year 10 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF13Year11FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F13 Year 11 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF14Year12FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F14 Year 12 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF15Year13FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F15 Year 13 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF16Year14FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F16 Year 14 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF1NurseryFifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F1 Nursery - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF2ReceptionFifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F2 Reception - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF3Year1FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F3 Year 1 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF4Year2FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F4 Year 2 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF5Year3FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F5 Year 3 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF6Year4FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F6 Year 4 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF7Year5FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F7 Year 5 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF8Year6FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F8 Year 6 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellF9Year7FifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_F9 Year 7 - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellG10Year8SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G10 Year 8 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG11Year9SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G11 Year 9 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG12Year10SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G12 Year 10 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG13Year11SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G13 Year 11 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG14Year12SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G14 Year 12 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG15Year13SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G15 Year 13 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG16Year14SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G16 Year 14 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG1NurserySixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G1 Nursery - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG2ReceptionSixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G2 Reception - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG3Year1SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G3 Year 1 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG4Year2SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G4 Year 2 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG5Year3SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G5 Year 3 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG6Year4SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G6 Year 4 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG7Year5SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G7 Year 5 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG8Year6SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G8 Year 6 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellG9Year7SixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_G9 Year 7 - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellH10Year8SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H10 Year 8 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH11Year9SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H11 Year 9 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH12Year10SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H12 Year 10 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH13Year11SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H13 Year 11 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH14Year12SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H14 Year 12 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH15Year13SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H15 Year 13 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH16Year14SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H16 Year 14 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH1NurserySeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H1 Nursery - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH2ReceptionSeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H2 Reception - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH3Year1SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H3 Year 1 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH4Year2SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H4 Year 2 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH5Year3SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H5 Year 3 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH6Year4SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H6 Year 4 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH7Year5SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H7 Year 5 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH8Year6SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H8 Year 6 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellH9Year7SeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_H9 Year 7 - Seventh year"); + + b.Property("PupilNumbersAndCapacityCellTotalATotalCurrentPupilNumbersIfAlreadyOpen") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalA Total - current pupil numbers (if already open)"); + + b.Property("PupilNumbersAndCapacityCellTotalBTotalFirstYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalB Total - First year"); + + b.Property("PupilNumbersAndCapacityCellTotalCTotalSecondYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalC Total - Second year"); + + b.Property("PupilNumbersAndCapacityCellTotalDTotalThirdYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalD Total - Third year"); + + b.Property("PupilNumbersAndCapacityCellTotalETotalFourthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalE Total - Fourth year"); + + b.Property("PupilNumbersAndCapacityCellTotalFTotalFifthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalF Total - Fifth year"); + + b.Property("PupilNumbersAndCapacityCellTotalGTotalSixthYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalG Total - Sixth year"); + + b.Property("PupilNumbersAndCapacityCellTotalHTotalSeventhYear") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Cell_TotalH Total - Seventh year"); + + b.Property("PupilNumbersAndCapacityManualOverwrite") + .HasColumnType("bit") + .HasColumnName("Pupil numbers and capacity.Manual overwrite?"); + + b.Property("PupilNumbersAndCapacityMinimumFirstYearRecruitmentForViabilityTotal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Minimum first year recruitment for viability Total"); + + b.Property("PupilNumbersAndCapacityMinimumFirstYearRecruitmentForViabilityY12Y14") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Minimum first year recruitment for viability Y12-Y14"); + + b.Property("PupilNumbersAndCapacityMinimumFirstYearRecruitmentForViabilityY7Y11") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Minimum first year recruitment for viability Y7-Y11"); + + b.Property("PupilNumbersAndCapacityMinimumFirstYearRecruitmentForViabilityYrY6") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Minimum first year recruitment for viability YR-Y6"); + + b.Property("PupilNumbersAndCapacityNoApplicationsAcceptedTotal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.No. applications accepted Total"); + + b.Property("PupilNumbersAndCapacityNoApplicationsAcceptedY12Y14") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications accepted Y12-Y14"); + + b.Property("PupilNumbersAndCapacityNoApplicationsAcceptedY7Y11") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications accepted Y7-Y11"); + + b.Property("PupilNumbersAndCapacityNoApplicationsAcceptedYrY6") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications accepted YR-Y6"); + + b.Property("PupilNumbersAndCapacityNoApplicationsReceivedTotal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.No. applications received Total"); + + b.Property("PupilNumbersAndCapacityNoApplicationsReceivedY12Y14") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications received Y12-Y14"); + + b.Property("PupilNumbersAndCapacityNoApplicationsReceivedY7Y11") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications received Y7-Y11"); + + b.Property("PupilNumbersAndCapacityNoApplicationsReceivedYrY6") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.No. applications received YR-Y6"); + + b.Property("PupilNumbersAndCapacityNurseryUnder5s") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Nursery (under 5s)"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsPanY12Y14") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs PAN Y12-Y14"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsPanY7Y11") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs PAN Y7-Y11"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsPanYrY6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs PAN YR-Y6"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsViabilityY12Y14") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs viability Y12-Y14"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsViabilityY7Y11") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs viability Y7-Y11"); + + b.Property("PupilNumbersAndCapacityReceivedApplicationsVsViabilityYrY6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.% received applications vs viability YR-Y6"); + + b.Property("PupilNumbersAndCapacitySpecialistResourceProvisionAp") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Specialist Resource Provision - AP"); + + b.Property("PupilNumbersAndCapacitySpecialistResourceProvisionSpecial") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Specialist Resource Provision - Special"); + + b.Property("PupilNumbersAndCapacityTotalOfCapacityTotals") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total of capacity totals"); + + b.Property("PupilNumbersAndCapacityTotalPanPost16") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total PAN: post-16"); + + b.Property("PupilNumbersAndCapacityTotalPanPre16") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total PAN: pre-16"); + + b.Property("PupilNumbersAndCapacityTotalPost16A") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 A"); + + b.Property("PupilNumbersAndCapacityTotalPost16B") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 B"); + + b.Property("PupilNumbersAndCapacityTotalPost16C") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 C"); + + b.Property("PupilNumbersAndCapacityTotalPost16D") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 D"); + + b.Property("PupilNumbersAndCapacityTotalPost16E") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 E"); + + b.Property("PupilNumbersAndCapacityTotalPost16F") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 F"); + + b.Property("PupilNumbersAndCapacityTotalPost16G") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 G"); + + b.Property("PupilNumbersAndCapacityTotalPost16H") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total post-16 H"); + + b.Property("PupilNumbersAndCapacityTotalPre16A") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 A"); + + b.Property("PupilNumbersAndCapacityTotalPre16B") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 B"); + + b.Property("PupilNumbersAndCapacityTotalPre16C") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 C"); + + b.Property("PupilNumbersAndCapacityTotalPre16D") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 D"); + + b.Property("PupilNumbersAndCapacityTotalPre16E") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 E"); + + b.Property("PupilNumbersAndCapacityTotalPre16F") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 F"); + + b.Property("PupilNumbersAndCapacityTotalPre16G") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 G"); + + b.Property("PupilNumbersAndCapacityTotalPre16H") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.Total pre-16 H"); + + b.Property("PupilNumbersAndCapacityY10Pan") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y10 PAN"); + + b.Property("PupilNumbersAndCapacityY12Pan") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y12 PAN"); + + b.Property("PupilNumbersAndCapacityY12Y14Post16Capacity") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y12-Y14 (post-16) capacity"); + + b.Property("PupilNumbersAndCapacityY7Pan") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y7 PAN"); + + b.Property("PupilNumbersAndCapacityY7Y11Capacity") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y7-Y11 capacity"); + + b.Property("PupilNumbersAndCapacityYOtherPanPost16") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y other PAN post-16"); + + b.Property("PupilNumbersAndCapacityYOtherPanPre16") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.Y other PAN pre-16"); + + b.Property("PupilNumbersAndCapacityYrPan") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.YR PAN"); + + b.Property("PupilNumbersAndCapacityYrY11Pre16Capacity") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Pupil numbers and capacity.YR-Y11 (pre-16) capacity"); + + b.Property("PupilNumbersAndCapacityYrY6Capacity") + .HasMaxLength(4) + .IsUnicode(false) + .HasColumnType("varchar(4)") + .HasColumnName("Pupil numbers and capacity.YR-Y6 capacity"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("PO", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("POHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Porf", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("PurchaseOrderRequestFormPorfGlCode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.PORF GL code"); + + b.Property("PurchaseOrderRequestFormPorfId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.PORF ID"); + + b.Property("PurchaseOrderRequestFormPurchaseOrderCreatedDate") + .HasColumnType("date") + .HasColumnName("Purchase Order Request Form.Purchase Order created date"); + + b.Property("PurchaseOrderRequestFormPurchaseOrderNumber") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.Purchase Order number"); + + b.Property("PurchaseOrderRequestFormPurchaseOrderRequestFormTotalValueExclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.Purchase Order Request Form Total value (excl VAT)"); + + b.Property("PurchaseOrderRequestFormPurchaseOrderRequestFormVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.Purchase Order Request Form VAT"); + + b.Property("PurchaseOrderRequestFormPurchaseOrderRequestFormVendor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Purchase Order Request Form.Purchase Order Request Form - Vendor"); + + b.HasKey("Rid"); + + b.ToTable("PORF", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PORFHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Pr", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("PreregistrationContactNotes") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Preregistration.Contact notes"); + + b.Property("PreregistrationDateOfLastContactWithApplicant") + .HasColumnType("date") + .HasColumnName("Preregistration.Date of last contact with applicant"); + + b.Property("PreregistrationDateSubmitted") + .HasColumnType("date") + .HasColumnName("Preregistration.Date submitted"); + + b.Property("PreregistrationDoYouAlreadyRunOneOrMoreFreeSchoolsAcademiesOrHaveAnyInThePipeline") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Do you already run one or more free schools/academies or have any in the pipeline? "); + + b.Property("PreregistrationEmailOfLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Email of lead applicant"); + + b.Property("PreregistrationEmailOfPersonSubmittingFormIfNotLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Email of person submitting form (if not lead applicant)"); + + b.Property("PreregistrationHowManyFreeSchoolsAreYouApplyingForInThisWave") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.How many free schools are you applying for in this wave?"); + + b.Property("PreregistrationIsThisAReApplicationIEAnApplicationThatWasPreviouslyUnsuccessful") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Is this a re-application i.e. an application that was previously unsuccessful? "); + + b.Property("PreregistrationLeadSponsorId") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("Preregistration.Lead sponsor ID"); + + b.Property("PreregistrationLeadSponsorName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Lead sponsor name"); + + b.Property("PreregistrationNameOfLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Name of lead applicant"); + + b.Property("PreregistrationNameOfPersonSubmittingFormIfNotLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Name of person submitting form (if not lead applicant)"); + + b.Property("PreregistrationProposedTrustName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Proposed trust name"); + + b.Property("PreregistrationReferenceNumber") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Reference number"); + + b.Property("PreregistrationStaticLinkToTrustPageOnKim") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Static link to trust page on KIM"); + + b.Property("PreregistrationTelephoneNumberOfLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Telephone number of lead applicant"); + + b.Property("PreregistrationTelephoneOfPersonSubmittingFormIfNotLeadApplicant") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Telephone of person submitting form (if not lead applicant)"); + + b.Property("PreregistrationTrustId") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("Preregistration.Trust ID"); + + b.Property("PreregistrationTrustName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Trust name"); + + b.Property("PreregistrationTypeOfGroup") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Type of group"); + + b.Property("PreregistrationTypeOfGroupOther") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Type of group other"); + + b.Property("PreregistrationWhichWaveDoYouIntendToApplyFor") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Preregistration.Which wave do you intend to apply for?"); + + b.HasKey("Rid"); + + b.ToTable("PR", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PRHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Property", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("DatePlanningPermissionObtained") + .HasColumnType("datetime2"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("SiteAcquisitionInNameOfDclg") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Acquisition in name of DCLG"); + + b.Property("SiteAcquisitionType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Acquisition type"); + + b.Property("SiteAcquisitionVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Acquisition VAT"); + + b.Property("SiteAddressOfSite") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Site.Address of site"); + + b.Property("SiteAmountAboveRbv") + .HasMaxLength(20) + .IsUnicode(false) + .HasColumnType("varchar(20)") + .HasColumnName("Site.Amount above RBV"); + + b.Property("SiteAnnualLeaseCostRent") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Annual lease cost (rent)"); + + b.Property("SiteAreaOfExistingBuildingM2") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Area of existing building (m2)"); + + b.Property("SiteAreaOfExistingSiteAcres") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Area of existing site (acres)"); + + b.Property("SiteBuildingType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Building type"); + + b.Property("SiteBuildingValueIaS17InPlaceOfRbv") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Building value (IA S17 in place of RBV)"); + + b.Property("SiteChargeRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Charge required"); + + b.Property("SiteDateHeadsOfTermsAgreedActual") + .HasColumnType("date") + .HasColumnName("Site.Date heads of terms agreed (actual)"); + + b.Property("SiteDateHeadsOfTermsAgreedForecast") + .HasColumnType("date") + .HasColumnName("Site.Date heads of terms agreed (forecast)"); + + b.Property("SiteDateOfChargeActual") + .HasColumnType("date") + .HasColumnName("Site.Date of charge (actual)"); + + b.Property("SiteDateOfCompletionActual") + .HasColumnType("date") + .HasColumnName("Site.Date of completion (actual)"); + + b.Property("SiteDateOfCompletionForecast") + .HasColumnType("date") + .HasColumnName("Site.Date of completion (forecast)"); + + b.Property("SiteDateOfExchangeActual") + .HasColumnType("date") + .HasColumnName("Site.Date of exchange (actual)"); + + b.Property("SiteDateOfExchangeForecast") + .HasColumnType("date") + .HasColumnName("Site.Date of exchange (forecast)"); + + b.Property("SiteDateOfHmtPaperActual") + .HasColumnType("date") + .HasColumnName("Site.Date of HMT paper (actual)"); + + b.Property("SiteDateOfPreFundingAgreementSideLetterActual") + .HasColumnType("date") + .HasColumnName("Site.Date of pre-funding agreement side letter (actual)"); + + b.Property("SiteDateRbvRequiredActual") + .HasColumnType("date") + .HasColumnName("Site.Date RBV required (actual)"); + + b.Property("SiteDateRbvSubmittedActual") + .HasColumnType("date") + .HasColumnName("Site.Date RBV submitted (actual)"); + + b.Property("SiteDateSection77ApprovedActual") + .HasColumnType("date") + .HasColumnName("Site.Date Section 77 approved (actual)"); + + b.Property("SiteDclgLeaseToTrustDateOfCompletionActual") + .HasColumnType("date") + .HasColumnName("Site.DCLG lease to Trust : Date of completion (actual)"); + + b.Property("SiteDclgLeaseToTrustDateOfExchangeActual") + .HasColumnType("date") + .HasColumnName("Site.DCLG lease to Trust : Date of exchange (actual)"); + + b.Property("SiteDclgLeaseToTrustIfPurchasedInNameOfDclg") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.DCLG lease to Trust, if purchased in name of DCLG"); + + b.Property("SiteDecisionMakingFramework") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Decision making framework"); + + b.Property("SiteDetailOfBuildingTypeOther") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Detail of building type - Other"); + + b.Property("SiteDetailsOfVariationToTheLease") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Details of variation to the lease"); + + b.Property("SiteDifference") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.% difference"); + + b.Property("SiteDisposalStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Disposal status"); + + b.Property("SiteDisposalVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Disposal VAT"); + + b.Property("SiteEndDateOfSchoolOccupationActual") + .HasColumnType("date") + .HasColumnName("Site.End date of school occupation (actual)"); + + b.Property("SiteEndDateOfSchoolOccupationForecast") + .HasColumnType("date") + .HasColumnName("Site.End date of school occupation (forecast)"); + + b.Property("SiteExistingUseClass") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Existing use class"); + + b.Property("SiteGreenBookNpvLeaseCost") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Green book NPV lease cost"); + + b.Property("SiteHmtPaperComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.HMT paper comments"); + + b.Property("SiteHmtPaperRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.HMT paper required"); + + b.Property("SiteIaS17Required") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.IA S17 required"); + + b.Property("SiteIsThereAPlanningLongStopDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Is there a planning long stop date?"); + + b.Property("SiteLandValueIaS17InPlaceOfRbv") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Land value (IA S17 in place of RBV)"); + + b.Property("SiteLandlordName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Landlord Name"); + + b.Property("SiteLeaseEndDateActual") + .HasColumnType("date") + .HasColumnName("Site.Lease end date (actual)"); + + b.Property("SiteLeaseStartDateActual") + .HasColumnType("date") + .HasColumnName("Site.Lease start date (actual)"); + + b.Property("SiteLegalManagerComments") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Site.Legal manager comments"); + + b.Property("SiteLengthOfLeaseYears") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Length of lease (years)"); + + b.Property("SiteListing") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Listing"); + + b.Property("SiteLocatEdCommissionReference") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.LocatED commission reference"); + + b.Property("SiteLocatEdDelivery") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.LocatED delivery"); + + b.Property("SiteMaximumCapacityOfTemporarySiteNoOfPupils") + .HasMaxLength(6) + .IsUnicode(false) + .HasColumnType("varchar(6)") + .HasColumnName("Site.Maximum capacity of temporary site (no of pupils)"); + + b.Property("SiteNameOfPurchaser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Name of purchaser"); + + b.Property("SiteNameOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Name of site"); + + b.Property("SiteNetCostOfAcquisition") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Net cost of acquisition"); + + b.Property("SiteNetValueOfDisposal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Net value of disposal"); + + b.Property("SiteNumberOfStoreys") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Number of storeys"); + + b.Property("SiteOtherComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Other comments"); + + b.Property("SitePlanningLongStopDateActual") + .HasColumnType("date") + .HasColumnName("Site.Planning long stop date (actual)"); + + b.Property("SitePleaseStateReasonIfMoreThanOneTenureTypeSelected") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Please state reason if more than one tenure type selected"); + + b.Property("SitePostcodeOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Postcode of site"); + + b.Property("SitePreFundingAgreementSideLetterLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Pre-funding agreement side letter link"); + + b.Property("SitePreFundingAgreementSideLetterRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Pre-funding agreement side letter required"); + + b.Property("SitePremiumIfApplicable") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Premium (if applicable)"); + + b.Property("SitePropertyAdviserComments") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Site.Property adviser comments"); + + b.Property("SiteRbvRequired") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.RBV required"); + + b.Property("SiteRbvStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.RBV status"); + + b.Property("SiteRbvValue") + .HasMaxLength(20) + .IsUnicode(false) + .HasColumnType("varchar(20)") + .HasColumnName("Site.RBV value"); + + b.Property("SiteS106Funding") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.S106 Funding"); + + b.Property("SiteSection77Required") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Section 77 required"); + + b.Property("SiteSiteDisposalDateOfCompletionActual") + .HasColumnType("date") + .HasColumnName("Site.Site disposal date of completion (actual)"); + + b.Property("SiteSiteDisposalDateOfExchangeActual") + .HasColumnType("date") + .HasColumnName("Site.Site disposal date of exchange (actual)"); + + b.Property("SiteSiteId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Site ID"); + + b.Property("SiteSiteIdentifiedActual") + .HasColumnType("date") + .HasColumnName("Site.Site identified (actual)"); + + b.Property("SiteSiteIdentifiedForecast") + .HasColumnType("date") + .HasColumnName("Site.Site identified (forecast)"); + + b.Property("SiteSiteSchoolCurrentlyOperatingFrom") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Site school currently operating from"); + + b.Property("SiteSiteStatus") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Site Status"); + + b.Property("SiteStartDateOfSchoolOccupationActual") + .HasColumnType("date") + .HasColumnName("Site.Start date of school occupation (actual)"); + + b.Property("SiteStartDateOfSchoolOccupationForecast") + .HasColumnType("date") + .HasColumnName("Site.Start date of school occupation (forecast)"); + + b.Property("SiteTenure") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Site.Tenure"); + + b.Property("SiteTypeOfSite") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Type of site"); + + b.Property("SiteTypeOfSiteDisposal") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Type of site disposal"); + + b.Property("SiteVariationToTheLease") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Variation to the lease"); + + b.Property("SiteVariationToTheLeaseDateOfCompletionActual") + .HasColumnType("date") + .HasColumnName("Site.Variation to the lease : Date of completion (actual)"); + + b.Property("SiteVendorName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Site.Vendor name"); + + b.Property("Tos") + .IsRequired() + .HasMaxLength(9) + .IsUnicode(false) + .HasColumnType("varchar(9)") + .HasColumnName("TOS"); + + b.Property("TownOrCity") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TownOrCity"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("Property", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("PropertyHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.PropertyQa", b => + { + b.Property("AddressOfSite") + .HasColumnType("int") + .HasColumnName("Address of site"); + + b.Property("DateOfCompletionForecast") + .HasColumnType("int") + .HasColumnName("Date of completion (forecast)"); + + b.Property("DateOfExchangeActual") + .HasColumnType("int") + .HasColumnName("Date of exchange (actual)"); + + b.Property("DateOfExchangeForecast") + .HasColumnType("int") + .HasColumnName("Date of exchange (forecast)"); + + b.Property("DateOfHeadsOfTermsAgreedActual") + .HasColumnType("int") + .HasColumnName("Date of heads of terms agreed (actual)"); + + b.Property("DateOfHeadsOfTermsAgreedForecast") + .HasColumnType("int") + .HasColumnName("Date of heads of terms agreed (forecast)"); + + b.Property("EsfaCapitalProjectManager") + .HasColumnType("int") + .HasColumnName("ESFA Capital project manager"); + + b.Property("EsfaPropertyLead") + .HasColumnType("int") + .HasColumnName("ESFA property lead"); + + b.Property("EsfaRegionalPropertyLead") + .HasColumnType("int") + .HasColumnName("ESFA regional property lead"); + + b.Property("HeadOfRegion") + .HasColumnType("int") + .HasColumnName("Head of Region"); + + b.Property("LegalManager") + .HasColumnType("int") + .HasColumnName("Legal manager"); + + b.Property("LocatEdAcquisitionManager") + .HasColumnType("int") + .HasColumnName("LocatED acquisition manager"); + + b.Property("LocatEdCommissionReference") + .HasColumnType("int") + .HasColumnName("LocatED commission reference"); + + b.Property("LocatEdDelivery") + .HasColumnType("int") + .HasColumnName("LocatED delivery"); + + b.Property("Month") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.Property("NameOfSite") + .HasColumnType("int") + .HasColumnName("Name of site"); + + b.Property("PleaseStateReasonIfMoreThanOneTenureTypeSelected") + .HasColumnType("int") + .HasColumnName("Please state reason if more than one tenure type selected"); + + b.Property("PostcodeOfSite") + .HasColumnType("int") + .HasColumnName("Postcode of site"); + + b.Property("ProjectDirector") + .HasColumnType("int") + .HasColumnName("Project director"); + + b.Property("SiteIdentifiedActual") + .HasColumnType("int") + .HasColumnName("Site identified (actual)"); + + b.Property("SiteIdentifiedForecast") + .HasColumnType("int") + .HasColumnName("Site identified (forecast)"); + + b.Property("TenureHighlight") + .HasColumnType("int") + .HasColumnName("Tenure highlight"); + + b.ToTable("Property_QA", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Rag", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("RagRatingsAllAssessmentConditionsMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.All assessment conditions met"); + + b.Property("RagRatingsAssessmentCondition1") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 1"); + + b.Property("RagRatingsAssessmentCondition2") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 2"); + + b.Property("RagRatingsAssessmentCondition3") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 3"); + + b.Property("RagRatingsAssessmentCondition4") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 4"); + + b.Property("RagRatingsAssessmentCondition5") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 5"); + + b.Property("RagRatingsAssessmentCondition6") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 6"); + + b.Property("RagRatingsAssessmentCondition7") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 7"); + + b.Property("RagRatingsAssessmentCondition8") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Assessment condition 8"); + + b.Property("RagRatingsEducationRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Education RAG"); + + b.Property("RagRatingsEducationRagSummary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.Education RAG summary"); + + b.Property("RagRatingsFinanceRagSummary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.Finance RAG summary"); + + b.Property("RagRatingsFinancesRagRating") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.Finances RAG rating"); + + b.Property("RagRatingsGovernanceAndSuitabilityRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Governance and Suitability RAG rating"); + + b.Property("RagRatingsGovernanceAndSuitabilityRagSummary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.Governance and Suitability RAG summary"); + + b.Property("RagRatingsHasCondition1BeenMet") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.Has condition 1 been met?"); + + b.Property("RagRatingsHasCondition2BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 2 been met?"); + + b.Property("RagRatingsHasCondition3BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 3 been met?"); + + b.Property("RagRatingsHasCondition4BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 4 been met?"); + + b.Property("RagRatingsHasCondition5BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 5 been met?"); + + b.Property("RagRatingsHasCondition6BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 6 been met?"); + + b.Property("RagRatingsHasCondition7BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 7 been met?"); + + b.Property("RagRatingsHasCondition8BeenMet") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Has condition 8 been met?"); + + b.Property("RagRatingsInclusivityIssue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Inclusivity Issue"); + + b.Property("RagRatingsLinkToRiskAssessmentMatrix") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Link to Risk Assessment Matrix"); + + b.Property("RagRatingsLocalContextRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Local context RAG rating"); + + b.Property("RagRatingsOverallRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Overall RAG rating"); + + b.Property("RagRatingsOverallRagSummary") + .HasMaxLength(5000) + .IsUnicode(false) + .HasColumnType("varchar(5000)") + .HasColumnName("Rag Ratings.Overall RAG summary"); + + b.Property("RagRatingsOverallRomRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Overall ROM RAG rating"); + + b.Property("RagRatingsPipelineFreeSchoolsJointRiskCategory") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Pipeline Free Schools Joint Risk Category"); + + b.Property("RagRatingsProjectRecommendation") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Project recommendation"); + + b.Property("RagRatingsPupilRecruitmentRagRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Pupil recruitment RAG rating"); + + b.Property("RagRatingsReasonForJointRiskCategory") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Rag Ratings.Reason for Joint Risk Category"); + + b.Property("RagRatingsRiskAppraisalFormSharepointLink") + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("Rag Ratings.Risk Appraisal Form Sharepoint Link"); + + b.Property("RagRatingsRscStocktakeRecommendationSummary") + .HasMaxLength(1000) + .IsUnicode(false) + .HasColumnType("varchar(1000)") + .HasColumnName("Rag Ratings.RSC stocktake recommendation summary"); + + b.Property("RagRatingsSummaryOfInclusivityIssue") + .HasMaxLength(999) + .IsUnicode(false) + .HasColumnType("varchar(999)") + .HasColumnName("Rag Ratings.Summary of inclusivity issue"); + + b.Property("RevisionMarker") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("RAG", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("RAGHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.RagtempBudget", b => + { + b.Property("ConstructionCostsInclPassiveIctPlanningObligationsExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Construction Costs (incl passive ICT / Planning Obligations) excl VAT Cost to date"); + + b.Property("ConstructionCostsInclPassiveIctPlanningObligationsExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Construction Costs (incl passive ICT / Planning Obligations) excl VAT Forecast"); + + b.Property("FfEExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FF & E (excl VAT) Cost to date"); + + b.Property("FfEExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FF & E (excl VAT) Forecast"); + + b.Property("Fscode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSCode"); + + b.Property("IctActivesExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Actives (excl VAT) Cost to date"); + + b.Property("IctActivesExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Actives (excl VAT) Forecast"); + + b.Property("IctBroadbandExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Broadband (excl VAT) Cost to date"); + + b.Property("IctBroadbandExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Broadband (excl VAT) Forecast"); + + b.Property("IctHardwareEquipmentExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Hardware Equipment (excl VAT) Cost to date"); + + b.Property("IctHardwareEquipmentExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("ICT Hardware Equipment (excl VAT) Forecast"); + + b.Property("LegalFeesConstructionInclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Legal fees - construction (incl VAT) Comments"); + + b.Property("LegalFeesConstructionInclVatCostUptoDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Legal fees - construction (incl VAT) Cost upto date"); + + b.Property("LegalFeesConstructionInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Legal fees - construction (incl VAT) Forecast"); + + b.Property("PermanentBudgetRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent Budget RAG"); + + b.Property("PermanentConstructionCostsInclPassiveIctPlanningObligationsExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent Construction Costs (incl passive ICT / Planning Obligations) excl VAT Comments"); + + b.Property("PermanentConstructionSubTotalComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent Construction sub total comments"); + + b.Property("PermanentFfEExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent FF & E (excl VAT) Comments"); + + b.Property("PermanentIctActivesExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Actives (excl VAT) Comments"); + + b.Property("PermanentIctBroadbandExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Broadband (excl VAT) Comments"); + + b.Property("PermanentIctDecantCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Decant Cost to date"); + + b.Property("PermanentIctDecantExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Decant (excl VAT) Comments"); + + b.Property("PermanentIctDecantExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Decant (excl VAT) forecast"); + + b.Property("PermanentIctHardwareEquipmentExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent ICT Hardware Equipment (excl VAT) Comments"); + + b.Property("PermanentTaFeesInclVat") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent TA Fees (Incl VAT)"); + + b.Property("PermanentTaSurveysInclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Permanent TA Surveys (Incl VAT Comments"); + + b.Property("TaFeesInclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Fees (Incl VAT) Cost to date"); + + b.Property("TaFeesInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Fees (Incl VAT) Forecast"); + + b.Property("TaSurveysInclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Surveys (Incl VAT) Cost to date"); + + b.Property("TaSurveysInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Surveys (Incl VAT) Forecast"); + + b.Property("TemporaryBudgetRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Budget RAG"); + + b.Property("TemporaryConstructionCostsInclPassiveIctPlanningObligationsExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Construction Costs (incl passive ICT / Planning Obligations) excl VAT Comments"); + + b.Property("TemporaryConstructionCostsInclPassiveIctPlanningObligationsExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Construction Costs (incl passive ICT / Planning Obligations) excl VAT Cost to Date"); + + b.Property("TemporaryConstructionCostsInclPassiveIctPlanningObligationsExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Construction Costs (incl passive ICT / Planning Obligations) excl VAT Forecast"); + + b.Property("TemporaryConstructionSubTotalComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Construction sub total comments"); + + b.Property("TemporaryFfEExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary FF & E (excl VAT) Comments"); + + b.Property("TemporaryFfEExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary FF & E (excl VAT) Cost to Date"); + + b.Property("TemporaryFfEExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary FF & E (excl VAT) Forecast"); + + b.Property("TemporaryIctActivesExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Actives (excl VAT) Comments"); + + b.Property("TemporaryIctActivesExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Actives (excl VAT) Cost to date"); + + b.Property("TemporaryIctActivesExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Actives (excl VAT) Forecast"); + + b.Property("TemporaryIctBroadbandExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Broadband (excl VAT) Comments"); + + b.Property("TemporaryIctBroadbandExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Broadband (excl VAT) Cost to date"); + + b.Property("TemporaryIctBroadbandExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Broadband (excl VAT) Forecast"); + + b.Property("TemporaryIctDecantExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Decant (excl VAT) Comments"); + + b.Property("TemporaryIctDecantExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Decant (excl VAT) Cost to date"); + + b.Property("TemporaryIctDecantExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Decant (excl VAT) Forecast"); + + b.Property("TemporaryIctHardwareEquipmentExclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Hardware Equipment (excl VAT) Comments"); + + b.Property("TemporaryIctHardwareEquipmentExclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Hardware Equipment (excl VAT) Cost to date"); + + b.Property("TemporaryIctHardwareEquipmentExclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary ICT Hardware Equipment (excl VAT) Forecast"); + + b.Property("TemporaryLegalFeesConstructionInclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Legal fees - construction (incl VAT) Comments"); + + b.Property("TemporaryLegalFeesConstructionInclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Legal fees - construction (incl VAT) Cost to date"); + + b.Property("TemporaryLegalFeesConstructionInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary Legal fees - construction (incl VAT) Forecast"); + + b.Property("TemporaryTaFeesInclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Fees (Incl VAT) Cost to date"); + + b.Property("TemporaryTaFeesInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Fees (Incl VAT) Forecast"); + + b.Property("TemporaryTaFeesInclVatForecastComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Fees (Incl VAT) Forecast Comments"); + + b.Property("TemporaryTaSurveysInclVatComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Surveys (Incl VAT) Comments "); + + b.Property("TemporaryTaSurveysInclVatCostToDate") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Surveys (Incl VAT) Cost to date"); + + b.Property("TemporaryTaSurveysInclVatForecast") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Temporary TA Surveys (Incl VAT) Forecast"); + + b.ToTable("RAGTEMP_BUDGET", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.RagtempRatings", b => + { + b.Property("AccidentOnSiteInThisMonthReportedToEfa") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Accident on site in this month reported to EFA"); + + b.Property("Fscode") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("FSCode"); + + b.Property("OverallRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Overall RAG"); + + b.Property("TaOverallSiteRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Overall Site RAG"); + + b.Property("TaOverallSiteRagComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Overall Site RAG Comments"); + + b.Property("TaPermanentSiteRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Permanent Site RAG"); + + b.Property("TaPermanentSiteRagComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA Permanent Site RAG Comments"); + + b.Property("TaSeptemberSiteRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA September Site RAG"); + + b.Property("TaSeptemberSiteRagComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TA September Site RAG Comments"); + + b.Property("TatemporarySiteRag") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TATemporary Site RAG"); + + b.Property("TatemporarySiteRagComments") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("TATemporary Site RAG Comments"); + + b.ToTable("RAGTEMP_RATINGS", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.RegionalFramework", b => + { + b.Property("HighValueBandLot") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("High Value Band Lot"); + + b.Property("LocalAuthority") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Local authority"); + + b.Property("LowValueBandLot") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Low Value Band Lot"); + + b.Property("MediumValueBandLot") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Medium Value Band Lot"); + + b.Property("RscRegions") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("RSC Regions"); + + b.ToTable("Regional Framework", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.ReportServerUrl", b => + { + b.Property("Id") + .HasColumnType("int") + .HasColumnName("id"); + + b.Property("ReportName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("report_name"); + + b.Property("Servername") + .IsRequired() + .HasMaxLength(50) + .IsUnicode(false) + .HasColumnType("varchar(50)") + .HasColumnName("servername"); + + b.Property("Url") + .IsRequired() + .HasMaxLength(500) + .IsUnicode(false) + .HasColumnType("varchar(500)") + .HasColumnName("url"); + + b.ToTable("Report_Server_Url", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Tally", b => + { + b.Property("Id") + .HasColumnType("int") + .HasColumnName("ID"); + + b.ToTable("Tally", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Tasks", b => + { + b.Property("Rid") + .HasMaxLength(30) + .IsUnicode(false) + .HasColumnType("varchar(30)") + .HasColumnName("RID"); + + b.Property("TaskName") + .HasMaxLength(50) + .IsUnicode(false) + .HasColumnType("varchar(50)") + .HasColumnName("Task Name"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("Status") + .IsRequired() + .HasMaxLength(20) + .IsUnicode(false) + .HasColumnType("varchar(20)") + .HasColumnName("Status"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("Rid", "TaskName"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("Tasks", "mfsp"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("TasksHistory", "mfsp"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.TechnicalQa", b => + { + b.Property("Bim") + .HasColumnType("int") + .HasColumnName("BIM"); + + b.Property("ComgdIssued") + .HasColumnType("int") + .HasColumnName("COMGD Issued"); + + b.Property("ContractAwardValue") + .HasColumnType("int") + .HasColumnName("Contract Award Value £"); + + b.Property("ContractBudgetValue") + .HasColumnType("int") + .HasColumnName("Contract Budget Value £"); + + b.Property("ContractProcurementStatus") + .HasColumnType("int") + .HasColumnName("Contract Procurement Status"); + + b.Property("ContractingParty") + .HasColumnType("int") + .HasColumnName("Contracting Party"); + + b.Property("Contractor") + .HasColumnType("int"); + + b.Property("DeliveryParty") + .HasColumnType("int") + .HasColumnName("Delivery Party"); + + b.Property("EnterIntoMainContractActual") + .HasColumnType("int") + .HasColumnName("Enter into Main Contract Actual"); + + b.Property("FeasibilityReportApproved") + .HasColumnType("int") + .HasColumnName("Feasibility Report Approved"); + + b.Property("FeasibiltyReportStartDate") + .HasColumnType("int") + .HasColumnName("Feasibilty Report Start Date"); + + b.Property("FinalContractValue") + .HasColumnType("int") + .HasColumnName("Final Contract Value £"); + + b.Property("Gifa") + .HasColumnType("int") + .HasColumnName("GIFA"); + + b.Property("Month") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.Property("PcCertificateIssuedActual") + .HasColumnType("int") + .HasColumnName("PC Certificate Issued Actual"); + + b.Property("ProcurementRoute") + .HasColumnType("int") + .HasColumnName("Procurement Route"); + + b.Property("ProcurementStartActual") + .HasColumnType("int") + .HasColumnName("Procurement Start Actual"); + + b.Property("TypeOfWork") + .HasColumnType("int") + .HasColumnName("Type of Work"); + + b.ToTable("Technical_QA", "dbo"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.TermVisits", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("TermVisitsActionPlan") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Action plan"); + + b.Property("TermVisitsActionPlanDueDate") + .HasColumnType("date") + .HasColumnName("Term Visits.Action plan due date"); + + b.Property("TermVisitsActionPlanReceived") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Action plan received"); + + b.Property("TermVisitsDateOfFollowUp") + .HasColumnType("date") + .HasColumnName("Term Visits.Date of follow up"); + + b.Property("TermVisitsDateOfVisit") + .HasColumnType("date") + .HasColumnName("Term Visits.Date of Visit"); + + b.Property("TermVisitsFollowUpVisitRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Follow-up visit rating"); + + b.Property("TermVisitsIsActionPlanRequested") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Is action plan requested?"); + + b.Property("TermVisitsLinkOfficerFirstTermVisit") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Link Officer first term visit"); + + b.Property("TermVisitsLinkOfficerFirstTermVisitOutcome") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Link officer first term visit - outcome"); + + b.Property("TermVisitsLinkOfficerFirstTermVisitOutcomeTypeOfConcern") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Link officer first term visit outcome - type of concern"); + + b.Property("TermVisitsLinkOfficerFirstTermVisitReport") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Link officer first term visit – report"); + + b.Property("TermVisitsNameOfDfEOfficial") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Name of DfE official"); + + b.Property("TermVisitsNameOfEducationAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Name of Education Adviser"); + + b.Property("TermVisitsNextVisitDate") + .HasColumnType("date") + .HasColumnName("Term Visits.Next visit date"); + + b.Property("TermVisitsSchoolTermVisit") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.School Term Visit"); + + b.Property("TermVisitsVisitFollowUp") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Visit follow up"); + + b.Property("TermVisitsVisitRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Visit Rating"); + + b.Property("TermVisitsVisitReport") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits.Visit Report"); + + b.Property("TermVisitsVisitSummary") + .HasMaxLength(400) + .IsUnicode(false) + .HasColumnType("varchar(400)") + .HasColumnName("Term Visits.Visit Summary"); + + b.Property("Visits") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)"); + + b.HasKey("Rid"); + + b.ToTable("Term_Visits", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("Term_VisitsHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.TermVisitsUtcs", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitDateOfVisit") + .HasColumnType("date") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Date of Visit"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitNameOfDfEOfficial") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Name of DfE official"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitNameOfEducationAdviser") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Name of Education Adviser"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitNextVisitDate") + .HasColumnType("date") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Next visit date"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitReportLink") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Report link"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitSummary") + .IsUnicode(false) + .HasColumnType("varchar(max)") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Summary"); + + b.Property("TermVisitsUtcPostOfstedUtcVisitVisitRating") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits UTC.Post-Ofsted UTC Visit: Visit Rating"); + + b.Property("TermVisitsUtcSchoolTermVisit") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Term Visits UTC.School term Visit"); + + b.HasKey("Rid"); + + b.ToTable("Term_Visits_UTCs", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("Term_Visits_UTCsHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Trust", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("LeadSponsor") + .HasMaxLength(7) + .IsUnicode(false) + .HasColumnType("varchar(7)") + .HasColumnName("Lead Sponsor"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("TrustRef") + .HasMaxLength(7) + .IsUnicode(false) + .HasColumnType("varchar(7)") + .HasColumnName("Trust ref"); + + b.Property("TrustsLeadSponsorId") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("Trusts.Lead sponsor id"); + + b.Property("TrustsLeadSponsorName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Trusts.Lead sponsor name"); + + b.Property("TrustsTrustName") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Trusts.Trust name"); + + b.Property("TrustsTrustRef") + .HasMaxLength(5) + .IsUnicode(false) + .HasColumnType("varchar(5)") + .HasColumnName("Trusts.Trust ref"); + + b.Property("TrustsTrustType") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Trusts.Trust type"); + + b.HasKey("Rid"); + + b.ToTable("Trust", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("TrustHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Wfa", b => + { + b.Property("Rid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("RID"); + + b.Property("PRid") + .HasMaxLength(11) + .IsUnicode(false) + .HasColumnType("varchar(11)") + .HasColumnName("p_rid"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("WorksFundingAgreementsWfaId") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Works Funding Agreements.WFA ID"); + + b.Property("WorksFundingAgreementsWorkFundingAgreementIssuedDate") + .HasColumnType("date") + .HasColumnName("Works Funding Agreements.Work Funding Agreement issued date"); + + b.Property("WorksFundingAgreementsWorkFundingAgreementTotalValue") + .HasMaxLength(100) + .IsUnicode(false) + .HasColumnType("varchar(100)") + .HasColumnName("Works Funding Agreements.Work Funding Agreement total value"); + + b.HasKey("Rid"); + + b.ToTable("WFA", "dbo"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("WFAHistory", "dbo"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.RiskAppraisalMeetingTask", b => + { + b.Property("RID") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property("ActualDate") + .HasColumnType("datetime2"); + + b.Property("CommentOnDecision") + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.Property("ForecastDate") + .HasColumnType("datetime2"); + + b.Property("MeetingCompleted") + .HasColumnType("bit"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.Property("ReasonNotApplicable") + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.Property("UpdatedByUserId") + .HasColumnType("int"); + + b.HasKey("RID"); + + b.HasIndex("UpdatedByUserId"); + + b.ToTable("RiskAppraisalMeetingTask", "mfsp"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("RiskAppraisalMeetingTaskHistory", "mfsp"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Email") + .HasMaxLength(80) + .HasColumnType("nvarchar(80)"); + + b.Property("PeriodEnd") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodEnd"); + + b.Property("PeriodStart") + .ValueGeneratedOnAddOrUpdate() + .HasColumnType("datetime2") + .HasColumnName("PeriodStart"); + + b.HasKey("Id"); + + b.HasIndex("Email") + .IsUnique() + .HasFilter("[Email] IS NOT NULL"); + + b.ToTable("User", "mfsp"); + + b.ToTable(tb => tb.IsTemporal(ttb => + { + ttb.UseHistoryTable("UserHistory", "mfsp"); + ttb + .HasPeriodStart("PeriodStart") + .HasColumnName("PeriodStart"); + ttb + .HasPeriodEnd("PeriodEnd") + .HasColumnName("PeriodEnd"); + })); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Bs", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.ConstructData", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.FsKim", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Kai", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Kpi", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", "User") + .WithMany("Projects") + .HasForeignKey("UserId"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Milestones", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.OfstedFsg", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Opens", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Po", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Property", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Rag", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.Existing.Tasks", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.RiskAppraisalMeetingTask", b => + { + b.HasOne("Dfe.ManageFreeSchoolProjects.Data.Entities.User", null) + .WithMany() + .HasForeignKey("UpdatedByUserId"); + }); + + modelBuilder.Entity("Dfe.ManageFreeSchoolProjects.Data.Entities.User", b => + { + b.Navigation("Projects"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.cs new file mode 100644 index 000000000..9451dc075 --- /dev/null +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/20241003144517_FundingAgreementIncludedImpactAssesment.cs @@ -0,0 +1,62 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Dfe.ManageFreeSchoolProjects.Data.Migrations +{ + /// + public partial class FundingAgreementIncludedImpactAssesment : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck", + schema: "dbo", + table: "Milestones", + type: "bit", + nullable: true) + .Annotation("SqlServer:IsTemporal", true) + .Annotation("SqlServer:TemporalHistoryTableName", "MilestonesHistory") + .Annotation("SqlServer:TemporalHistoryTableSchema", "dbo") + .Annotation("SqlServer:TemporalPeriodEndColumnName", "PeriodEnd") + .Annotation("SqlServer:TemporalPeriodStartColumnName", "PeriodStart"); + + migrationBuilder.AddColumn( + name: "FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission", + schema: "dbo", + table: "Milestones", + type: "bit", + nullable: true) + .Annotation("SqlServer:IsTemporal", true) + .Annotation("SqlServer:TemporalHistoryTableName", "MilestonesHistory") + .Annotation("SqlServer:TemporalHistoryTableSchema", "dbo") + .Annotation("SqlServer:TemporalPeriodEndColumnName", "PeriodEnd") + .Annotation("SqlServer:TemporalPeriodStartColumnName", "PeriodStart"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck", + schema: "dbo", + table: "Milestones") + .Annotation("SqlServer:IsTemporal", true) + .Annotation("SqlServer:TemporalHistoryTableName", "MilestonesHistory") + .Annotation("SqlServer:TemporalHistoryTableSchema", "dbo") + .Annotation("SqlServer:TemporalPeriodEndColumnName", "PeriodEnd") + .Annotation("SqlServer:TemporalPeriodStartColumnName", "PeriodStart"); + + migrationBuilder.DropColumn( + name: "FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission", + schema: "dbo", + table: "Milestones") + .Annotation("SqlServer:IsTemporal", true) + .Annotation("SqlServer:TemporalHistoryTableName", "MilestonesHistory") + .Annotation("SqlServer:TemporalHistoryTableSchema", "dbo") + .Annotation("SqlServer:TemporalPeriodEndColumnName", "PeriodEnd") + .Annotation("SqlServer:TemporalPeriodStartColumnName", "PeriodStart"); + } + } +} diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/MfspContextModelSnapshot.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/MfspContextModelSnapshot.cs index dd06c534a..0b4993152 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/MfspContextModelSnapshot.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.Data/Migrations/MfspContextModelSnapshot.cs @@ -5501,6 +5501,12 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("date") .HasColumnName("FSG Pre Opening Milestones.MFAD Forecast date"); + b.Property("FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaHealthCheck") + .HasColumnType("bit"); + + b.Property("FsgPreOpeningMilestonesMfadIncludedSignedOffImpactAssessmentFaSubmission") + .HasColumnType("bit"); + b.Property("FsgPreOpeningMilestonesMfadMinisterSignedOffFaHealthCheck") .HasColumnType("bit"); diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationNumber.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationNumber.cshtml.cs index b644eb9d7..627a28986 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationNumber.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationNumber.cshtml.cs @@ -10,8 +10,8 @@ public class ApplicationNumberViewModel(ICreateProjectCache createProjectCache, { [BindProperty(Name = "application-number")] [Display(Name = "application number")] - [StringLength(10, ErrorMessage = "The application number must be 10 characters or less.")] - [Required] + [StringLength(10, ErrorMessage = "The application number must be 10 characters or less")] + [Required(ErrorMessage = "Enter the application number")] public string ApplicationNumber { get; set; } public IActionResult OnGet() diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml index b7297f547..0763abd9c 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml @@ -9,8 +9,10 @@ Back } + + +
-
diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml.cs index e26e0b611..116ff31c7 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/CentralRoute/ApplicationWave.cshtml.cs @@ -12,7 +12,7 @@ public class ApplicationWaveViewModel(ICreateProjectCache createProjectCache, Er { [BindProperty(Name = "application-wave")] [DisplayName("application wave")] - [Required] + [Required(ErrorMessage = "Enter the application wave")] public string ApplicationWave { get; set; } public IActionResult OnGet() diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml index 851c49f57..46bb9e010 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml @@ -2,7 +2,11 @@ @using Dfe.ManageFreeSchoolProjects.API.Contracts.Project; @model Dfe.ManageFreeSchoolProjects.Pages.Project.Create.MethodModel @{ - ViewData["Title"] = "What project do you want to create? - Manage free school projects"; + ViewData["Title"] = "What project do you want to create?"; + + var methods = Enum.GetValues().Except(new [] { ProjectType.NotSet }).ToList(); + var labels = methods.Select(x => x.ToDescription()).ToArray(); + var values = methods.Select(x => x.ToString()).ToArray(); } @section BeforeMain { @@ -14,30 +18,25 @@
- - + +
+
You can only create one at a time.

- - - - - + -
+
diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml.cs index 1fcb0bbba..b389694ab 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Create/Method.cshtml.cs @@ -14,7 +14,7 @@ public class MethodModel(ErrorService errorService, ICreateProjectCache createPr { [BindProperty(Name = "method")] [Display(Name = "method")] - [Required(ErrorMessage = "Select what you want to do")] + [Required(ErrorMessage = "Select what project you want to create")] public ProjectType Method { get; set; } [FromQuery(Name = "newProject")] diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml index d617b5371..cad53d77e 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml @@ -28,6 +28,7 @@ + @Html.HiddenFor(m => m.SchoolName) diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml.cs index 8b3936946..ac4d23764 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/EditFundingAgreementHealthCheckTask.cshtml.cs @@ -32,6 +32,9 @@ public class EditFundingAgreementHealthCheckTaskModel : PageModel [BindProperty(Name = "minister-signed-off-fa-health-check")] public bool? MinisterSignedOffFaHealthCheck { get; set; } + [BindProperty(Name = "included-signed-off-impact-assessment")] + public bool? IncludedSignedOffImpactAssessment { get; set; } + [BindProperty(Name = "saved-fa-health-check-in-workplaces-folder")] public bool? SavedFaHealthCheckInWorkplacesFolder { get; set; } @@ -81,6 +84,7 @@ public async Task OnPost() DraftedFundingAgreementHealthCheck = DraftedFAHealthCheck, RegionalDirectorSignedOffFundingAgreementHealthCheck = RegionalDirectorSignedOffFaHealthCheck, MinisterSignedOffFundingAgreementHealthCheck = MinisterSignedOffFaHealthCheck, + IncludedSignedOffImpactAssessment = IncludedSignedOffImpactAssessment, SavedFundingAgreementHealthCheckInWorkplacesFolder = SavedFaHealthCheckInWorkplacesFolder } }; @@ -97,6 +101,7 @@ private async Task LoadProject() DraftedFAHealthCheck = project.FundingAgreementHealthCheck.DraftedFundingAgreementHealthCheck; RegionalDirectorSignedOffFaHealthCheck = project.FundingAgreementHealthCheck.RegionalDirectorSignedOffFundingAgreementHealthCheck; MinisterSignedOffFaHealthCheck = project.FundingAgreementHealthCheck.MinisterSignedOffFundingAgreementHealthCheck; + IncludedSignedOffImpactAssessment = project.FundingAgreementHealthCheck.IncludedSignedOffImpactAssessment; SavedFaHealthCheckInWorkplacesFolder = project.FundingAgreementHealthCheck.SavedFundingAgreementHealthCheckInWorkplacesFolder; SchoolName = project.SchoolName; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/ViewFundingAgreementHealthCheckTask.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/ViewFundingAgreementHealthCheckTask.cshtml index e58191fcd..4fe04cd11 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/ViewFundingAgreementHealthCheckTask.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementHealthCheck/ViewFundingAgreementHealthCheckTask.cshtml @@ -27,6 +27,7 @@ + diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml index df81598c8..1f89e7a96 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml @@ -28,6 +28,7 @@ + @Html.HiddenFor(m => m.SchoolName) diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml.cs index 4c4c62011..f45d1dd28 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/EditFundingAgreementSubmissionTask.cshtml.cs @@ -33,6 +33,9 @@ public class EditFundingAgreementSubmissionTaskModel : PageModel [BindProperty(Name = "minister-signed-off-fa-submission")] public bool? MinisterSignedOffFaSubmission { get; set; } + [BindProperty(Name = "included-signed-off-impact-assessment")] + public bool? IncludedSignedOffImpactAssessment { get; set; } + [BindProperty(Name = "saved-fa-submission-in-workplaces-folder")] public bool? SavedFaSubmissionInWorkplacesFolder { get; set; } @@ -83,6 +86,7 @@ public async Task OnPost() DraftedFundingAgreementSubmission = DraftedFASubmission, RegionalDirectorSignedOffFundingAgreementSubmission = RegionalDirectorSignedOffFaSubmission, MinisterSignedOffFundingAgreementSubmission = MinisterSignedOffFaSubmission, + IncludedSignedOffImpactAssessment = IncludedSignedOffImpactAssessment, SavedFundingAgreementSubmissionInWorkplacesFolder = SavedFaSubmissionInWorkplacesFolder } }; @@ -99,6 +103,7 @@ private async Task LoadProject() DraftedFASubmission = project.FundingAgreementSubmission.DraftedFundingAgreementSubmission; RegionalDirectorSignedOffFaSubmission = project.FundingAgreementSubmission.RegionalDirectorSignedOffFundingAgreementSubmission; MinisterSignedOffFaSubmission = project.FundingAgreementSubmission.MinisterSignedOffFundingAgreementSubmission; + IncludedSignedOffImpactAssessment = project.FundingAgreementSubmission.IncludedSignedOffImpactAssessment; SavedFaSubmissionInWorkplacesFolder = project.FundingAgreementSubmission.SavedFundingAgreementSubmissionInWorkplacesFolder; SchoolName = project.SchoolName; diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/ViewFundingAgreementSubmissionTask.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/ViewFundingAgreementSubmissionTask.cshtml index e33bfb858..74b4819e3 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/ViewFundingAgreementSubmissionTask.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreementSubmission/ViewFundingAgreementSubmissionTask.cshtml @@ -27,6 +27,7 @@ + diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/TaskList.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/TaskList.cshtml index cff7c40c5..0ef9dd8c0 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/TaskList.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/TaskList.cshtml @@ -155,9 +155,9 @@ - +

@@ -183,25 +183,4 @@

-
-@functions { - - public void RenderStatus(TaskSummaryResponse task) - { - var testId = $"task-{task.Name}-status"; - - if (task.Status == ProjectTaskStatus.Completed) - { - Completed - } - else if (task.Status == ProjectTaskStatus.InProgress) - { - In progress - } - else - { - Not started - } - } - -} \ No newline at end of file +
\ No newline at end of file diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Shared/_TaskSummaryItem.cshtml b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Shared/_TaskSummaryItem.cshtml index 91828fe0e..6462d3606 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Shared/_TaskSummaryItem.cshtml +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Shared/_TaskSummaryItem.cshtml @@ -21,7 +21,7 @@ if (task.Status == ProjectTaskStatus.Completed) { - Completed +
Completed
} else if (task.Status == ProjectTaskStatus.InProgress) { diff --git a/release-notes.md b/release-notes.md index 7f76ba9d9..76746172c 100644 --- a/release-notes.md +++ b/release-notes.md @@ -1,5 +1,7 @@ ## 0.14.0 * 177717 - Build: Create central route projects +* 178172 - Build: Iterate funding agreement health check and submission +* 182793 - Build: set values for calculated database fields ## 0.13.0 * 147110 - Build: Readiness to open meeting (ROM)