Aggiunta gestione task x fix chiusura attrezzaggio (testo...)
This commit is contained in:
@@ -223,10 +223,12 @@ namespace MP_IO.Controllers
|
||||
}
|
||||
/// <summary>
|
||||
/// AGGIUNGE TASK richiesto x macchina:
|
||||
///
|
||||
/// GET: IOB/addTask2Exe/SIMUL_03?taskName=T180326160502&taskVal=setPrg:PRG001
|
||||
///
|
||||
/// GET: IOB/addTask2Exe/3010?taskName=startSetup&taskVal=T190406101512
|
||||
/// GET: IOB/addTask2Exe/3010?taskName=stopSetup&taskVal=T190406101512
|
||||
/// GET: IOB/addTask2Exe/SIMUL_03?taskName=setProg&taskVal=P00000001
|
||||
/// GET: IOB/addTask2Exe/SIMUL_03?taskName=setComm&taskVal=ODL_0000123
|
||||
/// GET: IOB/addTask2Exe/SIMUL_03?taskName=setArt&taskVal=ART_0000321
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
@@ -240,7 +242,17 @@ namespace MP_IO.Controllers
|
||||
connDb.scriviKeepAlive(id, DateTime.Now);
|
||||
try
|
||||
{
|
||||
DataLayer.addTask4Machine(id, taskName, taskVal);
|
||||
// converto stringa in tipo task...
|
||||
taskType tName = taskType.nihil;
|
||||
bool fatto = Enum.TryParse(taskName, out tName);
|
||||
if (fatto)
|
||||
{
|
||||
DataLayer.addTask4Machine(id, tName, taskVal);
|
||||
}
|
||||
else
|
||||
{
|
||||
logger.lg.scriviLog($"addTask2Exe: impossibile riconoscere il comando {taskName} come uno deitipi ammessi, NON aggiunto", tipoLog.ERROR);
|
||||
}
|
||||
answ = getTask2Exe(id);
|
||||
}
|
||||
catch
|
||||
|
||||
@@ -104,6 +104,11 @@
|
||||
<asp:LinkButton runat="server" ID="lbtSplitODL" OnClick="lbtSplitODL_Click" Visible="false" OnClientClick='<%# SteamWare.jsUtils.getCBE("confermaRiattrezzaggio") %>' CssClass="btn btn-block btn-info"><i class="fa fa-exclamation-triangle"></i> Effettua Riattrezzaggio</asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<asp:LinkButton runat="server" ID="lbtFixEndSetup" CssClass="btn btn-block btn-success mb-2" OnClick="lbtFixEndSetup_Click"><i class="fa fa-wrench" aria-hidden="true"></i> Fix chiusura attrezzaggio (PLC)</asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row pb-3">
|
||||
<div class="col-sm-12" runat="server" id="divOdlProvv">
|
||||
<div class="card">
|
||||
|
||||
@@ -435,6 +435,7 @@ namespace MoonProTablet.WebUserControls
|
||||
divOpRiattr.Visible = (showSplitOdlOnTavVal || showReopOdlTav);
|
||||
lbtSplitOdlSuTav.Visible = showSplitOdlOnTavVal;
|
||||
lbtReopOdlSuTav.Visible = showReopOdlTav;
|
||||
lbtFixEndSetup.Visible = !maccInAttr && memLayer.ML.CRB("OptEnableFixSetup");
|
||||
}
|
||||
/// <summary>
|
||||
/// Sistema CSS x status enabled/disabled
|
||||
@@ -712,9 +713,12 @@ namespace MoonProTablet.WebUserControls
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.AppendLine(String.Format(evText, idxODL_curr));
|
||||
processaEvento(idxMacchina, idxEvento, sb.ToString(), idxODL_curr);
|
||||
// indico INIZIO SETUP su REDIS coem EXE della macchina...
|
||||
// indico INIZIO SETUP su REDIS come EXE della macchina...
|
||||
string ts = string.Format("{0:yyMMdd}T{0:HHmmss.fff}Z", DateTime.Now);
|
||||
DataLayer.addTask4Machine(idxMacchina, "startSetup", $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL_curr}");
|
||||
#if false
|
||||
//DataLayer.addTask4Machine(idxMacchina, "startSetup", $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL_curr}");
|
||||
#endif
|
||||
DataLayer.addTask4Machine(idxMacchina, taskType.startSetup, $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL_curr}");
|
||||
// se è multi CHIUDO ODL x altra tavola...
|
||||
if (isMulti)
|
||||
{
|
||||
@@ -793,9 +797,10 @@ namespace MoonProTablet.WebUserControls
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.AppendLine(String.Format(evText, idxODL));
|
||||
processaEvento(idxMacchina, idxEvento, sb.ToString(), idxODL);
|
||||
// indico INIZIO SETUP su REDIS coem EXE della macchina...
|
||||
// indico INIZIO SETUP su REDIS come EXE della macchina...
|
||||
string ts = string.Format("{0:yyMMdd}T{0:HHmmss.fff}Z", DateTime.Now);
|
||||
DataLayer.addTask4Machine(idxMacchina, "stopSetup", $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL}");
|
||||
//DataLayer.addTask4Machine(idxMacchina, "stopSetup", $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL}");
|
||||
DataLayer.addTask4Machine(idxMacchina, taskType.stopSetup, $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL}");
|
||||
// se è multi processo chiusura setup x altra tavola...
|
||||
if (isMulti)
|
||||
{
|
||||
@@ -1183,5 +1188,14 @@ namespace MoonProTablet.WebUserControls
|
||||
{
|
||||
odsODL.DataBind();
|
||||
}
|
||||
|
||||
protected void lbtFixEndSetup_Click(object sender, EventArgs e)
|
||||
{
|
||||
string ts = string.Format("{0:yyMMdd}T{0:HHmmss.fff}Z", DateTime.Now);
|
||||
string outData = $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxOdlMacc}";
|
||||
DataLayer.addTask4Machine(idxMacchina, taskType.fixStopSetup, outData);
|
||||
outData = "Inserita richiesta invio Fix chiusura attrezzaggio " + outData;
|
||||
lblOut.Text = outData;
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -237,6 +237,15 @@ namespace MoonProTablet.WebUserControls {
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.LinkButton lbtSplitODL;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo lbtFixEndSetup.
|
||||
/// </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 lbtFixEndSetup;
|
||||
|
||||
/// <summary>
|
||||
/// Controllo divOdlProvv.
|
||||
/// </summary>
|
||||
|
||||
+73
-3
@@ -1148,7 +1148,30 @@ namespace MapoDb
|
||||
}
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Aggiunge un task all'elenco di quelli salvati (in modalità upsert)
|
||||
/// </summary>
|
||||
/// <param name="idxMacchina"></param>
|
||||
/// <param name="taskKey"></param>
|
||||
/// <param name="taskVal"></param>
|
||||
/// <returns></returns>
|
||||
public static bool addTask4Machine(string idxMacchina, taskType taskKey, string taskVal)
|
||||
{
|
||||
bool answ = false;
|
||||
string currHash = exeTaskHash(idxMacchina);
|
||||
try
|
||||
{
|
||||
// leggo task attuali...
|
||||
var currTask = mTaskMacchina(idxMacchina);
|
||||
currTask[taskKey.ToString()] = taskVal;
|
||||
answ = memLayer.ML.redSaveHashDict(currHash, currTask);
|
||||
logger.lg.scriviLog($"Task ADD - idxMacchina: {idxMacchina} | taskKey: {taskKey.ToString()} | taskVal: {taskVal}");
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
#if false
|
||||
/// <summary>
|
||||
/// Aggiunge un task all'elenco di quelli salvati (in modalità upsert)
|
||||
/// </summary>
|
||||
@@ -1166,12 +1189,13 @@ namespace MapoDb
|
||||
var currTask = mTaskMacchina(idxMacchina);
|
||||
currTask[taskKey] = taskVal;
|
||||
answ = memLayer.ML.redSaveHashDict(currHash, currTask);
|
||||
logger.lg.scriviLog($"Task ADD - idxMacchina: {idxMacchina} | taskKey: {taskKey} | taskVal: {taskVal}");
|
||||
logger.lg.scriviLog($"Task ADD - idxMacchina: {idxMacchina} | taskKey: {taskKey} | taskVal: {taskVal}");
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return answ;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
/// <summary>
|
||||
/// RIMUOVE un task dall'elenco di quelli salvati
|
||||
/// </summary>
|
||||
@@ -1925,6 +1949,52 @@ namespace MapoDb
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco task ammessi (x IOB-WIN da eseguire...)
|
||||
/// </summary>
|
||||
public enum taskType
|
||||
{
|
||||
/// <summary>
|
||||
/// Task nullo / fake
|
||||
/// </summary>
|
||||
nihil,
|
||||
/// <summary>
|
||||
/// Rimanda a PLC eventuale segnale NON in setup (MA NON RESETTA)
|
||||
/// </summary>
|
||||
fixStopSetup,
|
||||
/// <summary>
|
||||
/// Indica al PLC di forzare il reset del contapezzi
|
||||
/// </summary>
|
||||
forceResetPzCount,
|
||||
/// <summary>
|
||||
/// Indica al PLC di forzare il NUOVO valore di contapezzi (impostato come value)
|
||||
/// </summary>
|
||||
forceSetPzCount,
|
||||
/// <summary>
|
||||
/// Imposta Articolo su PLC
|
||||
/// </summary>
|
||||
setArt,
|
||||
/// <summary>
|
||||
/// Imposta Commessa su PLC
|
||||
/// </summary>
|
||||
setComm,
|
||||
/// <summary>
|
||||
/// Set Programma CNC su PLC
|
||||
/// </summary>
|
||||
setProg,
|
||||
/// <summary>
|
||||
/// Indica al PLC iniziato setup (e secondo casi ferma contapezzi /resetta)
|
||||
/// </summary>
|
||||
startSetup,
|
||||
/// <summary>
|
||||
/// Indica al PLC finito setup (e secondo casi ferma contapezzi /resetta)
|
||||
/// </summary>
|
||||
stopSetup,
|
||||
/// <summary>
|
||||
/// Richiesta invio watchdog a PLC
|
||||
/// </summary>
|
||||
sendWatchDogMes2Plc
|
||||
}
|
||||
public enum tipoSelettore
|
||||
{
|
||||
articoli
|
||||
|
||||
@@ -230,6 +230,8 @@ public class utility
|
||||
#endregion
|
||||
|
||||
}
|
||||
|
||||
|
||||
public enum tipoBarcode
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user