Merge branch 'develop'
This commit is contained in:
@@ -400,7 +400,6 @@
|
||||
<Content Include="WebUserControls\cmp_offlineOrders.ascx" />
|
||||
<Content Include="WebUserControls\cmp_offOrderDetail.ascx" />
|
||||
<Content Include="WebUserControls\cmp_OOLI_detail.ascx" />
|
||||
<Content Include="WebUserControls\cmp_orderStatus.ascx" />
|
||||
<Content Include="WebUserControls\cmp_scrapList.ascx" />
|
||||
<Content Include="WebUserControls\cmp_slider.ascx" />
|
||||
<Content Include="WebUserControls\cmp_stackBuilding.ascx" />
|
||||
@@ -948,13 +947,6 @@
|
||||
<Compile Include="WebUserControls\cmp_OOLI_detail.ascx.designer.cs">
|
||||
<DependentUpon>cmp_OOLI_detail.ascx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="WebUserControls\cmp_orderStatus.ascx.cs">
|
||||
<DependentUpon>cmp_orderStatus.ascx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="WebUserControls\cmp_orderStatus.ascx.designer.cs">
|
||||
<DependentUpon>cmp_orderStatus.ascx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="WebUserControls\cmp_scrapList.ascx.cs">
|
||||
<DependentUpon>cmp_scrapList.ascx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
|
||||
<appSettings>
|
||||
<add key="environment" value="DEV" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
|
||||
<!--conf dati locali-->
|
||||
<add key="_SqlCopyDir" value="\\sql2016dev\Share\NKC\" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
|
||||
<add key="_SqlImportDir" value="c:\Share\NKC\" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
|
||||
|
||||
+2
-3
@@ -13,7 +13,7 @@
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<system.web>
|
||||
<compilation targetFramework="4.6.2" debug="true"/>
|
||||
<compilation targetFramework="4.6.2"/>
|
||||
<httpRuntime targetFramework="4.6.2"/>
|
||||
<pages>
|
||||
<namespaces>
|
||||
@@ -43,12 +43,11 @@
|
||||
<add key="intUpdatePagina_ms" value="120000"/>
|
||||
<add key="appName" value="NKC"/>
|
||||
<add key="CodModulo" value="NKC"/>
|
||||
<add key="environment" value="DEV"/>
|
||||
<add key="copyRight" value="Egaltech & Steamware "/>
|
||||
<add key="authSenzaDominio" value="true"/>
|
||||
<add key="_safePages" value="Test#Home#Default"/>
|
||||
<add key="BaseUrl" value="http://IIS02/NKC"/>
|
||||
<!--area DEV/testing-->
|
||||
<add key="enableSimProd" value="true"/>
|
||||
<!--area logger-->
|
||||
<add key="_logDir" value="~/logs/"/>
|
||||
<add key="enableDumpDiag" value="false"/>
|
||||
|
||||
@@ -9,22 +9,21 @@
|
||||
<ItemTemplate>
|
||||
<div runat="server" id="divBlock" class='<%# "row small alert border-thick px-0 " + getCss(Eval("ShStatus")) %>' role="alert">
|
||||
<div class="col-12">
|
||||
<h4>
|
||||
<asp:Label runat="server" ID="lblTitle" Text='<%# getTitle(Eval("ShStatus")) %>' /></h4>
|
||||
<h5><asp:Label runat="server" ID="lblTitle" Text='<%# getTitle(Eval("ShStatus")) %>' CssClass="text-uppercase" /></h5>
|
||||
</div>
|
||||
<div class="col-8 text-left">
|
||||
<b>
|
||||
<asp:Label ID="MatExtCodeLabel" runat="server" Text='<%# Eval("MatExtCode") %>' /></b>
|
||||
</div>
|
||||
<div class="col-4 text-right">
|
||||
Stack: <b>
|
||||
stack: <b>
|
||||
<asp:Label ID="StackIndexLabel" runat="server" Text='<%# Eval("StackIndex") %>' /></b>
|
||||
</div>
|
||||
<div class="col-8 text-left">
|
||||
<asp:Label ID="MatDescLabel" runat="server" Text='<%# Eval("MatDesc") %>' />
|
||||
</div>
|
||||
<div class="col-4 text-right">
|
||||
Sheet: <b>
|
||||
sheet: <b>
|
||||
<asp:Label ID="SheetIndexLabel" runat="server" Text='<%# Eval("SheetIndex") %>' /></b>
|
||||
</div>
|
||||
<div class="col-4 text-center">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
<asp:FormView ID="frmView" runat="server" DataKeyNames="BatchID" DataSourceID="ods" Width="100%">
|
||||
<ItemTemplate>
|
||||
<div class="row">
|
||||
<div class="row small">
|
||||
<div class="col-9">
|
||||
<h3>Batch Detail</h3>
|
||||
</div>
|
||||
@@ -18,17 +18,11 @@
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="BatchIDLabel" class="col-sm-4 col-form-label py-0">Date</label>
|
||||
<label for="BatchIDLabel" class="col-sm-4 col-form-label py-0">Name</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label ID="TaktLabel" runat="server" Text='<%# Eval("Takt") %>' />
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="lblNumOrders" class="col-sm-4 col-form-label py-0">Num KIT</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label ID="lblNumOrders" runat="server" Text='<%# Eval("NumOrders") %>' />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
@@ -37,26 +31,12 @@
|
||||
<asp:Label ID="StatusLabel" runat="server" Text='<%# BStatus(Eval("Status")) %>' />
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="lblNumItems" class="col-sm-4 col-form-label py-0">Num Items</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label ID="lblNumItems" runat="server" Text='<%# Eval("NumItems") %>' />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="NestingReqLabel" class="col-sm-4 col-form-label py-0">Nesting Req</label>
|
||||
<label for="lblNumOrders" class="col-sm-4 col-form-label py-0"># KIT/Parts</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label ID="NestingReqLabel" runat="server" Text='<%# Eval("NestingReq") %>' />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="NestingRespLabel" class="col-sm-4 col-form-label py-0">Nesting Compl</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label ID="NestingRespLabel" runat="server" Text='<%# Eval("NestingResp") %>' />
|
||||
<asp:Label ID="lblNumOrders" runat="server" Text='<%# Eval("NumOrders") %>' />/<asp:Label ID="Label2" runat="server" Text='<%# Eval("NumItems") %>' />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -80,8 +60,24 @@
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12 small text-secondary">
|
||||
<div class="row small text-dark">
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="TotalTimeLabel" class="col-sm-4 col-form-label py-0">Mat OEE</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label runat="server" ID="lblMatDet" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group row py-0 mt-0 mb-1">
|
||||
<label for="TotalTimeLabel" class="col-sm-4 col-form-label py-0">Prod</label>
|
||||
<div class="col-sm-8 font-weight-bold">
|
||||
<asp:Label runat="server" ID="lblProdDet" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 ">
|
||||
<asp:Label runat="server" ID="lblTestJson" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -28,8 +28,8 @@ namespace NKC_WF.WebUserControls
|
||||
// cerco da lista salvataggi Estim/Nest...
|
||||
var estimAnsw = ComLib.man.getEstAnsw(value);
|
||||
var nestAnsw = ComLib.man.getNestAnsw(value);
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.AppendLine("DETAIL INFO:");
|
||||
StringBuilder sbDebug = new StringBuilder();
|
||||
sbDebug.AppendLine("Debug Info:");
|
||||
// elenchi x ricerca duplicati
|
||||
List<int> partListEstim = new List<int>();
|
||||
List<int> partListEstimDupl = new List<int>();
|
||||
@@ -55,17 +55,17 @@ namespace NKC_WF.WebUserControls
|
||||
{ }
|
||||
try
|
||||
{
|
||||
sb.AppendLine($"ESTIM: EnvNum: {estimAnsw.EnvNum} | Worktime: {estimAnsw.EstimatedWorktime / 60:N2} min | Processing Runtime {estimAnsw.ProcessingRuntime / 60:N2} min | Parts #: {estimAnsw.PartList.Count} | Distinct Part # {partListEstim.Count}");
|
||||
sbDebug.AppendLine($"ESTIM: EnvNum: {estimAnsw.EnvNum} | Worktime: {estimAnsw.EstimatedWorktime / 60:N2} min | Processing Runtime {estimAnsw.ProcessingRuntime / 60:N2} min | Parts #: {estimAnsw.PartList.Count} | Distinct Part # {partListEstim.Count}");
|
||||
// se ho duplicati indico:
|
||||
if (partListEstimDupl.Count > 0)
|
||||
{
|
||||
sb.AppendLine("---------------------");
|
||||
sb.AppendLine($"ESTIM: FOUND {partListEstimDupl.Count} duplicate:");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
sbDebug.AppendLine($"ESTIM: FOUND {partListEstimDupl.Count} duplicate:");
|
||||
foreach (var partId in partListEstimDupl)
|
||||
{
|
||||
sb.AppendLine($"{partId}");
|
||||
sbDebug.AppendLine($"{partId}");
|
||||
}
|
||||
sb.AppendLine("---------------------");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
}
|
||||
}
|
||||
catch
|
||||
@@ -143,54 +143,56 @@ namespace NKC_WF.WebUserControls
|
||||
double avgRatio = workRatio.Average();
|
||||
double minRatio = workRatio.Min();
|
||||
double maxRatio = workRatio.Max();
|
||||
sb.AppendLine($"NEST: EnvNum: {nestAnsw.EnvNum}");
|
||||
sb.AppendLine($" - Worktime: <b>{nestAnsw.EstimatedWorktime / 60:N2}</b> min | Processing Runtime <b>{nestAnsw.ProcessingRuntime / 60:N2}</b> min | Materials: <b>{materialsList.Count}</b> ");
|
||||
sb.AppendLine($" - Bunks #: <b>{nestAnsw.BunkList.Count}</b> | Sheets #: <b>{totSheet}</b> | Carts #: <b>{nestAnsw.CartList.Count}</b> | Bins #: <b>{nestAnsw.BinList.Count}</b> | Kits #: <b>{totKit}</b> | Parts #: <b>{totPartNum}</b>");
|
||||
sb.AppendLine($" - OEE: <b>{avgRatio:P1}</b> (min: <b>{minRatio:P1}</b> --> MAX: <b>{maxRatio:P1}</b>)");
|
||||
sbDebug.AppendLine($"NEST: EnvNum: {nestAnsw.EnvNum} | Worktime: {nestAnsw.EstimatedWorktime / 60:N2} min | Processing Runtime {nestAnsw.ProcessingRuntime / 60:N2} min");
|
||||
lblMatDet.Text = $"avg: <b>{avgRatio:P1}</b> (<b>{minRatio:P1}</b> → <b>{maxRatio:P1}</b>) | {materialsList.Count} matetials";
|
||||
lblProdDet.Text = $"Bunks: <b>{nestAnsw.BunkList.Count}</b> | Sheets: <b>{totSheet}</b> | Carts: <b>{nestAnsw.CartList.Count}</b> | Bins: <b>{nestAnsw.BinList.Count}</b>";
|
||||
// se ho duplicati indico:
|
||||
if (partListNestDupl.Count > 0)
|
||||
{
|
||||
sb.AppendLine("---------------------");
|
||||
sb.AppendLine($"NEST: FOUND {partListNestDupl.Count} duplicate:");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
sbDebug.AppendLine($"NEST: FOUND {partListNestDupl.Count} duplicate:");
|
||||
foreach (var partId in partListNestDupl)
|
||||
{
|
||||
sb.AppendLine($"{partId}");
|
||||
sbDebug.AppendLine($"{partId}");
|
||||
}
|
||||
sb.AppendLine("---------------------");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
}
|
||||
// s enon corrispondono
|
||||
if (partListEstim.Count != partListNest.Count)
|
||||
{
|
||||
sb.AppendLine("---------------------");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
if (partListEstim.Count > partListNest.Count)
|
||||
{
|
||||
sb.AppendLine($"EST OK | NEST missing:");
|
||||
sbDebug.AppendLine($"EST OK | NEST missing:");
|
||||
foreach (var partId in partListEstim)
|
||||
{
|
||||
if (!partListNest.Contains(partId))
|
||||
{
|
||||
sb.AppendLine($"{partId}");
|
||||
sbDebug.AppendLine($"{partId}");
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine($"EST missing | NEST OK:");
|
||||
sbDebug.AppendLine($"EST missing | NEST OK:");
|
||||
foreach (var partId in partListNest)
|
||||
{
|
||||
if (!partListEstim.Contains(partId))
|
||||
{
|
||||
sb.AppendLine($"{partId}");
|
||||
sbDebug.AppendLine($"{partId}");
|
||||
}
|
||||
}
|
||||
}
|
||||
sb.AppendLine("---------------------");
|
||||
sbDebug.AppendLine("---------------------");
|
||||
}
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
}
|
||||
lblTestJson.Text = sb.Replace("\r\n", "<br/>").ToString();
|
||||
if (memLayer.ML.CRS("environment") == "DEV")
|
||||
{
|
||||
lblTestJson.Text = "<hr/>" + sbDebug.Replace("\r\n", "<br/>").ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
get
|
||||
|
||||
@@ -41,6 +41,24 @@ namespace NKC_WF.WebUserControls
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblMatDet.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblMatDet;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblProdDet.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblProdDet;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblTestJson.
|
||||
/// </summary>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12 table-info" runat="server" id="divDetail">
|
||||
<div class="col-12 border border-info table-info rounded py-2" runat="server" id="divDetail">
|
||||
<uc1:cmp_batchDetail runat="server" ID="cmp_batchDetail" />
|
||||
</div>
|
||||
<div class="col-12">
|
||||
|
||||
@@ -3,13 +3,13 @@
|
||||
<asp:HiddenField runat="server" ID="hfWriteEnabled" />
|
||||
<div id="divFileUpl" runat="server" class="row">
|
||||
<div class="col-12 col-sm-3 col-md-2">
|
||||
<asp:Button ID="btnCancel" runat="server" Text="Annulla" OnClick="btnCancel_Click" CssClass="btn btn-warning form-control" />
|
||||
<asp:LinkButton ID="lbtCancel" runat="server" Text="Annulla" OnClick="btnCancel_Click" CssClass="btn btn-warning form-control"><%: traduci("cancel") %></asp:LinkButton>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-8">
|
||||
<asp:FileUpload ID="FileUpload1" runat="server" CssClass="form-control" />
|
||||
</div>
|
||||
<div class="col-12 col-sm-3 col-md-2">
|
||||
<asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="Upload" CssClass="btn btn-success form-control" />
|
||||
<asp:LinkButton ID="lbtUpload" runat="server" Text="Upload" OnClick="Upload" CssClass="btn btn-success form-control" ><%: traduci("doUpload") %></asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
<div id="divNewEdit" runat="server" class="row">
|
||||
|
||||
@@ -160,7 +160,7 @@ namespace NKC_WF.WebUserContols
|
||||
protected void btnAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
fisVisFU(true);
|
||||
btnUpload.Text = "Carica Nuovo";
|
||||
lbtUpload.Text = traduci("AddNew");
|
||||
}
|
||||
/// <summary>
|
||||
/// fix visibilità controllo file upload
|
||||
@@ -170,7 +170,7 @@ namespace NKC_WF.WebUserContols
|
||||
{
|
||||
divFileUpl.Visible = showAdd;
|
||||
btnAdd.Visible = !showAdd;
|
||||
btnCancel.Visible = showAdd;
|
||||
lbtCancel.Visible = showAdd;
|
||||
}
|
||||
|
||||
protected void btnCancel_Click(object sender, EventArgs e)
|
||||
|
||||
+70
-68
@@ -7,72 +7,74 @@
|
||||
// </generato automaticamente>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace NKC_WF.WebUserContols {
|
||||
|
||||
|
||||
public partial class cmp_fileUpload {
|
||||
|
||||
/// <summary>
|
||||
/// Controllo hfWriteEnabled.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.HiddenField hfWriteEnabled;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divFileUpl.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divFileUpl;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo btnCancel.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Button btnCancel;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo FileUpload1.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.FileUpload FileUpload1;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo btnUpload.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Button btnUpload;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divNewEdit.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divNewEdit;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo btnAdd.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton btnAdd;
|
||||
}
|
||||
namespace NKC_WF.WebUserContols
|
||||
{
|
||||
|
||||
|
||||
public partial class cmp_fileUpload
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Controllo hfWriteEnabled.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.HiddenField hfWriteEnabled;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divFileUpl.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divFileUpl;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtCancel.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtCancel;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo FileUpload1.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.FileUpload FileUpload1;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtUpload.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtUpload;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divNewEdit.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divNewEdit;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo btnAdd.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton btnAdd;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_menuTop.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_menuTop" %>
|
||||
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark text-light py-1">
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark text-light py-1 mb-1">
|
||||
<asp:LinkButton runat="server" ID="lbnUpdate" Text="---" OnClick="lbnUpdate_Click" CssClass="navbar-brand" ToolTip="Update + HOME">Sauder NKC <i class="fa fa-object-group" aria-hidden="true"></i></asp:LinkButton>
|
||||
<%--<a class="navbar-brand" href="#">Sauder NKC <i class="fa fa-object-group" aria-hidden="true"></i></a>--%>
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_orderStatus.ascx.cs" Inherits="NKC_WF.WebUserControls.cmp_orderStatus" %>
|
||||
|
||||
|
||||
<asp:UpdatePanel ID="updPanelStatus" runat="server">
|
||||
<ContentTemplate>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
Stiamo processando il batch <b><%: Session["BatchID"] %></b>
|
||||
<br />
|
||||
nome file: pippo.csv
|
||||
<br />
|
||||
Sono contenuti num XX Ordini per un totale di YY Items.
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<h3>
|
||||
<asp:Label runat="server" ID="lblStatusCode" /></h3>
|
||||
<asp:Label runat="server" ID="lblProcNotes" />
|
||||
</div>
|
||||
<div class="col-12" runat="server" id="divProgress" visible="false">
|
||||
<div class="progress">
|
||||
<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" style="width: 75%"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<dl class="row">
|
||||
<dd class="col-sm-6"><%: traduci("NestingRuntime") %></dd>
|
||||
<dt class="col-sm-6 text-right">
|
||||
<asp:Label runat="server" ID="lblNestingRuntime" />
|
||||
(sec)</dt>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<dl class="row">
|
||||
<dd class="col-sm-6"><%: traduci("WorkingEstTime") %></dd>
|
||||
<dt class="col-sm-6 text-right">
|
||||
<asp:Label runat="server" ID="lblWrktimeEst" />
|
||||
(minutes)</dt>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="col-12" runat="server" id="divButtons">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<asp:LinkButton runat="server" CssClass="btn btn-block btn-success" ID="lbtConfirm" OnClick="lbtConfirm_Click">Accetta</asp:LinkButton>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<asp:LinkButton runat="server" CssClass="btn btn-block btn-danger" ID="lbtCancel" OnClick="lbtCancel_Click">Annulla</asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<asp:Timer ID="TimerUpdateStatus" runat="server" Enabled="false" Interval="500" OnTick="TimerUpdateStatus_Tick"></asp:Timer>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
@@ -1,98 +0,0 @@
|
||||
using AppData;
|
||||
using Newtonsoft.Json;
|
||||
using NKC_SDK;
|
||||
using SteamWare;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace NKC_WF.WebUserControls
|
||||
{
|
||||
public partial class cmp_orderStatus : System.Web.UI.UserControl
|
||||
{
|
||||
public orderStatus statoBatch = new orderStatus();
|
||||
/// <summary>
|
||||
/// Hash redis per il canale di comunicazione dei batch eseguiti/in esecuzione
|
||||
/// </summary>
|
||||
protected string batchInChannel = "NKC:IN:batchReq";
|
||||
/// <summary>
|
||||
/// Wrapper traduzione termini
|
||||
/// </summary>
|
||||
/// <param name="lemma"></param>
|
||||
/// <returns></returns>
|
||||
public string traduci(string lemma)
|
||||
{
|
||||
return SteamWare.user_std.UtSn.Traduci(lemma);
|
||||
}
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
updateStatus();
|
||||
}
|
||||
/// <summary>
|
||||
/// ID del batch corrente
|
||||
/// </summary>
|
||||
protected int currBatchID
|
||||
{
|
||||
get
|
||||
{
|
||||
int answ = 0;
|
||||
if (memLayer.ML.isInSessionObject("BatchID"))
|
||||
{
|
||||
answ = memLayer.ML.IntSessionObj("BatchID");
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Aggiorna visualizzazione status processo
|
||||
/// </summary>
|
||||
private void updateStatus()
|
||||
{
|
||||
// se trova batch non riportati in REDIS li scrive x richiedere processing
|
||||
string batchKey = $"{batchInChannel}:{currBatchID}";
|
||||
// per prima cosa recupero da REDIS lo stato...
|
||||
bool statusPresent = !string.IsNullOrEmpty(memLayer.ML.getRSV(batchKey));
|
||||
if (statusPresent)
|
||||
{
|
||||
string payload = memLayer.ML.getRSV(batchKey);
|
||||
if (!string.IsNullOrEmpty(payload))
|
||||
{
|
||||
try
|
||||
{
|
||||
statoBatch = JsonConvert.DeserializeObject<orderStatus>(payload);
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
// aggiorno componente...
|
||||
lblStatusCode.Text = statoBatch.ProcessStatus.ToString();
|
||||
lblProcNotes.Text = statoBatch.ProcessNotes;
|
||||
lblNestingRuntime.Text = statoBatch.ProcessingRuntime.ToString();
|
||||
lblWrktimeEst.Text = (statoBatch.EstimatedWorktime / 60).ToString();
|
||||
// secondo status mostro barra...
|
||||
divProgress.Visible = (statoBatch.ProcessStatus > procStatus.waiting && statoBatch.ProcessStatus < procStatus.error);
|
||||
divButtons.Visible = (statoBatch.ProcessStatus > procStatus.error && statoBatch.ProcessStatus < procStatus.accepted);
|
||||
}
|
||||
}
|
||||
TimerUpdateStatus.Enabled = statusPresent;
|
||||
|
||||
}
|
||||
|
||||
protected void TimerUpdateStatus_Tick(object sender, EventArgs e)
|
||||
{
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
protected void lbtConfirm_Click(object sender, EventArgs e)
|
||||
{
|
||||
// accettazione ordine: scrivo su DB e QUINDI su redis indico accepted
|
||||
}
|
||||
|
||||
protected void lbtCancel_Click(object sender, EventArgs e)
|
||||
{
|
||||
// rifiuto ordine: ELIMINO su DB e QUINDI su redis indico refused
|
||||
}
|
||||
}
|
||||
}
|
||||
-105
@@ -1,105 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <generato automaticamente>
|
||||
// Codice generato da uno strumento.
|
||||
//
|
||||
// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se
|
||||
// il codice viene rigenerato.
|
||||
// </generato automaticamente>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace NKC_WF.WebUserControls {
|
||||
|
||||
|
||||
public partial class cmp_orderStatus {
|
||||
|
||||
/// <summary>
|
||||
/// Controllo updPanelStatus.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.UpdatePanel updPanelStatus;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblStatusCode.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblStatusCode;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblProcNotes.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblProcNotes;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divProgress.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divProgress;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblNestingRuntime.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblNestingRuntime;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lblWrktimeEst.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblWrktimeEst;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divButtons.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divButtons;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtConfirm.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtConfirm;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtCancel.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtCancel;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo TimerUpdateStatus.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.Timer TimerUpdateStatus;
|
||||
}
|
||||
}
|
||||
@@ -21,14 +21,14 @@
|
||||
<ItemTemplate>
|
||||
<div class="row border bg-success text-light rounded">
|
||||
<div class="col-4 text-left">
|
||||
Takt: <b>
|
||||
BATCH: <b>
|
||||
<asp:Label ID="TaktLabel" runat="server" Text='<%# Eval("Takt") %>' /></b>
|
||||
<br />
|
||||
TOT BUNK: <b>
|
||||
<asp:Label ID="BatchIDLabel" runat="server" Text='<%# Eval("NumStacks") %>' /></b>
|
||||
</div>
|
||||
<div class="col-4 text-center">
|
||||
<b><%: traduci("StackReading") %></b>
|
||||
<b><%: traduci("BunkReading") %></b>
|
||||
<br />
|
||||
TOT SHEETS: <b>
|
||||
<asp:Label ID="Label1" runat="server" Text='<%# Eval("NumSheets") %>' /></b>
|
||||
|
||||
@@ -178,7 +178,7 @@ namespace NKC_WF.WebUserControls
|
||||
lblLoaded.Visible = StackId != 0;
|
||||
frmView.Visible = !lblLoaded.Visible;
|
||||
// fix div di simulazione
|
||||
divSim.Visible = memLayer.ML.CRB("enableSimProd");
|
||||
divSim.Visible = (memLayer.ML.CRS("environment") == "DEV");
|
||||
}
|
||||
|
||||
public void doUpdate()
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
(<asp:Label ID="StackIndexLabel" runat="server" Text='<%# Eval("StackIndex") %>' />/2)
|
||||
</div>
|
||||
<div class="col-4 text-center">
|
||||
Sheets:<b><asp:Label ID="NumSheetsLabel" runat="server" Text='<%# Eval("NumSheets") %>' /></b> | printed: <b>
|
||||
sheets:<b><asp:Label ID="NumSheetsLabel" runat="server" Text='<%# Eval("NumSheets") %>' /></b> | printed: <b>
|
||||
<asp:Label ID="NumSheetsPrintedLabel" runat="server" Text='<%# Eval("NumSheetsPrinted") %>' /></b> | worked: <b>
|
||||
<asp:Label ID="NumSheetsWorkedLabel" runat="server" Text='<%# Eval("NumSheetsWorked") %>' /></b>
|
||||
</div>
|
||||
@@ -56,7 +56,7 @@
|
||||
(<asp:Label ID="StackIndexLabel" runat="server" Text='<%# Eval("StackIndex") %>' />/2)
|
||||
</div>
|
||||
<div class="col-4 text-center">
|
||||
Sheets:<b><asp:Label ID="NumSheetsLabel" runat="server" Text='<%# Eval("NumSheets") %>' /></b> | printed: <b>
|
||||
sheets:<b><asp:Label ID="NumSheetsLabel" runat="server" Text='<%# Eval("NumSheets") %>' /></b> | printed: <b>
|
||||
<asp:Label ID="NumSheetsPrintedLabel" runat="server" Text='<%# Eval("NumSheetsPrinted") %>' /></b> | worked: <b>
|
||||
<asp:Label ID="NumSheetsWorkedLabel" runat="server" Text='<%# Eval("NumSheetsWorked") %>' /></b>
|
||||
</div>
|
||||
@@ -72,7 +72,7 @@
|
||||
<b>NO NEXT BUNK</b>
|
||||
</div>
|
||||
<div class="col-6 text-right text-secondary">
|
||||
Shift complete
|
||||
BATCH complete
|
||||
</div>
|
||||
</div>
|
||||
</EmptyDataTemplate>
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<%@ Page Title="" Language="C#" MasterPageFile="~/SiteContent.Master" AutoEventWireup="true" CodeBehind="OrderManager.aspx.cs" Inherits="NKC_WF.OrderManager" %>
|
||||
|
||||
<%@ Register Src="~/WebUserControls/cmp_fileUpload.ascx" TagPrefix="uc1" TagName="cmp_fileUpload" %>
|
||||
<%@ Register Src="~/WebUserControls/cmp_orderStatus.ascx" TagPrefix="uc1" TagName="cmp_orderStatus" %>
|
||||
<%@ Register Src="~/WebUserControls/cmp_batchList.ascx" TagPrefix="uc1" TagName="cmp_batchList" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
|
||||
@@ -15,9 +14,6 @@
|
||||
<div class="col-12 mb-2">
|
||||
<uc1:cmp_fileUpload runat="server" ID="cmp_fileUpload" isWriteEnabled="true" />
|
||||
</div>
|
||||
<div class="col-12" runat="server" id="divStatus" visible="false">
|
||||
<uc1:cmp_orderStatus runat="server" ID="cmp_orderStatus" />
|
||||
</div>
|
||||
<div class="col-12" runat="server" id="divBatchList">
|
||||
<uc1:cmp_batchList runat="server" id="cmp_batchList" />
|
||||
</div>
|
||||
|
||||
+34
-50
@@ -7,54 +7,38 @@
|
||||
// </generato automaticamente>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace NKC_WF {
|
||||
|
||||
|
||||
public partial class OrderManager {
|
||||
|
||||
/// <summary>
|
||||
/// Controllo cmp_fileUpload.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divStatus.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divStatus;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo cmp_orderStatus.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::NKC_WF.WebUserControls.cmp_orderStatus cmp_orderStatus;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divBatchList.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divBatchList;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo cmp_batchList.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::NKC_WF.WebUserControls.cmp_batchList cmp_batchList;
|
||||
}
|
||||
namespace NKC_WF
|
||||
{
|
||||
|
||||
|
||||
public partial class OrderManager
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Controllo cmp_fileUpload.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::NKC_WF.WebUserContols.cmp_fileUpload cmp_fileUpload;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divBatchList.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divBatchList;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo cmp_batchList.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Campo generato automaticamente.
|
||||
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
|
||||
/// </remarks>
|
||||
protected global::NKC_WF.WebUserControls.cmp_batchList cmp_batchList;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user