Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions SAPData/DataMap/datamap.csv
Original file line number Diff line number Diff line change
Expand Up @@ -1112,12 +1112,12 @@ LA,,VA_INS_ALEV_DIS_LA_Current_Num,,,,,,,,KS5_Performance,Performance,Current,Cu
LA,,VA_INS_ALEV_NOTDIS_LA_Current_Num,,,,,,,,KS5_Performance,Performance,Current,Current,national_performance_202225_API,value_added,number,number,old_la_code,disadvantage_status,Not disadvantaged,exam_cohort,A level,time_period,202425,geographic_level,Local authority,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
LA,,VA_INS_TLEV_DIS_LA_Current_Num,,,,,,,,KS5_Performance,Performance,Current,Current,national_performance_202225_API,value_added,number,number,old_la_code,disadvantage_status,Disadvantaged,exam_cohort,Tech level,time_period,202425,geographic_level,Local authority,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
LA,,VA_INS_TLEV_NOTDIS_LA_Current_Num,,,,,,,,KS5_Performance,Performance,Current,Current,national_performance_202225_API,value_added,number,number,old_la_code,disadvantage_status,Not disadvantaged,exam_cohort,Tech level,time_period,202425,geographic_level,Local authority,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_TotKS2_Est_Current_Num,Absence,Enrolments,Total KS2,TotKS2,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202324,education_phase,State-funded primary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_Tot_Est_Current_Num,Absence,Enrolments,Total KS4,Tot,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202324,education_phase,State-funded secondary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_TotSPE_Est_Current_Num,Absence,Enrolments,Total Special,TotSPE,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202324,education_phase,Special,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_PersistentKS2_Est_Current_Num,Absence,Abs,Persistent KS2,PersistentKS2,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202324,education_phase,State-funded primary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_Persistent_Est_Current_Num,Absence,Abs,Persistent KS4,Persistent,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202324,education_phase,State-funded secondary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_PersistentSPE_Est_Current_Num,Absence,Abs,Persistent Special,PersistentSPE,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202324,education_phase,Special,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_TotKS2_Est_Current_Num,Absence,Enrolments,Total KS2,TotKS2,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202425,education_phase,State-funded primary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_Tot_Est_Current_Num,Absence,Enrolments,Total KS4,Tot,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202425,education_phase,State-funded secondary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Enrolments_TotSPE_Est_Current_Num,Absence,Enrolments,Total Special,TotSPE,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments,number,number,school_urn,time_period,202425,education_phase,Special,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_PersistentKS2_Est_Current_Num,Absence,Abs,Persistent KS2,PersistentKS2,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202425,education_phase,State-funded primary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_Persistent_Est_Current_Num,Absence,Abs,Persistent KS4,Persistent,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202425,education_phase,State-funded secondary,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Establishment,,Abs_PersistentSPE_Est_Current_Num,Absence,Abs,Persistent Special,PersistentSPE,,,,PupilAbsence,Absence,Current,Current,1a_absence_3term_school,enrolments_pa_10_exact,number,number,school_urn,time_period,202425,education_phase,Special,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
England,,PupEHCP_Tot_Eng_Current_Pct,,,,,,,,KS4_Performance,Performance,Current,Current,sen_phase_type_,ehc_plan_percent,percentage,percentage,geographic_level,phase_type_grouping,State-funded secondary,hospital_school,No,type_of_establishment,Total,time_period,202425,geographic_level,National,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
England,,PupSEN_Tot_Eng_Current_Pct,,,,,,,,KS4_Performance,Performance,Current,Current,sen_phase_type_,sen_support_percent,percentage,percentage,geographic_level,phase_type_grouping,State-funded secondary,hospital_school,No,type_of_establishment,Total,time_period,202425,geographic_level,National,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
England,,PT_RET_ASSESSED_TECHCERT_23_Eng_Previous2_Pct,,,,,,,,KS5_Performance,Performance,Previous2,Previous2,national_performance_202225_API,retained_assessed_percent,percentage,percentage,geographic_level,disadvantage_status,Total,exam_cohort,Technical certificate,time_period,202223,geographic_level,National,establishment_type,All state-funded schools and colleges,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Expand Down
8 changes: 4 additions & 4 deletions SAPPub.Core/Entities/EstablishmentMinimum.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,11 @@
using SAPPub.Core.Enums;
using SAPPub.Core.ServiceModels;
using System.Diagnostics.CodeAnalysis;
using System.Net.WebSockets;
using System.Runtime.Serialization;

namespace SAPPub.Core.Entities;

[ExcludeFromCodeCoverage]
public class EstablishmentMinimum
public class EstablishmentMinimum : EstablishmentServiceModelBase
{
public string URN { get; set; } = string.Empty;

Expand All @@ -29,7 +27,6 @@ public class EstablishmentMinimum

public string Website { get; set; } = string.Empty;


public static EstablishmentMinimumServiceModel MapToServiceModel(Establishment e)
{
return new()
Expand All @@ -42,6 +39,9 @@ public static EstablishmentMinimumServiceModel MapToServiceModel(Establishment e
IsKS4 = e.IsKS4,
IsKS5 = e.IsKS5,
Website = e.Website,
TypeOfEstablishment = e.TypeOfEstablishmentId is int id && Enum.IsDefined(typeof(TypeOfEstablishment), id)
? (TypeOfEstablishment)e.TypeOfEstablishmentId
: TypeOfEstablishment.Unknown,
};
}
}
49 changes: 23 additions & 26 deletions SAPPub.Core/Entities/KS4/Absence/EnglandAbsence.cs
Original file line number Diff line number Diff line change
@@ -1,31 +1,28 @@
using SAPPub.Core.ValueObjects;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.Serialization;

namespace SAPPub.Core.Entities.KS4.Absence
namespace SAPPub.Core.Entities.KS4.Absence;

[ExcludeFromCodeCoverage]
public class EnglandAbsence
{
[ExcludeFromCodeCoverage]
public class EnglandAbsence
{
public string Id { get; set; } = string.Empty;

/// <summary>
/// Persistent Absence Total filtered by England for Current year
/// </summary>
public CodedDouble Abs_Persistent_Eng_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Persistent_Eng_Current_Pct { get; set; }
[IgnoreDataMember]
public string Abs_Persistent_Eng_Current_Pct_Reason { get; set; } = string.Empty;

/// <summary>
/// Absence Total filtered by England for Current year
/// </summary>
public CodedDouble Abs_Tot_Eng_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Tot_Eng_Current_Pct { get; set; }
[IgnoreDataMember]
public string Abs_Tot_Eng_Current_Pct_Reason { get; set; } = string.Empty;

}
public string Id { get; set; } = string.Empty;

/// <summary>
/// Persistent Absence Total filtered by England for Current year
/// </summary>
public CodedDouble Abs_Persistent_Eng_Current_Pct_Coded { get; set; }

/// <summary>
/// Absence Total filtered by England for Current year
/// </summary>
public CodedDouble Abs_Tot_Eng_Current_Pct_Coded { get; set; }

public CodedDouble Abs_PersistentKS2_Eng_Current_Pct_Coded { get; set; }

public CodedDouble Abs_PersistentSPE_Eng_Current_Pct_Coded { get; set; }

public CodedDouble Abs_TotKS2_Eng_Current_Pct_Coded { get; set; }

public CodedDouble Abs_TotSPE_Eng_Current_Pct_Coded { get; set; }
}
58 changes: 18 additions & 40 deletions SAPPub.Core/Entities/KS4/Absence/EstablishmentAbsence.cs
Original file line number Diff line number Diff line change
@@ -1,46 +1,24 @@
using SAPPub.Core.ValueObjects;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.Serialization;

namespace SAPPub.Core.Entities.KS4.Absence
{
[ExcludeFromCodeCoverage]
public class EstablishmentAbsence
{
// Keys / context
public string Id { get; set; } = string.Empty;

/// <summary>
/// Total Enrolments
/// </summary>
public CodedDouble Enrolments_Tot_Est_Current_Num_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Enrolments_Tot_Est_Current_Num { get; set; }
[IgnoreDataMember]
public string? Enrolments_Tot_Est_Current_Num_Reason { get; set; }
namespace SAPPub.Core.Entities.KS4.Absence;

//
// Persistent absence %
//
public CodedDouble Abs_Persistent_Est_Current_Num_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Persistent_Est_Current_Num { get; set; }
[IgnoreDataMember]
public string? Abs_Persistent_Est_Current_Num_Reason { get; set; }

public CodedDouble Abs_Persistent_Est_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Persistent_Est_Current_Pct { get; set; }
[IgnoreDataMember]
public string? Abs_Persistent_Est_Current_Pct_Reason { get; set; }
[ExcludeFromCodeCoverage]
public class EstablishmentAbsence
{
// Keys / context
public string Id { get; set; } = string.Empty;

//
// Overall absence %
//
public CodedDouble Abs_Tot_Est_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Tot_Est_Current_Pct { get; set; }
[IgnoreDataMember]
public string? Abs_Tot_Est_Current_Pct_Reason { get; set; }
}
public CodedDouble Enrolments_Tot_Est_Current_Num_Coded { get; set; } // Total Enrolments
public CodedDouble Abs_Persistent_Est_Current_Num_Coded { get; set; } // Persistent absence %
public CodedDouble Abs_Persistent_Est_Current_Pct_Coded { get; set; }
public CodedDouble Abs_Tot_Est_Current_Pct_Coded { get; set; } // Overall absence %
public CodedDouble Abs_PersistentKS2_Est_Current_Num_Coded { get; set; }
public CodedDouble Abs_PersistentKS2_Est_Current_Pct_Coded { get; set; }
public CodedDouble Abs_PersistentSPE_Est_Current_Num_Coded { get; set; }
public CodedDouble Abs_PersistentSPE_Est_Current_Pct_Coded { get; set; }
public CodedDouble Abs_TotKS2_Est_Current_Pct_Coded { get; set; }
public CodedDouble Abs_TotSPE_Est_Current_Pct_Coded { get; set; }
public CodedDouble Enrolments_TotKS2_Est_Current_Num_Coded { get; set; }
public CodedDouble Enrolments_TotSPE_Est_Current_Num_Coded { get; set; }
}
76 changes: 33 additions & 43 deletions SAPPub.Core/Entities/KS4/Absence/LAAbsence.cs
Original file line number Diff line number Diff line change
@@ -1,48 +1,38 @@
using SAPPub.Core.ValueObjects;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.Serialization;

namespace SAPPub.Core.Entities.KS4.Absence
namespace SAPPub.Core.Entities.KS4.Absence;

[ExcludeFromCodeCoverage]
public class LAAbsence
{
[ExcludeFromCodeCoverage]
public class LAAbsence
{
public string Id { get; set; } = string.Empty;

/// <summary>
/// Persistent Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Abs_Persistent_LA_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Persistent_LA_Current_Pct { get; set; }
[IgnoreDataMember]
public string Abs_Persistent_LA_Current_Pct_Reason { get; set; } = string.Empty;

/// <summary>
/// Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Abs_Tot_LA_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Abs_Tot_LA_Current_Pct { get; set; }
[IgnoreDataMember]
public string Abs_Tot_LA_Current_Pct_Reason { get; set; } = string.Empty;

/// <summary>
/// Auth Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Auth_Tot_LA_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? Auth_Tot_LA_Current_Pct { get; set; }
[IgnoreDataMember]
public string Auth_Tot_LA_Current_Pct_Reason { get; set; } = string.Empty;

/// <summary>
/// UnAuth Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble UnAuth_Tot_LA_Current_Pct_Coded { get; set; } = new();
[IgnoreDataMember]
public double? UnAuth_Tot_LA_Current_Pct { get; set; }
[IgnoreDataMember]
public string UnAuth_Tot_LA_Current_Pct_Reason { get; set; } = string.Empty;
}
public string Id { get; set; } = string.Empty;

/// <summary>
/// Persistent Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Abs_Persistent_LA_Current_Pct_Coded { get; set; }

/// <summary>
/// Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Abs_Tot_LA_Current_Pct_Coded { get; set; }

/// <summary>
/// Auth Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble Auth_Tot_LA_Current_Pct_Coded { get; set; }

/// <summary>
/// UnAuth Absence Total filtered by LA for Current year
/// </summary>
public CodedDouble UnAuth_Tot_LA_Current_Pct_Coded { get; set; }

public CodedDouble Abs_TotKS2_LA_Current_Pct_Coded { get; set; }

public CodedDouble Abs_PersistentKS2_LA_Current_Pct_Coded { get; set; }

public CodedDouble Abs_TotSPE_LA_Current_Pct_Coded { get; set; }

public CodedDouble Abs_PersistentSPE_LA_Current_Pct_Coded { get; set; }
}
8 changes: 2 additions & 6 deletions SAPPub.Core/ServiceModels/EstablishmentMinimumServiceModel.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
using SAPPub.Core.Entities.Destinations;
using SAPPub.Core.Entities.KS4.Absence;
using SAPPub.Core.Entities.KS4.Performance;
using SAPPub.Core.Enums;
using SAPPub.Core.Helpers;
using SAPPub.Core.Helpers;

namespace SAPPub.Core.ServiceModels;

public class EstablishmentMinimumServiceModel
public class EstablishmentMinimumServiceModel : EstablishmentServiceModelBase
{
public string URN { get; set; } = string.Empty;

Expand Down
17 changes: 1 addition & 16 deletions SAPPub.Core/ServiceModels/EstablishmentServiceModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

namespace SAPPub.Core.ServiceModels;

public class EstablishmentServiceModel
public class EstablishmentServiceModel : EstablishmentServiceModelBase
{
public string URN { get; set; } = string.Empty;

Expand Down Expand Up @@ -81,7 +81,6 @@ public class EstablishmentServiceModel

public string TotalPupils { get; set; } = string.Empty;

public TypeOfEstablishment TypeOfEstablishment { get; set; }

public string TypeOfEstablishmentName { get; set; } = string.Empty;

Expand Down Expand Up @@ -123,20 +122,6 @@ public class EstablishmentServiceModel

public bool IsKS5 { get; set; }

public bool IsSpecialSchool => TypeOfEstablishment is
TypeOfEstablishment.CommunitySpecialSchool or
TypeOfEstablishment.NonMaintainedSpecialSchool or
TypeOfEstablishment.OtherIndependentSpecialSchool or
TypeOfEstablishment.FoundationSpecialSchool or
TypeOfEstablishment.AcademySpecialSponsorLed or
TypeOfEstablishment.FreeSchoolsSpecial or
TypeOfEstablishment.AcademySpecialConverter;

public bool IsIndependentSchool => TypeOfEstablishment is
TypeOfEstablishment.OtherIndependentSchool or
TypeOfEstablishment.OtherIndependentSpecialSchool;


public EstablishmentPerformance KS4Performance { get; set; } = new();

public LAPerformance LAPerformance { get; set; } = new();
Expand Down
22 changes: 22 additions & 0 deletions SAPPub.Core/ServiceModels/EstablishmentServiceModelBase.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
using SAPPub.Core.Enums;

namespace SAPPub.Core.ServiceModels;

public abstract class EstablishmentServiceModelBase
{
public TypeOfEstablishment TypeOfEstablishment { get; set; }

public bool IsSpecialSchool => TypeOfEstablishment is
TypeOfEstablishment.CommunitySpecialSchool or
TypeOfEstablishment.NonMaintainedSpecialSchool or
TypeOfEstablishment.OtherIndependentSpecialSchool or
TypeOfEstablishment.FoundationSpecialSchool or
TypeOfEstablishment.AcademySpecialSponsorLed or
TypeOfEstablishment.FreeSchoolsSpecial or
TypeOfEstablishment.AcademySpecialConverter;

public bool IsIndependentSchool => TypeOfEstablishment is
TypeOfEstablishment.OtherIndependentSchool or
TypeOfEstablishment.OtherIndependentSpecialSchool;

}
20 changes: 11 additions & 9 deletions SAPPub.Core/ServiceModels/KS4/Attendance/AttendanceModel.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
namespace SAPPub.Core.ServiceModels.KS4.Attendance;
using SAPPub.Core.ValueObjects;

namespace SAPPub.Core.ServiceModels.KS4.Attendance;

public record AttendanceModel
{
Expand All @@ -13,19 +15,19 @@ public record AttendanceModel

public string? LocalAuthority { get; set; }

public double? EstablishmentAttendance { get; init; }
public CodedDouble EstablishmentAttendance { get; init; }

public double? EnglandAttendance { get; init; }
public CodedDouble EnglandAttendance { get; init; }

public double? LocalAuthorityAttendance { get; init; }
public CodedDouble LocalAuthorityAttendance { get; init; }

public double? EstablishmentPersistentAbsence { get; init; }
public CodedDouble EstablishmentPersistentAbsence { get; init; }

public double? EnglandPersistentAbsence { get; init; }
public CodedDouble EnglandPersistentAbsence { get; init; }

public double? LocalAuthorityPersistentAbsence { get; init; }
public CodedDouble LocalAuthorityPersistentAbsence { get; init; }

public double? EstablishmentEnrolmentsTotal { get; init; }
public CodedDouble EstablishmentEnrolmentsTotal { get; init; }

public double? EstablishmentPersistentAbsenceTotal { get; init; }
public CodedDouble EstablishmentPersistentAbsenceTotal { get; init; }
}
Loading
Loading