diff --git a/AppData/ComLib.cs b/AppData/ComLib.cs index fdcf5cb..e585209 100644 --- a/AppData/ComLib.cs +++ b/AppData/ComLib.cs @@ -2580,7 +2580,7 @@ namespace AppData foreach (var currItem in OrdExtList) { // tempo in sec --> divido 60 - DLMan.taOLT.insert(BatchId, currItem.OrderId, currItem.OrderExtCode, currItem.NumBin, currItem.NumCart, currItem.NumPart, (currItem.TotTime / 60)); + DLMan.taOLT.insert(BatchId, BatchId, currItem.OrderId, currItem.OrderExtCode, currItem.NumBin, currItem.NumCart, currItem.NumPart, (currItem.TotTime / 60)); } } diff --git a/AppData/DS_App.Designer.cs b/AppData/DS_App.Designer.cs index 6f5dd19..1663e71 100644 --- a/AppData/DS_App.Designer.cs +++ b/AppData/DS_App.Designer.cs @@ -39379,6 +39379,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE this._commandCollection[5].CommandType = global::System.Data.CommandType.StoredProcedure; this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@BatchID", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@AncestBatchID", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@OrdID", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@OrderExtCode", global::System.Data.SqlDbType.NVarChar, 250, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@EstNumBin", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); @@ -39525,7 +39526,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] - public virtual int insert(global::System.Nullable BatchID, global::System.Nullable OrdID, string OrderExtCode, global::System.Nullable EstNumBin, global::System.Nullable EstNumCart, global::System.Nullable EstNumPart, global::System.Nullable EstProcTime) { + public virtual int insert(global::System.Nullable BatchID, global::System.Nullable AncestBatchID, global::System.Nullable OrdID, string OrderExtCode, global::System.Nullable EstNumBin, global::System.Nullable EstNumCart, global::System.Nullable EstNumPart, global::System.Nullable EstProcTime) { global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[5]; if ((BatchID.HasValue == true)) { command.Parameters[1].Value = ((int)(BatchID.Value)); @@ -39533,42 +39534,48 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE else { command.Parameters[1].Value = global::System.DBNull.Value; } - if ((OrdID.HasValue == true)) { - command.Parameters[2].Value = ((int)(OrdID.Value)); + if ((AncestBatchID.HasValue == true)) { + command.Parameters[2].Value = ((int)(AncestBatchID.Value)); } else { command.Parameters[2].Value = global::System.DBNull.Value; } - if ((OrderExtCode == null)) { + if ((OrdID.HasValue == true)) { + command.Parameters[3].Value = ((int)(OrdID.Value)); + } + else { command.Parameters[3].Value = global::System.DBNull.Value; } - else { - command.Parameters[3].Value = ((string)(OrderExtCode)); - } - if ((EstNumBin.HasValue == true)) { - command.Parameters[4].Value = ((int)(EstNumBin.Value)); - } - else { + if ((OrderExtCode == null)) { command.Parameters[4].Value = global::System.DBNull.Value; } - if ((EstNumCart.HasValue == true)) { - command.Parameters[5].Value = ((int)(EstNumCart.Value)); + else { + command.Parameters[4].Value = ((string)(OrderExtCode)); + } + if ((EstNumBin.HasValue == true)) { + command.Parameters[5].Value = ((int)(EstNumBin.Value)); } else { command.Parameters[5].Value = global::System.DBNull.Value; } - if ((EstNumPart.HasValue == true)) { - command.Parameters[6].Value = ((int)(EstNumPart.Value)); + if ((EstNumCart.HasValue == true)) { + command.Parameters[6].Value = ((int)(EstNumCart.Value)); } else { command.Parameters[6].Value = global::System.DBNull.Value; } - if ((EstProcTime.HasValue == true)) { - command.Parameters[7].Value = ((double)(EstProcTime.Value)); + if ((EstNumPart.HasValue == true)) { + command.Parameters[7].Value = ((int)(EstNumPart.Value)); } else { command.Parameters[7].Value = global::System.DBNull.Value; } + if ((EstProcTime.HasValue == true)) { + command.Parameters[8].Value = ((double)(EstProcTime.Value)); + } + else { + command.Parameters[8].Value = global::System.DBNull.Value; + } global::System.Data.ConnectionState previousConnectionState = command.Connection.State; if (((command.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { diff --git a/AppData/DS_App.xsd b/AppData/DS_App.xsd index 98e3bf1..15dccc4 100644 --- a/AppData/DS_App.xsd +++ b/AppData/DS_App.xsd @@ -267,7 +267,7 @@ FROM v_BatchList - + dbo.stp_Batch_refuseNesting @@ -279,7 +279,7 @@ FROM v_BatchList - + dbo.stp_Batch_resetAllNesting @@ -290,7 +290,7 @@ FROM v_BatchList - + dbo.stp_Batch_resetPartUnValid @@ -300,7 +300,7 @@ FROM v_BatchList - + dbo.stp_zzz_resetProdCall @@ -310,7 +310,7 @@ FROM v_BatchList - + dbo.stp_Batch_resetTree @@ -321,7 +321,7 @@ FROM v_BatchList - + dbo.stp_Batch_updateSchedPrior @@ -333,7 +333,7 @@ FROM v_BatchList - + dbo.stp_Batch_updateStatus @@ -3331,6 +3331,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE + @@ -3376,7 +3377,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3434,7 +3435,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3459,7 +3460,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3514,7 +3515,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3587,7 +3588,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3656,7 +3657,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3689,7 +3690,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3761,7 +3762,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3780,7 +3781,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3811,7 +3812,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3819,7 +3820,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3836,7 +3837,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3845,7 +3846,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3876,7 +3877,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3884,7 +3885,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3900,7 +3901,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3908,7 +3909,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3936,7 +3937,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3972,7 +3973,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3988,7 +3989,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -3998,7 +3999,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4015,7 +4016,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4028,7 +4029,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4077,7 +4078,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4106,7 +4107,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4148,7 +4149,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4259,7 +4260,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4322,7 +4323,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4367,7 +4368,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4393,7 +4394,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4486,7 +4487,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4549,7 +4550,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4608,7 +4609,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4657,7 +4658,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4696,7 +4697,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4749,7 +4750,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4766,7 +4767,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4779,7 +4780,7 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - + @@ -4950,17 +4951,17 @@ SELECT ItemExtCode, BatchID, EvalDate, EstimTime, Status FROM FileValidation WHE - - - - - - - - - - - + + + + + + + + + + + \ No newline at end of file diff --git a/AppData/DS_App.xss b/AppData/DS_App.xss index 1ef0cd2..05a7ed4 100644 --- a/AppData/DS_App.xss +++ b/AppData/DS_App.xss @@ -41,9 +41,9 @@ - + - + diff --git a/Jenkinsfile b/Jenkinsfile index 98e8dc3..7d72197 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -11,7 +11,7 @@ pipeline { steps { /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { - withEnv(['NEXT_BUILD_NUMBER=402']) { + withEnv(['NEXT_BUILD_NUMBER=403']) { // env.versionNumber = VersionNumber(versionNumberString : '2.0.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true) env.versionNumber = VersionNumber(versionNumberString : '2.0.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') env.versionNumberBeta = VersionNumber(versionNumberString : '1.3.${BUILD_DATE_FORMATTED, "yyMM"}-beta.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') diff --git a/NKC_WF/Content/Site.css b/NKC_WF/Content/Site.css index d6b967f..33974c0 100644 --- a/NKC_WF/Content/Site.css +++ b/NKC_WF/Content/Site.css @@ -42,6 +42,31 @@ body { font-family: 'Roboto Condensed', sans-serif; font-size: 0.9rem; } + .smallTable { + font-size: 0.7rem; + font-family: 'Open Sans Condensed', sans-serif; + } +} +.GridPager a, +.GridPager span { + display: block; + height: 1.5em; + min-width: 1.1em; + text-align: center; + text-decoration: none; +} +.GridPager a { + background-color: #f5f5f5; + color: #969696; + /*border-top: 1px solid #969696; + border-bottom: 1px solid #969696;*/ +} +.GridPager span { + background-color: #A1DCF2; + color: #000; + /*border-top: 1px solid #3AC0F2; + border-bottom: 1px solid #3AC0F2;*/ + font-weight: bold; } .border-thick { border-width: 3px !important; @@ -88,8 +113,8 @@ body { .smallText { font-size: 0.8em; } -/* Override the default bootstrap behavior where horizontal description lists - will truncate terms that are too long to fit in the left column +/* Override the default bootstrap behavior where horizontal description lists + will truncate terms that are too long to fit in the left column */ .dl-horizontal dt { white-space: normal; diff --git a/NKC_WF/Content/Site.less b/NKC_WF/Content/Site.less index 3d7b304..ea07ed1 100644 --- a/NKC_WF/Content/Site.less +++ b/NKC_WF/Content/Site.less @@ -13,7 +13,6 @@ body { padding-right: 15px; } - .textCondens { /*font-family: 'Roboto Condensed', sans-serif;*/ font-family: 'Open Sans Condensed', sans-serif; @@ -52,12 +51,37 @@ body { font-family: 'Roboto Condensed', sans-serif; font-size: 0.9rem; } + .smallTable { font-size: 0.7rem; font-family: 'Open Sans Condensed', sans-serif; } } +.GridPager a, +.GridPager span { + display: block; + height: 1.5em; + min-width: 1.1em; + text-align: center; + text-decoration: none; +} + +.GridPager a { + background-color: #f5f5f5; + color: #969696; + /*border-top: 1px solid #969696; + border-bottom: 1px solid #969696;*/ +} + +.GridPager span { + background-color: #A1DCF2; + color: #000; + /*border-top: 1px solid #3AC0F2; + border-bottom: 1px solid #3AC0F2;*/ + font-weight: bold; +} + @borderThick: 3px; .border-thick { @@ -113,8 +137,8 @@ body { font-size: 0.8em; } -/* Override the default bootstrap behavior where horizontal description lists - will truncate terms that are too long to fit in the left column +/* Override the default bootstrap behavior where horizontal description lists + will truncate terms that are too long to fit in the left column */ .dl-horizontal dt { white-space: normal; @@ -178,7 +202,6 @@ body { @blSCut: 1rem; - .shortcuts { text-align: center; } @@ -282,7 +305,6 @@ body { color: #666; } - @media (max-width: 992px) { .shortcuts .shortcut { min-width: @blSCut * 8; diff --git a/NKC_WF/Content/Site.min.css b/NKC_WF/Content/Site.min.css index 6af8dea..d10a985 100644 --- a/NKC_WF/Content/Site.min.css +++ b/NKC_WF/Content/Site.min.css @@ -1 +1 @@ -body{font-family:'Roboto Condensed',sans-serif;padding-top:50px;padding-bottom:20px;}.body-content{padding-left:15px;padding-right:15px;}.textCondens{font-family:'Open Sans Condensed',sans-serif;}.textNormal{font-family:'Roboto',sans-serif;}.textBig{font-size:1.5em;}@media screen and (min-width:768px){.jumbotron{margin-top:20px;}.body-content{padding:0;}body{font-family:'Roboto',sans-serif;}}@media(max-width:992px){.container{width:100%;}body{font-family:'Roboto Condensed',sans-serif;font-size:.9rem;}.smallTable{font-size:.7rem;font-family:'Open Sans Condensed',sans-serif;}}.border-thick{border-width:3px !important;}.flashColor{border:3px solid #00f;-webkit-animation-name:blueFlash;-webkit-animation-duration:.5s;-webkit-animation-timing-function:linear;-webkit-animation-delay:0s;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:alternate;animation-name:blueFlash;animation-duration:.5s;animation-timing-function:linear;animation-delay:0s;animation-iteration-count:infinite;animation-direction:alternate;}@-webkit-keyframes blueFlash{0%{border-color:#c4dbff;}25%{border-color:#9dc4ff;}50%{border-color:#5ca5ff;}75%{border-color:#1b82ff;}100%{border-color:#005ccc;}}.bigText{font-size:1.3em;}.smallText{font-size:.8em;}.dl-horizontal dt{white-space:normal;}.deleted{text-decoration:line-through;}.padZL{padding-left:.2em;}.padZR{padding-right:.2em;}.padZRL{padding-left:.2em;padding-right:.2em;}.colAlt{color:#c93;}.fontBig{font-size:2em;}.tNote{color:#8a8a8a;font-style:italic;}.tNoWrap{white-space:nowrap;}.navbar{min-height:0;color:#696969;}.pagination{margin:5px 0;}.pageSelDD{width:6em;}.zeroWidth{width:0;}.shortcuts{text-align:center;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:.66666667rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:.25rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:992px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}} \ No newline at end of file +body{font-family:'Roboto Condensed',sans-serif;padding-top:50px;padding-bottom:20px;}.body-content{padding-left:15px;padding-right:15px;}.textCondens{font-family:'Open Sans Condensed',sans-serif;}.textNormal{font-family:'Roboto',sans-serif;}.textBig{font-size:1.5em;}@media screen and (min-width:768px){.jumbotron{margin-top:20px;}.body-content{padding:0;}body{font-family:'Roboto',sans-serif;}}@media(max-width:992px){.container{width:100%;}body{font-family:'Roboto Condensed',sans-serif;font-size:.9rem;}.smallTable{font-size:.7rem;font-family:'Open Sans Condensed',sans-serif;}}.GridPager a,.GridPager span{display:block;height:1.5em;min-width:1.1em;text-align:center;text-decoration:none;}.GridPager a{background-color:#f5f5f5;color:#969696;}.GridPager span{background-color:#a1dcf2;color:#000;font-weight:bold;}.border-thick{border-width:3px !important;}.flashColor{border:3px solid #00f;-webkit-animation-name:blueFlash;-webkit-animation-duration:.5s;-webkit-animation-timing-function:linear;-webkit-animation-delay:0s;-webkit-animation-iteration-count:infinite;-webkit-animation-direction:alternate;animation-name:blueFlash;animation-duration:.5s;animation-timing-function:linear;animation-delay:0s;animation-iteration-count:infinite;animation-direction:alternate;}@-webkit-keyframes blueFlash{0%{border-color:#c4dbff;}25%{border-color:#9dc4ff;}50%{border-color:#5ca5ff;}75%{border-color:#1b82ff;}100%{border-color:#005ccc;}}.bigText{font-size:1.3em;}.smallText{font-size:.8em;}.dl-horizontal dt{white-space:normal;}.deleted{text-decoration:line-through;}.padZL{padding-left:.2em;}.padZR{padding-right:.2em;}.padZRL{padding-left:.2em;padding-right:.2em;}.colAlt{color:#c93;}.fontBig{font-size:2em;}.tNote{color:#8a8a8a;font-style:italic;}.tNoWrap{white-space:nowrap;}.navbar{min-height:0;color:#696969;}.pagination{margin:5px 0;}.pageSelDD{width:6em;}.zeroWidth{width:0;}.shortcuts{text-align:center;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:.66666667rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:.25rem 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:.5rem;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:992px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}} \ No newline at end of file diff --git a/NKC_WF/Controllers/BatchProcController.cs b/NKC_WF/Controllers/BatchProcController.cs index 1be91a2..90af590 100644 --- a/NKC_WF/Controllers/BatchProcController.cs +++ b/NKC_WF/Controllers/BatchProcController.cs @@ -402,26 +402,6 @@ namespace NKC_WF.Controllers } string cadBasePath = $"{memLayer.ML.CRS("nestBasePath")}{dxfFolder}/"; DLMan.taIL.updateCadPath(cadBasePath, rispStima.BatchID, false); - // verifico IN CASO di validazione andata a buon fine --> valorizzo tabella! - if (bStatus > 7) - { - if (isValidation) - { - // recupero ordine da batch - if (tabOrd.Count > 0) - { - DLMan.taIV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime); - } - } - else if (isTesting) - { - // recupero ordine da batch - if (tabOrd.Count > 0) - { - DLMan.taFV.upsertQuery(tabOrd[0].OrderExtCode, rispStima.BatchID, bStatus, rispStima.EstimatedWorktime); - } - } - } // registro OK answ = "OK"; } diff --git a/NKC_WF/NKC_WF.csproj b/NKC_WF/NKC_WF.csproj index f3c1428..b1ab65e 100644 --- a/NKC_WF/NKC_WF.csproj +++ b/NKC_WF/NKC_WF.csproj @@ -344,6 +344,7 @@ + diff --git a/NKC_WF/NLog.config b/NKC_WF/NLog.config new file mode 100644 index 0000000..6f8be8c --- /dev/null +++ b/NKC_WF/NLog.config @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/NKC_WF/Web.config b/NKC_WF/Web.config index b6c9731..9944203 100644 --- a/NKC_WF/Web.config +++ b/NKC_WF/Web.config @@ -6,418 +6,428 @@ -
-
-
-
+
+
+
+
- - + + - + - + - + - + - - - + + + - - - - - - + + + + + + - - - - - - - + + + + + + + - - + + - - - - - - + + + + + + - - - + + + - + - - - + + + - - + + - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - + + + + + - + - - - - + + + + - - - - - + + + + + @@ -425,21 +435,21 @@ See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for more information on remote access and securing ELMAH. --> - - + + - + - + richiede salvataggio needSave = true; + // salvo tempo calcolo + stopWatch.Stop(); + Log.Instance.Info($"Rebalance executed | valRatio: {valRatio} | maxDepth: {maxDepth} | elapsed ms: {stopWatch.ElapsedMilliseconds}"); } fixRatio(); } @@ -341,14 +340,14 @@ namespace NKC_WF.WebUserControls /// Cerca il set con lo score migliore calcolando x subset della lista ordinata /// /// Lista ordinata oggetti (INT) + valore - /// Valore desiderato (comeSOMMA) + /// Valore desiderato (come SOMMA) + /// Massima profondità ricorsione accettata (x evitare loop infinito) /// - protected Dictionary findLocalMin(Dictionary OrderedList, double TargetVal) + protected Dictionary findLocalMin(Dictionary OrderedList, double TargetVal, int maxDepth) { Dictionary answ = new Dictionary(); List Candidates = new List(); OrderSetSim CurrSimSet = new OrderSetSim(); - // parte dal valore (singolo) più piccolo tra quelli maggiori del target... se c'è... var OrdSup = OrderedList.Where(x => x.Value > TargetVal).OrderBy(x => x.Value); if (OrdSup != null && OrdSup.Any()) @@ -359,7 +358,6 @@ namespace NKC_WF.WebUserControls CurrSimSet.OrderSet.Add(currOrder.Key, currOrder.Value); Candidates.Add(CurrSimSet); } - // ora guardo gli elementi restanti.. se ci sono var OrdInf = OrderedList.Where(x => x.Value <= TargetVal).OrderByDescending(x => x.Value).ToDictionary(t => t.Key, t => t.Value); if (OrdInf != null && OrdInf.Any()) @@ -369,30 +367,61 @@ namespace NKC_WF.WebUserControls CurrSimSet.TargetValue = TargetVal; CurrSimSet.OrderSet.Add(currOrder.Key, currOrder.Value); Candidates.Add(CurrSimSet); + // prendo i restanti tranne il primo OrdInf.Remove(currOrder.Key); - // se rimane qualcosa... - if (OrdInf != null && OrdInf.Any()) + + // guardo i successivi che NON superano + corrente... + Dictionary TestOrderSetMinDelta = findStepMin(OrdInf, TargetVal - currOrder.Value); + TestOrderSetMinDelta.Add(currOrder.Key, currOrder.Value); + // verifico se migliorativo... + if (TestOrderSetMinDelta.Count > 0) { - // calcolo il minimo locale nei 2 casi, da soli - Dictionary TestOrderSet01 = findLocalMin(OrdInf, TargetVal); - if (TestOrderSet01.Count > 0) + OrderSetSim CurrSet = new OrderSetSim(); + CurrSet.TargetValue = TargetVal - currOrder.Value; + CurrSet.OrderSet = TestOrderSetMinDelta; + Candidates.Add(CurrSet); + } + + // solo successivi che non superano + Dictionary TestOrderSetMin = findStepMin(OrdInf, TargetVal); + // verifico se migliorativo... + if (TestOrderSetMin.Count > 0) + { + OrderSetSim CurrSet = new OrderSetSim(); + CurrSet.TargetValue = TargetVal - currOrder.Value; + CurrSet.OrderSet = TestOrderSetMin; + Candidates.Add(CurrSet); + } + + // se posso fare ricorsioni + if (maxDepth > 0) + { + maxDepth--; + + // se rimane qualcosa... + if (OrdInf != null && OrdInf.Any()) { - OrderSetSim CurrSet = new OrderSetSim(); - CurrSet.TargetValue = TargetVal; - CurrSet.OrderSet = TestOrderSet01; - Candidates.Add(CurrSet); - } - // ...e con il primo valore... - Dictionary TestOrderSet02 = findLocalMin(OrdInf, TargetVal - currOrder.Value); - TestOrderSet02.Add(currOrder.Key, currOrder.Value); - // verifico se migliorativo... - if (TestOrderSet02.Count > 0) - { - OrderSetSim CurrSet = new OrderSetSim(); - CurrSet.TargetValue = TargetVal - currOrder.Value; - CurrSet.OrderSet = TestOrderSet02; - Candidates.Add(CurrSet); + // calcolo il minimo locale nei 2 casi, da soli + Dictionary TestOrderSet01 = findLocalMin(OrdInf, TargetVal, maxDepth); + if (TestOrderSet01.Count > 0) + { + OrderSetSim CurrSet = new OrderSetSim(); + CurrSet.TargetValue = TargetVal; + CurrSet.OrderSet = TestOrderSet01; + Candidates.Add(CurrSet); + } + // ...e con il primo valore... + Dictionary TestOrderSet02 = findLocalMin(OrdInf, TargetVal - currOrder.Value, maxDepth); + TestOrderSet02.Add(currOrder.Key, currOrder.Value); + // verifico se migliorativo... + if (TestOrderSet02.Count > 0) + { + OrderSetSim CurrSet = new OrderSetSim(); + CurrSet.TargetValue = TargetVal - currOrder.Value; + CurrSet.OrderSet = TestOrderSet02; + Candidates.Add(CurrSet); + } } } } @@ -401,11 +430,32 @@ namespace NKC_WF.WebUserControls { answ = Candidates.OrderBy(x => x.IndexScore).FirstOrDefault().OrderSet; } - // calcolo il minimo e lo restituisco... return answ; } + /// + /// Cerca il set della lista ordinata <= target val + /// + /// Lista ordinata oggetti (INT) + valore + /// Valore desiderato (come SOMMA) + /// + protected Dictionary findStepMin(Dictionary OrderedList, double TargetVal) + { + double CurrVal = 0; + Dictionary answ = new Dictionary(); + foreach (var item in OrderedList) + { + CurrVal += item.Value; + if (CurrVal <= TargetVal) + { + answ.Add(item.Key, item.Value); + } + } + // restituisco set minore... + return answ; + } + protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) diff --git a/NKC_WF/WebUserControls/cmp_batchList.ascx b/NKC_WF/WebUserControls/cmp_batchList.ascx index aec6711..a309cab 100644 --- a/NKC_WF/WebUserControls/cmp_batchList.ascx +++ b/NKC_WF/WebUserControls/cmp_batchList.ascx @@ -16,7 +16,7 @@
- + <%: traduci("ShowSplitBatch") %> <%: traduci("FilterStatus") %> diff --git a/NKC_WF/WebUserControls/cmp_batchList.ascx.cs b/NKC_WF/WebUserControls/cmp_batchList.ascx.cs index 7e6c0b2..e719de2 100644 --- a/NKC_WF/WebUserControls/cmp_batchList.ascx.cs +++ b/NKC_WF/WebUserControls/cmp_batchList.ascx.cs @@ -26,6 +26,17 @@ namespace NKC_WF.WebUserControls } } + /// + /// Status corrente del batch + /// + protected BatchStatus CurrBatchStatus + { + get + { + return ComLib.BStatus(BatchIdSel); + } + } + protected int currSelRow { get @@ -166,13 +177,16 @@ namespace NKC_WF.WebUserControls private void fixDetails() { - divDetail.Visible = currSelRow >= 0; lastSelRow = currSelRow; - // recupero BatchId selezionato - cmp_batchDetail.BatchId = 0; - cmp_batchDetail.BatchId = BatchIdSel; - cmp_batchDetail.doUpdate(); - updPanelDetail.Update(); + divDetail.Visible = currSelRow >= 0; + if (divDetail.Visible) + { + // recupero BatchId selezionato + cmp_batchDetail.BatchId = 0; + cmp_batchDetail.BatchId = BatchIdSel; + cmp_batchDetail.doUpdate(); + updPanelDetail.Update(); + } } private void resetSelezione() @@ -190,6 +204,12 @@ namespace NKC_WF.WebUserControls #region Protected Methods + protected void chkShowSplit_CheckedChanged(object sender, EventArgs e) + { + // deseleziono... + resetSelezione(); + } + protected void ddlStatus_SelectedIndexChanged(object sender, EventArgs e) { checkFixOds(); @@ -359,7 +379,12 @@ namespace NKC_WF.WebUserControls checkFixOds(); grView.DataBind(); currSelRow = lastSelRow; - fixDetails(); + var currBStatus = CurrBatchStatus; + // solo se il batch è in fase di stima/nesting... + if (currBStatus == BatchStatus.NestRequested || currBStatus == BatchStatus.EstimationRequested) + { + fixDetails(); + } } /// diff --git a/NKC_WF/WebUserControls/cmp_orderExtList.ascx b/NKC_WF/WebUserControls/cmp_orderExtList.ascx index 8b56c0b..dfc288a 100644 --- a/NKC_WF/WebUserControls/cmp_orderExtList.ascx +++ b/NKC_WF/WebUserControls/cmp_orderExtList.ascx @@ -1,6 +1,9 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_orderExtList.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_orderExtList" %> - + + + +
No record @@ -9,7 +12,7 @@ - + diff --git a/NKC_WF/site/OrderManager.aspx.cs b/NKC_WF/site/OrderManager.aspx.cs index 40245c7..4e76478 100644 --- a/NKC_WF/site/OrderManager.aspx.cs +++ b/NKC_WF/site/OrderManager.aspx.cs @@ -217,21 +217,30 @@ namespace NKC_WF { localPath = item.CadFilePath.Replace(cadBasePath, srvCadBasePath); } + // fix slash/backslash + localPath = localPath.Replace("/", "\\"); // verifico - fileOk = System.IO.File.Exists(localPath); + fileOk = File.Exists(localPath); if (!fileOk) { - DLMan.taEL.insertQuery(DateTime.Now, "I.1", $"B.{batchID}", $"{item.ItemExtCode}.dxf", $"{traduci("ErrOrderDxfNotFound")} {localPath} | part {item.ItemExtCode} | {item.ItemDesc}"); + string errMsg = $"{traduci("ErrOrderDxfNotFound")} {localPath} | part {item.ItemExtCode} | {item.ItemDesc}"; + DLMan.taEL.insertQuery(DateTime.Now, "I.1", $"B.{batchID}", $"{item.ItemExtCode}.dxf", errMsg); allOk = false; missingDxfList.Add(item.ItemExtCode); + logger.lg.scriviLog(errMsg); } } } } } - catch - { } - // cerco errori preesistenti + catch (Exception exc) + { + allOk = false; + string errMsg = $"Excetion on doValidations fot BatchId: {batchID}{Environment.NewLine}{exc}"; + logger.lg.scriviLog(errMsg); + DLMan.taEL.insertQuery(DateTime.Now, "I.2", $"B.{batchID}", "doValidations", errMsg); + } + // risultato return allOk; }