32 lines
1.4 KiB
C#
32 lines
1.4 KiB
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using Kreta.Ellenorzo.Domain.VN.Ertekeles;
|
|
using Kreta.Ellenorzo.Domain.VN.Ertekeles.Atlag.TantargyiAtlag;
|
|
|
|
namespace Kreta.Ellenorzo.BL.VN.Logic
|
|
{
|
|
/// <summary>
|
|
/// Author: Kovács Kornél (DevKornél) Created On: 2019.10.
|
|
/// </summary>
|
|
public static class ErtekelesLogic
|
|
{
|
|
public static IEnumerable<ErtekelesListResponse> ListAtlagbaSzamitoErtekelesek(IEnumerable<ErtekelesListResponse> ertekelesek)
|
|
=> ertekelesek.Where(x => x.SzamErtek.HasValue && x.SulySzazalekErteke.HasValue);
|
|
|
|
public static List<AtlagAlakulasaResponse> GetAtlagAlakulasaIdoFuggvenyeben(TantargyiAtlagResponse tantargyiAtlag)
|
|
{
|
|
List<AtlagAlakulasaResponse> response = new List<AtlagAlakulasaResponse>();
|
|
List<ErtekelesListResponse> atlagbaSzamitoErtekelesek = ListAtlagbaSzamitoErtekelesek(tantargyiAtlag.Ertekelesek).OrderBy(e => e.KeszitesDatum).ToList();
|
|
|
|
for (int i = 0; i < atlagbaSzamitoErtekelesek.Count; ++i)
|
|
{
|
|
response.Add(new AtlagAlakulasaResponse
|
|
{
|
|
Atlag = AtlagLogic.GetSubListAtlag(atlagbaSzamitoErtekelesek.Take(i + 1).ToList()).Value,
|
|
Datum = atlagbaSzamitoErtekelesek[i].KeszitesDatum
|
|
});
|
|
}
|
|
return response;
|
|
}
|
|
}
|
|
}
|