internal void Update() { foreach (var campaign in Data) { foreach (var project in campaign.Data) { project.Update(); } campaign.Update(); } Detail = new DataInventoryDetail { Attempt0 = Data.Sum(x => x.Detail.Attempt0), Attempt1 = Data.Sum(x => x.Detail.Attempt1), Attempt2 = Data.Sum(x => x.Detail.Attempt2), Attempt3 = Data.Sum(x => x.Detail.Attempt3), Attempt4 = Data.Sum(x => x.Detail.Attempt4), Attempt5 = Data.Sum(x => x.Detail.Attempt5), Attempt6 = Data.Sum(x => x.Detail.Attempt6), MoreThan6 = Data.Sum(x => x.Detail.MoreThan6), Final = Data.Sum(x => x.Detail.Final), Hold = Data.Sum(x => x.Detail.Hold), Total = Data.Sum(x => x.Detail.Total), }; Callbacks += Data.Sum(x => x.Callbacks); if (Detail.Total > 0) { Penetration = Math.Round(((decimal)Detail.Final / Detail.Total) * 100, 2); } }
internal void Update() { Detail = new DataInventoryDetail { Attempt0 = Data.Sum(x => x.Detail.Attempt0), Attempt1 = Data.Sum(x => x.Detail.Attempt1), Attempt2 = Data.Sum(x => x.Detail.Attempt2), Attempt3 = Data.Sum(x => x.Detail.Attempt3), Attempt4 = Data.Sum(x => x.Detail.Attempt4), Attempt5 = Data.Sum(x => x.Detail.Attempt5), Attempt6 = Data.Sum(x => x.Detail.Attempt6), MoreThan6 = Data.Sum(x => x.Detail.MoreThan6), Final = Data.Sum(x => x.Detail.Final), Hold = Data.Sum(x => x.Detail.Hold), Total = Data.Sum(x => x.Detail.Total), }; Callbacks += Data.Sum(x => x.Callbacks); if (Detail.Total > 0) { Penetration = Math.Round(((decimal)Detail.Final / Detail.Total) * 100, 2); } foreach (var agent in Data) { agent.Penetration = agent.Detail.Total > 0 ? Math.Round(((decimal)agent.Detail.Final / agent.Detail.Total) * 100, 2) : 0; } }