From 7baa52155b707ce0d89390e80cbba2acc0a0b1d6 Mon Sep 17 00:00:00 2001
From: wbc <2597324127@qq.com>
Date: 星期四, 29 八月 2024 09:44:13 +0800
Subject: [PATCH] 增加互斥锁只允许存在一个窗口
---
HandleData/AE_MES_ERP.cs | 51 +++++++++++++++++++++++++++++++++++++++------------
1 files changed, 39 insertions(+), 12 deletions(-)
diff --git a/HandleData/AE_MES_ERP.cs b/HandleData/AE_MES_ERP.cs
index fbf3236..8360e9c 100644
--- a/HandleData/AE_MES_ERP.cs
+++ b/HandleData/AE_MES_ERP.cs
@@ -40,6 +40,9 @@
public bool ErpToMesData(string taskid, DataSet inputds, string operatype, DataRow drSource, ref string msg,ref string flag,string rtaskid)
{
bool result = true;
+
+
+
switch (taskid)
{
//1.ERPBMA閮ㄩ棬淇℃伅琛�(鍚屾鎺ㄩ��)
@@ -141,13 +144,15 @@
case "TB_MESTOERP_SCDDXD"://鎺ㄩ�佸鏍搁�佽揣鍗�
case "TB_MESTOERP_TransferIn"://鍒嗗竷寮忚皟鍏ュ崟
case "TB_MESTOERP_ZJDB"://鐩存帴璋冩嫧鍗�
- result = MesToErp(drSource, ref msg);
+ case "TB_MESTOERP_WWDDXD"://濮斿璁㈠崟涓嬭揪
+ case "TB_MESTOERP_WWCG"://濮斿涓嬫帹閲囪喘
+ result = MesToErp(drSource, ref msg, rtaskid);
break;
case "TB_MESTOERP_GDRK"://ERP宸ュ崟鍏ュ簱鏌ヨ
- result = MesToErp(drSource, ref msg);
+ result = MesToErp(drSource, ref msg, rtaskid);
break;
case "TB_MESTOERP_CGRKLD":
- result = MesToErpLD(drSource, ref msg);
+ result = MesToErpLD(drSource, ref msg, rtaskid);
break;
case "TB_ERPTOMES_XSD":
result = TB_ERPTOMES_XSD(inputds, operatype, ref msg);
@@ -161,7 +166,7 @@
result = TB_ERPTOMES_CGDH(inputds, operatype, ref msg);
break;
case "TB_MESTOERP_ICMO"://瓒呭叆宸ュ崟鐢熸垚
- result = MesToErp(drSource, ref msg);
+ result = MesToErp(drSource, ref msg,rtaskid);
break;
//23.TB_ERPTOMES_GDRK宸ュ崟鍏ュ簱鏁伴噺鏌ヨ(鍚屾鎺ㄩ��)
case "TB_ERPTOMES_GDRK":
@@ -830,7 +835,7 @@
//閫夋嫨鎯宠鐨勫垪鎻掑叆鏂拌〃
DataTable dtHead = dt.DefaultView.ToTable(true, "WLA001", "WLA002", "WLA003", "WLA004", "WLA005", "WLA006", "WLA007", "WLA008", "WLA009", "WLA010", "WLA011", "WLA012", "WLA015", "ERPID", "AUDITING", "WLA013",
"WLA014", "WLA020", "WLA021", "WLA022", "WLA023", "WLA024", "WLA025", "WLA026", "WLA027", "WLA028", "WLA029", "WLA030", "WLA031", "WLA032", "WLA033", "WLA034", "WLA035", "WLA036", "WLA037", "WLA038", "WLA039",
- "WLA040", "WLA041","WLA042", "WLA043", "WLA044", "WLA045", "WLA046", "WLA047", "WLA048", "WLA049", "WLA050", "WLA051", "WLA052", "WLA053", "WLA054", "WLA055","WLA056");
+ "WLA040", "WLA041","WLA042", "WLA043", "WLA044", "WLA045", "WLA046", "WLA047", "WLA048", "WLA049", "WLA050", "WLA051", "WLA052", "WLA053", "WLA054", "WLA055","WLA056", "WLA057", "WLA058");
SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dtHead.Columns.Count];
colMapping[0] = new SqlBulkCopyColumnMapping("WLA001", "WL001"); // 鐗╂枡缂栫爜
@@ -896,6 +901,10 @@
colMapping[51] = new SqlBulkCopyColumnMapping("WLA054", "WL067");
colMapping[52] = new SqlBulkCopyColumnMapping("WLA055", "WL068");
colMapping[53] = new SqlBulkCopyColumnMapping("WLA056", "WL069");
+ colMapping[54] = new SqlBulkCopyColumnMapping("WLA057", "WL070");
+ colMapping[55] = new SqlBulkCopyColumnMapping("WLA058", "WL071");
+
+
return DataTableToSQLServer(dtHead, conStr, "GS_WL", colMapping, ref ErrorMsg);
@@ -929,14 +938,14 @@
WL008='{15}',ERPID='{16}',
WL039='{17}',WL040='{18}',WL041='{19}',WL042='{20}',WL043='{21}',WL044='{22}',WL045='{23}',WL046='{24}',WL047='{25}',WL048='{26}',
WL049='{27}',WL050='{28}',WL051='{29}',WL052='{30}',WL053='{31}',WL054='{32}',WL055='{33}',WL056='{34}',WL057='{35}',WL058='{36}',
- WL059='{37}',WL060='{38}',WL061='{39}',WL062='{40}',WL063='{41}',WL064='{42}',WL065='{43}',WL066='{44}',WL067='{45}',WL068='{46}',WL069='{47}'
+ WL059='{37}',WL060='{38}',WL061='{39}',WL062='{40}',WL063='{41}',WL064='{42}',WL065='{43}',WL066='{44}',WL067='{45}',WL068='{46}',WL069='{47}',WL070='{48}',WL071='{49}'
where WL001='{0}'; ", dr["WLA001"]
, dr["WLA001"], dr["WLA002"], dr["WLA003"], dr["WLA004"], dr["WLA005"], dr["WLA006"], dr["WLA007"]
, dr["WLA008"], dr["WLA009"], dr["WLA010"], dr["WLA011"], dr["WLA015"], dr["WLA013"], dr["WLA014"], dr["WLA025"], dr["ERPID"]
, dr["WLA026"], dr["WLA027"], dr["WLA028"], dr["WLA029"], dr["WLA030"], dr["WLA031"], dr["WLA032"], dr["WLA033"], dr["WLA034"]
, dr["WLA035"], dr["WLA036"], dr["WLA037"], dr["WLA038"], dr["WLA039"], dr["WLA040"], dr["WLA041"], dr["WLA042"], dr["WLA043"]
, dr["WLA044"], dr["WLA045"], dr["WLA046"], dr["WLA047"], dr["WLA048"], dr["WLA049"], dr["WLA050"], dr["WLA051"], dr["WLA052"]
- , dr["WLA053"], dr["WLA054"], dr["WLA055"], dr["WLA056"]
+ , dr["WLA053"], dr["WLA054"], dr["WLA055"], dr["WLA056"], dr["WLA057"], dr["WLA058"]
);
}
//int A = _sqlHelper.ExecuteNonQuery(sqlL);
@@ -1214,7 +1223,7 @@
try
{
DataTable dt = ds.Tables[0];
- if (operatype == "INSERT")
+ if (operatype == "INSERT" || operatype == "UPDATE")
{
#region INSERT
//dt.Columns.Add("MAA005", typeof(string));
@@ -1261,7 +1270,7 @@
GYS005='{5}',
FUseOrgld='{6}'
where ERPID='{0}'; ", dr["ERPID"]
- , dr["GYS001"], dr["GYS002"], dr["GYS003"], dr["GYS004"], dr["GYS005"], dr["FUseOrgld"]);
+ , dr["GYSA001"], dr["GYSA002"], dr["GYSA003"], dr["GYSA004"], dr["GYSA005"], dr["FUseOrgld"]);
}
return _sqlHelper.ExecuteNonQuery(sql) > 0;
#endregion
@@ -3087,8 +3096,11 @@
/// <param name="operatype">鎵ц绫诲瀷</param>
/// <param name="ErrorMsg">閿欒璇存槑</param>
/// <returns></returns>
- private bool MesToErp(DataRow dr, ref string ErrorMsg)
+ private bool MesToErp(DataRow dr, ref string ErrorMsg,string rtaskid)
{
+ string sql = string.Format(@" update sysdec set states='NEWIN' WHERE TASK_ID='{0}' ", rtaskid);
+
+ _sqlHelper.ExecuteNonQuery(sql);
try
{
string task_name = dr["task_name"].ToString();
@@ -3109,6 +3121,11 @@
US.data = data_inserted;
US.op = operatype;
string res = a.Body(US).msg.ToString();
+
+ sql = string.Format(@" update sysdec set states='NEW' WHERE TASK_ID='{0}' ", rtaskid);
+
+ _sqlHelper.ExecuteNonQuery(sql);
+
//string res = a.arg0.ws.MES_TO_ERP_DataTransport(task_name, descript, create_time, creator, operatype, source_table, target_table, data, data_inserted, data_deleted);
if (res.Contains("OK"))
{
@@ -3129,8 +3146,12 @@
}
}
#endregion
- private bool MesToErpLD(DataRow dr, ref string ErrorMsg)
+ private bool MesToErpLD(DataRow dr, ref string ErrorMsg, string rtaskid)
{
+
+ string sql = string.Format(@" update sysdec set states='NEWIN' WHERE TASK_ID='{0}' ", rtaskid);
+
+ _sqlHelper.ExecuteNonQuery(sql);
try
{
string task_name = dr["task_name"].ToString();
@@ -3151,6 +3172,9 @@
US.data = data_inserted;
US.op = operatype;
string res = a.Body(US).msg.ToString();
+
+ sql = string.Format(@" update sysdec set states='NEW' WHERE TASK_ID='{0}' ", rtaskid);
+ _sqlHelper.ExecuteNonQuery(sql);
//string res = a.arg0.ws.MES_TO_ERP_DataTransport(task_name, descript, create_time, creator, operatype, source_table, target_table, data, data_inserted, data_deleted);
if (res.Contains("OK"))
{
@@ -3959,7 +3983,10 @@
colMapping[23] = new SqlBulkCopyColumnMapping("FHB022", "DFB022"); //鍑哄簱涓嬬嚎
colMapping[24] = new SqlBulkCopyColumnMapping("FHB023", "DFB023"); //鏄惁鎺у埗鍑哄簱鏁伴噺
colMapping[25] = new SqlBulkCopyColumnMapping("FHB024", "DFB024"); //绱鍑哄簱鏁�
- colMapping[26] = new SqlBulkCopyColumnMapping("ERP_EntryID", "ID"); //鏄庣粏ID
+ colMapping[26] = new SqlBulkCopyColumnMapping("FHB025", "DFB025"); //浜у搧绫诲瀷
+ colMapping[27] = new SqlBulkCopyColumnMapping("FHB026", "DFB026"); //鐖舵爣璇�
+ colMapping[28] = new SqlBulkCopyColumnMapping("FHB027", "DFB027"); //鏍囪瘑鍒�
+ colMapping[29] = new SqlBulkCopyColumnMapping("ERP_EntryID", "ID"); //鏄庣粏ID
DataTableToSQLServer(dt, conStr, "COMDFB", colMapping, ref ErrorMsg);
#endregion
}
--
Gitblit v1.9.3