Continuo riscrittura metodi da static ad istanze esplicite

This commit is contained in:
Samuele E. Locatelli
2020-03-02 17:27:45 +01:00
parent 813491179d
commit b80a18b477
9 changed files with 209 additions and 165 deletions
+60 -31
View File
@@ -44,8 +44,9 @@ namespace MP_IO.Controllers
{
try
{
DataLayer DataLayerObj = new DataLayer();
// salvo risposta!
answ = DataLayer.insEnab(id) ? "OK" : "NO";
answ = DataLayerObj.insEnab(id) ? "OK" : "NO";
}
catch (Exception exc)
{
@@ -68,7 +69,9 @@ namespace MP_IO.Controllers
{
try
{
answ = DataLayer.sLogEnab(id) ? "OK" : "NO";
DataLayer DataLayerObj = new DataLayer();
// salvo risposta
answ = DataLayerObj.sLogEnab(id) ? "OK" : "NO";
}
catch (Exception exc)
{
@@ -95,7 +98,8 @@ namespace MP_IO.Controllers
}
try
{
answ = DataLayer.processInput(id, valore, dtEve, dtCurr, cnt);
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.processInput(id, valore, dtEve, dtCurr, cnt);
}
catch (Exception exc)
{
@@ -128,6 +132,7 @@ namespace MP_IO.Controllers
// se ho dati...
if (content != "")
{
DataLayer DataLayerObj = new DataLayer();
// procedo a deserializzare in blocco l'oggetto...
evJsonPayload receivedData = new evJsonPayload();
try
@@ -154,7 +159,7 @@ namespace MP_IO.Controllers
}
// formato datetime come yyyyMMddHHmmssfff -->es: 20181223180600000
answ = DataLayer.processInput(id, item.valore, item.dtEve.ToString("yyyyMMddHHmmssfff"), item.dtCurr.ToString("yyyyMMddHHmmssfff"), item.cnt.ToString());
answ = DataLayerObj.processInput(id, item.valore, item.dtEve.ToString("yyyyMMddHHmmssfff"), item.dtCurr.ToString("yyyyMMddHHmmssfff"), item.cnt.ToString());
insDone++;
}
// se vuoto --> OK!
@@ -189,9 +194,10 @@ namespace MP_IO.Controllers
}
try
{
DataLayer DataLayerObj = new DataLayer();
int count = 0;
Int32.TryParse(cnt, out count);
answ = DataLayer.processFluxLog(id, flux, valore, dtEve, dtCurr, count);
answ = DataLayerObj.processFluxLog(id, flux, valore, dtEve, dtCurr, count);
}
catch (Exception exc)
{
@@ -224,6 +230,7 @@ namespace MP_IO.Controllers
// se ho dati...
if (content != "")
{
DataLayer DataLayerObj = new DataLayer();
// procedo a deserializzare in blocco l'oggetto...
flogJsonPayload receivedData = new flogJsonPayload();
try
@@ -245,7 +252,7 @@ namespace MP_IO.Controllers
foreach (var item in receivedData.fluxData)
{
// formato datetime come yyyyMMddHHmmssfff -->es: 20181223180600000
answ = DataLayer.processFluxLog(id, item.flux, item.valore, item.dtEve.ToString("yyyyMMddHHmmssfff"), item.dtCurr.ToString("yyyyMMddHHmmssfff"), item.cnt);
answ = DataLayerObj.processFluxLog(id, item.flux, item.valore, item.dtEve.ToString("yyyyMMddHHmmssfff"), item.dtCurr.ToString("yyyyMMddHHmmssfff"), item.cnt);
}
// se vuoto --> OK!
if (string.IsNullOrEmpty(answ))
@@ -261,7 +268,7 @@ namespace MP_IO.Controllers
// leggo parametri correnti...
try
{
List<objItem> currParams = DataLayer.getCurrObjItems(id);
List<objItem> currParams = DataLayerObj.getCurrObjItems(id);
// ora per ogni valore RICEVUTO costruisco un oggetto in innnovazioni da inviare...x salvare in stato parametri...
List<objItem> innovazioni = new List<objItem>();
foreach (var item in receivedData.fluxData)
@@ -291,7 +298,7 @@ namespace MP_IO.Controllers
innovazioni.Add(trovato);
}
// faccio upsert innovations!
DataLayer.upsertCurrObjItems(id, innovazioni);
DataLayerObj.upsertCurrObjItems(id, innovazioni);
}
catch (Exception exc)
{
@@ -327,7 +334,8 @@ namespace MP_IO.Controllers
{
// deserializzo.
liveIOB receivedData = JsonConvert.DeserializeObject<liveIOB>(content);
answ = DataLayer.processLiveJson(id, receivedData);
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.processLiveJson(id, receivedData);
// se vuoto --> OK!
if (string.IsNullOrEmpty(answ))
{
@@ -457,7 +465,8 @@ namespace MP_IO.Controllers
// se != null --> salvo!
if (currMemMap != null)
{
DataLayer.setIobMemMap(id, currMemMap);
DataLayer DataLayerObj = new DataLayer();
DataLayerObj.setIobMemMap(id, currMemMap);
answ = "OK";
}
}
@@ -530,8 +539,9 @@ namespace MP_IO.Controllers
List<objItem> currParams = new List<objItem>();
try
{
DataLayer DataLayerObj = new DataLayer();
// deserializzo.
currParams = DataLayer.getCurrObjItems(id);
currParams = DataLayerObj.getCurrObjItems(id);
// se != null --> salvo!
if (currParams != null)
{
@@ -565,8 +575,9 @@ namespace MP_IO.Controllers
List<objItem> currParams = new List<objItem>();
try
{
DataLayer DataLayerObj = new DataLayer();
// deserializzo.
currParams = DataLayer.getCurrObjItemsPendigWrite(id);
currParams = DataLayerObj.getCurrObjItemsPendigWrite(id);
// se != null --> salvo!
if (currParams != null)
{
@@ -615,7 +626,8 @@ namespace MP_IO.Controllers
// se != null --> salvo!
if (currParams != null)
{
DataLayer.setCurrObjItems(id, currParams);
DataLayer DataLayerObj = new DataLayer();
DataLayerObj.setCurrObjItems(id, currParams);
answ = "OK";
}
}
@@ -662,7 +674,8 @@ namespace MP_IO.Controllers
if (innovazioni != null)
{
// salvo
DataLayer.upsertCurrObjItems(id, innovazioni);
DataLayer DataLayerObj = new DataLayer();
DataLayerObj.upsertCurrObjItems(id, innovazioni);
answ = "OK";
}
}
@@ -686,7 +699,8 @@ namespace MP_IO.Controllers
}
try
{
answ = DataLayer.processLiveRec(id, liveData);
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.processLiveRec(id, liveData);
}
catch (Exception exc)
{
@@ -710,7 +724,8 @@ namespace MP_IO.Controllers
string answ = "";
try
{
answ = DataLayer.currODL(id).ToString();
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.currODL(id).ToString();
}
catch (Exception exc)
{
@@ -733,7 +748,8 @@ namespace MP_IO.Controllers
// chiamo metodo redis/db...
try
{
DS_ProdTempi.ODLDataTable currTab = DataLayer.currODLRowTab(id);
DataLayer DataLayerObj = new DataLayer();
DS_ProdTempi.ODLDataTable currTab = DataLayerObj.currODLRowTab(id);
if (currTab.Count > 0)
{
DS_ProdTempi.ODLRow odlRow = currTab[0];
@@ -761,7 +777,8 @@ namespace MP_IO.Controllers
// chiamo metodo redis/db...
try
{
currData = DataLayer.currODLRowTab(id);
DataLayer DataLayerObj = new DataLayer();
currData = DataLayerObj.currODLRowTab(id);
answ = JsonConvert.SerializeObject(currData);
}
catch (Exception exc)
@@ -785,7 +802,8 @@ namespace MP_IO.Controllers
// chiamo metodo redis/db...
try
{
currData = DataLayer.currSMTab(id);
DataLayer DataLayerObj = new DataLayer();
currData = DataLayerObj.currSMTab(id);
answ = JsonConvert.SerializeObject(currData);
}
catch (Exception exc)
@@ -805,15 +823,16 @@ namespace MP_IO.Controllers
// attenzione! poiché nell'URL il carattere "#" fiene filtrato ci aspettiamo il carattere "|" che poi trasformiamo ora in "#"
id = id.Replace("|", "#");
int answ = 0;
DataLayer DataLayerObj = new DataLayer();
DS_applicazione.StatoMacchineDataTable currData = null;
// chiamo metodo redis/db...
try
{
currData = DataLayer.currSMTab(id);
currData = DataLayerObj.currSMTab(id);
if (currData.Count > 0)
{
// recupero da redis elenco stati
DS_applicazione.AnagraficaStatiDataTable anagStati = DataLayer.AnagraficaStati();
DS_applicazione.AnagraficaStatiDataTable anagStati = DataLayerObj.AnagraficaStati();
DS_applicazione.AnagraficaStatiRow currStato = anagStati.FindByIdxStato(currData[0].IdxStato);
// calcolo SE sia idle... OVVERO SEMAFORO NON VERDE!!!
if (currStato.Semaforo != "sVe")
@@ -844,11 +863,12 @@ namespace MP_IO.Controllers
string answ = "";
// scrivo keep alive!!! (se necessario, altrimenti è in cache...)
MapoDb.MapoDb connDb = new MapoDb.MapoDb();
DataLayer DataLayerObj = new DataLayer();
connDb.scriviKeepAlive(id, DateTime.Now);
try
{
// recupero dati macchina...
Dictionary<string, string> valori = DataLayer.mDatiMacchine(id);
Dictionary<string, string> valori = DataLayerObj.mDatiMacchine(id);
answ = JsonConvert.SerializeObject(valori);
}
catch
@@ -867,7 +887,8 @@ namespace MP_IO.Controllers
{
// attenzione! poiché nell'URL il carattere "#" fiene filtrato ci aspettiamo il carattere "|" che poi trasformiamo ora in "#"
id = id.Replace("|", "#");
return DataLayer.forceSplitOdl(id);
DataLayer DataLayerObj = new DataLayer();
return DataLayerObj.forceSplitOdl(id);
}
/// <summary>
@@ -883,11 +904,12 @@ namespace MP_IO.Controllers
string answ = "";
// scrivo keep alive!!! (se necessario, altrimenti è in cache...)
MapoDb.MapoDb connDb = new MapoDb.MapoDb();
DataLayer DataLayerObj = new DataLayer();
connDb.scriviKeepAlive(id, DateTime.Now);
try
{
// leggo da REDIS eventuale elenco task x macchina...
Dictionary<string, string> valori = DataLayer.mTaskMacchina(id);
Dictionary<string, string> valori = DataLayerObj.mTaskMacchina(id);
answ = JsonConvert.SerializeObject(valori);
}
catch
@@ -912,6 +934,7 @@ namespace MP_IO.Controllers
string answ = "";
// scrivo keep alive!!! (se necessario, altrimenti è in cache...)
MapoDb.MapoDb connDb = new MapoDb.MapoDb();
DataLayer DataLayerObj = new DataLayer();
connDb.scriviKeepAlive(id, DateTime.Now);
try
{
@@ -920,7 +943,7 @@ namespace MP_IO.Controllers
bool fatto = Enum.TryParse(taskName, out tName);
if (fatto)
{
DataLayer.addTask4Machine(id, tName, taskVal);
DataLayerObj.addTask4Machine(id, tName, taskVal);
}
else
{
@@ -945,6 +968,7 @@ namespace MP_IO.Controllers
string answ = "";
// scrivo keep alive!!! (se necessario, altrimenti è in cache...)
MapoDb.MapoDb connDb = new MapoDb.MapoDb();
DataLayer DataLayerObj = new DataLayer();
connDb.scriviKeepAlive(id, DateTime.Now);
try
{
@@ -953,7 +977,7 @@ namespace MP_IO.Controllers
bool fatto = Enum.TryParse(taskName, out tName);
if (fatto)
{
DataLayer.remTask4Machine(id, tName);
DataLayerObj.remTask4Machine(id, tName);
}
else
{
@@ -1046,7 +1070,8 @@ namespace MP_IO.Controllers
/// <returns></returns>
public string resetCurrODL(string id)
{
return DataLayer.emptyCurrODL(id);
DataLayer DataLayerObj = new DataLayer();
return DataLayerObj.emptyCurrODL(id);
}
/// <summary>
/// Recupera COUNTER x macchina:
@@ -1061,7 +1086,8 @@ namespace MP_IO.Controllers
string answ = "";
try
{
answ = DataLayer.pzCounter(id).ToString();
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.pzCounter(id).ToString();
}
catch (Exception exc)
{
@@ -1083,7 +1109,8 @@ namespace MP_IO.Controllers
string answ = "";
try
{
answ = DataLayer.pzCounterTC(id).ToString();
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.pzCounterTC(id).ToString();
}
catch (Exception exc)
{
@@ -1111,7 +1138,8 @@ namespace MP_IO.Controllers
}
try
{
answ = DataLayer.saveCounter(id, counter);
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.saveCounter(id, counter);
}
catch (Exception exc)
{
@@ -1136,7 +1164,8 @@ namespace MP_IO.Controllers
logger.lg.scriviLog($"Salvataggio incremento contapezzi:{Environment.NewLine}idxMacchina: {id}{Environment.NewLine}pezzi: {qty}", tipoLog.INFO);
try
{
answ = DataLayer.saveCaricoPezzi(id, qty);
DataLayer DataLayerObj = new DataLayer();
answ = DataLayerObj.saveCaricoPezzi(id, qty);
}
catch (Exception exc)
{
+62 -58
View File
@@ -23,6 +23,10 @@ namespace MoonProTablet.WebUserControls
/// </summary>
protected string _idxOdlAltraMacc;
/// <summary>
/// Oggetto DataLayer della classe
/// </summary>
protected DataLayer DataLayerObj = new DataLayer();
/// <summary>
/// IdxODL sulla macchina
/// </summary>
public string idxOdlMacc
@@ -31,7 +35,7 @@ namespace MoonProTablet.WebUserControls
{
if (_idxOdlMacc == null)
{
_idxOdlMacc = DataLayer.currODL(idxMacchina, true);
_idxOdlMacc = DataLayerObj.currODL(idxMacchina, true);
}
return _idxOdlMacc;
}
@@ -49,7 +53,7 @@ namespace MoonProTablet.WebUserControls
{
if (_idxOdlAltraMacc == null)
{
_idxOdlAltraMacc = DataLayer.currODL(idxMaccAltraTav, true);
_idxOdlAltraMacc = DataLayerObj.currODL(idxMaccAltraTav, true);
}
return _idxOdlAltraMacc;
}
@@ -65,7 +69,7 @@ namespace MoonProTablet.WebUserControls
{
get
{
return DataLayer.isMulti(idxMacchina);
return DataLayerObj.isMulti(idxMacchina);
}
}
@@ -173,7 +177,7 @@ namespace MoonProTablet.WebUserControls
DateTime dtChiusura = DateTime.Now.AddHours(-1);
try
{
dtChiusura = DataLayer.obj.taODL.getLastByMacc(idxMacchina)[0].DataFine;
dtChiusura = DataLayerObj.taODL.getLastByMacc(idxMacchina)[0].DataFine;
}
catch
{ }
@@ -376,7 +380,7 @@ namespace MoonProTablet.WebUserControls
string CodArticolo = "";
try
{
CodArticolo = DataLayer.obj.taODL.getByIdx(idxODLSel, false)[0].CodArticolo;
CodArticolo = DataLayerObj.taODL.getByIdx(idxODLSel, false)[0].CodArticolo;
}
catch
{ }
@@ -496,14 +500,14 @@ namespace MoonProTablet.WebUserControls
}
try
{
currHasOdl = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL != 0;
currHasOdl = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL != 0;
}
catch (Exception exc)
{
logger.lg.scriviLog(string.Format("Eccezione in recupero dati currHasOdl! {0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
}
// deve controllare abbia ODL o PROMESSE odl...
bool hasNewOdl = DataLayer.obj.taSelOdlFree.getUnused(idxMacchina, chkTutti.Checked).Rows.Count > 1;
bool hasNewOdl = DataLayerObj.taSelOdlFree.getUnused(idxMacchina, chkTutti.Checked).Rows.Count > 1;
// sistemo buttons!
lbtStartAttr.Enabled = (isEnabled && (!inAttr && hasNewOdl));
lbtStartProd.Enabled = (isEnabled && inAttr);
@@ -522,7 +526,7 @@ namespace MoonProTablet.WebUserControls
int idxOdl = 0;
try
{
idxOdl = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
idxOdl = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
updateTempoTc(idxOdl, inAttr);
updateNoteTC(idxOdl);
}
@@ -538,7 +542,7 @@ namespace MoonProTablet.WebUserControls
bool showWarn = false;
try
{
showWarn = DataLayer.obj.taAnagArt.getByCod(CodArtSel)[0].FlagIsNew;
showWarn = DataLayerObj.taAnagArt.getByCod(CodArtSel)[0].FlagIsNew;
}
catch (Exception exc)
{
@@ -560,16 +564,16 @@ namespace MoonProTablet.WebUserControls
inputComandoMapo inCmd2;
DS_applicazione.StatoMacchineRow rigaStato = selData.mng.rigaStato(idxMaccCurr);
// ricavo codice articolo...
string CodArticolo = DataLayer.obj.taODL.getByIdx(idxODL, false)[0].CodArticolo;
string CodArticolo = DataLayerObj.taODL.getByIdx(idxODL, false)[0].CodArticolo;
// processo evento...
inCmd = controllerMapo.scriviRigaEventoBarcode(idxMaccCurr, idxEvento, CodArticolo, "", DataLayer.MatrOpr, rigaStato.pallet);
inCmd = controllerMapo.scriviRigaEventoBarcode(idxMaccCurr, idxEvento, CodArticolo, "", DataLayerObj.MatrOpr, rigaStato.pallet);
// se la macchina è MULTI (cod#tavola) e sonoa INIZIO/FINE attrezzaggio (idxEv <=2) oppure FINE PROD processo ANCHE per la macchina madre...
if (idxMaccCurr.IndexOf('#') > 0 && (idxEvento <= 2 || idxEvento == 7))
{
inCmd2 = controllerMapo.scriviRigaEventoBarcode(idxMaccParent, idxEvento, CodArticolo, "", DataLayer.MatrOpr, rigaStato.pallet);
inCmd2 = controllerMapo.scriviRigaEventoBarcode(idxMaccParent, idxEvento, CodArticolo, "", DataLayerObj.MatrOpr, rigaStato.pallet);
}
// chiamo refresh MSE
DataLayer.obj.taMSE.forceRecalc(0, idxMaccCurr);
DataLayerObj.taMSE.forceRecalc(0, idxMaccCurr);
// invalido la cache di selData
selData.mng.invalidateCache();
lblOut.Text = userMsg;
@@ -630,13 +634,13 @@ namespace MoonProTablet.WebUserControls
if (enableRPO)
{
// leggo info da promessa...
var rigaProm = DataLayer.obj.taPODL.getByKey(idxODL)[0];
var rigaProm = DataLayerObj.taPODL.getByKey(idxODL)[0];
answ = rigaProm.TCAssegnato;
}
else
{
// leggo idxOdl da ultimo odl attivo x macchina
DS_ProdTempi.ODLRow rigaOdl = DataLayer.obj.taODL.getByIdx(idxODL, false)[0];
DS_ProdTempi.ODLRow rigaOdl = DataLayerObj.taODL.getByIdx(idxODL, false)[0];
answ = rigaOdl.TCAssegnato;
}
}
@@ -690,13 +694,13 @@ namespace MoonProTablet.WebUserControls
// splitto VECCHIO ODL (se è rimasto qualcosa da produrre e se ce ne è rimasto uno.......)
try
{
idxODL = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
DataLayer.obj.taODL.splitODL(idxODL, DataLayer.MatrOpr, idxMacchina, TCAssegnato(idxODL), PzPallet, string.Format("inizio attrezzaggio, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxODL, TCAssegnato(idxODL)), false);
idxODL = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
DataLayerObj.taODL.splitODL(idxODL, DataLayerObj.MatrOpr, idxMacchina, TCAssegnato(idxODL), PzPallet, string.Format("inizio attrezzaggio, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxODL, TCAssegnato(idxODL)), false);
// se è multi processo ANCHE x altra tavola...
if (isMulti)
{
int _idxOdl = DataLayer.obj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
DataLayer.obj.taODL.splitODL(_idxOdl, DataLayer.MatrOpr, idxMaccAltraTav, TCAssegnato(_idxOdl), PzPallet, string.Format("inizio attrezzaggio, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", _idxOdl, TCAssegnato(_idxOdl)), false);
int _idxOdl = DataLayerObj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
DataLayerObj.taODL.splitODL(_idxOdl, DataLayerObj.MatrOpr, idxMaccAltraTav, TCAssegnato(_idxOdl), PzPallet, string.Format("inizio attrezzaggio, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", _idxOdl, TCAssegnato(_idxOdl)), false);
}
}
catch
@@ -706,15 +710,15 @@ namespace MoonProTablet.WebUserControls
if (enableRPO)
{
// creo nuovo ODL da promessa ed associo
DataLayer.obj.taODL.inizioSetupPromessa(idxODLSel, DataLayer.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text);
DataLayerObj.taODL.inizioSetupPromessa(idxODLSel, DataLayerObj.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text);
// salvo ODL attrezzato
idxODL_curr = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
idxODL_curr = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
}
// ODL classico
else
{
// avvio NUOVO ODL
DataLayer.obj.taODL.inizioSetup(idxODLSel, DataLayer.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text);
DataLayerObj.taODL.inizioSetup(idxODLSel, DataLayerObj.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text);
// salvo ODL Current
idxODL_curr = idxODLSel;
}
@@ -726,7 +730,7 @@ namespace MoonProTablet.WebUserControls
processaEvento(idxMacchina, idxEvento, sb.ToString(), idxODL_curr);
// 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, taskType.startSetup, $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL_curr}");
DataLayerObj.addTask4Machine(idxMacchina, taskType.startSetup, $"TS:{ts}|MATR:{DataLayerObj.MatrOpr}|ODL:{idxODL_curr}");
// se è multi CHIUDO ODL x altra tavola...
if (isMulti)
{
@@ -736,10 +740,10 @@ namespace MoonProTablet.WebUserControls
int idxOdlAltra = 0;
try
{
var tabOdl = DataLayer.obj.taODL.getByMacchina(idxMaccAltraTav);
var tabOdl = DataLayerObj.taODL.getByMacchina(idxMaccAltraTav);
if (tabOdl.Rows.Count > 0)
{
idxOdlAltra = DataLayer.obj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
idxOdlAltra = DataLayerObj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
}
}
catch (Exception exc)
@@ -750,7 +754,7 @@ namespace MoonProTablet.WebUserControls
if (idxOdlAltra > 0)
{
sb.AppendLine("---");
DataLayer.obj.taODL.fineProd(idxOdlAltra, idxMaccAltraTav);
DataLayerObj.taODL.fineProd(idxOdlAltra, idxMaccAltraTav);
evText = "Registrato inizio attrezzaggio per ODL {0} (setup seconda tavola)";
sb.AppendLine(String.Format(evText, idxOdlAltra));
processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
@@ -761,9 +765,9 @@ namespace MoonProTablet.WebUserControls
checkAll();
}
// resetto contapezzi redis...
DataLayer.saveCounter(idxMacchina, "0");
DataLayerObj.saveCounter(idxMacchina, "0");
// imposto ODL su redis...
DataLayer.saveCurrODL(idxMacchina, idxODL_curr.ToString());
DataLayerObj.saveCurrODL(idxMacchina, idxODL_curr.ToString());
}
else
{
@@ -789,16 +793,16 @@ namespace MoonProTablet.WebUserControls
TCRichAttr = TCAssegnato(idxODLSel);
}
// leggo idxOdl da ultimo odl attivo x macchina
int idxODL = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int idxODL = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int idxEvento = 1; // !!!HARD CODED
// aggiorno (se necessario) note e tempo setup
DataLayer.obj.taODL.updateSetup(idxODL, DataLayer.MatrOpr, TCRichAttr, PzPallet, txtNote.Text);
DataLayerObj.taODL.updateSetup(idxODL, DataLayerObj.MatrOpr, TCRichAttr, PzPallet, txtNote.Text);
// controllo se TC Assegnato != TCRichiesto allora invio email x verifiche...
DS_ProdTempi.ODLRow rigaOdl = DataLayer.obj.taODL.getByIdx(idxODL, false)[0];
DS_ProdTempi.ODLRow rigaOdl = DataLayerObj.taODL.getByIdx(idxODL, false)[0];
if (rigaOdl.TCAssegnato != TCRichAttr)
{
// invio email!
DataLayer.obj.sendWarnTcChangeReq(memLayer.ML.CRS("_adminEmail"));
DataLayerObj.sendWarnTcChangeReq(memLayer.ML.CRS("_adminEmail"));
}
// processo chiusura setup
string evText = "Registrata inizio produzione per ODL {0}";
@@ -807,13 +811,13 @@ namespace MoonProTablet.WebUserControls
processaEvento(idxMacchina, idxEvento, sb.ToString(), idxODL);
// 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, taskType.stopSetup, $"TS:{ts}|MATR:{DataLayer.MatrOpr}|ODL:{idxODL}");
//DataLayerObj.addTask4Machine(idxMacchina, "stopSetup", $"TS:{ts}|MATR:{DataLayerObj.MatrOpr}|ODL:{idxODL}");
DataLayerObj.addTask4Machine(idxMacchina, taskType.stopSetup, $"TS:{ts}|MATR:{DataLayerObj.MatrOpr}|ODL:{idxODL}");
// se è multi processo chiusura setup x altra tavola...
if (isMulti)
{
sb.AppendLine("---");
int idxOdlAltra = DataLayer.obj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
int idxOdlAltra = DataLayerObj.taODL.getByMacchina(idxMaccAltraTav)[0].IdxODL;
sb.AppendLine(String.Format(evText, idxOdlAltra));
processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
}
@@ -837,7 +841,7 @@ namespace MoonProTablet.WebUserControls
protected void lbtEndProd_Click(object sender, EventArgs e)
{
// leggo idxOdl da ultimo odl attivo x macchina
int idxODL = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int idxODL = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int idxEvento = 7; // !!!HARD CODED
// confermo prod vecchio ODL
@@ -850,7 +854,7 @@ namespace MoonProTablet.WebUserControls
try
{
// processo x macchina selezionata
DataLayer.obj.taODL.fineProd(idxODL, idxMacchina);
DataLayerObj.taODL.fineProd(idxODL, idxMacchina);
string evText = "Registrata fine produzione per ODL {0}";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODL));
@@ -862,7 +866,7 @@ namespace MoonProTablet.WebUserControls
int idxOdlAltra = 0;
string _idxOdl = idxOdlAltraMacc;
int.TryParse(_idxOdl, out idxOdlAltra);
DataLayer.obj.taODL.fineProd(idxOdlAltra, idxMaccAltraTav);
DataLayerObj.taODL.fineProd(idxOdlAltra, idxMaccAltraTav);
sb.AppendLine(String.Format(evText, idxOdlAltra));
processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
}
@@ -881,7 +885,7 @@ namespace MoonProTablet.WebUserControls
try
{
// effettuo split su nuovo ODL
DataLayer.obj.taODL.splitODL(idxODL, DataLayer.MatrOpr, idxMacchina, TCAssegnato(idxODL), PzPallet, string.Format("Fine Produzione, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxODL, TCAssegnato(idxODL)), false);
DataLayerObj.taODL.splitODL(idxODL, DataLayerObj.MatrOpr, idxMacchina, TCAssegnato(idxODL), PzPallet, string.Format("Fine Produzione, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxODL, TCAssegnato(idxODL)), false);
// processo chiusura setup
processaEvento(idxMacchina, idxEvento, String.Format("Registrata fine produzione per ODL {0}, nuovo ODL per quantità residua", idxODL), idxODL);
@@ -892,7 +896,7 @@ namespace MoonProTablet.WebUserControls
string _idxOdl = idxOdlAltraMacc;
int.TryParse(_idxOdl, out idxOdlAltra);
// effettuo split su nuovo ODL
DataLayer.obj.taODL.splitODL(idxOdlAltra, DataLayer.MatrOpr, idxMaccAltraTav, TCAssegnato(idxOdlAltra), PzPallet, string.Format("Fine Produzione, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxOdlAltra, TCAssegnato(idxOdlAltra)), false);
DataLayerObj.taODL.splitODL(idxOdlAltra, DataLayerObj.MatrOpr, idxMaccAltraTav, TCAssegnato(idxOdlAltra), PzPallet, string.Format("Fine Produzione, Sospensione ODL {0}, generato residuo con pari TCiclo: {1}", idxOdlAltra, TCAssegnato(idxOdlAltra)), false);
// processo chiusura setup
processaEvento(idxMaccAltraTav, idxEvento, String.Format("Registrata fine produzione per ODL {0}, nuovo ODL per quantità residua", idxOdlAltra), idxOdlAltra);
}
@@ -907,7 +911,7 @@ namespace MoonProTablet.WebUserControls
}
}
// resetto ODL su redis...
DataLayer.emptyCurrODL(idxMacchina);
DataLayerObj.emptyCurrODL(idxMacchina);
// aggiorno visualizzazione
checkAll();
// sollevo evento!
@@ -926,15 +930,15 @@ namespace MoonProTablet.WebUserControls
if (confZero)
{
// confermo produzione ZERO pezzi (in setup)
DataLayer.obj.confermaProdMacchina(idxMacchina, memLayer.ML.CRI("modoConfProd"), 0, 0, DateTime.Now);
DataLayerObj.confermaProdMacchina(idxMacchina, memLayer.ML.CRI("modoConfProd"), 0, 0, DateTime.Now);
}
else // se NON sono in setup verifico se ho pz da confermare
{
// recupero pz da confermare
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd = DataLayer.obj.taPzProd2conf.GetData(idxMacchina)[0];
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd = DataLayerObj.taPzProd2conf.GetData(idxMacchina)[0];
if (rigaProd.pezziNonConfermati > 0)
{
DataLayer.obj.confermaProdMacchina(idxMacchina, memLayer.ML.CRI("modoConfProd"), rigaProd.pezziNonConfermati, 0, DateTime.Now);
DataLayerObj.confermaProdMacchina(idxMacchina, memLayer.ML.CRI("modoConfProd"), rigaProd.pezziNonConfermati, 0, DateTime.Now);
}
}
}
@@ -948,7 +952,7 @@ namespace MoonProTablet.WebUserControls
bool splitOdl = true;
fixSplitBtn(splitOdl);
// recupero current idx
int currODL = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int currODL = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
updateTempoTc(currODL, true);
updateNoteTC(currODL);
}
@@ -976,7 +980,7 @@ namespace MoonProTablet.WebUserControls
protected void lbtSplitODL_Click(object sender, EventArgs e)
{
// chiamo stored che genera nuovo ODL, mette note e tempo, chiude vecchi e assegna nuovo...
int currODL = DataLayer.obj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int currODL = DataLayerObj.taODL.getByMacchina(idxMacchina)[0].IdxODL;
int idxEvento = 1; // !!!HARD CODED
// controllo se TC è valorizzato..
if (TCRichAttr == 0)
@@ -988,13 +992,13 @@ namespace MoonProTablet.WebUserControls
confermaProdOdl(false);
// effettuo split su nuovo ODL
DataLayer.obj.taODL.splitODL(currODL, DataLayer.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text, true);
DataLayerObj.taODL.splitODL(currODL, DataLayerObj.MatrOpr, idxMacchina, TCRichAttr, PzPallet, txtNote.Text, true);
// resetto ODL su redis...
DataLayer.emptyCurrODL(idxMacchina);
DataLayerObj.emptyCurrODL(idxMacchina);
// invio email!
DataLayer.obj.sendWarnTcChangeReq(memLayer.ML.CRS("_adminEmail"));
DataLayerObj.sendWarnTcChangeReq(memLayer.ML.CRS("_adminEmail"));
// processo chiusura setup
processaEvento(idxMacchina, idxEvento, String.Format("Registrato Riattrezzaggio ODL (old: {0})", currODL), currODL);
// sistemo buttons!
@@ -1059,7 +1063,7 @@ namespace MoonProTablet.WebUserControls
{
try
{
testo = DataLayer.obj.taODL.getByIdx(idxOdl, false)[0].Note;
testo = DataLayerObj.taODL.getByIdx(idxOdl, false)[0].Note;
}
catch
{ }
@@ -1079,13 +1083,13 @@ namespace MoonProTablet.WebUserControls
int pzPallet = 1;
if (enableRPO && !inAttr)
{
var rigaProm = DataLayer.obj.taPODL.getByKey(idxOdlPodl)[0];
var rigaProm = DataLayerObj.taPODL.getByKey(idxOdlPodl)[0];
_TCRichAttr = rigaProm.TCAssegnato;
pzPallet = rigaProm.PzPallet;
}
else
{
DS_ProdTempi.ODLRow rigaOdl = DataLayer.obj.taODL.getByIdx(idxOdlPodl, false)[0];
DS_ProdTempi.ODLRow rigaOdl = DataLayerObj.taODL.getByIdx(idxOdlPodl, false)[0];
if (rigaOdl.TCRichAttr > 0)
{
_TCRichAttr = rigaOdl.TCRichAttr;
@@ -1104,8 +1108,8 @@ namespace MoonProTablet.WebUserControls
protected void lbtConfNewRevProd_Click(object sender, EventArgs e)
{
// chiamo stored x allineare revProd a revUT
string CodArticolo = DataLayer.obj.taODL.getByIdx(idxODLSel, false)[0].CodArticolo;
DataLayer.obj.taAnagArt.setNewRev(CodArticolo);
string CodArticolo = DataLayerObj.taODL.getByIdx(idxODLSel, false)[0].CodArticolo;
DataLayerObj.taAnagArt.setNewRev(CodArticolo);
checkBtnStatus();
}
/// <summary>
@@ -1150,7 +1154,7 @@ namespace MoonProTablet.WebUserControls
// se ho trovato...
if (idxOdlAltra > 0)
{
DataLayer.obj.taODL.dividiDaAltraTav(idxOdlAltra, DataLayer.MatrOpr, idxMacchina);
DataLayerObj.taODL.dividiDaAltraTav(idxOdlAltra, DataLayerObj.MatrOpr, idxMacchina);
// messaggio utente
string evText = "Registrata inizio attrezzaggio da split ODL {0} (come da altra tavola)";
StringBuilder sb = new StringBuilder();
@@ -1173,7 +1177,7 @@ namespace MoonProTablet.WebUserControls
protected void lbtReopOdlSuTav_Click(object sender, EventArgs e)
{
// chiamo stored x riprendere ODL (toglie data chiusura...)
DS_ProdTempi.ODLDataTable tabRes = DataLayer.obj.taODL.reopenGetLast(idxMacchina);
DS_ProdTempi.ODLDataTable tabRes = DataLayerObj.taODL.reopenGetLast(idxMacchina);
if (tabRes.Rows.Count > 0)
{
var riga = tabRes[0];
@@ -1200,8 +1204,8 @@ namespace MoonProTablet.WebUserControls
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);
string outData = $"TS:{ts}|MATR:{DataLayerObj.MatrOpr}|ODL:{idxOdlMacc}";
DataLayerObj.addTask4Machine(idxMacchina, taskType.fixStopSetup, outData);
outData = "Inserita richiesta invio Fix chiusura attrezzaggio " + outData;
lblOut.Text = outData;
}
@@ -13,6 +13,7 @@ namespace MoonProTablet.WebUserControls
{
public partial class mod_sendParameters : System.Web.UI.UserControl
{
DataLayer DataLayerObj = new DataLayer();
protected void Page_Load(object sender, EventArgs e)
{
}
@@ -37,14 +38,14 @@ namespace MoonProTablet.WebUserControls
/// <returns></returns>
public List<objItem> GetParameters()
{
List<objItem> dcList = DataLayer.getCurrObjItems(idxMacchina);
List<objItem> dcList = DataLayerObj.getCurrObjItems(idxMacchina);
return dcList;
}
public void updateParameter(string Original_uid, string reqValue)
{
// recupero items...
List<objItem> dcList = DataLayer.getCurrObjItems(idxMacchina);
List<objItem> dcList = DataLayerObj.getCurrObjItems(idxMacchina);
// cerco quello da aggiornare
objItem trovato = dcList.Find(obj => obj.uid == Original_uid);
List<objItem> list2Update = new List<objItem>();
@@ -55,9 +56,9 @@ namespace MoonProTablet.WebUserControls
trovato.reqValue = reqValue;
trovato.lastRequest = DateTime.Now;
list2Update.Add(trovato);
DataLayer.upsertCurrObjItems(idxMacchina, list2Update);
DataLayerObj.upsertCurrObjItems(idxMacchina, list2Update);
// accodo in task 2 exe la richiesta di processing
DataLayer.addTask4Machine(idxMacchina, taskType.setParameter, trovato.uid);
DataLayerObj.addTask4Machine(idxMacchina, taskType.setParameter, trovato.uid);
}
}
protected void lbtReload_Click(object sender, EventArgs e)
+9 -2
View File
@@ -16,10 +16,17 @@ namespace MapoDb
//string mdbConnString = "mongodb://localhost:27017";
MongoClient client;
#endif
/// <summary>
/// Database corrente MongoDB
/// </summary>
IMongoDatabase database;
/// <summary>
/// Oggetto privato datalayer
/// </summary>
DataLayer DataLayerObj;
/// <summary>
/// Classe gestione archivio allarmi
/// </summary>
@@ -32,7 +39,7 @@ namespace MapoDb
#endif
database = memLayer.ML.getMongoDatabase("MAPO");
DataLayerObj = new DataLayer();
}
/// <summary>
/// Singleton gestione istanza AlarmsManager
@@ -63,7 +70,7 @@ namespace MapoDb
var collAlarmEvents = database.GetCollection<alarmEvent>("AlarmEvents");
List<rawData> lastFluxLog = new List<rawData>();
DS_applicazione.FluxLogDataTable tabDati = DataLayer.obj.taFL.getFiltOrd(idxMacchina, adesso.AddMinutes(-lastMinutes), adesso, true);
DS_applicazione.FluxLogDataTable tabDati = DataLayerObj.taFL.getFiltOrd(idxMacchina, adesso.AddMinutes(-lastMinutes), adesso, true);
if (tabDati.Count > 0)
{
// chiamo procedura x conversione
+52 -59
View File
@@ -241,13 +241,6 @@ namespace MapoDb
}
}
#if false
/// <summary>
/// oggetto static per fare chiamate sul magazzino
/// </summary>
public static DataLayer obj = new DataLayer();
#endif
#endregion
#region utility interne
@@ -323,7 +316,7 @@ namespace MapoDb
bool answ = false;
try
{
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd = DataLayer.obj.taPzProd2conf.GetData(idxMacchina.ToString())[0];
DS_ProdTempi.stp_PzProd_getByMacchinaRow rigaProd = taPzProd2conf.GetData(idxMacchina.ToString())[0];
// chiamo stored stp_ConfermaProduzCompleta(idxMacchina,MatrApp,dataFrom,dataTo,pezziConf)
taPzProd2conf.stp_ConfermaProduzCompleta(idxMacchina, MatrOpr, rigaProd.DataFrom, DataOraApp, numPzConfermati, numPzScarto, modoConfProd, DataOraApp, true);
//taPzProd2conf.stp_ConfermaProduzCompleta(idxMacchina, MatrOpr, rigaProd.DataFrom, rigaProd.DataTo, numPzConfermati, numPzScarto, modoConfProd, DateTime.Now, true);
@@ -480,7 +473,7 @@ namespace MapoDb
/// <summary>
/// MatrOpr in sessione
/// </summary>
public static int MatrOpr
public int MatrOpr
{
get
{
@@ -501,7 +494,7 @@ namespace MapoDb
/// <summary>
/// Cognome Nome da MatrOpr in sessione
/// </summary>
public static string CognomeNomeOpr
public string CognomeNomeOpr
{
get
{
@@ -509,7 +502,7 @@ namespace MapoDb
string answ = "";
try
{
DS_applicazione.AnagraficaOperatoriRow oper = DataLayer.obj.taOp.getByMatrOpr(MatrOpr)[0];
DS_applicazione.AnagraficaOperatoriRow oper = taOp.getByMatrOpr(MatrOpr)[0];
answ = string.Format("{0} {1}", oper.Cognome, oper.Nome);
}
catch
@@ -526,7 +519,7 @@ namespace MapoDb
/// <param name="dtCurr"></param>
/// <param name="contatore"></param>
/// <returns></returns>
public static string processInput(string idxMacchina, string valore, string dtEve, string dtCurr, string contatore)
public string processInput(string idxMacchina, string valore, string dtEve, string dtCurr, string contatore)
{
string answ = "";
// 2018.10.26 controllo dtEve e dtCurr
@@ -618,7 +611,7 @@ namespace MapoDb
// instanzio un nuovo oggetto MapoDb
MapoDb connDb = new MapoDb();
// se abilitato registro evento sul DB
if (idxMacchina != "" && DataLayer.sLogEnab(idxMacchina))
if (idxMacchina != "" && sLogEnab(idxMacchina))
{
connDb.saveSigLog(idxMacchina, valore, dataOraEvento, contatore);
}
@@ -628,7 +621,7 @@ namespace MapoDb
// scrivo keep alive!!! (se necessario, altrimenti è in cache...)
connDb.scriviKeepAlive(idxMacchina, DateTime.Now);
// verifico se sia una macchina MULTI ed in tal caso calcolo i SUB-systems e CHIAMERO' alla fine pure loro....
if (DataLayer.isMulti(idxMacchina))
if (isMulti(idxMacchina))
{
// inizio preprocessing
string newVal = "";
@@ -723,7 +716,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="valore"></param>
/// <returns></returns>
private static string preProcInput(string idxMacchina, string valore)
private string preProcInput(string idxMacchina, string valore)
{
string newVal = "";
try
@@ -736,10 +729,10 @@ namespace MapoDb
int NumBit = 0;
int newValInt = 0;
// recupero parametri...
int.TryParse(DataLayer.mDatiMacchinaVal(idxMacchina, "BitFilt"), out BitFilt);
int.TryParse(DataLayer.mDatiMacchinaVal(idxMacchina, "BSR"), out BSR);
Boolean.TryParse(DataLayer.mDatiMacchinaVal(idxMacchina, "ExplodeBit"), out ExplodeBit);
int.TryParse(DataLayer.mDatiMacchinaVal(idxMacchina, "NumBit"), out NumBit); // non usato (x ora)
int.TryParse(mDatiMacchinaVal(idxMacchina, "BitFilt"), out BitFilt);
int.TryParse(mDatiMacchinaVal(idxMacchina, "BSR"), out BSR);
Boolean.TryParse(mDatiMacchinaVal(idxMacchina, "ExplodeBit"), out ExplodeBit);
int.TryParse(mDatiMacchinaVal(idxMacchina, "NumBit"), out NumBit); // non usato (x ora)
// recupero valore
valINT = int.Parse(valore, NumberStyles.HexNumber);
// filtro
@@ -775,7 +768,7 @@ namespace MapoDb
/// <param name="dtCurr"></param>
/// <param name="contatore"></param>
/// <returns></returns>
public static string processFluxLog(string idxMacchina, string flux, string valore, string dtEve, string dtCurr, int contatore)
public string processFluxLog(string idxMacchina, string flux, string valore, string dtEve, string dtCurr, int contatore)
{
// instanzio un nuovo oggetto MapoDb
MapoDb connDb = new MapoDb();
@@ -860,7 +853,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="liveData">Dati live nel formato di lista di KVP chiave/valore1</param>
/// <returns></returns>
public static string processLiveJson(string idxMacchina, liveIOB liveData)
public string processLiveJson(string idxMacchina, liveIOB liveData)
{
if (liveData == null)
{
@@ -913,7 +906,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="liveData">Dati live nel formato chiave1|valore1#chiave2|valore2#chiave3|valore3</param>
/// <returns></returns>
public static string processLiveRec(string idxMacchina, string liveData)
public string processLiveRec(string idxMacchina, string liveData)
{
if (liveData == null)
{
@@ -989,7 +982,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="counter">contapezzi</param>
/// <returns></returns>
public static string saveCounter(string idxMacchina, string counter)
public string saveCounter(string idxMacchina, string counter)
{
// registro conteggio impiego chiamate REDIS
if (memLayer.ML.CRB("IOB_RedEnab"))
@@ -1048,7 +1041,7 @@ namespace MapoDb
/// <param name="idxMacchina">Macchina</param>
/// <param name="qty">Pezzi da registrare</param>
/// <returns></returns>
public static string saveCaricoPezzi(string idxMacchina, string qty)
public string saveCaricoPezzi(string idxMacchina, string qty)
{
// default: 0, non registrato come cautela...
string answ = "0";
@@ -1085,7 +1078,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="currMemMap"></param>
/// <returns></returns>
public static bool setIobMemMap(string idxMacchina, plcMemMap currMemMap)
public bool setIobMemMap(string idxMacchina, plcMemMap currMemMap)
{
bool answ = false;
// se ho un area memoria valida...
@@ -1102,7 +1095,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static List<objItem> getCurrObjItems(string idxMacchina)
public List<objItem> getCurrObjItems(string idxMacchina)
{
string serVal = memLayer.ML.getRSV(currParametersHash(idxMacchina));
List<objItem> actValues = new List<objItem>();
@@ -1126,7 +1119,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static List<objItem> getCurrObjItemsPendigWrite(string idxMacchina)
public List<objItem> getCurrObjItemsPendigWrite(string idxMacchina)
{
string serVal = memLayer.ML.getRSV(currParametersHash(idxMacchina));
List<objItem> actValues = new List<objItem>();
@@ -1158,7 +1151,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="currValues"></param>
/// <returns></returns>
public static bool setCurrObjItems(string idxMacchina, List<objItem> currValues)
public bool setCurrObjItems(string idxMacchina, List<objItem> currValues)
{
bool answ = false;
if (currValues != null)
@@ -1174,7 +1167,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="innovations"></param>
/// <returns></returns>
public static bool upsertCurrObjItems(string idxMacchina, List<objItem> innovations)
public bool upsertCurrObjItems(string idxMacchina, List<objItem> innovations)
{
bool answ = false;
if (innovations != null)
@@ -1204,7 +1197,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static string emptyCurrODL(string idxMacchina)
public string emptyCurrODL(string idxMacchina)
{
string answ = "";
try
@@ -1224,7 +1217,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="currODL">cod ODL in produzione, se "" --> non c'è...</param>
/// <returns></returns>
public static string saveCurrODL(string idxMacchina, string currODL)
public string saveCurrODL(string idxMacchina, string currODL)
{
if (currODL == null)
{
@@ -1479,7 +1472,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static Dictionary<string, string> mTaskMacchina(string idxMacchina)
public Dictionary<string, string> mTaskMacchina(string idxMacchina)
{
// hard coded dimensione vettore DatiMacchine
Dictionary<string, string> answ = new Dictionary<string, string>();
@@ -1502,7 +1495,7 @@ namespace MapoDb
/// <param name="taskKey"></param>
/// <param name="taskVal"></param>
/// <returns></returns>
public static bool addTask4Machine(string idxMacchina, taskType taskKey, string taskVal)
public bool addTask4Machine(string idxMacchina, taskType taskKey, string taskVal)
{
bool answ = false;
string currHash = exeTaskHash(idxMacchina);
@@ -1524,7 +1517,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="taskKey"></param>
/// <returns></returns>
public static bool remTask4Machine(string idxMacchina, taskType taskKey)
public bool remTask4Machine(string idxMacchina, taskType taskKey)
{
bool answ = false;
string currHash = exeTaskHash(idxMacchina);
@@ -1551,7 +1544,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static Dictionary<string, string> mOptParMacchina(string idxMacchina)
public Dictionary<string, string> mOptParMacchina(string idxMacchina)
{
// hard coded dimensione vettore DatiMacchine
Dictionary<string, string> answ = new Dictionary<string, string>();
@@ -1575,7 +1568,7 @@ namespace MapoDb
/// <param name="taskKey"></param>
/// <param name="taskVal"></param>
/// <returns></returns>
public static bool addOptPar4Machine(string idxMacchina, string taskKey, string taskVal)
public bool addOptPar4Machine(string idxMacchina, string taskKey, string taskVal)
{
bool answ = false;
string currHash = optParHash(idxMacchina);
@@ -1596,7 +1589,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="taskKey"></param>
/// <returns></returns>
public static bool remOptPar4Machine(string idxMacchina, string taskKey)
public bool remOptPar4Machine(string idxMacchina, string taskKey)
{
bool answ = false;
string currHash = optParHash(idxMacchina);
@@ -1623,7 +1616,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static string forceSplitOdl(string idxMacchina)
public string forceSplitOdl(string idxMacchina)
{
string answ = "KO";
// verifico NON CI SIA un veto a NUOVI split... 2 min di default...
@@ -1660,7 +1653,7 @@ namespace MapoDb
logger.lg.scriviLog($"Invio evento FINE ODL-SPLIT per macchina {idxMacchina}, evento {idxEvento}, articolo {currData[0].CodArticolo}", tipoLog.INFO);
resCmd = MapoDbObj.scriviRigaEventoBarcode(idxMacchina, idxEvento, currData[0].CodArticolo, "ODL-START");
// chiamo refresh MSE
obj.taMSE.forceRecalc(0, idxMacchina);
taMSE.forceRecalc(0, idxMacchina);
// resetto stato macchina...
memLayer.ML.redDelKey(currStatoMaccHash(idxMacchina));
answ = "OK";
@@ -1685,7 +1678,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static DS_applicazione.StatoMacchineDataTable currSMTab(string idxMacchina)
public DS_applicazione.StatoMacchineDataTable currSMTab(string idxMacchina)
{
DS_applicazione.StatoMacchineDataTable answTab = null;
string rCall = "";
@@ -1726,7 +1719,7 @@ namespace MapoDb
/// Elenco stati macchina
/// </summary>
/// <returns></returns>
public static DS_applicazione.AnagraficaStatiDataTable AnagraficaStati()
public DS_applicazione.AnagraficaStatiDataTable AnagraficaStati()
{
DS_applicazione.AnagraficaStatiDataTable answTab = null;
// cerco in cache...
@@ -1774,7 +1767,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static Dictionary<string, string> mDatiMacchine(string idxMacchina)
public Dictionary<string, string> mDatiMacchine(string idxMacchina)
{
// hard coded dimensione vettore DatiMacchine
Dictionary<string, string> answ = new Dictionary<string, string>();
@@ -1800,7 +1793,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static Dictionary<string, string> resetDatiMacchina(string idxMacchina)
public Dictionary<string, string> resetDatiMacchina(string idxMacchina)
{
string currHash = dtMaccHash(idxMacchina);
// inizio con un bel reset...
@@ -1893,7 +1886,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static bool insEnab(string idxMacchina)
public bool insEnab(string idxMacchina)
{
bool answ = false;
if (memLayer.ML.CRB("IOB_RedEnab"))
@@ -1928,7 +1921,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static DS_ProdTempi.ODLDataTable currODLRowTab(string idxMacchina)
public DS_ProdTempi.ODLDataTable currODLRowTab(string idxMacchina)
{
DS_ProdTempi.ODLDataTable answTab = null;
string rCall = "";
@@ -1972,7 +1965,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static string currODL(string idxMacchina)
public string currODL(string idxMacchina)
{
string answ = "";
string rCall = "";
@@ -2004,7 +1997,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="forceDb">indica se forzare lettura da db (true) o meno</param>
/// <returns></returns>
public static string currODL(string idxMacchina, bool forceDb)
public string currODL(string idxMacchina, bool forceDb)
{
string answ = "";
// faccio comunque verifica se sia stato letto da poco il valore... x cui anche a fronte di richiesta lettura da DB per 3 sec tengo buono valore in cache redis...
@@ -2035,7 +2028,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static bool sLogEnab(string idxMacchina)
public bool sLogEnab(string idxMacchina)
{
bool answ = false;
if (memLayer.ML.CRB("IOB_RedEnab"))
@@ -2061,7 +2054,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static int pzCounterTC(string idxMacchina)
public int pzCounterTC(string idxMacchina)
{
int answ = -1;
if (memLayer.ML.CRB("IOB_RedEnab"))
@@ -2122,7 +2115,7 @@ namespace MapoDb
/// <param name="datiProdAct"></param>
/// <param name="dataRif"></param>
/// <returns></returns>
private static bool getStatoProd(string idxMacchina, ref DS_ProdTempi.StatoProdDataTable datiProdAct, DateTime dataRif)
private bool getStatoProd(string idxMacchina, ref DS_ProdTempi.StatoProdDataTable datiProdAct, DateTime dataRif)
{
bool answ = false;
try
@@ -2161,7 +2154,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static int pzCounter(string idxMacchina)
public int pzCounter(string idxMacchina)
{
int answ = -1;
string rCall = "";
@@ -2192,7 +2185,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static bool isMulti(string idxMacchina)
public bool isMulti(string idxMacchina)
{
bool answ = false;
if (memLayer.ML.CRB("IOB_RedEnab"))
@@ -2225,7 +2218,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static KeyValuePair<string, string>[] getMSMI_DB(string idxMacchina)
public KeyValuePair<string, string>[] getMSMI_DB(string idxMacchina)
{
DS_applicazione.MSFDDataTable tabMSMI = new DS_applicazione.MSFDDataTable();
// 2017.09.13: inserisco gestione singleton condizionale
@@ -2257,7 +2250,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static KeyValuePair<string, string>[] mTabMSMI(string idxMacchina)
public KeyValuePair<string, string>[] mTabMSMI(string idxMacchina)
{
// hard coded dimensione vettore DatiMacchine
KeyValuePair<string, string>[] answ = new KeyValuePair<string, string>[1];
@@ -2287,7 +2280,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public static KeyValuePair<string, string>[] resetMSMI(string idxMacchina)
public KeyValuePair<string, string>[] resetMSMI(string idxMacchina)
{
string currHash = hMSMI(idxMacchina);
DS_applicazione.MSFDDataTable tabMSMI = new DS_applicazione.MSFDDataTable();
@@ -2324,7 +2317,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxFamIn"></param>
/// <returns></returns>
public static KeyValuePair<string, string>[] mTabSMI(int idxFamIn)
public KeyValuePair<string, string>[] mTabSMI(int idxFamIn)
{
// hard coded dimensione vettore DatiMacchine
KeyValuePair<string, string>[] answ = new KeyValuePair<string, string>[1];
@@ -2354,7 +2347,7 @@ namespace MapoDb
/// </summary>
/// <param name="idxFamIn"></param>
/// <returns></returns>
public static KeyValuePair<string, string>[] resetSMI(int idxFamIn)
public KeyValuePair<string, string>[] resetSMI(int idxFamIn)
{
string currHash = hSMI(idxFamIn);
DS_applicazione.TransizioneIngressiDataTable tabSMI = new DS_applicazione.TransizioneIngressiDataTable();
@@ -2396,7 +2389,7 @@ namespace MapoDb
/// <param name="idxMicroStato"></param>
/// <param name="valoreIn"></param>
/// <returns></returns>
public static string valoreSMI(int idxFamIn, int idxMicroStato, int valoreIn)
public string valoreSMI(int idxFamIn, int idxMicroStato, int valoreIn)
{
string currHash = hSMI(idxFamIn);
string field = string.Format("{0}_{1}", idxMicroStato, valoreIn);
@@ -2408,7 +2401,7 @@ namespace MapoDb
/// <param name="idxMacchina"></param>
/// <param name="chiave"></param>
/// <returns></returns>
public static string mDatiMacchinaVal(string idxMacchina, string chiave)
public string mDatiMacchinaVal(string idxMacchina, string chiave)
{
string answ = "";
try
+2 -1
View File
@@ -47,10 +47,11 @@ public class reportExporter
catch
{ }
DataTable tab = new DataTable();
MapoDb.DataLayer DataLayerObj = new MapoDb.DataLayer();
switch (tipoReport)
{
case reportRichiesto.SchedaODL:
tab = (DataTable)MapoDb.DataLayer.obj.taODL.getByIdx(idxOdl, false);
tab = (DataTable)DataLayerObj.taODL.getByIdx(idxOdl, false);
break;
//case reportRichiesto.RichiestaIntervento:
// tab = (DataTable)TA_app.obj.taInterventiMtz.getByIdx(Convert.ToInt32(idxObj));
+4 -2
View File
@@ -1,4 +1,5 @@
using Microsoft.Reporting.WinForms;
using MapoDb;
using Microsoft.Reporting.WinForms;
using SteamWare;
using System;
using System.Collections.Generic;
@@ -100,6 +101,7 @@ public class reportPrinter
/// <returns>tabella dati</returns>
private DataTable caricaDati(reportRichiesto tipoReport, string idxObj)
{
DataLayer DataLayerObj = new DataLayer();
// calcolo idxODL
int idxOdl = 0;
try
@@ -112,7 +114,7 @@ public class reportPrinter
switch (tipoReport)
{
case reportRichiesto.SchedaODL:
tab = (DataTable)MapoDb.DataLayer.obj.taODL.getByIdx(idxOdl, false);
tab = (DataTable)DataLayerObj.taODL.getByIdx(idxOdl, false);
break;
//case reportRichiesto.RichiestaIntervento:
// tab = (DataTable)TA_app.obj.taInterventiMtz.getByIdx(Convert.ToInt32(idxObj));
+10 -5
View File
@@ -343,15 +343,17 @@ public class resoconti
int answ = 0;
try
{
DataLayer DataLayerObj = new DataLayer();
if (memLayer.ML.CRB("RedEnab"))
{
// recupero SE IMPIEGATO REDIS i valori del Dictionary della macchina...
Dictionary<string, string> datiMacc = DataLayer.mDatiMacchine(idx);
Dictionary<string, string> datiMacc = DataLayerObj.mDatiMacchine(idx);
answ = Convert.ToInt32(datiMacc["IdxStato"]);
}
if (answ == 0)
{
MapoDb.DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow riga = MapoDb.DataLayer.obj.taDatiStatoMacch.GetData(idx, 0)[0];
DS_ProdTempi.stp_repDonati_getLastStatoDurataMacchinaRow riga = DataLayerObj.taDatiStatoMacch.GetData(idx, 0)[0];
answ = riga.idxStato;
}
}
@@ -651,7 +653,8 @@ public class resoconti
else
{
// ciclo su tutte le macchine
var elMacchine = DataLayer.obj.taSelMacc.getAttive();
DataLayer DataLayerObj = new DataLayer();
var elMacchine = DataLayerObj.taSelMacc.getAttive();
foreach (var item in elMacchine)
{
sequenza.Add(new visjsDsGroups
@@ -683,7 +686,8 @@ public class resoconti
{
int index = 0;
// ciclo su tutte le macchine
var elMacchine = DataLayer.obj.taSelMacc.getAttive();
DataLayer DataLayerObj = new DataLayer();
var elMacchine = DataLayerObj.taSelMacc.getAttive();
foreach (var item in elMacchine)
{
sequenza.AddRange(seqSingleMachine(item.value, _intervallo, numSplit, index));
@@ -915,7 +919,8 @@ public class resoconti
_serie.palletChange = false;
try
{
_serie.palletChange = MapoDb.DataLayer.obj.taDatiMacchine.getByIdx(idxMacchina)[0].palletChange;
DataLayer DataLayerObj = new DataLayer();
_serie.palletChange = DataLayerObj.taDatiMacchine.getByIdx(idxMacchina)[0].palletChange;
}
catch
{ }
+5 -3
View File
@@ -10,11 +10,13 @@ public class selData
/// Durata standard cache info
/// </summary>
protected int cacheDuration = 5;
protected DataLayer DataLayerObj;
/// <summary>
/// classe accesso tabelle selettori
/// </summary>
public selData()
{
DataLayerObj = new DataLayer();
}
public static selData mng = new selData();
@@ -27,7 +29,7 @@ public class selData
/// <returns></returns>
public DS_ProdTempi.AnagArticoliDataTable getSelAllArticoli()
{
return DataLayer.obj.taAnagArt.GetData();
return DataLayerObj.taAnagArt.GetData();
}
/// <summary>
/// Riga dettaglio singolo articolo
@@ -62,7 +64,7 @@ public class selData
// se non trovo --> DB!
try
{
DS_ProdTempi.AnagArticoliDataTable tab = DataLayer.obj.taAnagArt.getByCod(codArt);
DS_ProdTempi.AnagArticoliDataTable tab = DataLayerObj.taAnagArt.getByCod(codArt);
if (tab.Rows.Count > 0)
{
answ = tab[0];
@@ -108,7 +110,7 @@ public class selData
// se non trovo --> DB!
try
{
DS_applicazione.StatoMacchineDataTable tab = DataLayer.obj.taStatoMacchine.GetDataByIdxMacchina(idxMacc);
DS_applicazione.StatoMacchineDataTable tab = DataLayerObj.taStatoMacchine.GetDataByIdxMacchina(idxMacc);
if (tab.Rows.Count > 0)
{
answ = tab[0];