//using Microsoft.AspNetCore.Components; //using MP.MONO.Data; //namespace MP.MONO.UI.Components //{ // public partial class ChartController // { // #region Protected Fields // protected const string EsitoKO = "Esito: Non Passato"; // protected const string EsitoOK = "Esito: OK"; // #endregion Protected Fields // #region Private Properties // private List DatiPareto // { // get => ParetoData.Select(x => x.).ToList(); // } // private List DatiPlot // { // get => TSData; // } // private List LabelPareto // { // get => ParetoData.Select(x => x.label).ToList(); // } // private List LabelPlot // { // get => TSData.Select(r => $"{r.x:yyyy-MM-dd}").ToList(); // } // #endregion Private Properties // #region Protected Properties // protected List _rawData { get; set; } = new List(); // /// // /// Genera colori sfondo 33% rosso / arancione / giallo // /// // /// // /// // protected List bgColors // { // get => semaphColors(ParetoData.Count, "0.3"); // } // /// // /// Genera colori sfondo 33% rosso / arancione / giallo // /// // /// // /// // protected List lineColor // { // get => solidColors("1"); // } // /// // /// Genera colori sfondo 33% rosso / arancione / giallo // /// // /// // /// // protected List lineColors // { // get => semaphColors(ParetoData.Count, "1"); // } // protected List ParetoData { get; set; } = new List(); // protected List TSData { get; set; } = new List(); // #endregion Protected Properties // #region Public Properties // [Parameter] // public List RawData // { // get => _rawData; // set // { // // salvo valori // _rawData = value; // if (value != null) // { // // ricalcolo charting data // recalcData(); // } // } // } // #endregion Public Properties // #region Private Methods // private void recalcData() // { // if (RawData != null) // { // ParetoData = RawData // .GroupBy(p => p.EsitoOk) // .Select(y => new ChartKV() { label = y.First().EsitoOk ? EsitoOK : EsitoKO, value = y.Count() }) // .OrderByDescending(x => x.value) // .ToList(); // TSData = RawData // .GroupBy(x => x.DataOra.Date) // .Select(r => new chartJsData.chartJsTSerie() { x = r.First().DataOra.Date, y = r.Count() }) // .OrderBy(o => o.x) // .ToList(); // } // } // #endregion Private Methods // #region Protected Methods // /// Genera colori sfondo 33% rosso / arancione / giallo // /// // /// // /// // protected List semaphColors(int numRecords, string alpha) // { // List answ = new List(); // // aggiungo verde/rosso // answ.Add($"rgba(54, 254, 82, {alpha})"); // answ.Add($"rgba(254, 82, 65, {alpha})"); // return answ; // } // /// // /// Genera colori sfondo 33% rosso / arancione / giallo // /// // /// // /// // protected List solidColors(string alpha) // { // List answ = new List(); // answ.Add($"rgba(54, 162, 235, {alpha})"); // return answ; // } // #endregion Protected Methods // } //}