diff --git a/SHERPA.BBM.UI/Components/DataPager.razor.cs b/SHERPA.BBM.UI/Components/DataPager.razor.cs index ba72a2f..5bed51e 100644 --- a/SHERPA.BBM.UI/Components/DataPager.razor.cs +++ b/SHERPA.BBM.UI/Components/DataPager.razor.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Components; -using MP.Stats.Components; -using MP.Stats.Data; +using SHERPA.BBM.UI.Components; +using SHERPA.BBM.UI.Data; namespace MP.Stats.Components { diff --git a/SHERPA.BBM.UI/Data/BBM_EFService.cs b/SHERPA.BBM.UI/Data/BBM_EFService.cs index 0c12220..faf0928 100644 --- a/SHERPA.BBM.UI/Data/BBM_EFService.cs +++ b/SHERPA.BBM.UI/Data/BBM_EFService.cs @@ -228,12 +228,9 @@ namespace SHERPA.BBM.UI.Data return Task.FromResult(dbController.DocGetLastDesc(numRec).ToArray()); } - public Task DocsGetAsync(int BasketId, int NegotiationId, int numRec) + public Task> DocsGetAsync(int BasketId, int NegotiationId, int numRec) { - //using (Controllers.BBMController myController = new Controllers.BBMController(connString)) - //{ - return Task.FromResult(dbController.DocGetLastDesc(BasketId, NegotiationId, numRec).ToArray()); - //} + return Task.FromResult(dbController.DocGetLastDesc(BasketId, NegotiationId, numRec).ToList()); } public void DocsUpdate(DatabaseModels.DocsModel currItem) @@ -412,6 +409,11 @@ namespace SHERPA.BBM.UI.Data dbController.rollBackEntity(item); } + public Task SumTotDraft(int anno) + { + return Task.FromResult(dbController.SumTotDraft(anno)); + } + public Task SumTotImporto(int anno) { return Task.FromResult(dbController.SumTotImporto(anno)); @@ -432,11 +434,6 @@ namespace SHERPA.BBM.UI.Data return Task.FromResult(dbController.SumTotTrattato(anno)); } - public Task SumTotDraft(int anno) - { - return Task.FromResult(dbController.SumTotDraft(anno)); - } - #endregion Public Methods } } \ No newline at end of file diff --git a/SHERPA.BBM.UI/Pages/Docs.razor b/SHERPA.BBM.UI/Pages/Docs.razor index f6fa2b6..88ff3ce 100644 --- a/SHERPA.BBM.UI/Pages/Docs.razor +++ b/SHERPA.BBM.UI/Pages/Docs.razor @@ -56,10 +56,14 @@ { } - @if (itemsList == null) + @if (ListRecords == null) {

Loading...

} + else if (totalCount == 0) + { +
Nessun record trovato
+ } else { @@ -77,7 +81,7 @@ - @foreach (var record in itemsList) + @foreach (var record in SearchRecords) { @@ -133,5 +137,4 @@ @code { - } \ No newline at end of file diff --git a/SHERPA.BBM.UI/Pages/Docs.razor.cs b/SHERPA.BBM.UI/Pages/Docs.razor.cs index a8b9405..f59eeba 100644 --- a/SHERPA.BBM.UI/Pages/Docs.razor.cs +++ b/SHERPA.BBM.UI/Pages/Docs.razor.cs @@ -2,6 +2,7 @@ using Microsoft.AspNetCore.Components; using Microsoft.JSInterop; using SHERPA.BBM.UI.Data; using System; +using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; @@ -15,9 +16,9 @@ namespace SHERPA.BBM.UI.Pages private DatabaseModels.DocsModel currItem = null; - private DatabaseModels.DocsModel[] itemsList; - + private List ListRecords; private DatabaseModels.NegotiationsModel[] negotiationList; + private List SearchRecords; #endregion Private Fields @@ -26,6 +27,10 @@ namespace SHERPA.BBM.UI.Pages [Inject] private BBM_EFService BBMService { get; set; } + private int currPage { get; set; } = 1; + + private bool isLoading { get; set; } = false; + [Inject] private IJSRuntime JSRuntime { get; set; } @@ -81,50 +86,22 @@ namespace SHERPA.BBM.UI.Pages #endregion Private Properties - #region Public Methods + #region Protected Properties - public string btnFromState(bool isActive) + protected int totalCount { - string answ = isActive ? "btn-success" : "btn-outline-warning"; - return answ; - } - - public string checkSelect(int DocId) - { - string answ = ""; - if (currItem != null) + get { - try + int answ = 0; + if (SearchRecords != null) { - answ = (currItem.DocId == DocId) ? "table-info" : ""; + answ = SearchRecords.Count; } - catch - { } + return answ; } - return answ; } - public void Dispose() - { - MessageService.EA_SearchUpdated -= OnSeachUpdated; - } - - public void OnSeachUpdated() - { - InvokeAsync(() => - { - UpdateData(); - StateHasChanged(); - }); - } - - public string tooltipFromState(bool isActive) - { - string answ = isActive ? "Attivo" : "Imposta Attivo"; - return answ; - } - - #endregion Public Methods + #endregion Protected Properties #region Protected Methods @@ -167,6 +144,12 @@ namespace SHERPA.BBM.UI.Pages await ReloadAllData(); } + protected async Task ForceReloadPage(int newNum) + { + currPage = newNum; + await ReloadAllData(); + } + protected async Task getFatturato(int DocId) { decimal fatturato = 0; @@ -275,15 +258,63 @@ namespace SHERPA.BBM.UI.Pages protected async Task updateTable() { - itemsList = await BBMService.DocsGetAsync(SelBasketId, SelCodNegotiation, numRecord); + SearchRecords = await BBMService.DocsGetAsync(SelBasketId, SelCodNegotiation, numRecord); // filtro solo attivi SE NON richiesto if (!ShowAllDoc) { - var filtList = itemsList.Where(x => x.IsActive == true).ToList(); - itemsList = filtList.ToArray(); + var filtList = SearchRecords.Where(x => x.IsActive == true).Skip(numRecord * (currPage - 1)).Take(numRecord).ToList(); + } + else + { + ListRecords = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList(); } } #endregion Protected Methods + + #region Public Methods + + public string btnFromState(bool isActive) + { + string answ = isActive ? "btn-success" : "btn-outline-warning"; + return answ; + } + + public string checkSelect(int DocId) + { + string answ = ""; + if (currItem != null) + { + try + { + answ = (currItem.DocId == DocId) ? "table-info" : ""; + } + catch + { } + } + return answ; + } + + public void Dispose() + { + MessageService.EA_SearchUpdated -= OnSeachUpdated; + } + + public async void OnSeachUpdated() + { + await InvokeAsync(() => + { + Task task = UpdateData(); + StateHasChanged(); + }); + } + + public string tooltipFromState(bool isActive) + { + string answ = isActive ? "Attivo" : "Imposta Attivo"; + return answ; + } + + #endregion Public Methods } } \ No newline at end of file