diff --git a/MP.SPEC/Components/ListDossiers.razor.cs b/MP.SPEC/Components/ListDossiers.razor.cs index 84e96282..c5f8e72e 100644 --- a/MP.SPEC/Components/ListDossiers.razor.cs +++ b/MP.SPEC/Components/ListDossiers.razor.cs @@ -61,15 +61,20 @@ namespace MP.SPEC.Components } public void Dispose() { - MessageService.EA_PageUpdated -= MessageService_EA_PageUpdated; - MessageService.EA_SearchUpdated -= OnSeachUpdated; currRecord = null; SearchRecords = null; ListRecords = null; GC.Collect(); } - - + private SelectDossierParams lastFilter { get; set; } = new SelectDossierParams() { CurrPage = -1 }; + protected override async Task OnParametersSetAsync() + { + if (!lastFilter.Equals(SelFilter)) + { + lastFilter = SelFilter.clone(); + await reloadData(true); + } + } #endregion Public Methods #region Protected Properties @@ -79,10 +84,6 @@ namespace MP.SPEC.Components [Inject] protected MpDataService MDService { get; set; } = null!; - - [Inject] - protected MessageService MessageService { get; set; } = null!; - #endregion Protected Properties #region Protected Methods @@ -113,8 +114,6 @@ namespace MP.SPEC.Components protected override async Task OnInitializedAsync() { - MessageService.EA_PageUpdated += MessageService_EA_PageUpdated; - MessageService.EA_SearchUpdated += OnSeachUpdated; ListStati = await MDService.AnagStatiComm(); await reloadData(true); } @@ -159,11 +158,11 @@ namespace MP.SPEC.Components #endregion Private Fields #region Private Properties - + private int currPage { - get => MessageService.currPage; - set => MessageService.currPage = value; + get => SelFilter.CurrPage; + set => SelFilter.CurrPage = value; } private bool isLoading { get; set; } = false; @@ -177,8 +176,8 @@ namespace MP.SPEC.Components private int numRecord { - get => MessageService.numRecord; - set => MessageService.numRecord = value; + get => SelFilter.NumRec; + set => SelFilter.NumRec = value; } private string SelArticolo @@ -219,11 +218,6 @@ namespace MP.SPEC.Components #region Private Methods - private async void MessageService_EA_PageUpdated() - { - await reloadData(true); - } - private async Task reloadData(bool setChanged) { isLoading = true; diff --git a/MP.SPEC/Components/ListPARAMS.razor.cs b/MP.SPEC/Components/ListPARAMS.razor.cs index 9b8844ed..2ef8726a 100644 --- a/MP.SPEC/Components/ListPARAMS.razor.cs +++ b/MP.SPEC/Components/ListPARAMS.razor.cs @@ -25,7 +25,7 @@ namespace MP.SPEC.Components #endregion Public Properties #region Public Methods - + private SelectFluxParams lastFilter { get; set; } = new SelectFluxParams() { CurrPage = -1 }; public string checkSelect(FluxLog selRecord) { string answ = ""; @@ -45,10 +45,10 @@ namespace MP.SPEC.Components { await Task.Delay(1); // se sono cambiati --> rileggo... - if (LastFilter==null || !SelFilter.Equals(LastFilter)) + if (!lastFilter.Equals(SelFilter)) { - await reloadData(false); - LastFilter = SelFilter; + lastFilter = SelFilter.clone(); + await reloadData(true); } } @@ -58,8 +58,6 @@ namespace MP.SPEC.Components public void Dispose() { aTimer.Elapsed -= ElapsedTimer; - MessageService.EA_PageUpdated -= MessageService_EA_PageUpdated; - MessageService.EA_SearchUpdated -= OnSeachUpdated; aTimer.Stop(); aTimer.Dispose(); currRecord = null; @@ -128,9 +126,6 @@ namespace MP.SPEC.Components [Inject] protected MpDataService MDService { get; set; } = null!; - [Inject] - protected MessageService MessageService { get; set; } = null!; - protected int RefreshPeriod { get => SelFilter.TempoAgg; @@ -142,8 +137,6 @@ namespace MP.SPEC.Components protected override async Task OnInitializedAsync() { - MessageService.EA_PageUpdated += MessageService_EA_PageUpdated; - MessageService.EA_SearchUpdated += OnSeachUpdated; StartTimer(); } @@ -197,8 +190,8 @@ namespace MP.SPEC.Components private int currPage { - get => MessageService.currPage; - set => MessageService.currPage = value; + get => SelFilter.CurrPage; + set => SelFilter.CurrPage = value; } private bool isLoading { get; set; } = false; @@ -215,8 +208,8 @@ namespace MP.SPEC.Components private int numRecord { - get => MessageService.numRecord; - set => MessageService.numRecord = value; + get => SelFilter.NumRec; + set => SelFilter.NumRec = value; } private string SelFlux @@ -250,11 +243,6 @@ namespace MP.SPEC.Components #region Private Methods - private async void MessageService_EA_PageUpdated() - { - await reloadData(true); - } - #endregion Private Methods } } \ No newline at end of file diff --git a/MP.SPEC/Data/SelectArticoliParams.cs b/MP.SPEC/Data/SelectArticoliParams.cs new file mode 100644 index 00000000..7158c192 --- /dev/null +++ b/MP.SPEC/Data/SelectArticoliParams.cs @@ -0,0 +1,74 @@ +namespace MP.SPEC.Data +{ + public class SelectArticoliParams + { + #region Public Constructors + + public SelectArticoliParams() + { } + + #endregion Public Constructors + + #region Public Properties + + + public int CurrPage { get; set; } = 1; + + public string IdxMacchina { get; set; } = "*"; + public string Azienda { get; set; } = "*"; + + public int MaxRecord { get; set; } = 100; + + public int NumRec { get; set; } = 10; + + public int TotCount { get; set; } = 0; + + #endregion Public Properties + + #region Public Methods + + public SelectArticoliParams clone() + { + SelectArticoliParams clonedData = new SelectArticoliParams() + { + CurrPage = this.CurrPage, + IdxMacchina = this.IdxMacchina, + Azienda = this.Azienda, + MaxRecord = this.MaxRecord, + NumRec = this.NumRec, + TotCount = this.TotCount + }; + return clonedData; + } + + public override bool Equals(object obj) + { + if (!(obj is SelectArticoliParams item)) + return false; + + if (MaxRecord != item.MaxRecord) + return false; + + if (NumRec != item.NumRec) + return false; + + if (TotCount != item.TotCount) + return false; + + if (CurrPage != item.CurrPage) + return false; + + if (IdxMacchina != item.IdxMacchina) + return false; + + return true; + } + + public override int GetHashCode() + { + return base.GetHashCode(); + } + + #endregion Public Methods + } +} \ No newline at end of file diff --git a/MP.SPEC/Data/SelectDossierParams.cs b/MP.SPEC/Data/SelectDossierParams.cs index c743e535..4d577074 100644 --- a/MP.SPEC/Data/SelectDossierParams.cs +++ b/MP.SPEC/Data/SelectDossierParams.cs @@ -1,4 +1,6 @@ -namespace MP.SPEC.Data +using MP.Data; + +namespace MP.SPEC.Data { public class SelectDossierParams { @@ -13,31 +15,34 @@ public int CurrPage { get; set; } = 1; - public DateTime DtEnd { get; set; } = InitDatetime(5); + public DateTime DtEnd { get; set; } = Utils.InitDatetime(DateTime.Now, 5); - public DateTime DtStart { get; set; } = InitDatetime(5).AddDays(-730); + public DateTime DtStart { get; set; } = Utils.InitDatetime(DateTime.Now, 5).AddDays(-730); public string IdxMacchina { get; set; } = "*"; public string CodArticolo { get; set; } = "*"; - + public int NumRec { get; set; } = 10; + public int TotCount { get; set; } = 0; public int MaxRecord { get; set; } = 100; #endregion Public Properties #region Public Methods - - /// - /// Inizializzazione con periodo e arrotondamento - /// - /// - /// - public static DateTime InitDatetime(int minRound) + public SelectDossierParams clone() { - TimeSpan DayElapsed = DateTime.Now.Subtract(DateTime.Today); - int minDay = (int)Math.Ceiling((double)(DayElapsed.TotalMinutes / minRound)) * minRound; - DateTime endRounded = DateTime.Today.AddMinutes(minDay); - return endRounded; + SelectDossierParams clonedData = new SelectDossierParams() + { + DtEnd = this.DtEnd, + DtStart = this.DtStart, + CurrPage = this.CurrPage, + IdxMacchina = this.IdxMacchina, + CodArticolo = this.CodArticolo, + MaxRecord = this.MaxRecord, + NumRec = this.NumRec, + TotCount = this.TotCount + }; + return clonedData; } public override bool Equals(object obj) @@ -54,6 +59,12 @@ if (MaxRecord != item.MaxRecord) return false; + if (TotCount != item.TotCount) + return false; + + if (NumRec != item.NumRec) + return false; + if (DtEnd != item.DtEnd) return false; diff --git a/MP.SPEC/Data/SelectFluxParams.cs b/MP.SPEC/Data/SelectFluxParams.cs index bf17616f..c78c85c1 100644 --- a/MP.SPEC/Data/SelectFluxParams.cs +++ b/MP.SPEC/Data/SelectFluxParams.cs @@ -19,14 +19,33 @@ public string IdxMacchina { get; set; } = "*"; public string lastUpdate { get; set; } = "-"; public bool LiveUpdate { get; set; } = true; - + public int NumRec { get; set; } = 10; public int MaxRecord { get; set; } = 100; public int TempoAgg { get; set; } = 10000; + public int TotCount { get; set; } = 0; #endregion Public Properties #region Public Methods - + public SelectFluxParams clone() + { + SelectFluxParams clonedData = new SelectFluxParams() + { + CodFlux = this.CodFlux, + CurrPage = this.CurrPage, + dtRif = this.dtRif, + dtMax = this.dtMax, + dtMin = this.dtMin, + IdxMacchina = this.IdxMacchina, + lastUpdate = this.lastUpdate, + LiveUpdate = this.LiveUpdate, + NumRec = this.NumRec, + MaxRecord = this.MaxRecord, + TotCount = this.TotCount, + TempoAgg = this.TempoAgg + }; + return clonedData; + } public override bool Equals(object obj) { if (!(obj is SelectFluxParams item)) @@ -46,6 +65,12 @@ if (TempoAgg != item.TempoAgg) return false; + + if (NumRec!= item.NumRec) + return false; + + if (TotCount!= item.TotCount) + return false; if (CurrPage != item.CurrPage) return false; diff --git a/MP.SPEC/Pages/Articoli.razor.cs b/MP.SPEC/Pages/Articoli.razor.cs index 25bceea2..fec8a210 100644 --- a/MP.SPEC/Pages/Articoli.razor.cs +++ b/MP.SPEC/Pages/Articoli.razor.cs @@ -24,9 +24,11 @@ namespace MP.SPEC.Pages return answ; } + private SelectArticoliParams currFilter = new SelectArticoliParams(); + public void Dispose() { - MessageService.EA_SearchUpdated -= OnSeachUpdated; + //MessageService.EA_SearchUpdated -= OnSeachUpdated; currRecord = null; ListTipoArt = null; ListAziende = null; @@ -55,9 +57,6 @@ namespace MP.SPEC.Pages [Inject] protected MpDataService MDService { get; set; } = null!; - [Inject] - protected MessageService MessageService { get; set; } = null!; - [Inject] protected NavigationManager NavManager { get; set; } @@ -131,9 +130,6 @@ namespace MP.SPEC.Pages protected override async Task OnInitializedAsync() { numRecord = 10; - // mostro ricerca - MessageService.ShowSearch = true; - MessageService.EA_SearchUpdated += OnSeachUpdated; configData = await MDService.ConfigGetAll(); var currRec = configData.FirstOrDefault(x => x.Chiave == "AZIENDA"); if (currRec != null) @@ -172,14 +168,14 @@ namespace MP.SPEC.Pages { Azienda = selRec.Azienda, CodArticolo = selRec.CodArticolo, - DescArticolo = $"CLONE - { selRec.DescArticolo }", + DescArticolo = $"CLONE - {selRec.DescArticolo}", Disegno = selRec.Disegno, - Tipo=selRec.Tipo + Tipo = selRec.Tipo }; currRecord = newRec; await Task.Delay(1); } - + protected async Task update(AnagArticoli selRec) { @@ -294,7 +290,7 @@ namespace MP.SPEC.Pages private async Task reloadData() { isLoading = true; - SearchRecords = await MDService.ArticoliGetSearch(100000, selAzienda, MessageService.SearchVal); + SearchRecords = await MDService.ArticoliGetSearch(100000, selAzienda, "*"); ListRecords = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList(); isLoading = false; } diff --git a/MP.SPEC/Pages/DOSS.razor.cs b/MP.SPEC/Pages/DOSS.razor.cs index 4cc91662..b4429caf 100644 --- a/MP.SPEC/Pages/DOSS.razor.cs +++ b/MP.SPEC/Pages/DOSS.razor.cs @@ -23,8 +23,6 @@ namespace MP.SPEC.Pages [Inject] protected MpDataService MDService { get; set; } = null!; - [Inject] - protected MessageService MsgService { get; set; } = null!; #endregion Protected Properties @@ -51,9 +49,6 @@ namespace MP.SPEC.Pages { isLoading = true; isFiltering = true; - // disabilito ricerca... - MsgService.SearchVal = ""; - MsgService.ShowSearch = false; // fix pagina await Task.Delay(1); var modFilter = currFilter; @@ -69,25 +64,36 @@ namespace MP.SPEC.Pages await Task.Delay(1); } - protected async Task selRecordFlux(FluxLogDTO selRec) + protected async Task selRecordFlux(FluxLogDTO? selRec) { currDetFluxLogRecord = selRec; await Task.Delay(1); } + protected async Task update(FluxLogDTO selRec) { - if (!await JSRuntime.InvokeAsync("confirm", "Confermi di voler salvare le modifiche? queste saranno parte del dossier inviato all'impianto")) - return; - - await Task.Delay(1); - if (currRecordDoss != null) + var alert = await JSRuntime.InvokeAsync("confirm", "Confermi di voler salvare le modifiche? queste saranno parte del dossier inviato all'impianto"); + if (alert) { - // METODO PER UPDATE FLUX - await MDService.updateDossierValue(currRecordDoss, selRec); + + await Task.Delay(1); + if (currRecordDoss != null) + { + // METODO PER UPDATE FLUX + await MDService.updateDossierValue(currRecordDoss, selRec); + } + return; } - currDetFluxLogRecord = null; - await Task.Delay(1); + else + { + await JSRuntime.InvokeAsync("location.reload"); + await selRecordFlux(null); + currDetFluxLogRecord = null; + await Task.Delay(1); + + } + } protected void updateTotal(int newTotCount) @@ -115,8 +121,8 @@ namespace MP.SPEC.Pages private int currPage { - get => MsgService.currPage; - set => MsgService.currPage = value; + get => currFilter.CurrPage; + set => currFilter.CurrPage = value; } private Dossiers? currRecordDoss { get; set; } = null; @@ -125,11 +131,15 @@ namespace MP.SPEC.Pages private int numRecord { - get => MsgService.numRecord; - set => MsgService.numRecord = value; + get => currFilter.NumRec; + set => currFilter.NumRec = value; } - private int totalCount { get; set; } = 0; + private int totalCount + { + get => currFilter.TotCount; + set => currFilter.TotCount = value; + } #endregion Private Properties @@ -146,6 +156,10 @@ namespace MP.SPEC.Pages currFilter = newParams; isLoading = false; } + protected void UpdateTotCount(int newTotCount) + { + totalCount = newTotCount; + } #endregion Private Methods } diff --git a/MP.SPEC/Pages/PARAMS.razor b/MP.SPEC/Pages/PARAMS.razor index 43c1c7b9..b7f55739 100644 --- a/MP.SPEC/Pages/PARAMS.razor +++ b/MP.SPEC/Pages/PARAMS.razor @@ -25,7 +25,7 @@ } else { - + }