diff --git a/PoliNetwork.Graduatorie.Parser/Objects/Json/Indexes/Specific/BySchoolYearCourseJson.cs b/PoliNetwork.Graduatorie.Parser/Objects/Json/Indexes/Specific/BySchoolYearCourseJson.cs index 900968e6..f7f51b21 100644 --- a/PoliNetwork.Graduatorie.Parser/Objects/Json/Indexes/Specific/BySchoolYearCourseJson.cs +++ b/PoliNetwork.Graduatorie.Parser/Objects/Json/Indexes/Specific/BySchoolYearCourseJson.cs @@ -145,7 +145,8 @@ private static SingleCourseJson CreateCourseJson(Ranking ranking, CourseTable co BasePath = basePath, Year = ranking.Year, School = ranking.School, - Location = course.Location + Location = course.Location, + RankingOrder = ranking.RankingOrder }; } diff --git a/PoliNetwork.Graduatorie.Parser/Objects/RankingNS/Ranking.cs b/PoliNetwork.Graduatorie.Parser/Objects/RankingNS/Ranking.cs index eb23b7dd..4a4fad20 100644 --- a/PoliNetwork.Graduatorie.Parser/Objects/RankingNS/Ranking.cs +++ b/PoliNetwork.Graduatorie.Parser/Objects/RankingNS/Ranking.cs @@ -18,7 +18,7 @@ namespace PoliNetwork.Graduatorie.Parser.Objects.RankingNS; [Serializable] [JsonObject(MemberSerialization.Fields, NamingStrategyType = typeof(CamelCaseNamingStrategy))] -public class Ranking +public class Ranking : IComparable { public List? ByCourse; public MeritTable? ByMerit; @@ -35,6 +35,14 @@ public RankingSummaryStudent GetRankingSummaryStudent() return new RankingSummaryStudent(RankingOrder?.Phase, School, Year, Url); } + public int CompareTo(Ranking? other) + { + if (ReferenceEquals(this, other)) return 0; + if (ReferenceEquals(null, other)) return 1; + + return string.Compare(GetId(), other.GetId(), StringComparison.Ordinal); + } + /*** * Ottieni l'hash senza considerare il valore di LastUpdate