diff --git a/AppData/ComLib.cs b/AppData/ComLib.cs index 4492913..5cbd3ad 100644 --- a/AppData/ComLib.cs +++ b/AppData/ComLib.cs @@ -604,6 +604,43 @@ namespace AppData // restituisco ok return answ; } + public static string canStartNewKey + { + get + { + return $"{redOutPath}:CanStartNew"; + } + } + /// + /// verifica se sia avviabile un nuovo task nesting controllando cache Redis o tabelle batch/offlineOrders + /// + public static bool canStartNew + { + get + { + bool answ = false; + bool valido = false; + // cerco in redis + if (memLayer.ML.redKeyPresent(canStartNewKey)) + { + string rawData = memLayer.ML.getRSV(canStartNewKey); + valido = bool.TryParse(rawData, out answ); + } + if (!valido) + { + // in primis controllo SE ci siano task running, nel qual caso è false e basta... + int numEst = DataLayer.man.taBL.getByStatus((int)BatchStatus.EstimationRequested, "", 0).Count; + int numNest = DataLayer.man.taBL.getByStatus((int)BatchStatus.NestRequested, "", 0).Count; + // ora controllo anche offline orders... + int numOffOrd = DataLayer.man.taOffOL.getRunning().Count; + // ora la somma di tutti DEVE essere zero... + answ = ((numEst + numNest + numOffOrd) == 0); + // salvo in redis + memLayer.ML.setRSV(canStartNewKey, answ.ToString(), 2); + } + return answ; + } + } /// /// Verifica lo stato di una richiesta di esecuzione BATCH x stima/nesting diff --git a/Jenkinsfile b/Jenkinsfile index 516ded9..5ad12db 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -11,7 +11,7 @@ pipeline { steps { /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { - withEnv(['NEXT_BUILD_NUMBER=345']) { + withEnv(['NEXT_BUILD_NUMBER=346']) { // env.versionNumber = VersionNumber(versionNumberString : '1.1.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true) env.versionNumber = VersionNumber(versionNumberString : '1.1.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') env.versionNumberBeta = VersionNumber(versionNumberString : '1.1.${BUILD_DATE_FORMATTED, "yyMM"}-beta.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') diff --git a/NKC_WF/Web.Debug-LELE.config b/NKC_WF/Web.Debug-LELE.config index e927903..e656677 100644 --- a/NKC_WF/Web.Debug-LELE.config +++ b/NKC_WF/Web.Debug-LELE.config @@ -16,7 +16,7 @@ - + diff --git a/NKC_WF/Web.Prod.config b/NKC_WF/Web.Prod.config index bb9d5b2..2e32522 100644 --- a/NKC_WF/Web.Prod.config +++ b/NKC_WF/Web.Prod.config @@ -22,7 +22,7 @@ - + diff --git a/NKC_WF/Web.Release.config b/NKC_WF/Web.Release.config index bb32033..bb642db 100644 --- a/NKC_WF/Web.Release.config +++ b/NKC_WF/Web.Release.config @@ -16,7 +16,7 @@ - + diff --git a/NKC_WF/WebUserControls/cmp_KS_BinCart.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_BinCart.ascx.cs index 7d2be8f..0f6a053 100644 --- a/NKC_WF/WebUserControls/cmp_KS_BinCart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_BinCart.ascx.cs @@ -122,6 +122,20 @@ namespace NKC_WF.WebUserControls } } /// + /// Descrizione Cart selezionato (ord ext code) + /// + public string CartDesc + { + get + { + return cmp_KS_currCart.Description; + } + set + { + cmp_KS_currCart.Description = value; + } + } + /// /// Bin selezionato /// public int BinID diff --git a/NKC_WF/WebUserControls/cmp_KS_Cart.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_Cart.ascx.cs index f1f4707..5843686 100644 --- a/NKC_WF/WebUserControls/cmp_KS_Cart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_Cart.ascx.cs @@ -46,6 +46,20 @@ namespace NKC_WF.WebUserControls cmp_KS_OkoiCart.Dtmx = value; } } + /// + /// Descrizione Cart selezionato (ord ext code) + /// + public string CartDesc + { + get + { + return cmp_KS_currCart.Description; + } + set + { + cmp_KS_currCart.Description = value; + } + } public void doUpdate() { } diff --git a/NKC_WF/WebUserControls/cmp_KS_Items.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_Items.ascx.cs index df7c764..5cdf10d 100644 --- a/NKC_WF/WebUserControls/cmp_KS_Items.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_Items.ascx.cs @@ -39,6 +39,20 @@ namespace NKC_WF.WebUserControls cmp_KS_currCart.Dtmx = value; } } + /// + /// Descrizione Cart selezionato (ord ext code) + /// + public string CartDesc + { + get + { + return cmp_KS_currCart.Description; + } + set + { + cmp_KS_currCart.Description = value; + } + } public int ItemID { get diff --git a/NKC_WF/WebUserControls/cmp_KS_OtherItemsCart.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_OtherItemsCart.ascx.cs index 291b606..3b6d75c 100644 --- a/NKC_WF/WebUserControls/cmp_KS_OtherItemsCart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_OtherItemsCart.ascx.cs @@ -119,6 +119,20 @@ namespace NKC_WF.WebUserControls } } /// + /// Descrizione Cart selezionato (ord ext code) + /// + public string CartDesc + { + get + { + return cmp_KS_currCart.Description; + } + set + { + cmp_KS_currCart.Description = value; + } + } + /// /// OtherItem selezionato /// public int OtherItemID @@ -147,6 +161,20 @@ namespace NKC_WF.WebUserControls cmp_KS_OkoiOI.Dtmx = value; } } + /// + /// Descrizione OtherItem selezionato + /// + public string OtherItemDesc + { + get + { + return cmp_KS_currOI.Description; + } + set + { + cmp_KS_currOI.Description = value; + } + } protected void lbtAddAll_Click(object sender, EventArgs e) { diff --git a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx index f91bb99..d7c4644 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx +++ b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx @@ -1,7 +1,14 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_KS_currCart.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_KS_currCart" %>
-
<%: traduci ("Cart") %>
+
<%: traduci ("Cart") %>
- +
+
+ +
+
+ +
+
diff --git a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.cs index a43b8a8..12a525c 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.cs @@ -38,5 +38,16 @@ namespace NKC_WF.WebUserControls lblDtmx.Text = value; } } + public string Description + { + get + { + return lblDesc.Text; + } + set + { + lblDesc.Text = value; + } + } } } \ No newline at end of file diff --git a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.designer.cs b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.designer.cs index d0391f2..5d7de46 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.designer.cs +++ b/NKC_WF/WebUserControls/cmp_KS_currCart.ascx.designer.cs @@ -31,5 +31,14 @@ namespace NKC_WF.WebUserControls /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblDtmx; + + /// + /// Controllo lblDesc. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblDesc; } } diff --git a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx index 45474b4..c57d959 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx +++ b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx @@ -1,6 +1,13 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_KS_currOI.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_KS_currOI" %>
-
<%: traduci ("OtherParts") %>
+
<%: traduci ("OtherParts") %>
- +
+
+ +
+
+ +
+
diff --git a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.cs b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.cs index 330c9b8..979fecc 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.cs @@ -38,5 +38,16 @@ namespace NKC_WF.WebUserControls lblDtmx.Text = value; } } + public string Description + { + get + { + return lblDesc.Text; + } + set + { + lblDesc.Text = value; + } + } } } \ No newline at end of file diff --git a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.designer.cs b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.designer.cs index c56f301..03dc6da 100644 --- a/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.designer.cs +++ b/NKC_WF/WebUserControls/cmp_KS_currOI.ascx.designer.cs @@ -31,5 +31,14 @@ namespace NKC_WF.WebUserControls /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblDtmx; + + /// + /// Controllo lblDesc. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblDesc; } } diff --git a/NKC_WF/WebUserControls/cmp_OtherItemsDetail.ascx b/NKC_WF/WebUserControls/cmp_OtherItemsDetail.ascx index 8709285..b231181 100644 --- a/NKC_WF/WebUserControls/cmp_OtherItemsDetail.ascx +++ b/NKC_WF/WebUserControls/cmp_OtherItemsDetail.ascx @@ -28,6 +28,7 @@
+
<%# Eval("OtherItemDtmx") %>
diff --git a/NKC_WF/WebUserControls/cmp_batchDetail.ascx b/NKC_WF/WebUserControls/cmp_batchDetail.ascx index 781aaf6..34dd767 100644 --- a/NKC_WF/WebUserControls/cmp_batchDetail.ascx +++ b/NKC_WF/WebUserControls/cmp_batchDetail.ascx @@ -6,12 +6,12 @@

<%: traduci ("BatchDetail") %>

- +
- <%: traduci("SendToEstim") %> + <%: traduci("SendToEstim") %> <%: traduci("StopEstim") %> - <%: traduci("SendToNest") %> + <%: traduci("SendToNest") %> <%: traduci("StopNest") %> <%: traduci("AcceptNest") %>
diff --git a/NKC_WF/WebUserControls/cmp_batchDetail.ascx.cs b/NKC_WF/WebUserControls/cmp_batchDetail.ascx.cs index 5025067..8585260 100644 --- a/NKC_WF/WebUserControls/cmp_batchDetail.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_batchDetail.ascx.cs @@ -239,17 +239,12 @@ namespace NKC_WF.WebUserControls /// verifica possibilità avvio TASK x presenza task NON chiusi ///
/// - public bool canStartNew() + public bool canStartNew { - bool answ = false; - // in primis controllo SE ci siano task running, nel qual caso è false e basta... - int numEst = DataLayer.man.taBL.getByStatus((int)BatchStatus.EstimationRequested, "", 0).Count; - int numNest = DataLayer.man.taBL.getByStatus((int)BatchStatus.NestRequested, "", 0).Count; - // ora controllo anche offline orders... - int numOffOrd = DataLayer.man.taOffOL.getRunning().Count; - // ora la somma di tutti DEVE essere zero... - answ = ((numEst + numNest + numOffOrd) == 0); - return answ; + get + { + return ComLib.canStartNew; + } } /// /// Converte il codice stato in effettivo campo diff --git a/NKC_WF/WebUserControls/cmp_kittingSmart.ascx.cs b/NKC_WF/WebUserControls/cmp_kittingSmart.ascx.cs index 0461c08..e1150ef 100644 --- a/NKC_WF/WebUserControls/cmp_kittingSmart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_kittingSmart.ascx.cs @@ -295,7 +295,14 @@ namespace NKC_WF.WebUserControls else { // mostro CART! - setCart(rawData, codeInt); + string descr = "-"; + try + { + descr = rigaOrd.OrderExtCode; + } + catch + { } + setCart(rawData, codeInt, descr); // verifico se il cart sia già stato messo in scarico (in quel caso dico già ok...) var tabLog = DataLayer.man.taPLog.getByCartId(codeInt); if (tabLog.Count > 0) @@ -511,14 +518,21 @@ namespace NKC_WF.WebUserControls var listCartAvailable = tabOKOI.Where(x => !x.IsCartKitStartNull() && x.IsCartKitEndNull()).ToList(); if (listCartAvailable.Count == 0) { - displError($"{traduci("ErrPartNoCartAvail")}: {rawData} | item {tabOKOI[0].OtherItemDesc} | order {tabOKOI[0].OrderExtCode}"); + displError($"{traduci("ErrPartNoCartAvail")}: {rawData} | PART {tabOKOI[0].OtherItemExtCode} {tabOKOI[0].OtherItemDesc} | order {tabOKOI[0].OrderExtCode}"); // reset preliminare resetOtherItem(); } else { + string descr = "-"; + try + { + descr = tabOKOI[0].OtherItemExtCode; + } + catch + { } // mostro OtherItem! - setOtherItem(rawData, codeInt); + setOtherItem(rawData, codeInt, descr); } } } @@ -549,10 +563,12 @@ namespace NKC_WF.WebUserControls /// /// /// - private void setOtherItem(string rawData, int codeInt) + /// + private void setOtherItem(string rawData, int codeInt, string Description) { cmp_KS_OtherItemsCart.OtherItemID = codeInt; cmp_KS_OtherItemsCart.OtherItemDtmx = rawData; + cmp_KS_OtherItemsCart.OtherItemDesc = Description; cmp_KS_OtherItemsCart.doUpdate(); fixVisibility(); } @@ -574,19 +590,24 @@ namespace NKC_WF.WebUserControls /// /// /// - private void setCart(string rawData, int codeInt) + /// + private void setCart(string rawData, int codeInt, string Description) { cmp_KS_BinCart.CartID = codeInt; cmp_KS_BinCart.CartDtmx = rawData; + cmp_KS_BinCart.CartDesc = Description; cmp_KS_BinCart.doUpdate(); cmp_KS_OtherItemsCart.CartID = codeInt; cmp_KS_OtherItemsCart.CartDtmx = rawData; + cmp_KS_OtherItemsCart.CartDesc = Description; cmp_KS_OtherItemsCart.doUpdate(); cmp_KS_Cart.CartID = codeInt; cmp_KS_Cart.CartDtmx = rawData; + cmp_KS_Cart.CartDesc = Description; cmp_KS_Cart.doUpdate(); cmp_KS_Items.CartID = codeInt; cmp_KS_Items.CartDtmx = rawData; + cmp_KS_Items.CartDesc = Description; cmp_KS_Items.doUpdate(); fixVisibility(); } diff --git a/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx b/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx index 1c77b0f..fb77e89 100644 --- a/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx +++ b/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx @@ -27,11 +27,11 @@
- <%: traduci ("MakeCncProg") %> + <%: traduci ("MakeCncProg") %> <%: traduci ("StopCncReq") %>
- + <%: traduci ("ItemDone") %>
diff --git a/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx.cs b/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx.cs index 47d19ac..52ee356 100644 --- a/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_offOrderDetail.ascx.cs @@ -83,7 +83,7 @@ namespace NKC_WF.WebUserControls DataLayer.man.taOffOL.updateStatus(OffOrdId, 0); } frmView.DataBind(); - raiseEvent(); + raiseEvent(); } protected void lbtPrintLabels_Click(object sender, EventArgs e) @@ -120,17 +120,12 @@ namespace NKC_WF.WebUserControls /// verifica possibilità avvio TASK x presenza task NON chiusi /// /// - public bool canStartNew() + public bool canStartNew { - bool answ = false; - // in primis controllo SE ci siano task running, nel qual caso è false e basta... - int numEst = DataLayer.man.taBL.getByStatus((int)BatchStatus.EstimationRequested, "", 0).Count; - int numNest = DataLayer.man.taBL.getByStatus((int)BatchStatus.NestRequested, "", 0).Count; - // ora controllo anche offline orders... - int numOffOrd = DataLayer.man.taOffOL.getRunning().Count; - // ora la somma di tutti DEVE essere zero... - answ = ((numEst + numNest + numOffOrd) == 0); - return answ; + get + { + return ComLib.canStartNew; + } } } diff --git a/NKC_WF/WebUserControls/cmp_unloadSmart.ascx.cs b/NKC_WF/WebUserControls/cmp_unloadSmart.ascx.cs index 1a846fb..43f9796 100644 --- a/NKC_WF/WebUserControls/cmp_unloadSmart.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_unloadSmart.ascx.cs @@ -714,10 +714,13 @@ namespace NKC_WF.WebUserControls // resetto item selezionato... DataLayer.man.taIL.updateStatus(itemIdSelected, 990, PlaceId); lgInfo($"cmp_unloadSmart | SCRAP | Status --> 990 | itemIdSelected: {itemIdSelected} | PlaceId: {PlaceId}"); + resetSelection(false); + showItemDetail(false, null, false); lblMessage.Text = traduci("PartScrapped"); - // rirprocesso barcode... + // riprocesso barcode... lastCmd = lastValidCmd; processLastCmd(false); + resetButtons(); } } } \ No newline at end of file