From 8224d2765a5523c4f80074d7a35e9ed1ebd315c2 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 16:33:09 +0200 Subject: [PATCH 1/9] OK filtro OEE --> CONTROLLI (da perfezionare grafica dettaglio) --- MP.Stats/Components/DetailOee.razor | 100 ++++++++++++++++++++++++++++ MP.Stats/Data/MessageService.cs | 30 +++++++-- MP.Stats/Pages/Controlli.razor | 3 +- MP.Stats/Pages/Controlli.razor.cs | 22 +++++- MP.Stats/Pages/Oee.razor | 8 +++ MP.Stats/Pages/Oee.razor.cs | 7 ++ 6 files changed, 162 insertions(+), 8 deletions(-) create mode 100644 MP.Stats/Components/DetailOee.razor diff --git a/MP.Stats/Components/DetailOee.razor b/MP.Stats/Components/DetailOee.razor new file mode 100644 index 00000000..78baaabf --- /dev/null +++ b/MP.Stats/Components/DetailOee.razor @@ -0,0 +1,100 @@ +@using MP.Stats.Data +@inject NavigationManager NavManager +@inject MessageService MessageService + +
+
+ GRAFICO +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +@code{ + + protected MP.Data.DatabaseModels.TurniOee _currRecord = new MP.Data.DatabaseModels.TurniOee(); + + [Parameter] + public MP.Data.DatabaseModels.TurniOee currRecord + { + get + { + return _currRecord; + } + set + { + _currRecord = value; + } + } + + [Parameter] + public SelectData CurrFilter { get; set; } + + protected void ShowCont() + { + SetFilter(); + // rimando... + NavManager.NavigateTo($"controlli/{currRecord.IdxMacchina}"); + } + + protected void ShowDDB() + { + SetFilter(); + // rimando... + NavManager.NavigateTo($"diario"); + } + + protected void ShowScar() + { + SetFilter(); + // rimando... + NavManager.NavigateTo($"scarti"); + } + + protected void ShowUAL() + { + SetFilter(); + // rimando... + NavManager.NavigateTo($"userlog"); + } + + protected void SetFilter() + { + int oraStart = 0; + switch (currRecord.Turno) + { + case "T1": + oraStart = 6; + break; + case "T2": + oraStart = 14; + break; + case "T3": + oraStart = 22; + break; + default: + break; + } + CurrFilter = new SelectData() + { + IdxMacchina = currRecord.IdxMacchina, + CodArticolo = currRecord.CodArticolo, + DateStart = currRecord.DataRif.AddHours(oraStart), + DateEnd = currRecord.DataRif.AddHours(oraStart + 8) + }; + MessageService.ActiveFilter = CurrFilter; + } +} \ No newline at end of file diff --git a/MP.Stats/Data/MessageService.cs b/MP.Stats/Data/MessageService.cs index c01e734c..4f733938 100644 --- a/MP.Stats/Data/MessageService.cs +++ b/MP.Stats/Data/MessageService.cs @@ -9,13 +9,16 @@ namespace MP.Stats.Data { #region Private Fields - private string searchVal; + private SelectData _activeFilter = new SelectData(); + private string _searchVal; private bool showSearch; #endregion Private Fields #region Public Events + public event Action EA_FilterUpdated; + public event Action EA_HideSearch; public event Action EA_SearchUpdated; @@ -26,14 +29,31 @@ namespace MP.Stats.Data #region Public Properties - public string SearchVal + public SelectData ActiveFilter { - get => searchVal; + get => _activeFilter; set { - if (searchVal != value) + if (_activeFilter != value) { - searchVal = value; + _activeFilter = value; + + if (EA_FilterUpdated != null) + { + EA_FilterUpdated?.Invoke(); + } + } + } + } + + public string SearchVal + { + get => _searchVal; + set + { + if (_searchVal != value) + { + _searchVal = value; if (EA_SearchUpdated != null) { diff --git a/MP.Stats/Pages/Controlli.razor b/MP.Stats/Pages/Controlli.razor index 494ccd16..1a1396a1 100644 --- a/MP.Stats/Pages/Controlli.razor +++ b/MP.Stats/Pages/Controlli.razor @@ -1,4 +1,5 @@ @page "/controlli" +@page "/controlli/{IdxMacchina}" @using MP.Stats.Components @@ -13,7 +14,7 @@
- +
@if (totalCount == 0 || ListRecords == null) diff --git a/MP.Stats/Pages/Controlli.razor.cs b/MP.Stats/Pages/Controlli.razor.cs index fd6ddda6..bc12ddc0 100644 --- a/MP.Stats/Pages/Controlli.razor.cs +++ b/MP.Stats/Pages/Controlli.razor.cs @@ -21,9 +21,10 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); private int currPage { get; set; } = 1; + private bool isLoading { get; set; } = false; + private int numRecord { get; set; } = 10; #endregion Private Properties @@ -57,6 +58,16 @@ namespace MP.Stats.Pages #endregion Protected Properties + #region Public Properties + + [Parameter] + public SelectData currFilter { get; set; } = new SelectData(); + + [Parameter] + public string IdxMacchina { get; set; } = ""; + + #endregion Public Properties + #region Private Methods private async Task reloadData() @@ -94,7 +105,14 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; - currFilter = SelectData.Init(5, 7); + if (string.IsNullOrEmpty(IdxMacchina)) + { + currFilter = SelectData.Init(5, 7); + } + else + { + currFilter = MessageService.ActiveFilter; + } MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/Oee.razor b/MP.Stats/Pages/Oee.razor index 6197ed80..7db71094 100644 --- a/MP.Stats/Pages/Oee.razor +++ b/MP.Stats/Pages/Oee.razor @@ -16,6 +16,10 @@
+ @if (currRecord != null) + { + + } @if (totalCount == 0 || ListRecords == null) { @@ -27,6 +31,7 @@ + @@ -40,8 +45,11 @@ @foreach (var record in ListRecords) { + +
Data Turno Macchina
@record.DataRif.ToString("yyyy.MM.dd")
+
@record.DataRif.ToString("dddd")
@record.Turno diff --git a/MP.Stats/Pages/Oee.razor.cs b/MP.Stats/Pages/Oee.razor.cs index 310db664..7f91a0f2 100644 --- a/MP.Stats/Pages/Oee.razor.cs +++ b/MP.Stats/Pages/Oee.razor.cs @@ -74,6 +74,7 @@ namespace MP.Stats.Pages protected async Task DoFilter(SelectData newFilter) { + currRecord = null; SearchRecords = null; ListRecords = null; currFilter = newFilter; @@ -107,6 +108,12 @@ namespace MP.Stats.Pages currRecord = null; } + protected void Select(MP.Data.DatabaseModels.TurniOee selRecord) + { + // applico filtro da selezione + currRecord = selRecord; + } + protected async Task UpdateData() { currRecord = null; From 9f077ad0389ab2253d637cfc632ccd0a447d6842 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 16:53:50 +0200 Subject: [PATCH 2/9] OK salvataggio filtri per componenti in modo separato prime pagine --- MP.Stats/Components/DetailOee.razor | 2 +- MP.Stats/Data/MessageService.cs | 17 ++++++++++++----- MP.Stats/Pages/Controlli.razor.cs | 2 +- MP.Stats/Pages/Diario.razor.cs | 16 +++++++++++++++- MP.Stats/Pages/Oee.razor.cs | 15 ++++++++++++++- MP.Stats/Pages/ReportODL.razor.cs | 15 ++++++++++++++- 6 files changed, 57 insertions(+), 10 deletions(-) diff --git a/MP.Stats/Components/DetailOee.razor b/MP.Stats/Components/DetailOee.razor index 78baaabf..746c8308 100644 --- a/MP.Stats/Components/DetailOee.razor +++ b/MP.Stats/Components/DetailOee.razor @@ -95,6 +95,6 @@ DateStart = currRecord.DataRif.AddHours(oraStart), DateEnd = currRecord.DataRif.AddHours(oraStart + 8) }; - MessageService.ActiveFilter = CurrFilter; + MessageService.DetailFilter = CurrFilter; } } \ No newline at end of file diff --git a/MP.Stats/Data/MessageService.cs b/MP.Stats/Data/MessageService.cs index 4f733938..13417b00 100644 --- a/MP.Stats/Data/MessageService.cs +++ b/MP.Stats/Data/MessageService.cs @@ -9,7 +9,8 @@ namespace MP.Stats.Data { #region Private Fields - private SelectData _activeFilter = new SelectData(); + private SelectData _detailFilter = new SelectData(); + private SelectData _masterFilter = new SelectData(); private string _searchVal; private bool showSearch; @@ -29,14 +30,16 @@ namespace MP.Stats.Data #region Public Properties - public SelectData ActiveFilter + public SelectData DDB_Filter { get; set; } = SelectData.Init(5, 3); + + public SelectData DetailFilter { - get => _activeFilter; + get => _detailFilter; set { - if (_activeFilter != value) + if (_detailFilter != value) { - _activeFilter = value; + _detailFilter = value; if (EA_FilterUpdated != null) { @@ -46,6 +49,10 @@ namespace MP.Stats.Data } } + public SelectData KRE_Filter { get; set; } = SelectData.Init(5, 7); + public SelectData ODL_Filter { get; set; } = SelectData.Init(5, 7); + public SelectData OEE_Filter { get; set; } = SelectData.Init(5, 7); + public string SearchVal { get => _searchVal; diff --git a/MP.Stats/Pages/Controlli.razor.cs b/MP.Stats/Pages/Controlli.razor.cs index bc12ddc0..9783c590 100644 --- a/MP.Stats/Pages/Controlli.razor.cs +++ b/MP.Stats/Pages/Controlli.razor.cs @@ -111,7 +111,7 @@ namespace MP.Stats.Pages } else { - currFilter = MessageService.ActiveFilter; + currFilter = MessageService.DetailFilter; } MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; diff --git a/MP.Stats/Pages/Diario.razor.cs b/MP.Stats/Pages/Diario.razor.cs index 992e8e1e..048e8139 100644 --- a/MP.Stats/Pages/Diario.razor.cs +++ b/MP.Stats/Pages/Diario.razor.cs @@ -21,7 +21,19 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); + private SelectData currFilter + + { + get + { + return MessageService.DDB_Filter; + } + set + { + MessageService.DDB_Filter = value; + } + } + private int currPage { get; set; } = 1; private bool isLoading { get; set; } = false; private int numRecord { get; set; } = 10; @@ -94,7 +106,9 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; +#if false currFilter = SelectData.Init(5, 3); +#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/Oee.razor.cs b/MP.Stats/Pages/Oee.razor.cs index 7f91a0f2..7afb9c35 100644 --- a/MP.Stats/Pages/Oee.razor.cs +++ b/MP.Stats/Pages/Oee.razor.cs @@ -22,7 +22,18 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); + private SelectData currFilter + { + get + { + return MessageService.OEE_Filter; + } + set + { + MessageService.OEE_Filter = value; + } + } + private int currPage { get; set; } = 1; private bool isLoading { get; set; } = false; private int numRecord { get; set; } = 10; @@ -96,7 +107,9 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; +#if false currFilter = SelectData.Init(5, 7); +#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/ReportODL.razor.cs b/MP.Stats/Pages/ReportODL.razor.cs index 6f16bbaf..fe994c2d 100644 --- a/MP.Stats/Pages/ReportODL.razor.cs +++ b/MP.Stats/Pages/ReportODL.razor.cs @@ -21,7 +21,18 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); + private SelectData currFilter + { + get + { + return MessageService.ODL_Filter; + } + set + { + MessageService.ODL_Filter = value; + } + } + private int currPage { get; set; } = 1; private int numRecord { get; set; } = 10; @@ -91,7 +102,9 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; +#if false currFilter = SelectData.Init(5, 7); +#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); From d699b46e2d3281e3ac932485c1b6e63e06594d2d Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 16:58:44 +0200 Subject: [PATCH 3/9] Completato aggancio filtri navigazione --- MP.Stats/Components/DetailOee.razor | 5 ++++- MP.Stats/Pages/Controlli.razor | 2 +- MP.Stats/Pages/Controlli.razor.cs | 20 +++++++++++--------- MP.Stats/Pages/Diario.razor.cs | 3 --- MP.Stats/Pages/Oee.razor.cs | 3 --- MP.Stats/Pages/ReportODL.razor.cs | 3 --- MP.Stats/Pages/Scarti.razor.cs | 15 +++++++++++++-- MP.Stats/Pages/UserLog.razor.cs | 14 ++++++++++++-- 8 files changed, 41 insertions(+), 24 deletions(-) diff --git a/MP.Stats/Components/DetailOee.razor b/MP.Stats/Components/DetailOee.razor index 746c8308..767bd4f0 100644 --- a/MP.Stats/Components/DetailOee.razor +++ b/MP.Stats/Components/DetailOee.razor @@ -47,7 +47,10 @@ { SetFilter(); // rimando... - NavManager.NavigateTo($"controlli/{currRecord.IdxMacchina}"); + NavManager.NavigateTo($"controlli"); +#if false + NavManager.NavigateTo($"controlli/{currRecord.IdxMacchina}"); +#endif } protected void ShowDDB() diff --git a/MP.Stats/Pages/Controlli.razor b/MP.Stats/Pages/Controlli.razor index 1a1396a1..1e72a42c 100644 --- a/MP.Stats/Pages/Controlli.razor +++ b/MP.Stats/Pages/Controlli.razor @@ -1,5 +1,5 @@ @page "/controlli" -@page "/controlli/{IdxMacchina}" +@*@page "/controlli/{IdxMacchina}"*@ @using MP.Stats.Components diff --git a/MP.Stats/Pages/Controlli.razor.cs b/MP.Stats/Pages/Controlli.razor.cs index 9783c590..db75f1a6 100644 --- a/MP.Stats/Pages/Controlli.razor.cs +++ b/MP.Stats/Pages/Controlli.razor.cs @@ -61,7 +61,17 @@ namespace MP.Stats.Pages #region Public Properties [Parameter] - public SelectData currFilter { get; set; } = new SelectData(); + public SelectData currFilter + { + get + { + return MessageService.DetailFilter; + } + set + { + MessageService.DetailFilter = value; + } + } [Parameter] public string IdxMacchina { get; set; } = ""; @@ -105,14 +115,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; - if (string.IsNullOrEmpty(IdxMacchina)) - { - currFilter = SelectData.Init(5, 7); - } - else - { - currFilter = MessageService.DetailFilter; - } MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/Diario.razor.cs b/MP.Stats/Pages/Diario.razor.cs index 048e8139..47d620fb 100644 --- a/MP.Stats/Pages/Diario.razor.cs +++ b/MP.Stats/Pages/Diario.razor.cs @@ -106,9 +106,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; -#if false - currFilter = SelectData.Init(5, 3); -#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/Oee.razor.cs b/MP.Stats/Pages/Oee.razor.cs index 7afb9c35..eaf7b98d 100644 --- a/MP.Stats/Pages/Oee.razor.cs +++ b/MP.Stats/Pages/Oee.razor.cs @@ -107,9 +107,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; -#if false - currFilter = SelectData.Init(5, 7); -#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/ReportODL.razor.cs b/MP.Stats/Pages/ReportODL.razor.cs index fe994c2d..da15122a 100644 --- a/MP.Stats/Pages/ReportODL.razor.cs +++ b/MP.Stats/Pages/ReportODL.razor.cs @@ -102,9 +102,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; -#if false - currFilter = SelectData.Init(5, 7); -#endif MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/Scarti.razor.cs b/MP.Stats/Pages/Scarti.razor.cs index 42190233..77fec8ac 100644 --- a/MP.Stats/Pages/Scarti.razor.cs +++ b/MP.Stats/Pages/Scarti.razor.cs @@ -21,7 +21,18 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); + private SelectData currFilter + { + get + { + return MessageService.DetailFilter; + } + set + { + MessageService.DetailFilter = value; + } + } + private int currPage { get; set; } = 1; private bool isLoading { get; set; } = false; private int numRecord { get; set; } = 10; @@ -54,6 +65,7 @@ namespace MP.Stats.Pages return answ; } } + #endregion Protected Properties #region Private Methods @@ -93,7 +105,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; - currFilter = SelectData.Init(5, 7); MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); diff --git a/MP.Stats/Pages/UserLog.razor.cs b/MP.Stats/Pages/UserLog.razor.cs index 248addff..45eda1a9 100644 --- a/MP.Stats/Pages/UserLog.razor.cs +++ b/MP.Stats/Pages/UserLog.razor.cs @@ -22,7 +22,18 @@ namespace MP.Stats.Pages #region Private Properties - private SelectData currFilter { get; set; } = new SelectData(); + private SelectData currFilter + { + get + { + return MessageService.DetailFilter; + } + set + { + MessageService.DetailFilter = value; + } + } + private int currPage { get; set; } = 1; private bool isLoading { get; set; } = false; private int numRecord { get; set; } = 10; @@ -96,7 +107,6 @@ namespace MP.Stats.Pages protected override async Task OnInitializedAsync() { numRecord = 10; - currFilter = SelectData.Init(5, 7); MessageService.ShowSearch = false; MessageService.EA_SearchUpdated += OnSeachUpdated; await reloadData(); From 9bada60148ba19c3f4ad2c82b7c687ac63603245 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 16:59:31 +0200 Subject: [PATCH 4/9] code cleanup --- MP.Stats/Components/DetailOee.razor | 3 --- MP.Stats/Startup.cs | 5 ----- 2 files changed, 8 deletions(-) diff --git a/MP.Stats/Components/DetailOee.razor b/MP.Stats/Components/DetailOee.razor index 767bd4f0..032aae93 100644 --- a/MP.Stats/Components/DetailOee.razor +++ b/MP.Stats/Components/DetailOee.razor @@ -48,9 +48,6 @@ SetFilter(); // rimando... NavManager.NavigateTo($"controlli"); -#if false - NavManager.NavigateTo($"controlli/{currRecord.IdxMacchina}"); -#endif } protected void ShowDDB() diff --git a/MP.Stats/Startup.cs b/MP.Stats/Startup.cs index 42f0661d..ce61a417 100644 --- a/MP.Stats/Startup.cs +++ b/MP.Stats/Startup.cs @@ -97,11 +97,6 @@ namespace MP.Stats services.AddSingleton(Configuration); services.AddTransient(); -#if false - services.AddDbContext(options => - options.UseSqlServer(Configuration.GetConnectionString("BloggingDatabase"))); -#endif - //services.AddScoped(); services.AddSingleton(); services.AddScoped(); From 356cebf38ef39490035532c5a13fc10da7028b45 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 17:29:23 +0200 Subject: [PATCH 5/9] Modifica messaggio loading/no record in pagine --- MP.Stats/Pages/Controlli.razor | 6 ++- MP.Stats/Pages/Diario.razor | 76 ++++++++++++++++++---------------- MP.Stats/Pages/Oee.razor | 6 ++- MP.Stats/Pages/ReportODL.razor | 6 ++- MP.Stats/Pages/Scarti.razor | 6 ++- MP.Stats/Pages/UserLog.razor | 6 ++- 6 files changed, 65 insertions(+), 41 deletions(-) diff --git a/MP.Stats/Pages/Controlli.razor b/MP.Stats/Pages/Controlli.razor index 1e72a42c..c0e351b5 100644 --- a/MP.Stats/Pages/Controlli.razor +++ b/MP.Stats/Pages/Controlli.razor @@ -17,10 +17,14 @@ - @if (totalCount == 0 || ListRecords == null) + @if (ListRecords == null) { } + else if (totalCount == 0) + { +
Nessun record trovato
+ } else {
diff --git a/MP.Stats/Pages/Diario.razor b/MP.Stats/Pages/Diario.razor index 80a93461..84e5820d 100644 --- a/MP.Stats/Pages/Diario.razor +++ b/MP.Stats/Pages/Diario.razor @@ -16,49 +16,53 @@
- @if (totalCount == 0 || ListRecords == null || ListRecords.Count() == 0) + @if (ListRecords == null) { - + + } + else if (totalCount == 0) + { +
Nessun record trovato
} else { -
-
- - - - - - - - - - - - - - @foreach (var record in ListRecords) +
+
+
MacchinaDataODL/CommessaArticoloStatoDurataPezzi
+ + + + + + + + + + + + + @foreach (var record in ListRecords) { - - - - - - - - - + + + + + + + + + } - -
MacchinaDataODL/CommessaArticoloStatoDurataPezzi
-
@record.CodMacchina
-
@record.IdxMacchina
-
-
@record.InizioStato.ToString("yyyy.MM.dd")
-
@record.InizioStato.ToString("ddd HH:mm.ss")
-
@record.IdxOdl | @record.KeyRichiesta@record.CodArticolo@record.Descrizione@record.DurataMin@record.TotPzProd
+
@record.CodMacchina
+
@record.IdxMacchina
+
+
@record.InizioStato.ToString("yyyy.MM.dd")
+
@record.InizioStato.ToString("ddd HH:mm.ss")
+
@record.IdxOdl | @record.KeyRichiesta@record.CodArticolo@record.Descrizione@record.DurataMin@record.TotPzProd
+ +
+ - } - @if (totalCount == 0 || ListRecords == null || ListRecords.Count() == 0) + @if (ListRecords == null) { } + else if (totalCount == 0) + { +
Nessun record trovato
+ } else {
diff --git a/MP.Stats/Pages/Scarti.razor b/MP.Stats/Pages/Scarti.razor index a220ae80..8c5e0c0f 100644 --- a/MP.Stats/Pages/Scarti.razor +++ b/MP.Stats/Pages/Scarti.razor @@ -16,10 +16,14 @@
- @if (totalCount == 0 || ListRecords == null) + @if (ListRecords == null) { } + else if (totalCount == 0) + { +
Nessun record trovato
+ } else {
diff --git a/MP.Stats/Pages/UserLog.razor b/MP.Stats/Pages/UserLog.razor index 6c628007..83873c00 100644 --- a/MP.Stats/Pages/UserLog.razor +++ b/MP.Stats/Pages/UserLog.razor @@ -16,10 +16,14 @@
- @if (totalCount == 0 || ListRecords == null) + @if (ListRecords == null) { } + else if (totalCount == 0) + { +
Nessun record trovato
+ } else {
From ae625b59332ee6f92f507ca15302189409a201c0 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 17:41:53 +0200 Subject: [PATCH 6/9] OK reset filtraggio --- MP.Stats/Components/SelectionFilter.razor | 7 ++++++- MP.Stats/Components/SelectionFilter.razor.cs | 12 ++++++++++++ MP.Stats/Pages/Controlli.razor | 2 +- MP.Stats/Pages/Controlli.razor.cs | 9 +++++++++ MP.Stats/Pages/Diario.razor | 2 +- MP.Stats/Pages/Diario.razor.cs | 9 +++++++++ MP.Stats/Pages/Oee.razor | 2 +- MP.Stats/Pages/Oee.razor.cs | 9 +++++++++ MP.Stats/Pages/ReportODL.razor | 2 +- MP.Stats/Pages/ReportODL.razor.cs | 9 +++++++++ MP.Stats/Pages/Scarti.razor | 2 +- MP.Stats/Pages/Scarti.razor.cs | 9 +++++++++ MP.Stats/Pages/UserLog.razor | 2 +- MP.Stats/Pages/UserLog.razor.cs | 9 +++++++++ 14 files changed, 78 insertions(+), 7 deletions(-) diff --git a/MP.Stats/Components/SelectionFilter.razor b/MP.Stats/Components/SelectionFilter.razor index 8d277f2b..13cb06a8 100644 --- a/MP.Stats/Components/SelectionFilter.razor +++ b/MP.Stats/Components/SelectionFilter.razor @@ -25,11 +25,16 @@
-
+
+
+
+ +
+
\ No newline at end of file diff --git a/MP.Stats/Components/SelectionFilter.razor.cs b/MP.Stats/Components/SelectionFilter.razor.cs index b9b00a3e..eca1d54d 100644 --- a/MP.Stats/Components/SelectionFilter.razor.cs +++ b/MP.Stats/Components/SelectionFilter.razor.cs @@ -104,6 +104,9 @@ namespace MP.Stats.Components [Parameter] public EventCallback filterChanged { get; set; } + [Parameter] + public EventCallback filterReset { get; set; } + [Parameter] public SelectData SelFilter { get; set; } @@ -117,5 +120,14 @@ namespace MP.Stats.Components } #endregion Private Methods + + #region Protected Methods + + protected void resetFilter() + { + filterReset.InvokeAsync(SelFilter); + } + + #endregion Protected Methods } } \ No newline at end of file diff --git a/MP.Stats/Pages/Controlli.razor b/MP.Stats/Pages/Controlli.razor index c0e351b5..afb31fb5 100644 --- a/MP.Stats/Pages/Controlli.razor +++ b/MP.Stats/Pages/Controlli.razor @@ -14,7 +14,7 @@
- +
@if (ListRecords == null) diff --git a/MP.Stats/Pages/Controlli.razor.cs b/MP.Stats/Pages/Controlli.razor.cs index db75f1a6..9078500b 100644 --- a/MP.Stats/Pages/Controlli.razor.cs +++ b/MP.Stats/Pages/Controlli.razor.cs @@ -126,6 +126,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 7); + await reloadData(); + } + protected async Task UpdateData() { currRecord = null; diff --git a/MP.Stats/Pages/Diario.razor b/MP.Stats/Pages/Diario.razor index 84e5820d..e31d0977 100644 --- a/MP.Stats/Pages/Diario.razor +++ b/MP.Stats/Pages/Diario.razor @@ -13,7 +13,7 @@
- +
@if (ListRecords == null) diff --git a/MP.Stats/Pages/Diario.razor.cs b/MP.Stats/Pages/Diario.razor.cs index 47d620fb..51f547ca 100644 --- a/MP.Stats/Pages/Diario.razor.cs +++ b/MP.Stats/Pages/Diario.razor.cs @@ -117,6 +117,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 3); + await reloadData(); + } + protected async Task UpdateData() { currRecord = null; diff --git a/MP.Stats/Pages/Oee.razor b/MP.Stats/Pages/Oee.razor index 519b7e76..7b50107c 100644 --- a/MP.Stats/Pages/Oee.razor +++ b/MP.Stats/Pages/Oee.razor @@ -13,7 +13,7 @@
- +
@if (currRecord != null) diff --git a/MP.Stats/Pages/Oee.razor.cs b/MP.Stats/Pages/Oee.razor.cs index eaf7b98d..02d80146 100644 --- a/MP.Stats/Pages/Oee.razor.cs +++ b/MP.Stats/Pages/Oee.razor.cs @@ -118,6 +118,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 7); + await reloadData(); + } + protected void Select(MP.Data.DatabaseModels.TurniOee selRecord) { // applico filtro da selezione diff --git a/MP.Stats/Pages/ReportODL.razor b/MP.Stats/Pages/ReportODL.razor index cbb05d25..05f9aed3 100644 --- a/MP.Stats/Pages/ReportODL.razor +++ b/MP.Stats/Pages/ReportODL.razor @@ -13,7 +13,7 @@
- +
@if (ListRecords == null) diff --git a/MP.Stats/Pages/ReportODL.razor.cs b/MP.Stats/Pages/ReportODL.razor.cs index da15122a..7b472ac7 100644 --- a/MP.Stats/Pages/ReportODL.razor.cs +++ b/MP.Stats/Pages/ReportODL.razor.cs @@ -113,6 +113,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 7); + await reloadData(); + } + protected async Task UpdateData() { currRecord = null; diff --git a/MP.Stats/Pages/Scarti.razor b/MP.Stats/Pages/Scarti.razor index 8c5e0c0f..05b81ddf 100644 --- a/MP.Stats/Pages/Scarti.razor +++ b/MP.Stats/Pages/Scarti.razor @@ -13,7 +13,7 @@
- +
@if (ListRecords == null) diff --git a/MP.Stats/Pages/Scarti.razor.cs b/MP.Stats/Pages/Scarti.razor.cs index 77fec8ac..025e10be 100644 --- a/MP.Stats/Pages/Scarti.razor.cs +++ b/MP.Stats/Pages/Scarti.razor.cs @@ -116,6 +116,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 7); + await reloadData(); + } + protected async Task UpdateData() { currRecord = null; diff --git a/MP.Stats/Pages/UserLog.razor b/MP.Stats/Pages/UserLog.razor index 83873c00..614e1f2a 100644 --- a/MP.Stats/Pages/UserLog.razor +++ b/MP.Stats/Pages/UserLog.razor @@ -13,7 +13,7 @@
- +
@if (ListRecords == null) diff --git a/MP.Stats/Pages/UserLog.razor.cs b/MP.Stats/Pages/UserLog.razor.cs index 45eda1a9..2f092c0a 100644 --- a/MP.Stats/Pages/UserLog.razor.cs +++ b/MP.Stats/Pages/UserLog.razor.cs @@ -118,6 +118,15 @@ namespace MP.Stats.Pages currRecord = null; } + protected async Task ResetFilter(SelectData newFilter) + { + currRecord = null; + SearchRecords = null; + ListRecords = null; + currFilter = SelectData.Init(5, 7); + await reloadData(); + } + protected async Task UpdateData() { currRecord = null; From e8d2afe2731b8fee18edea091e10bb92487b216b Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 17:46:51 +0200 Subject: [PATCH 7/9] Commentata selezione dettaglio OEE (temporaneamente) x sviluppo autocomplete --- MP.Stats/Pages/Oee.razor | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MP.Stats/Pages/Oee.razor b/MP.Stats/Pages/Oee.razor index 7b50107c..0a661c25 100644 --- a/MP.Stats/Pages/Oee.razor +++ b/MP.Stats/Pages/Oee.razor @@ -35,7 +35,7 @@ - + @**@ @@ -50,7 +50,7 @@ { - + @**@
Data Turno Macchina
@record.DataRif.ToString("yyyy.MM.dd")
@record.DataRif.ToString("dddd")
From 49241006b7be830647a59a506cd5914a2ad89d45 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 19:39:18 +0200 Subject: [PATCH 8/9] Ok modello prefiltraggio ddl x articoli --- MP.Data/Controllers/MpStatsController.cs | 81 +++++++++----------- MP.Stats/Components/SelectionFilter.razor | 26 ++++++- MP.Stats/Components/SelectionFilter.razor.cs | 60 +++++++++++++-- MP.Stats/Data/AutocompleteModel.cs | 17 ++++ MP.Stats/Data/MpStatsService.cs | 42 +++++++--- MP.Stats/MP.Stats.csproj | 1 + 6 files changed, 162 insertions(+), 65 deletions(-) create mode 100644 MP.Stats/Data/AutocompleteModel.cs diff --git a/MP.Data/Controllers/MpStatsController.cs b/MP.Data/Controllers/MpStatsController.cs index 1fdb1f9b..882bdf73 100644 --- a/MP.Data/Controllers/MpStatsController.cs +++ b/MP.Data/Controllers/MpStatsController.cs @@ -49,12 +49,48 @@ namespace MP.Data.Controllers return dbResult; } + /// + /// Elenco tabella Articoli da filtro + /// + /// + /// + /// + public List ArticoliGetSearch(int numRecord, string searchVal = "") + { + List dbResult = new List(); + + dbResult = dbCtx + .DbSetArticoli + .Where(x => x.CodArticolo.Contains(searchVal) || x.DescArticolo.Contains(searchVal) || x.Disegno.Contains(searchVal) || string.IsNullOrEmpty(searchVal)) + .OrderBy(x => x.CodArticolo) + .Take(numRecord) + .ToList(); + + return dbResult; + } + public void Dispose() { // Clear database context dbCtx.Dispose(); } + /// + /// Elenco tabella Macchine + /// + /// + public List MacchineGetAll() + { + List dbResult = new List(); + + dbResult = dbCtx + .DbSetMacchine + .OrderBy(x => x.IdxMacchina) + .ToList(); + + return dbResult; + } + /// /// Annulla modifiche su una specifica entity (cancel update) /// @@ -77,26 +113,6 @@ namespace MP.Data.Controllers return answ; } - /// - /// Elenco tabella Articoli da filtro - /// - /// - /// - /// - public List StatArticoliGetSearch(int numRecord, string searchVal = "") - { - List dbResult = new List(); - - dbResult = dbCtx - .DbSetArticoli - .Where(x => x.CodArticolo.Contains(searchVal) || x.DescArticolo.Contains(searchVal) || x.Disegno.Contains(searchVal) || string.IsNullOrEmpty(searchVal)) - .OrderBy(x => x.CodArticolo) - .Take(numRecord) - .ToList(); - - return dbResult; - } - /// /// Elenco tabella controlli da filtro /// @@ -107,13 +123,6 @@ namespace MP.Data.Controllers { List dbResult = new List(); - //dbResult = dbCtx - // .DbSetControlli - // .Where(x => x.Note.Contains(searchVal) || x.IdxMacchina.Contains(searchVal) || x.CodArticolo.Contains(searchVal) || string.IsNullOrEmpty(searchVal)) - // .OrderByDescending(x => x.DataOra) - // .Take(numRecord) - // .ToList(); - var dataFrom = new SqlParameter("@dataFrom", DataStart); var dataTo = new SqlParameter("@dataTo", DataEnd); var idxMacchina = new SqlParameter("@idxMacchina", IdxMacchina); @@ -161,24 +170,6 @@ namespace MP.Data.Controllers return dbResult; } - /// - /// Elenco tabella MAcchine - /// - /// - /// - /// - public List StatMacchineGetAll() - { - List dbResult = new List(); - - dbResult = dbCtx - .DbSetMacchine - .OrderBy(x => x.IdxMacchina) - .ToList(); - - return dbResult; - } - /// /// Elenco tabella ODL da filtro /// diff --git a/MP.Stats/Components/SelectionFilter.razor b/MP.Stats/Components/SelectionFilter.razor index 13cb06a8..ab0890fc 100644 --- a/MP.Stats/Components/SelectionFilter.razor +++ b/MP.Stats/Components/SelectionFilter.razor @@ -1,4 +1,7 @@ - +@using Blazorise.Components +@using MP.Stats.Data + +
@@ -15,7 +18,12 @@
- + + @foreach (var item in ddlMacchine) + { + + } +
@@ -26,8 +34,18 @@
- - +
+
+ +
+ +
+ + @foreach (var item in ddlArticoli) + { + + } +
diff --git a/MP.Stats/Components/SelectionFilter.razor.cs b/MP.Stats/Components/SelectionFilter.razor.cs index eca1d54d..5890be9e 100644 --- a/MP.Stats/Components/SelectionFilter.razor.cs +++ b/MP.Stats/Components/SelectionFilter.razor.cs @@ -10,6 +10,21 @@ namespace MP.Stats.Components { public partial class SelectionFilter { + #region Protected Fields + + protected string _searchArt = ""; + protected int minChar = 3; + + #endregion Protected Fields + + #region Private Properties + + private List ddlArticoli { get; set; } + private List ddlMacchine { get; set; } + private string selectedSearchValue { get; set; } = "*"; + + #endregion Private Properties + #region Protected Properties protected string CodArticolo @@ -20,10 +35,9 @@ namespace MP.Stats.Components } set { - bool doReport = (!SelFilter.CodArticolo.Equals(value)); - SelFilter.CodArticolo = value; - if (doReport) + if (!SelFilter.CodArticolo.Equals(value)) { + SelFilter.CodArticolo = value; reportChange(); } } @@ -71,10 +85,9 @@ namespace MP.Stats.Components } set { - bool doReport = (!SelFilter.IdxMacchina.Equals(value)); - SelFilter.IdxMacchina = value; - if (doReport) + if (!SelFilter.IdxMacchina.Equals(value)) { + SelFilter.IdxMacchina = value; reportChange(); } } @@ -97,6 +110,25 @@ namespace MP.Stats.Components } } + protected string SearchArt + { + get => _searchArt; + set + { + _searchArt = value; + int numRowArt = -1; + if (SearchArt.Count() > minChar) + { + numRowArt = 20; + } + ddlArticoli = StatService.ArticoliGetSearch(numRowArt, SearchArt).Result; + CodArticolo = "*"; + } + } + + [Inject] + protected MpStatsService StatService { get; set; } + #endregion Protected Properties #region Public Properties @@ -114,6 +146,17 @@ namespace MP.Stats.Components #region Private Methods + private void MySearchHandler(string newValue) + { + IdxMacchina = newValue; + } + + private async Task reloadData() + { + ddlMacchine = await StatService.MachineList(); + ddlArticoli = await StatService.ArticoliGetSearch(-1, SearchArt); + } + private void reportChange() { filterChanged.InvokeAsync(SelFilter); @@ -123,6 +166,11 @@ namespace MP.Stats.Components #region Protected Methods + protected override async Task OnInitializedAsync() + { + await reloadData(); + } + protected void resetFilter() { filterReset.InvokeAsync(SelFilter); diff --git a/MP.Stats/Data/AutocompleteModel.cs b/MP.Stats/Data/AutocompleteModel.cs new file mode 100644 index 00000000..59249ec0 --- /dev/null +++ b/MP.Stats/Data/AutocompleteModel.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace MP.Stats.Data +{ + public class AutocompleteModel + { + #region Public Properties + + public string LabelField { get; set; } + public string ValueField { get; set; } + + #endregion Public Properties + } +} \ No newline at end of file diff --git a/MP.Stats/Data/MpStatsService.cs b/MP.Stats/Data/MpStatsService.cs index 922b3656..dda39b90 100644 --- a/MP.Stats/Data/MpStatsService.cs +++ b/MP.Stats/Data/MpStatsService.cs @@ -124,16 +124,43 @@ namespace MP.Stats.Data return await Task.FromResult(dbResult); } + public Task> ArticoliGetSearch(int numRecord, string searchVal = "") + { + List answ = new List(); + answ.Add(new AutocompleteModel { LabelField = "--- TUTTE ---", ValueField = "*" }); + if (numRecord > -1) + { + answ.AddRange(dbController.ArticoliGetSearch(numRecord, searchVal).Select(x => new AutocompleteModel { LabelField = $"{x.CodArticolo} {x.DescArticolo} {x.Disegno}", ValueField = x.CodArticolo }).ToList()); + } + return Task.FromResult(answ); + } + + public Task> ArticoliList(string searchVal) + { + List answ = new List(); + answ.Add(new AutocompleteModel { LabelField = "--- TUTTE ---", ValueField = "*" }); + answ.AddRange(dbController.MacchineGetAll().Select(x => new AutocompleteModel { LabelField = x.IdxMacchina, ValueField = x.IdxMacchina }).ToList()); + return Task.FromResult(answ); + } + + public Task> MacchineGetAll() + { + return Task.FromResult(dbController.MacchineGetAll().ToList()); + } + + public Task> MachineList() + { + List answ = new List(); + answ.Add(new AutocompleteModel { LabelField = "--- TUTTE ---", ValueField = "*" }); + answ.AddRange(dbController.MacchineGetAll().Select(x => new AutocompleteModel { LabelField = $"{x.IdxMacchina} | {x.Nome} {x.Descrizione} ", ValueField = x.IdxMacchina }).ToList()); + return Task.FromResult(answ); + } + public void rollBackEdit(object item) { dbController.RollBackEntity(item); } - public Task StatArticoliGetSearch(int numRecord, string searchVal = "") - { - return Task.FromResult(dbController.StatArticoliGetSearch(numRecord, searchVal).ToArray()); - } - public async Task> StatControlliGetAll(SelectData CurrFilter, string searchVal = "") { //return Task.FromResult(dbController.StatControlliGetAll(DataStart, DataEnd, IdxMacchina, IdxODL, KeyRichiesta, CodArticolo).ToArray()); @@ -178,11 +205,6 @@ namespace MP.Stats.Data return await Task.FromResult(dbResult); } - public Task StatMacchineGetAll() - { - return Task.FromResult(dbController.StatMacchineGetAll().ToArray()); - } - public async Task> StatOdlGetAll(SelectData CurrFilter, string searchVal = "") { //return Task.FromResult(dbController.StatOdlGetAll(numRecord, searchVal)); diff --git a/MP.Stats/MP.Stats.csproj b/MP.Stats/MP.Stats.csproj index b033953d..b775dfbc 100644 --- a/MP.Stats/MP.Stats.csproj +++ b/MP.Stats/MP.Stats.csproj @@ -33,6 +33,7 @@ + From d03265321d689967b36b0edab3acc2060438c67b Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 May 2021 19:53:05 +0200 Subject: [PATCH 9/9] OK anche filtro commessa --- MP.Data/Controllers/MpStatsController.cs | 20 +++++++++++++++ MP.Stats/Components/SelectionFilter.razor | 22 ++++++++++++----- MP.Stats/Components/SelectionFilter.razor.cs | 26 +++++++++++++++++--- MP.Stats/Data/MpStatsService.cs | 11 +++++++++ 4 files changed, 69 insertions(+), 10 deletions(-) diff --git a/MP.Data/Controllers/MpStatsController.cs b/MP.Data/Controllers/MpStatsController.cs index 882bdf73..843c0daf 100644 --- a/MP.Data/Controllers/MpStatsController.cs +++ b/MP.Data/Controllers/MpStatsController.cs @@ -69,6 +69,26 @@ namespace MP.Data.Controllers return dbResult; } + /// + /// Elenco tabella Articoli da filtro + /// + /// + /// + /// + public List CommesseGetSearch(int numRecord, string searchVal = "") + { + List dbResult = new List(); + + dbResult = dbCtx + .DbSetODL + .Where(x => x.KeyRichiesta.Contains(searchVal) || string.IsNullOrEmpty(searchVal)) + .OrderBy(x => x.KeyRichiesta) + .Take(numRecord) + .ToList(); + + return dbResult; + } + public void Dispose() { // Clear database context diff --git a/MP.Stats/Components/SelectionFilter.razor b/MP.Stats/Components/SelectionFilter.razor index ab0890fc..f1bd95d1 100644 --- a/MP.Stats/Components/SelectionFilter.razor +++ b/MP.Stats/Components/SelectionFilter.razor @@ -28,19 +28,29 @@
- - +
+
+ +
+ +
+ + @foreach (var item in ddlCommesse) + { + + } +
-
+
- +
- +
- + @foreach (var item in ddlArticoli) { diff --git a/MP.Stats/Components/SelectionFilter.razor.cs b/MP.Stats/Components/SelectionFilter.razor.cs index 5890be9e..70af721e 100644 --- a/MP.Stats/Components/SelectionFilter.razor.cs +++ b/MP.Stats/Components/SelectionFilter.razor.cs @@ -13,6 +13,7 @@ namespace MP.Stats.Components #region Protected Fields protected string _searchArt = ""; + protected string _searchCom = ""; protected int minChar = 3; #endregion Protected Fields @@ -20,6 +21,7 @@ namespace MP.Stats.Components #region Private Properties private List ddlArticoli { get; set; } + private List ddlCommesse { get; set; } private List ddlMacchine { get; set; } private string selectedSearchValue { get; set; } = "*"; @@ -101,10 +103,9 @@ namespace MP.Stats.Components } set { - bool doReport = (!SelFilter.KeyRichiesta.Equals(value)); - SelFilter.KeyRichiesta = value; - if (doReport) + if (!SelFilter.KeyRichiesta.Equals(value)) { + SelFilter.KeyRichiesta = value; reportChange(); } } @@ -117,7 +118,7 @@ namespace MP.Stats.Components { _searchArt = value; int numRowArt = -1; - if (SearchArt.Count() > minChar) + if (value.Count() > minChar) { numRowArt = 20; } @@ -126,6 +127,22 @@ namespace MP.Stats.Components } } + protected string SearchCom + { + get => _searchCom; + set + { + _searchCom = value; + int numRowArt = -1; + if (value.Count() > minChar) + { + numRowArt = 20; + } + ddlCommesse = StatService.CommesseGetSearch(numRowArt, SearchCom).Result; + KeyRichiesta = "*"; + } + } + [Inject] protected MpStatsService StatService { get; set; } @@ -155,6 +172,7 @@ namespace MP.Stats.Components { ddlMacchine = await StatService.MachineList(); ddlArticoli = await StatService.ArticoliGetSearch(-1, SearchArt); + ddlCommesse = await StatService.CommesseGetSearch(-1, SearchArt); } private void reportChange() diff --git a/MP.Stats/Data/MpStatsService.cs b/MP.Stats/Data/MpStatsService.cs index dda39b90..9b17ab77 100644 --- a/MP.Stats/Data/MpStatsService.cs +++ b/MP.Stats/Data/MpStatsService.cs @@ -143,6 +143,17 @@ namespace MP.Stats.Data return Task.FromResult(answ); } + public Task> CommesseGetSearch(int numRecord, string searchVal = "") + { + List answ = new List(); + answ.Add(new AutocompleteModel { LabelField = "--- TUTTE ---", ValueField = "*" }); + if (numRecord > -1) + { + answ.AddRange(dbController.CommesseGetSearch(numRecord, searchVal).Select(x => new AutocompleteModel { LabelField = $"{x.CodArticolo} | {x.KeyRichiesta}", ValueField = x.KeyRichiesta }).ToList()); + } + return Task.FromResult(answ); + } + public Task> MacchineGetAll() { return Task.FromResult(dbController.MacchineGetAll().ToList());