Merge branch 'develop'
This commit is contained in:
+2
-2
@@ -1539,8 +1539,8 @@ namespace AppData
|
||||
{
|
||||
// aggiungoncomunque a lista generale...
|
||||
itemsAll.Add(item.ItemDtmx);
|
||||
// controllo SE sia stato depositato... check null su campo data
|
||||
if (!item.IsOnCartDateNull())
|
||||
// controllo SE sia stato depositato... check status 3/4
|
||||
if (item.StatusID == 3 || item.StatusID == 4)
|
||||
{
|
||||
itemsDepo.Add(item.ItemDtmx);
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -17,7 +17,7 @@ pipeline {
|
||||
|
||||
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
|
||||
script {
|
||||
withEnv(['NEXT_BUILD_NUMBER=240']) {
|
||||
withEnv(['NEXT_BUILD_NUMBER=241']) {
|
||||
// env.versionNumber = VersionNumber(versionNumberString : '0.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true)
|
||||
env.versionNumber = VersionNumber(versionNumberString : '0.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
|
||||
env.versionNumberBeta = VersionNumber(versionNumberString : '0.9.${BUILD_DATE_FORMATTED, "yyMM"}-beta.${BUILDS_ALL_TIME}', projectStartDate : '2019-07-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
|
||||
|
||||
@@ -10,15 +10,39 @@
|
||||
<Columns>
|
||||
<asp:TemplateField HeaderText="QR">
|
||||
<ItemTemplate>
|
||||
<asp:Image runat="server" Height='<%# qrSize %>' Visible='<%# hfShowQr.Value.ToLower()=="true" %>' ImageUrl='<%# getImgUrl(Eval("ItemDtmx")) %>' />
|
||||
<asp:Image runat="server" Height='<%# qrSize %>' Visible='<%# hfShowQr.Value.ToLower()=="true" %>' ImageUrl='<%# getImgUrl(Eval("ItemDtmx")) %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="ItemID" InsertVisible="False" SortExpression="ItemID">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label1" runat="server" Text='<%# Eval("ItemID") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="KitID" SortExpression="KitID">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label2" runat="server" Text='<%# Eval("KitID") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="StatusID" SortExpression="StatusID">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label3" runat="server" Text='<%# Eval("StatusID") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="ItemDtmx" SortExpression="ItemDtmx">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label4" runat="server" Text='<%# Eval("ItemDtmx") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="ItemExtCode" SortExpression="ItemExtCode">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label5" runat="server" Text='<%# Eval("ItemExtCode") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="ItemDesc" SortExpression="ItemDesc">
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="Label6" runat="server" Text='<%# Eval("ItemDesc") %>' CssClass='<%# cssByStatus(Eval("StatusID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:BoundField DataField="ItemID" HeaderText="ItemID" InsertVisible="False" ReadOnly="True" SortExpression="ItemID" />
|
||||
<asp:BoundField DataField="KitID" HeaderText="KitID" SortExpression="KitID" />
|
||||
<asp:BoundField DataField="ItemDtmx" HeaderText="ItemDtmx" SortExpression="ItemDtmx" />
|
||||
<asp:BoundField DataField="ItemExtCode" HeaderText="ItemExtCode" SortExpression="ItemExtCode" />
|
||||
<asp:BoundField DataField="ItemDesc" HeaderText="ItemDesc" SortExpression="ItemDesc" />
|
||||
|
||||
<asp:BoundField DataField="PostProcList" HeaderText="PostProcList" SortExpression="PostProcList" />
|
||||
<asp:BoundField DataField="ProcessesReq" HeaderText="ProcessesReq" SortExpression="ProcessesReq" />
|
||||
<asp:BoundField DataField="OnCartDate" HeaderText="OnCartDate" SortExpression="OnCartDate" />
|
||||
|
||||
@@ -79,5 +79,35 @@ namespace NKC_WF.WebUserControls
|
||||
doUpdate();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Calcola css da statusID
|
||||
/// </summary>
|
||||
/// <param name="_statusID"></param>
|
||||
/// <returns></returns>
|
||||
public string cssByStatus(object _statusID)
|
||||
{
|
||||
string answ = "text-secondary";
|
||||
int statusID = 0;
|
||||
int.TryParse(_statusID.ToString(), out statusID);
|
||||
switch (statusID)
|
||||
{
|
||||
case 1:
|
||||
answ = "text-dark";
|
||||
break;
|
||||
case 2:
|
||||
answ = "text-warning";
|
||||
break;
|
||||
case 3:
|
||||
answ = "text-success";
|
||||
break;
|
||||
case 4:
|
||||
answ = "text-info";
|
||||
break;
|
||||
default:
|
||||
answ = "text-danger";
|
||||
break;
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,6 +14,9 @@
|
||||
<uc1:cmp_barcode runat="server" ID="cmp_barcode" />
|
||||
<asp:HiddenField runat="server" ID="hfLastBCode" />
|
||||
<asp:HiddenField runat="server" ID="hfLastValidBCode" />
|
||||
<asp:HiddenField runat="server" ID="hfShowCart" />
|
||||
<asp:HiddenField runat="server" ID="hfShowBin" />
|
||||
<asp:HiddenField runat="server" ID="hfShowSecOp" />
|
||||
</div>
|
||||
<div class="col-12 px-0">
|
||||
<div runat="server" id="divItemDet" class="bg-success text-warning small" visible="false">
|
||||
|
||||
@@ -6,9 +6,45 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
public partial class cmp_unloadSmart : BaseUserControl
|
||||
{
|
||||
protected bool showBin = false;
|
||||
protected bool showCart = false;
|
||||
protected bool showSecOp = false;
|
||||
protected bool showBin
|
||||
{
|
||||
set
|
||||
{
|
||||
hfShowBin.Value = value.ToString();
|
||||
}
|
||||
get
|
||||
{
|
||||
bool answ = false;
|
||||
bool.TryParse(hfShowBin.Value, out answ);
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
protected bool showCart
|
||||
{
|
||||
set
|
||||
{
|
||||
hfShowCart.Value = value.ToString();
|
||||
}
|
||||
get
|
||||
{
|
||||
bool answ = false;
|
||||
bool.TryParse(hfShowCart.Value, out answ);
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
protected bool showSecOp
|
||||
{
|
||||
set
|
||||
{
|
||||
hfShowSecOp.Value = value.ToString();
|
||||
}
|
||||
get
|
||||
{
|
||||
bool answ = false;
|
||||
bool.TryParse(hfShowSecOp.Value, out answ);
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// ID univoco da IP
|
||||
/// </summary>
|
||||
@@ -94,6 +130,7 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
if (!Page.IsPostBack)
|
||||
{
|
||||
resetShowData();
|
||||
resetIcons();
|
||||
updateCurrData();
|
||||
}
|
||||
@@ -104,6 +141,14 @@ namespace NKC_WF.WebUserControls
|
||||
lblMessage.Text = "----";
|
||||
lblDestination.Text = "--";
|
||||
}
|
||||
|
||||
private void resetShowData()
|
||||
{
|
||||
showCart = false;
|
||||
showBin = false;
|
||||
showSecOp = false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Comando barcode letto
|
||||
/// </summary>
|
||||
@@ -164,8 +209,7 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
case codeType.UNK:
|
||||
cmp_barcode.showOutput("text-danger", $"Unknown Data: {decoData.rawData} --> no action");
|
||||
// elimino item sel...
|
||||
ComLib.resetItemPickup(SheetID, DeviceId);
|
||||
resetSelection(true);
|
||||
doRaiseEv = true;
|
||||
break;
|
||||
case codeType.Item:
|
||||
@@ -204,8 +248,7 @@ namespace NKC_WF.WebUserControls
|
||||
break;
|
||||
default:
|
||||
cmp_barcode.showOutput("text-danger", $"Unknown Data: {decoData.rawData} --> no action");
|
||||
// elimino item sel...
|
||||
ComLib.resetItemPickup(SheetID, DeviceId);
|
||||
resetSelection(true);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -263,42 +306,52 @@ namespace NKC_WF.WebUserControls
|
||||
}
|
||||
break;
|
||||
case codeType.Cart:
|
||||
if (currCartTab.Count == 1)
|
||||
// verifico NON SIA richiesto PAINT
|
||||
if (showBin)
|
||||
{
|
||||
// controllo se sia quello corretto
|
||||
if (rawData != currCartTab[0].CartDtmx)
|
||||
displError("PAINT: BIN REQUESTED: please retry", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currCartTab.Count == 1)
|
||||
{
|
||||
lblErrorMsg.Text = "INCORRECT CART: please retry";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// dichiaro che è depositato
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 3, PlaceId);
|
||||
lblDestination.Text = $"Item {itemIdSelected} PUT IN CART {rawData}";
|
||||
// elimino item sel...
|
||||
ComLib.resetItemPickup(SheetID, DeviceId);
|
||||
// controllo se sia quello corretto
|
||||
if (rawData != currCartTab[0].CartDtmx)
|
||||
{
|
||||
displError("INCORRECT CART: please retry", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
// dichiaro che è depositato
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 3, PlaceId);
|
||||
lblDestination.Text = $"Item {itemIdSelected} PUT IN CART {rawData}";
|
||||
resetSelection(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case codeType.Bin:
|
||||
if (currBinTab.Count == 1)
|
||||
// verifico NON SIA richiesto PAINT
|
||||
if (showCart)
|
||||
{
|
||||
// controllo se sia quello corretto
|
||||
if (rawData != currBinTab[0].BinDtmx)
|
||||
displError("NOT PAINTED: CART REQUESTED: please retry", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currBinTab.Count == 1)
|
||||
{
|
||||
lblErrorMsg.Text = "INCORRECT BIN: please retry";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// dichiaro che è depositato
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 4, PlaceId);
|
||||
lblDestination.Text = $"Item {itemIdSelected} PUT IN BIN {rawData}";
|
||||
// elimino item sel...
|
||||
ComLib.resetItemPickup(SheetID, DeviceId);
|
||||
// controllo se sia quello corretto
|
||||
if (rawData != currBinTab[0].BinDtmx)
|
||||
{
|
||||
displError("INCORRECT BIN: please retry", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
// dichiaro che è depositato
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 4, PlaceId);
|
||||
lblDestination.Text = $"Item {itemIdSelected} PUT IN BIN {rawData}";
|
||||
resetSelection(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -318,13 +371,33 @@ namespace NKC_WF.WebUserControls
|
||||
// mostro output (compreso che mi aspetto entro 30 sec lettura cart/Bin)
|
||||
|
||||
|
||||
#if false
|
||||
icnCart.Attributes.Remove("class");
|
||||
icnCart.Attributes.Add("class", "btn btn-sm btn-block btn-success");
|
||||
lblMessage.Text = "Riconosciuto item";
|
||||
lblDestination.Text = "SEND TO CART CR00012";
|
||||
lblDestination.CssClass = "text-success";
|
||||
#endif
|
||||
}
|
||||
/// <summary>
|
||||
/// Mostra errore ed effettua reset vari...
|
||||
/// </summary>
|
||||
/// <param name="errorMessage"></param>
|
||||
/// <param name="resetStatus"></param>
|
||||
protected void displError(string errorMessage, bool resetStatus)
|
||||
{
|
||||
lblErrorMsg.Text = errorMessage;
|
||||
divItemError.Visible = true;
|
||||
resetSelection(resetStatus);
|
||||
}
|
||||
/// <summary>
|
||||
/// Reset selezione item + blocchi suggerimento + sel REDIS x pagina unload
|
||||
/// </summary>
|
||||
/// <param name="resetStatus"></param>
|
||||
protected void resetSelection(bool resetStatus)
|
||||
{
|
||||
if (resetStatus)
|
||||
{
|
||||
// riposto item a status 1...
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 1, PlaceId);
|
||||
}
|
||||
// elimino item sel...
|
||||
itemIdSelected = 0;
|
||||
resetShowData();
|
||||
ComLib.resetItemPickup(SheetID, DeviceId);
|
||||
}
|
||||
/// <summary>
|
||||
/// Mostra o nasconde dettaglio su ITEM letto
|
||||
@@ -333,12 +406,12 @@ namespace NKC_WF.WebUserControls
|
||||
/// <param name="itemRow"></param>
|
||||
private void showItemDetail(bool showItem, DS_App.ItemListRow itemRow, bool showError)
|
||||
{
|
||||
resetShowData();
|
||||
divItemDet.Visible = showItem;
|
||||
divItemError.Visible = showError;
|
||||
if (showError)
|
||||
{
|
||||
lblErrorMsg.Text = "Item not found";
|
||||
itemIdSelected = 0;
|
||||
displError("Item not found",true);
|
||||
}
|
||||
if (showItem)
|
||||
{
|
||||
@@ -350,9 +423,7 @@ namespace NKC_WF.WebUserControls
|
||||
switch (itemRow.StatusID)
|
||||
{
|
||||
case 0:
|
||||
lblErrorMsg.Text = "ERROR: Item not ready";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("ERROR: Item not ready", false);
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
@@ -360,43 +431,30 @@ namespace NKC_WF.WebUserControls
|
||||
// salvo che è in STATO 2 (picked up)
|
||||
DataLayer.man.taIL.updateStatus(itemRow.ItemID, 2, PlaceId);
|
||||
// verifico cosa devo mostrare come PROX passaggio...
|
||||
showCart = itemRow.ProcessesReq == "0";
|
||||
// !!!CHECK ME!!! deve cercare #PaintFlag?!?
|
||||
showBin = itemRow.ProcessesReq == "2";
|
||||
showCart = itemRow.ProcessesReq == "";
|
||||
showBin = (itemRow.ProcessesReq.Contains("PaintFlag"));
|
||||
secOp = itemRow.PostProcList;
|
||||
showSecOp = (secOp != "0");
|
||||
showSecOp = (secOp != "");
|
||||
doUpdate();
|
||||
break;
|
||||
case 3:
|
||||
lblErrorMsg.Text = "Item already on CART!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("Item already on CART!", false);
|
||||
break;
|
||||
case 4:
|
||||
// fino a concorrenza qta richiesta sposto, POI do errori
|
||||
lblErrorMsg.Text = "ALL Item already scanned on BIN!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("ALL Item already scanned on BIN!", false);
|
||||
break;
|
||||
case 5:
|
||||
lblErrorMsg.Text = "Item already at KIT STATION!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("Item already at KIT STATION!", false);
|
||||
break;
|
||||
case 990:
|
||||
lblErrorMsg.Text = "Item declared SCRAP!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("Item declared SCRAP!", false);
|
||||
break;
|
||||
case 991:
|
||||
lblErrorMsg.Text = "Item declared SCRAP with CNC program created!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("Item declared SCRAP with CNC program created!",false);
|
||||
break;
|
||||
default:
|
||||
lblErrorMsg.Text = "ERROR: Item status UNKNOWN!";
|
||||
itemIdSelected = 0;
|
||||
divItemError.Visible = true;
|
||||
displError("ERROR: Item status UNKNOWN!", false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -468,7 +526,9 @@ namespace NKC_WF.WebUserControls
|
||||
// controllo SE HO cart
|
||||
if (currCartTab.Count == 1)
|
||||
{
|
||||
lblDestination.Text = $"SEND TO CART {currCartTab[0].CartDtmx}";
|
||||
var cartRow = currCartTab[0];
|
||||
// imposto OUT
|
||||
lblDestination.Text = $"SEND TO CART <b>C{cartRow.CartIndex}</b> ({cartRow.CartDtmx})";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -483,7 +543,8 @@ namespace NKC_WF.WebUserControls
|
||||
lblMessage.Text = "Item recognized";
|
||||
if (currBinTab.Count == 1)
|
||||
{
|
||||
lblDestination.Text = $"SEND TO BIN {currBinTab[0].BinDtmx}";
|
||||
var binRow = currBinTab[0];
|
||||
lblDestination.Text = $"SEND TO BIN <b>B{binRow.BinIndex}</b> ({binRow.BinDtmx})";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -507,7 +568,7 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
// resetto item selezionato...
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 1, PlaceId);
|
||||
itemIdSelected = 0;
|
||||
resetSelection(true);
|
||||
showItemDetail(false, null, false);
|
||||
}
|
||||
protected void lbtResetSel_Click(object sender, EventArgs e)
|
||||
@@ -515,9 +576,10 @@ namespace NKC_WF.WebUserControls
|
||||
var tabSheet = DataLayer.man.taSHL.getByItemID(itemIdSelected);
|
||||
if (tabSheet.Count == 1)
|
||||
{
|
||||
resetShowData();
|
||||
// resetto sheet selezionato...
|
||||
DataLayer.man.taIL.updateSheetStatusPU(tabSheet[0].SheetID, PlaceId);
|
||||
itemIdSelected = 0;
|
||||
resetSelection(true);
|
||||
showItemDetail(false, null, false);
|
||||
}
|
||||
}
|
||||
@@ -530,7 +592,7 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
// resetto item selezionato...
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 100, PlaceId);
|
||||
itemIdSelected = 0;
|
||||
resetSelection(true);
|
||||
showItemDetail(false, null, false);
|
||||
lblMessage.Text = "Item Parked";
|
||||
}
|
||||
@@ -543,8 +605,6 @@ namespace NKC_WF.WebUserControls
|
||||
{
|
||||
// resetto item selezionato...
|
||||
DataLayer.man.taIL.updateStatus(itemIdSelected, 990, PlaceId);
|
||||
//itemIdSelected = 0;
|
||||
//showItemDetail(true, null, false);
|
||||
lblMessage.Text = "Item Set SCRAPPED";
|
||||
// rirprocesso barcode...
|
||||
lastCmd = lastValidCmd;
|
||||
|
||||
@@ -68,6 +68,33 @@ namespace NKC_WF.WebUserControls
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.HiddenField hfLastValidBCode;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo hfShowCart.
|
||||
/// </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 hfShowCart;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo hfShowBin.
|
||||
/// </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 hfShowBin;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo hfShowSecOp.
|
||||
/// </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 hfShowSecOp;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divItemDet.
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user