From 1284302de22c8348342b4fa6bb2998d502be2f4a Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Wed, 22 Jan 2014 18:02:04 +0100 Subject: [PATCH] completata gestioen stampa nuovo cartellino con consumo vecchi... --- GMW/Web.config | 3 +- GMW/WebUserControls/mod_SterrTagOUT.ascx.cs | 84 +++++++++++++++++--- GMW/bin/GMW.dll | Bin 254976 -> 255488 bytes 3 files changed, 74 insertions(+), 13 deletions(-) diff --git a/GMW/Web.config b/GMW/Web.config index 88e45a3c..770077be 100644 --- a/GMW/Web.config +++ b/GMW/Web.config @@ -66,7 +66,7 @@ - + @@ -158,6 +158,7 @@ + diff --git a/GMW/WebUserControls/mod_SterrTagOUT.ascx.cs b/GMW/WebUserControls/mod_SterrTagOUT.ascx.cs index 81685e20..15439141 100644 --- a/GMW/WebUserControls/mod_SterrTagOUT.ascx.cs +++ b/GMW/WebUserControls/mod_SterrTagOUT.ascx.cs @@ -19,7 +19,11 @@ namespace GMW.WebUserControls /// /// stato associato (hard coded) a FUSI /// - protected string statoUDC = "Sterrati"; + protected string statoUDC = "Sterrato"; + /// + /// tipo di evento associato alla creazione dell'UDC + /// + protected string eventoUDC = "UDC_STTA"; /// /// stringa degli UDC selezionati per consumo COMPLETO (nel formato #UDC1##UDC2#) /// @@ -547,28 +551,45 @@ namespace GMW.WebUserControls } if (codSogg != "" && particolare != "") { - // genero cartellino anima + // genero cartellino DateTime adesso = DateTime.Now; try { // creo nuovo UDC anime multiple - newUdcChild = MagClass.magazzino.creaUdc(flusso, "", currParticolare, "", "", "", "", "", 0, memLayer.ML.confReadString("CodImballoAnime"), "U", MagClass.magazzino.CodSoggCurrUser, qta, 0, 0, adesso, 0, statoUDC, memLayer.ML.confReadInt("IdxPosizioneAnimeExt"), "IdxPosizioneAnimeExt", "UDC_ANIMA", noteTrim, "", adesso.Year, Request.UserHostName); //!!!Fare, finire porting da anime... + newUdcChild = MagClass.magazzino.creaUdc(flusso, "", currParticolare, "", "", "", "", "", 0, memLayer.ML.confReadString("CodImballoSterr"), "U", MagClass.magazzino.CodSoggCurrUser, qta, 0, 0, adesso, 0, statoUDC, memLayer.ML.confReadInt("IdxPosizioneSterrati"), "IdxPosizioneSterrati", eventoUDC, noteTrim, "", adesso.Year, Request.UserHostName); // registro creazione nuovo UDC - MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "creaUDC", string.Format("Creato nuovo UDC Anime EX, qta: {0} {1}", qta, noteTrim)); + MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "creaUDC", string.Format("Creato nuovo UDC Sterrato, qta: {0} {1}", qta, noteTrim)); } catch (Exception exc) { - httpLog(string.Format("Errore creazione UDC anime mult: {0}", exc), tipoLog.EXCEPTION); + httpLog(string.Format("Errore creazione UDC Sterrato: {0}", exc), tipoLog.EXCEPTION); } - // se ho cart liquidi genero (se non ci sono) cart trattamenti + // devo gestire associazione e consumo cartellini FUSI if (newUdcChild != "") { + string[] UDC_P; + // ASSOCIO tutti gli UDC consumati sia Parziali che Completi al nuovo UDC + if (udcSelP.Replace("#", "").Length > 1) + { + // associo + UDC_P = SteamWare.StringSplitter.CSplitter.Split(udcSelP, "#", false, 0, SteamWare.StringSplitter.ComparisonMethod.Text); + explAssociaUdc(newUdcChild, UDC_P); + } + if (udcSelC.Replace("#", "").Length > 1) + { + // associo + UDC_P = SteamWare.StringSplitter.CSplitter.Split(udcSelC, "#", false, 0, SteamWare.StringSplitter.ComparisonMethod.Text); + explAssociaUdc(newUdcChild, UDC_P); + // consumo gli UDC indicati come "C" + consumaUdc(UDC_P); + } + // sposto UDC appena creato in posizione default + /*************************************************************************************** - * dopo che l'ho creato lo sposto da post anime ext a post anime int (NO UPDATE AS400...) - * IdxPosizioneAnimeExt --> IdxPosizioneAnime + * dopo che l'ho creato lo sposto * !!! DEVO CALCOLARE LA CELLA !!! parto dal blocco calcolato da tab transizioni ***************************************************************************************/ - int idxBloccoTo = StateMachine.SM.getIdxBloccoTo("UDC_ANIMA", memLayer.ML.confReadInt("IdxPosizioneAnimeExt")); + int idxBloccoTo = StateMachine.SM.getIdxBloccoTo(eventoUDC, memLayer.ML.confReadInt("IdxPosizioneSterrati")); int idxCellaTo = 0; try { @@ -583,8 +604,7 @@ namespace GMW.WebUserControls adesso = DateTime.Now; adesso = adesso.AddSeconds(1); // registro creazione nuovo UDC - MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "spostaUDC", "Sposta UDC Anime EXT in Int"); - + MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "spostaUDC", "Sposta UDC Sterrato"); } // ora stampo il nuovo cartellino!!! MagClass.magazzino.stampaUdc(newUdcChild, postazione_printer, tipoCartellino.cartAnime, Request.UserHostName); @@ -592,7 +612,7 @@ namespace GMW.WebUserControls adesso = DateTime.Now; adesso = adesso.AddSeconds(2); // registro stampa nuovo UDC - MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "stampaUDC", "Stampato UDC Anime EXT"); + MagClass.magazzino.taSAO.insertQuery(adesso, codSogg, postazione_name, postazione_IP, newUdcChild, particolare, "stampaUDC", "Stampato UDC Sterrato"); } // resetto doResetData(); @@ -610,6 +630,46 @@ namespace GMW.WebUserControls } } /// + /// effettua il consumo di tutti gli UDC inviati come array di stringhe + /// + /// + private void consumaUdc(string[] UDC_P) + { + if (UDC_P.Length > 0) + { + // ciclo + foreach (string udc_p in UDC_P) + { + // se UDC è NON vuoto ed esiste + if (udc_p != "" && MagClass.magazzino.checkUDC(barcodeIn)) + { + // consumo UDC + MagClass.magazzino.scaricaUdcMpWip(udc_p, Request.UserHostName); + } + } + } + } + /// + /// esplode elenco UDC ed associa al nuovo UDC + /// + /// UDC da associare come child + /// vettorei di UDC da associare come parent + private void explAssociaUdc(string newUdcChild, string[] UDC_P) + { + if (UDC_P.Length > 0) + { + // ciclo + foreach (string udc_p in UDC_P) + { + // se UDC è NON vuoto ed esiste + if (udc_p != "" && MagClass.magazzino.checkUDC(barcodeIn)) + { + MagClass.magazzino.associaUdcParent(newUdcChild, udc_p); + } + } + } + } + /// /// wrapper per log con salvataggio dell'IP del chiamante /// /// diff --git a/GMW/bin/GMW.dll b/GMW/bin/GMW.dll index 258c006e2be70c4fa4ed6bb8e7414beef4238698..fd4b2bfe10310c36af1f0b5e7f023cd1170c2657 100644 GIT binary patch delta 26634 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 xN&SySm