diff --git a/AppData/ComLib.cs b/AppData/ComLib.cs
index ab5dc64..58e7c8c 100644
--- a/AppData/ComLib.cs
+++ b/AppData/ComLib.cs
@@ -376,8 +376,9 @@ namespace AppData
public static bool sendMaterials()
{
bool answ = false;
- // leggo tab MNATERIALS da DB
- var table = DataLayer.man.taMat.GetData();
+ // leggo tab MATERIALS da DB
+ DataLayer DLMan = new DataLayer();
+ var table = DLMan.taMat.GetData();
// serializzo
string redVal = JsonConvert.SerializeObject(table);
// salvo
@@ -457,13 +458,14 @@ namespace AppData
///
public static bool sendFirstValidationBatch()
{
- bool answ = false;
+ DataLayer DLMan = new DataLayer();
+ bool answ = false;
// verifico se NON CI SIANO GIA' validazioni in corso...
- var tabBatchRunning = DataLayer.man.taBL.getByStatus(1, "", 0);
+ var tabBatchRunning = DLMan.taBL.getByStatus(1, "", 0);
if (tabBatchRunning.Count == 0)
{
// ora verifico, se ci sono batch in stato 8 (da validare) --> metto in coda!
- var tabBatch = DataLayer.man.taBL.getByStatus(8, "", 1);
+ var tabBatch = DLMan.taBL.getByStatus(8, "", 1);
bool hasValReq = tabBatch.Count > 0;
if (hasValReq)
{
@@ -482,7 +484,7 @@ namespace AppData
// richiedo!
sendBatchReq(nextBatchId, "Estimation", 1);
// registro su DB nesting iniziato... QUANDO MI RISPONDE dovrò verificare che era un batch x VALIDAZIONE
- DataLayer.man.taBL.updateStatus(nextBatchId, (int)BatchStatus.EstimationRequested, "", 0);
+ DLMan.taBL.updateStatus(nextBatchId, (int)BatchStatus.EstimationRequested, "", 0);
answ = true;
}
}
@@ -499,6 +501,7 @@ namespace AppData
///
public static bool sendBatchReq(int BatchID, string note, int pType)
{
+ DataLayer DLMan = new DataLayer();
bool answ = false;
// per prima cosa mi serve una "nuova busta" per inviare i messaggi
string nextEnv = getNextEnv(BatchID, note);
@@ -506,7 +509,7 @@ namespace AppData
try
{
// in base allo stato del BATCH corrente determino il tempo e le opzioni da inviare...
- var batch = DataLayer.man.taBL.getByKey(BatchID);
+ var batch = DLMan.taBL.getByKey(BatchID);
int mTime = 1;
if (batch[0].STATUS < (int)BatchStatus.EstimationDone)
{
@@ -526,11 +529,11 @@ namespace AppData
List listPart = new List();
// leggo tab ORDINI da DB
- var tblOrd = DataLayer.man.taOL.getByBatch(BatchID);
+ var tblOrd = DLMan.taOL.getByBatch(BatchID);
// leggo tab KIT da DB
- var tblKit = DataLayer.man.taKL.getByBatch(BatchID);
+ var tblKit = DLMan.taKL.getByBatch(BatchID);
// leggo tab ITEMS da DB
- var tblItm = DataLayer.man.taIL.getByBatch(BatchID);
+ var tblItm = DLMan.taIL.getByBatch(BatchID);
// ciclo per comporre oggetto con cicli annidiati ext --> int
foreach (var rigaOrd in tblOrd)
@@ -618,6 +621,7 @@ namespace AppData
{
get
{
+ DataLayer DLMan = new DataLayer();
bool answ = false;
bool valido = false;
// cerco in redis
@@ -629,10 +633,10 @@ namespace AppData
if (!valido)
{
// in primis controllo SE ci siano task running, nel qual caso è false e basta...
- int numEst = DataLayer.man.taBL.getByStatus((int)BatchStatus.EstimationRequested, "", 0).Count;
- int numNest = DataLayer.man.taBL.getByStatus((int)BatchStatus.NestRequested, "", 0).Count;
+ int numEst = DLMan.taBL.getByStatus((int)BatchStatus.EstimationRequested, "", 0).Count;
+ int numNest = DLMan.taBL.getByStatus((int)BatchStatus.NestRequested, "", 0).Count;
// ora controllo anche offline orders...
- int numOffOrd = DataLayer.man.taOffOL.getRunning().Count;
+ int numOffOrd = DLMan.taOffOL.getRunning().Count;
// ora la somma di tutti DEVE essere zero...
answ = ((numEst + numNest + numOffOrd) == 0);
// salvo in redis
@@ -690,7 +694,7 @@ namespace AppData
{
// aggiorno su DB il disegno...
string disegno = sheets[0].Drawing;
- DataLayer.man.taOffOL.updateDrawing(OffOrderID, disegno);
+ DLMan.taOffOL.updateDrawing(OffOrderID, disegno);
}
}
}
@@ -717,6 +721,7 @@ namespace AppData
///
public static bool sendOfflineOrderReq(int OffOrderID, string note)
{
+ DataLayer DLMan = new DataLayer();
bool answ = false;
// per prima cosa mi serve una "nuova busta" per inviare i messaggi
string nextEnv = getNextEnv(OffOrderID, note);
@@ -727,7 +732,7 @@ namespace AppData
// FIX pType a ESTIM
int pType = 1;
// ora ITEMS
- var tblItm = DataLayer.man.taIL.getByOfflineOrder(OffOrderID);
+ var tblItm = DLMan.taIL.getByOfflineOrder(OffOrderID);
// init oggetti x fare cicli...
Order currOrder = null;
@@ -811,6 +816,7 @@ namespace AppData
///
public static bool checkOfflineOrderReq(int OffOrderID)
{
+ DataLayer DLMan = new DataLayer();
bool answ = false;
string typeSearch = "OffOrdCalculation";
string keyEnv = "";
@@ -840,7 +846,7 @@ namespace AppData
// se ho in risposta drawing
if (!string.IsNullOrEmpty(offOrder.DrawingPath))
{
- DataLayer.man.taOffOL.updateDrawing(OffOrderID, offOrder.DrawingPath, offOrder.CncPath);
+ DLMan.taOffOL.updateDrawing(OffOrderID, offOrder.DrawingPath, offOrder.CncPath);
}
}
// restituisco ok
@@ -854,7 +860,8 @@ namespace AppData
public static void resetPrevDataFromNesting(int BatchID)
{
//elimino dati child MA NON il batch...
- DataLayer.man.taBL.deleteTree(BatchID, 0);
+ DataLayer DLMan = new DataLayer();
+ DLMan.taBL.deleteTree(BatchID, 0);
}
///
/// Salvo dati Bunks/Sheets/Parts ricevuti da Nesting (COMPETATO)
@@ -863,13 +870,14 @@ namespace AppData
///
public static void updateBunksFromNesting(int BatchID, List BunkList)
{
+ DataLayer DLMan = new DataLayer();
// inizio a processare... bunks!
if (BunkList != null)
{
foreach (var bunk in BunkList)
{
// creo il BUNK!
- var newBunk = DataLayer.man.taSTL.insertAndReturn(bunk.BunkIndex, BatchID);
+ var newBunk = DLMan.taSTL.insertAndReturn(bunk.BunkIndex, BatchID);
// se ho un bunk in risposta...
if (newBunk.Count == 1)
{
@@ -880,7 +888,7 @@ namespace AppData
foreach (var sheet in bunk.SheetList)
{
// creo lo sheet...
- var newSheet = DataLayer.man.taSHL.insertAndReturn(sheet.SheetIndex, sheet.MatId, (decimal)sheet.EstimatedWorktime, currBunk.StackID, sheet.PrintProgram, sheet.MachiningProgram, sheet.Drawing);
+ var newSheet = DLMan.taSHL.insertAndReturn(sheet.SheetIndex, sheet.MatId, (decimal)sheet.EstimatedWorktime, currBunk.StackID, sheet.PrintProgram, sheet.MachiningProgram, sheet.Drawing);
// se ho 1 sheet in risposta
if (newSheet.Count == 1)
{
@@ -891,13 +899,13 @@ namespace AppData
foreach (var part in sheet.PartList)
{
// aggiungo part a sheet (in tab nesting)
- DataLayer.man.taNest.insertAndReturn(currSheet.SheetID, part.PartId);
+ DLMan.taNest.insertAndReturn(currSheet.SheetID, part.PartId);
}
}
// ora salvo ANCHE i remnants dello sheet... SE ci sono
if (sheet.Remnant != null)
{
- DataLayer.man.taRem.insertAndReturn(BatchID, sheet.MatId, currSheet.SheetID, sheet.Remnant.L_mm, sheet.Remnant.W_mm, false);
+ DLMan.taRem.insertAndReturn(BatchID, sheet.MatId, currSheet.SheetID, sheet.Remnant.L_mm, sheet.Remnant.W_mm, false);
}
}
}
@@ -913,13 +921,14 @@ namespace AppData
///
public static void updateBinsFromNesting(int BatchID, List BinList)
{
+ DataLayer DLMan = new DataLayer();
// inizio a processare... bunks!
if (BinList != null)
{
foreach (var item in BinList)
{
// creo il BIN!
- var newBin = DataLayer.man.taBN.insertAndReturn(item.BinIndex);
+ var newBin = DLMan.taBN.insertAndReturn(item.BinIndex);
// se ho un BIN in risposta...
if (newBin.Count == 1)
{
@@ -930,7 +939,7 @@ namespace AppData
foreach (var part in item.PartList)
{
// creo lo sheet...
- var newB2I = DataLayer.man.taBNLS.insertAndReturn(currBin.BinID, part.PartId);
+ var newB2I = DLMan.taBNLS.insertAndReturn(currBin.BinID, part.PartId);
}
}
}
@@ -944,13 +953,14 @@ namespace AppData
///
public static void updateCartsFromNesting(int BatchID, List CartList)
{
+ DataLayer DLMan = new DataLayer();
// inizio a processare... bunks!
if (CartList != null)
{
foreach (var item in CartList)
{
// creo il CART!
- var newCart = DataLayer.man.taCR.insertAndReturn(item.CartIndex);
+ var newCart = DLMan.taCR.insertAndReturn(item.CartIndex);
// se ho un CART in risposta...
if (newCart.Count == 1)
{
@@ -961,7 +971,7 @@ namespace AppData
foreach (var kit in item.KitList)
{
// creo lo sheet...
- var updKit = DataLayer.man.taKL.updateCart(kit.KitId, currCart.CartID);
+ var updKit = DLMan.taKL.updateCart(kit.KitId, currCart.CartID);
}
}
}
@@ -974,6 +984,7 @@ namespace AppData
///
public static void updatePartsFromNesting(List PartList)
{
+ DataLayer DLMan = new DataLayer();
string PostProcList = "";
string ProcessesReq = "";
string pdfFilePath = "";
@@ -984,7 +995,7 @@ namespace AppData
PostProcList = getPostProcList(currItem.OptParameters);
ProcessesReq = getProcessesReq(currItem.OptParameters);
pdfFilePath = getPdfFilePath(currItem.OptParameters);
- DataLayer.man.taIL.updateFromNesting(currItem.PartId, currItem.MatId, PostProcList, ProcessesReq, pdfFilePath);
+ DLMan.taIL.updateFromNesting(currItem.PartId, currItem.MatId, PostProcList, ProcessesReq, pdfFilePath);
}
}
@@ -1416,8 +1427,9 @@ namespace AppData
///
public static void updateBatchPosition(int BatchID)
{
+ DataLayer DLMan = new DataLayer();
// chiamo stored x checkPosition
- DataLayer.man.taBL.checkPosition(BatchID);
+ DLMan.taBL.checkPosition(BatchID);
}
///
/// Aggiorna la POSITION del BATCH a partire dallo stato dei bunk/stack selezionato
@@ -1427,8 +1439,9 @@ namespace AppData
///
public static void updateBatchPositionByBunk(int BunkID)
{
+ DataLayer DLMan = new DataLayer();
// recupero il BatchID
- DS_App.StackListDataTable tabBunk = DataLayer.man.taSTL.getByKey(BunkID);
+ DS_App.StackListDataTable tabBunk = DLMan.taSTL.getByKey(BunkID);
if (tabBunk.Count > 0)
{
try
@@ -1491,10 +1504,11 @@ namespace AppData
///
public static SheetWorkList prodGetSheetWorkList(string codPost)
{
+ DataLayer DLMan = new DataLayer();
// init out
SheetWorkList answ = null;
// recupero batch corrente
- DS_App.BatchListDataTable currBatch = DataLayer.man.taBL.getCurrentByMachine(codPost);
+ DS_App.BatchListDataTable currBatch = DLMan.taBL.getCurrentByMachine(codPost);
try
{
if (currBatch != null)
@@ -1502,7 +1516,7 @@ namespace AppData
// come batch DOVREI averne solo 1 in corso...
DS_App.BatchListRow batchRow = currBatch[0];
// recupero i vari SHEETS del batch...
- DS_App.SheetListDataTable sheetTable = DataLayer.man.taSHL.getCurrentByBatch(batchRow.BatchID);
+ DS_App.SheetListDataTable sheetTable = DLMan.taSHL.getCurrentByBatch(batchRow.BatchID);
List sheetList = new List();
// controllo che SIA NULL la data di unload --> NON ancora scaricato
foreach (var item in sheetTable)
@@ -1600,12 +1614,13 @@ namespace AppData
///
public static ProdBunk prodGetFirstBunk()
{
+ DataLayer DLMan = new DataLayer();
// cerco prima su REDIS...
ProdBunk answ = redisFirstBunk;
if (answ == null)
{
// vado sul DB e leggo ...
- DS_App.StackListDataTable tabBunks = DataLayer.man.taSTL.getLoaded();
+ DS_App.StackListDataTable tabBunks = DLMan.taSTL.getLoaded();
// controllo di averne almeno 1...
if (tabBunks.Count > 0)
{
@@ -1691,8 +1706,9 @@ namespace AppData
///
public static DS_App.PackListRow getCurrPackList()
{
+ DataLayer DLMan = new DataLayer();
DS_App.PackListRow answ = null;
- var tabPLD = DataLayer.man.taPL.getRunning();
+ var tabPLD = DLMan.taPL.getRunning();
if (tabPLD.Count > 0)
{
answ = tabPLD[0];
@@ -1788,11 +1804,12 @@ namespace AppData
///
public static ProdBunk prodGetNextBunk(int BunkID)
{
+ DataLayer DLMan = new DataLayer();
ProdBunk answ = getRedisNextBunk(BunkID);
if (answ == null)
{
// vado sul DB e leggo ...
- DS_App.StackListDataTable tabBunks = DataLayer.man.taSTL.getLoaded();
+ DS_App.StackListDataTable tabBunks = DLMan.taSTL.getLoaded();
// controllo di averne almeno 1...
if (tabBunks.Count > 0)
{
@@ -1830,6 +1847,7 @@ namespace AppData
///
private static ProdBunk getBunkFromDb(DS_App.StackListRow currBunk)
{
+ DataLayer DLMan = new DataLayer();
ProdBunk answ;
// calcolo attributi oggetti
CStatus currSt = CStatus.Programmed;
@@ -1843,7 +1861,7 @@ namespace AppData
}
List elSheet = new List();
// recupero gli sheets di questo stack...
- DS_App.SheetListDataTable tabSheets = DataLayer.man.taSHL.getByStack(currBunk.StackID);
+ DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(currBunk.StackID);
DateTime dataStart = DateTime.Now;
ProdSheet currPanel;
string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower();
@@ -1910,9 +1928,10 @@ namespace AppData
///
public static ProdBunk prodGetBunk(int StackID)
{
+ DataLayer DLMan = new DataLayer();
ProdBunk answ = null;
List elSheet = new List();
- var tabBunks = DataLayer.man.taSTL.getByKey(StackID);
+ var tabBunks = DLMan.taSTL.getByKey(StackID);
if (tabBunks.Count == 1)
{
DS_App.StackListRow currBunk = tabBunks[0];
@@ -1927,7 +1946,7 @@ namespace AppData
currSt = CStatus.Done;
}
// recupero gli sheets di questo stack...
- DS_App.SheetListDataTable tabSheets = DataLayer.man.taSHL.getByStack(StackID);
+ DS_App.SheetListDataTable tabSheets = DLMan.taSHL.getByStack(StackID);
DateTime dataStart = DateTime.Now;
ProdSheet currPanel;
string nestBasePath = memLayer.ML.CRS("nestBasePath").ToLower();
@@ -2124,6 +2143,7 @@ namespace AppData
///
public static string getCurrentCss(int sheetID)
{
+ DataLayer DLMan = new DataLayer();
// area REDIS!
string redKeyBase = $"{machineUnloadArea(sheetID)}";
// TTL standard
@@ -2138,7 +2158,7 @@ namespace AppData
try
{
// elenco items da foglio!!!
- var tabItems = DataLayer.man.taIL.getBySheet(sheetID);
+ var tabItems = DLMan.taIL.getBySheet(sheetID);
List itemsAll = new List();
List itemsDepo = new List();
List itemsCart = new List();
@@ -2402,10 +2422,11 @@ namespace AppData
{
get
{
+ DataLayer DLMan = new DataLayer();
int answ = 0;
try
{
- var currData = DataLayer.man.taBL.getNextAvailable();
+ var currData = DLMan.taBL.getNextAvailable();
if (currData.Count > 0)
{
answ = currData[0].BatchID;
diff --git a/AppData/DataLayer.cs b/AppData/DataLayer.cs
index 31380df..fee43c2 100644
--- a/AppData/DataLayer.cs
+++ b/AppData/DataLayer.cs
@@ -140,10 +140,12 @@ namespace AppData
#endregion
+#if false
///
/// oggetto static/singleton per fare chiamate sul datalayer
///
- public static DataLayer man = new DataLayer();
+ public static DataLayer man = new DataLayer();
+#endif
public string CodSoggCurrUser
{
diff --git a/NKC_WF/BasePage.cs b/NKC_WF/BasePage.cs
index 7116ede..78f7fa1 100644
--- a/NKC_WF/BasePage.cs
+++ b/NKC_WF/BasePage.cs
@@ -1,4 +1,5 @@
-using SteamWare;
+using AppData;
+using SteamWare;
using System;
using System.IO;
using System.Web.UI;
@@ -7,6 +8,10 @@ namespace NKC_WF
{
public class BasePage : System.Web.UI.Page
{
+ ///
+ /// Membro gestione accessi al datalayer (istanza x ogni classe controllo)
+ ///
+ protected DataLayer DLMan = new DataLayer();
///
/// Wrapper traduzione termini
///
diff --git a/NKC_WF/BaseUserControl.cs b/NKC_WF/BaseUserControl.cs
index 9b8539d..cc48101 100644
--- a/NKC_WF/BaseUserControl.cs
+++ b/NKC_WF/BaseUserControl.cs
@@ -8,6 +8,10 @@ namespace NKC_WF
{
public class BaseUserControl : System.Web.UI.UserControl
{
+ ///
+ /// Membro gestione accessi al datalayer (istanza x ogni classe controllo)
+ ///
+ protected DataLayer DLMan = new DataLayer();
///
/// Generico evento di richiesta refresh a aprent
///
diff --git a/NKC_WF/WebUserControls/cmp_stackNextloading.ascx.cs b/NKC_WF/WebUserControls/cmp_stackNextloading.ascx.cs
index 13cf0af..be05713 100644
--- a/NKC_WF/WebUserControls/cmp_stackNextloading.ascx.cs
+++ b/NKC_WF/WebUserControls/cmp_stackNextloading.ascx.cs
@@ -13,7 +13,7 @@ namespace NKC_WF.WebUserControls
{
// mostra button x collezionare Redo SOLO SE ci sono fogli da rilavorare...
int numRedo = 0;
- var stList = DataLayer.man.taSTL.getByBatch(BatchId);
+ var stList = DLMan.taSTL.getByBatch(BatchId);
foreach (var item in stList)
{
numRedo += item.NumSheetsToRedo;
@@ -64,7 +64,7 @@ namespace NKC_WF.WebUserControls
protected void lbtCollectRedo_Click(object sender, EventArgs e)
{
// chiamo stored x sistemare
- DataLayer.man.taBL.fixRedoSheet(BatchId);
+ DLMan.taBL.fixRedoSheet(BatchId);
doUpdate();
}
@@ -76,7 +76,7 @@ namespace NKC_WF.WebUserControls
protected void lbtCollectRedoOnEnd_Click(object sender, EventArgs e)
{
// chiamo stored x sistemare
- DataLayer.man.taBL.fixRedoSheetOnEnd(BatchId);
+ DLMan.taBL.fixRedoSheetOnEnd(BatchId);
doUpdate();
}