init
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Kreta.Ellenorzo.BL.VN.Adatszotar;
|
||||
using Kreta.Ellenorzo.Dao.VN.Tantargy;
|
||||
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
|
||||
using Kreta.Ellenorzo.Domain.VN.Logic;
|
||||
using Kreta.Ellenorzo.Domain.VN.Tantargy;
|
||||
using Kreta.Ellenorzo.Enums.VN;
|
||||
using Kreta.Enums;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Logic
|
||||
{
|
||||
/// <summary>
|
||||
/// Author: Érsek Zalán Created On: 2019.09
|
||||
/// </summary>
|
||||
internal static class TantargyLogic
|
||||
{
|
||||
internal static readonly TantargyResponse MagatartasTantargy = new TantargyResponse(nameof(MagatartasSzorgalomTantargy.Magatartas),
|
||||
EnumLogic.GetDisplayNameAttribute(MagatartasSzorgalomTantargy.Magatartas),
|
||||
new Adatszotar<TargyKategoriaTipusEnum>(nameof(MagatartasSzorgalomTantargy.Magatartas),
|
||||
EnumLogic.GetDisplayNameAttribute(MagatartasSzorgalomTantargy.Magatartas)), 0)
|
||||
{
|
||||
TantargyInTtf = false
|
||||
};
|
||||
|
||||
internal static readonly TantargyResponse SzorgalomTantargy = new TantargyResponse(nameof(MagatartasSzorgalomTantargy.Szorgalom),
|
||||
EnumLogic.GetDisplayNameAttribute(MagatartasSzorgalomTantargy.Szorgalom),
|
||||
new Adatszotar<TargyKategoriaTipusEnum>(nameof(MagatartasSzorgalomTantargy.Szorgalom),
|
||||
EnumLogic.GetDisplayNameAttribute(MagatartasSzorgalomTantargy.Szorgalom)), 1)
|
||||
{
|
||||
TantargyInTtf = false
|
||||
};
|
||||
|
||||
internal static void RemoveOsztalyfonokiKategoriasTantargyak(List<TanultTantargyDao> tantargyList)
|
||||
{
|
||||
_ = tantargyList.RemoveAll(x => x.TargykategoriaId == (int)TargyKategoriaTipusEnum.osztalyfonoki_elet_es_palyatervezes && !x.ErtekelesBol);
|
||||
}
|
||||
|
||||
internal static void OrderTantargyList(HashSet<TantargyResponse> tantargyList, int tanevId)
|
||||
{
|
||||
var targyKategoriaTipusById = AdatszotarSubqueries.GetTipusByIdDictionary((int)GeneratedAdatszotarTipusEnum.TargyKategoriaTipus, tanevId);
|
||||
|
||||
foreach (var tantargy in tantargyList.Where(x => x.Uid.Id != 0))
|
||||
{
|
||||
tantargy.TantargyKategoriaOrderIndex = targyKategoriaTipusById[tantargy.Kategoria.Uid.Id].Order ?? 10000;
|
||||
tantargy.FotargyTantargyKategoriaOrderIndex = tantargy.FotargyKategoriaId.HasValue ? targyKategoriaTipusById[tantargy.FotargyKategoriaId.Value].Order ?? 10000 : (int?)null;
|
||||
}
|
||||
|
||||
int index = 2;
|
||||
foreach (TantargyResponse tantargy in tantargyList.Where(x => x.Uid.Id != 0) // A Magatartás és Szorgalom Id-ja 0, ezeket nem rendezzük, fix első két helyen vannak.
|
||||
.OrderBy(x => x.SorSzam)
|
||||
.ThenBy(x => x.IsFotargy ? x.TantargyKategoriaOrderIndex : x.FotargyTantargyKategoriaOrderIndex)
|
||||
.ThenBy(x => x.IsFotargy ? x.Nev : x.FotargyNev)
|
||||
.ThenBy(x => x.IsFotargy ? 0 : 1)
|
||||
.ThenBy(x => x.Nev)
|
||||
.ToList())
|
||||
{
|
||||
tantargy.SortIndex = index;
|
||||
++index;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user