From d2ea9696cd5e4b92def175a39fed76c84b1e8dbf Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 7 Dec 2021 09:36:59 +0100 Subject: [PATCH] Fix filtraggio x anno delle negoziazioni --- SHERPA.BBM.CORE/Controllers/BBMController.cs | 19 +- SHERPA.BBM.UI/Components/NaviNegot.razor.cs | 2 +- SHERPA.BBM.UI/Data/BBM_EFService.cs | 186 ++++++++++--------- SHERPA.BBM.UI/Pages/DocMover.razor | 4 +- SHERPA.BBM.UI/Pages/Negotiations.razor | 22 ++- SHERPA.BBM.UI/Pages/Negotiations.razor.cs | 40 ++-- SHERPA.BBM.UI/SHERPA.BBM.UI.csproj | 2 +- 7 files changed, 163 insertions(+), 112 deletions(-) diff --git a/SHERPA.BBM.CORE/Controllers/BBMController.cs b/SHERPA.BBM.CORE/Controllers/BBMController.cs index 4d2eebc..1795118 100644 --- a/SHERPA.BBM.CORE/Controllers/BBMController.cs +++ b/SHERPA.BBM.CORE/Controllers/BBMController.cs @@ -1048,7 +1048,7 @@ namespace SHERPA.BBM.CORE.Controllers /// /// /// - public List NegotGetLastDesc(int CompanyId, int CustomerId, int BasketId, string searchVal) + public List NegotGetLastDesc(int anno, int companyId, int customerId, int basketId, string searchVal) { List dbResult = new List(); using (SHERPABBMContext dbCtx = new SHERPABBMContext(_configuration)) @@ -1056,7 +1056,7 @@ namespace SHERPA.BBM.CORE.Controllers dbResult = dbCtx .DbSetNegotiations // || x.Basket.Company.RagSoc.Contains(searchVal) - .Where(x => (x.Basket.CompanyId == CompanyId || CompanyId == 1) && (x.CustomerId == CustomerId || CustomerId == 1) && (x.BasketId == BasketId || BasketId == 1) && (x.NegotiationId > 1) && (string.IsNullOrEmpty(searchVal) || x.CodNegotiation.Contains(searchVal) || x.BasePath.Contains(searchVal))) + .Where(x => (x.Anno == anno || anno == 0) && (x.Basket.CompanyId == companyId || companyId == 1) && (x.CustomerId == customerId || customerId == 1) && (x.BasketId == basketId || basketId == 1) && (x.NegotiationId > 1) && (string.IsNullOrEmpty(searchVal) || x.CodNegotiation.Contains(searchVal) || x.BasePath.Contains(searchVal))) .Include(n => n.Basket) .Include(n => n.DocsNav) .ThenInclude(d => d.FattNav) @@ -1124,6 +1124,21 @@ namespace SHERPA.BBM.CORE.Controllers return done; } + + public List NegotYears() + { + List dbResult = new List(); + using (SHERPABBMContext dbCtx = new SHERPABBMContext(_configuration)) + { + dbResult = dbCtx + .DbSetNegotiations + .Select(x => x.Anno) + .Distinct() + .ToList(); + } + return dbResult; + } + /// /// Aggiunge un nuova Resource /// diff --git a/SHERPA.BBM.UI/Components/NaviNegot.razor.cs b/SHERPA.BBM.UI/Components/NaviNegot.razor.cs index 3b465fc..104a30f 100644 --- a/SHERPA.BBM.UI/Components/NaviNegot.razor.cs +++ b/SHERPA.BBM.UI/Components/NaviNegot.razor.cs @@ -111,7 +111,7 @@ namespace SHERPA.BBM.UI.Components { customersList = await BBMService.CustomersGetAll(""); basketList = await BBMService.BasketsGetAsync(1, ""); - negotiationList = await BBMService.NegotiationsGetAsync(1, SelCustomerId, SelBasketId, ""); + negotiationList = await BBMService.NegotiationsGetAsync(0, 1, SelCustomerId, SelBasketId, ""); } diff --git a/SHERPA.BBM.UI/Data/BBM_EFService.cs b/SHERPA.BBM.UI/Data/BBM_EFService.cs index f99697b..40aafa3 100644 --- a/SHERPA.BBM.UI/Data/BBM_EFService.cs +++ b/SHERPA.BBM.UI/Data/BBM_EFService.cs @@ -48,7 +48,7 @@ namespace SHERPA.BBM.UI.Data StringBuilder sb = new StringBuilder(); sb.AppendLine($"DbController OK"); sb.AppendLine($"CST: {dbController.CustomersCount()} | CNT: {dbController.CountersCount()} | BSK: {dbController.BasketsCount()} | NGT: {dbController.NegotiationsCount()} | DOC: {dbController.DocsCount()} | ITM: {dbController.ItemsCount()} | RES: {dbController.ResourcesCount()}"); - _logger.LogInformation(sb.ToString()); + _logger.LogInformation(sb.ToString()); #endif } } @@ -57,30 +57,6 @@ namespace SHERPA.BBM.UI.Data #region Public Methods - public void Dispose() - { - // Clear database controller - dbController.Dispose(); - } - -#if false - /// - /// effettua reset del controller (nuova istanza) - /// - /// - public static bool resetController() - { - bool answ = false; - try - { - dbController = new CORE.Controllers.BBMController(connStringBBM, connStringFatt); - } - catch - { } - return answ; - } -#endif - public void BasketsAdd(CORE.DbModels.BasketsModel newItem) { try @@ -92,38 +68,6 @@ namespace SHERPA.BBM.UI.Data } } - - /// - /// Elenco annualità valide x documenti caricati - /// - /// - public Task> DocsYears() - { - return Task.FromResult(dbController.DocsYears()); - } - - /// - /// Elenco tags - /// - /// - /// - /// - public Task> TagsGetAll(TagType selType) - { - return Task.FromResult(dbController.TagsGetAll(selType)); - } - - public void TagDelete(CORE.DbModels.TagModel currRecord) - { - dbController.TagDelete(currRecord.TagId); - } - - public void TagUpdate(CORE.DbModels.TagModel currRecord) - { - dbController.TagUpdate(currRecord); - } - - public void BasketsDelete(CORE.DbModels.BasketsModel currItem) { try @@ -135,35 +79,6 @@ namespace SHERPA.BBM.UI.Data } } - /// - /// Elenco tags dato item - /// - /// - /// - /// - public Task> TagItemGetByItem(int itemId) - { - return Task.FromResult(dbController.TagItemGetByItem(itemId)); - } - - /// - /// Upsert Tag2Item - /// - /// - public void TagItemUpdate(CORE.DbModels.TagItemModel currRecord) - { - dbController.TagItemUpdate(currRecord); - } - - /// - /// Delete Tag2Item - /// - /// - public void TagItemDelete(CORE.DbModels.TagItemModel currRecord) - { - dbController.TagItemDelete(currRecord); - } - /// /// Elenco ultimi Baskets /// @@ -270,6 +185,30 @@ namespace SHERPA.BBM.UI.Data } } + public void Dispose() + { + // Clear database controller + dbController.Dispose(); + } + +#if false + /// + /// effettua reset del controller (nuova istanza) + /// + /// + public static bool resetController() + { + bool answ = false; + try + { + dbController = new CORE.Controllers.BBMController(connStringBBM, connStringFatt); + } + catch + { } + return answ; + } +#endif + public Task DocGetByKeyAsync(int DocId) { return Task.FromResult(dbController.DocGetByKey(DocId)); @@ -314,7 +253,6 @@ namespace SHERPA.BBM.UI.Data return Task.FromResult(dbController.DocGetLastDesc(anno, basketId, negotiationId, showAll)); } - public Task DocsMoveNegot(int DocId, int NegotiationId) { return Task.FromResult(dbController.DocsMoveNegot(DocId, NegotiationId)); @@ -325,6 +263,15 @@ namespace SHERPA.BBM.UI.Data dbController.DocUpdate(currItem); } + /// + /// Elenco annualità valide x documenti caricati + /// + /// + public Task> DocsYears() + { + return Task.FromResult(dbController.DocsYears()); + } + public void ItemAdd(CORE.DbModels.ItemsModel newItem) { try @@ -411,9 +358,9 @@ namespace SHERPA.BBM.UI.Data return Task.FromResult(dbController.NegotGetAllDesc()); } - public Task> NegotiationsGetAsync(int CompanyId, int CustomerId, int BasketId, string searchVal) + public Task> NegotiationsGetAsync(int anno, int companyId, int customerId, int basketId, string searchVal) { - return Task.FromResult(dbController.NegotGetLastDesc(CompanyId, CustomerId, BasketId, searchVal)); + return Task.FromResult(dbController.NegotGetLastDesc(anno, companyId, customerId, basketId, searchVal)); } public void NegotiationUpdate(CORE.DbModels.NegotiationsModel currItem) @@ -427,6 +374,15 @@ namespace SHERPA.BBM.UI.Data } } + /// + /// Elenco annualità valide x negoziazioni + /// + /// + public Task> NegotYears() + { + return Task.FromResult(dbController.NegotYears()); + } + public void ResourceAdd(CORE.DbModels.ResourcesModel newItem) { try @@ -469,7 +425,7 @@ namespace SHERPA.BBM.UI.Data public Task> ResourcesGetAsync(int anno, int baskId, int negoId, int docId, BbmResType resType) { - //baskId, negoId, + //baskId, negoId, return Task.FromResult(dbController.ResourceGetLastDesc(anno, baskId, negoId, docId, resType)); } @@ -530,6 +486,56 @@ namespace SHERPA.BBM.UI.Data return Task.FromResult(dbController.SumTotTrattato(anno)); } + public void TagDelete(CORE.DbModels.TagModel currRecord) + { + dbController.TagDelete(currRecord.TagId); + } + + /// + /// Delete Tag2Item + /// + /// + public void TagItemDelete(CORE.DbModels.TagItemModel currRecord) + { + dbController.TagItemDelete(currRecord); + } + + /// + /// Elenco tags dato item + /// + /// + /// + /// + public Task> TagItemGetByItem(int itemId) + { + return Task.FromResult(dbController.TagItemGetByItem(itemId)); + } + + /// + /// Upsert Tag2Item + /// + /// + public void TagItemUpdate(CORE.DbModels.TagItemModel currRecord) + { + dbController.TagItemUpdate(currRecord); + } + + /// + /// Elenco tags + /// + /// + /// + /// + public Task> TagsGetAll(TagType selType) + { + return Task.FromResult(dbController.TagsGetAll(selType)); + } + + public void TagUpdate(CORE.DbModels.TagModel currRecord) + { + dbController.TagUpdate(currRecord); + } + #endregion Public Methods } } \ No newline at end of file diff --git a/SHERPA.BBM.UI/Pages/DocMover.razor b/SHERPA.BBM.UI/Pages/DocMover.razor index b943763..f8952fc 100644 --- a/SHERPA.BBM.UI/Pages/DocMover.razor +++ b/SHERPA.BBM.UI/Pages/DocMover.razor @@ -237,7 +237,7 @@ { customersList = await BBMService.CustomersGetAll(""); basketListSx = await BBMService.BasketsGetAsync(1, ""); - negotiationListSx = await BBMService.NegotiationsGetAsync(1, SelCustomerIdSx, SelBasketIdSx, ""); + negotiationListSx = await BBMService.NegotiationsGetAsync(yearSel, 1, SelCustomerIdSx, SelBasketIdSx, ""); } @@ -245,7 +245,7 @@ { customersList = await BBMService.CustomersGetAll(""); basketListDx = await BBMService.BasketsGetAsync(1, ""); - negotiationListDx = await BBMService.NegotiationsGetAsync(1, SelCustomerIdDx, SelBasketIdDx, ""); + negotiationListDx = await BBMService.NegotiationsGetAsync(yearSel, 1, SelCustomerIdDx, SelBasketIdDx, ""); } protected override async Task OnInitializedAsync() diff --git a/SHERPA.BBM.UI/Pages/Negotiations.razor b/SHERPA.BBM.UI/Pages/Negotiations.razor index 6597b7e..d0e46cb 100644 --- a/SHERPA.BBM.UI/Pages/Negotiations.razor +++ b/SHERPA.BBM.UI/Pages/Negotiations.razor @@ -20,7 +20,7 @@ - @foreach (var item in BasketList) { @@ -36,7 +36,7 @@ - @foreach (var item in CustomersList) { @@ -51,7 +51,7 @@ - @foreach (var item in CompanyList) { @@ -59,6 +59,22 @@ +
+
+
+ + + +
+ +
+
diff --git a/SHERPA.BBM.UI/Pages/Negotiations.razor.cs b/SHERPA.BBM.UI/Pages/Negotiations.razor.cs index 1c74b50..153f189 100644 --- a/SHERPA.BBM.UI/Pages/Negotiations.razor.cs +++ b/SHERPA.BBM.UI/Pages/Negotiations.razor.cs @@ -12,6 +12,7 @@ namespace SHERPA.BBM.UI.Pages { #region Private Fields + private List yearsList; private List BasketList; private List CompanyList; private CORE.DbModels.NegotiationsModel currItem = null; @@ -45,10 +46,24 @@ namespace SHERPA.BBM.UI.Pages private int numRecord { get; set; } = 10; + private int yearSel + { + get + { + return SelectData.YearSel; + } + set + { + SelectData.YearSel = value; + ReloadAllData().ConfigureAwait(false); + } + } + /// /// Basket selezionato /// - private int SelBasketId + + private int selBasketId { get { @@ -57,16 +72,14 @@ namespace SHERPA.BBM.UI.Pages set { SelectData.BasketId = value; - // condiziono visualizzazione... - var pUpd = Task.Run(async () => await ReloadAllData()); - pUpd.Wait(); + ReloadAllData().ConfigureAwait(false); } } /// /// Company selezionata /// - private int SelCompanyId + private int selCompanyId { get { @@ -90,7 +103,7 @@ namespace SHERPA.BBM.UI.Pages /// /// Customer selezionato /// - private int SelCustomerId + private int selCustomerId { get { @@ -139,7 +152,7 @@ namespace SHERPA.BBM.UI.Pages { get { - bool answ = (SelBasketId <= 1 || SelCustomerId <= 1 || SelCompanyId <= 1) ? true : false; + bool answ = (selBasketId <= 1 || selCustomerId <= 1 || selCompanyId <= 1) ? true : false; return answ; } } @@ -167,8 +180,8 @@ namespace SHERPA.BBM.UI.Pages { CodNegotiation = newCode, DataIns = DateTime.Now, - BasketId = SelBasketId, - CustomerId = SelCustomerId, + BasketId = selBasketId, + CustomerId = selCustomerId, Descript = "Nuova Negoziazione", BasePath = "", //Refer = "" @@ -191,7 +204,7 @@ namespace SHERPA.BBM.UI.Pages return; // seleziono Basket... - SelBasketId = currRecord.BasketId; + selBasketId=currRecord.BasketId; // recupero counter string newCode = BBMService.CounterGetNext($"{SelectData.Company}.N.{DateTime.Today.Year}", 6); @@ -201,7 +214,7 @@ namespace SHERPA.BBM.UI.Pages DataIns = DateTime.Now, Descript = "COPIA di " + currRecord.Descript, BasePath = currRecord.BasePath, - BasketId = SelBasketId + BasketId = selBasketId }; currItem = newRecord; } @@ -233,10 +246,11 @@ namespace SHERPA.BBM.UI.Pages protected async Task ReloadAllData() { + yearsList = await BBMService.NegotYears(); CompanyList = await BBMService.CompanyGetAll(); CustomersList = await BBMService.CustomersGetAll(""); - BasketList = await BBMService.BasketsGetAsync(SelCompanyId, ""); - SearchRecords = await BBMService.NegotiationsGetAsync(SelCompanyId, SelCustomerId, SelBasketId, MessageService.SearchVal); + BasketList = await BBMService.BasketsGetAsync(selCompanyId, ""); + SearchRecords = await BBMService.NegotiationsGetAsync(yearSel, selCompanyId, selCustomerId, selBasketId, MessageService.SearchVal); // se ho ordinamento riordino... if (!string.IsNullOrEmpty(sortField)) { diff --git a/SHERPA.BBM.UI/SHERPA.BBM.UI.csproj b/SHERPA.BBM.UI/SHERPA.BBM.UI.csproj index d3f4ecd..746e271 100644 --- a/SHERPA.BBM.UI/SHERPA.BBM.UI.csproj +++ b/SHERPA.BBM.UI/SHERPA.BBM.UI.csproj @@ -4,7 +4,7 @@ net5.0 60fcdaab-6c1e-4bec-9d88-f7727ef1c12c wwwroot\favicon.ico - 1.0.2112.0618 + 1.0.2112.0709