From 642780a87aa22b7e83d33ab9779a490da7468f9a Mon Sep 17 00:00:00 2001
From: cdk <2441919651@qq.com>
Date: 星期一, 14 七月 2025 09:05:26 +0800
Subject: [PATCH] 物料增加固定提前期和物料属性
---
HandleData/AE_MES_ERP.cs | 624 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 596 insertions(+), 28 deletions(-)
diff --git a/HandleData/AE_MES_ERP.cs b/HandleData/AE_MES_ERP.cs
index 1802f6e..9807ec0 100644
--- a/HandleData/AE_MES_ERP.cs
+++ b/HandleData/AE_MES_ERP.cs
@@ -147,6 +147,9 @@
case "TB_MESTOERP_TransferIn"://鍒嗗竷寮忚皟鍏ュ崟
case "TB_MESTOERP_ZJDB"://鐩存帴璋冩嫧鍗�
case "TB_MESTOERP_WWDDXD"://濮斿璁㈠崟涓嬭揪
+ case "TB_MESTOERP_WWLL"://濮斿棰嗘枡鍗�
+ case "TB_MESTOERP_XSTH"://閿�鍞��璐�
+ case "TB_MESTOERP_CGTL"://閲囪喘閫�璐�
case "TB_MESTOERP_WWCG"://濮斿涓嬫帹閲囪喘
result = MesToErp(drSource, ref msg, rtaskid);
break;
@@ -182,7 +185,14 @@
case "TB_ERPTOMES_WW":
result = TB_ERPTOMES_WW(taskid, inputds, operatype, ref msg);
break;
-
+ //26.TB_ERPTOMES_XSTH閿�鍞��璐ч�氱煡鍗�
+ case "TB_ERPTOMES_XSTH":
+ result = TB_ERPTOMES_XSTH(taskid, inputds, operatype, ref msg);
+ break;
+ //27.TB_ERPTOMES_CGTH閿�鍞��璐ч�氱煡鍗�
+ case "TB_ERPTOMES_CGTH":
+ result = TB_ERPTOMES_CGTH(taskid, inputds, operatype, ref msg);
+ break;
case "TB_XKY_GET_DHD"://鎺ㄩ�佸鏍搁�佽揣鍗�
result = XKY_GET_DHD(drSource, ref msg);
break;
@@ -835,10 +845,10 @@
// return false;
//}
//閫夋嫨鎯宠鐨勫垪鎻掑叆鏂拌〃
- 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", "WLA057", "WLA058");
- SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dtHead.Columns.Count];
+ 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", "WLA057", "WLA058", "WLA059", "WLA060", "WLA061");
+ SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
colMapping[0] = new SqlBulkCopyColumnMapping("WLA001", "WL001"); // 鐗╂枡缂栫爜
colMapping[1] = new SqlBulkCopyColumnMapping("WLA002", "WL002"); // 鐗╂枡鍚嶇О
@@ -905,8 +915,13 @@
colMapping[53] = new SqlBulkCopyColumnMapping("WLA056", "WL069");
colMapping[54] = new SqlBulkCopyColumnMapping("WLA057", "WL070");
colMapping[55] = new SqlBulkCopyColumnMapping("WLA058", "WL071");
-
-
+ colMapping[56] = new SqlBulkCopyColumnMapping("WLA059", "WL072");
+ if (dt.Columns.Contains("WLA060"))
+ {
+ colMapping[57] = new SqlBulkCopyColumnMapping("WLA060", "WL073"); // 鍥哄畾鎻愬墠鏈�
+ colMapping[58] = new SqlBulkCopyColumnMapping("WLA061", "WL074"); // 鐗╂枡灞炴��
+ }
+
return DataTableToSQLServer(dtHead, conStr, "GS_WL", colMapping, ref ErrorMsg);
@@ -920,8 +935,10 @@
{
string str = dr["WLA016"].ToString();
string strT = dr["WLA018"].ToString();
- //dr["WLA011"] = str + "." + strT;
- sql += string.Format(@" update GS_WL
+ //dr["WLA011"] = str + "." + strT;
+ if (dt.Columns.Contains("WLA060"))
+ {
+ sql += string.Format(@" update GS_WL
set
WL001='{1}',
WL002='{2}',
@@ -940,15 +957,50 @@
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}',WL070='{48}',WL071='{49}'
+ 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}',WL072='{50}',WL073='{51}',WL074='{52}'
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["WLA057"], dr["WLA058"]
- );
+ , 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["WLA057"], dr["WLA058"], dr["WLA059"], dr["WLA060"], dr["WLA061"]
+ );
+ }
+ else
+ {
+ sql += string.Format(@" update GS_WL
+ set
+ WL001='{1}',
+ WL002='{2}',
+ WL004='{3}',
+ WL005='{4}',
+ WL007='{5}',
+ WL011='{6}',
+ WL012='{7}',
+ WL013='{8}',
+ WL020='{9}',
+ WL026='{10}',
+ WL003='{11}',
+ WL024='{12}',
+ WL015='{13}',
+ WL017='{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}',WL070='{48}',WL071='{49}',WL072='{50}'
+ 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["WLA057"], dr["WLA058"], dr["WLA059"]
+ );
+ }
+
}
//int A = _sqlHelper.ExecuteNonQuery(sqlL);
return _sqlHelper.ExecuteNonQuery(sql) > 0;
@@ -1202,6 +1254,7 @@
private bool TB_ERPTOMES_GYS(DataSet ds, string operatype, ref string ErrorMsg)
{
string sql = "";
+ string dtName = "";
//鐢ㄦ潵鎷糏D闆嗗悎
List<string> IDList = new List<string>();
@@ -1229,7 +1282,7 @@
{
#region INSERT
//dt.Columns.Add("MAA005", typeof(string));
-
+ dtName = dt.TableName;
foreach (DataRow dr in dt.Rows)
{
IDList.Add(dr["ERPID"].ToString());
@@ -1252,9 +1305,13 @@
colMapping[4] = new SqlBulkCopyColumnMapping("GYSA005", "GYS005"); // 缁勭粐鍙�
colMapping[5] = new SqlBulkCopyColumnMapping("ERPID", "ERPID"); // ERPID
colMapping[6] = new SqlBulkCopyColumnMapping("FUseOrgId", "FUseOrgId"); // 鍐�/澶栭攢
+ if (dt.Columns.Contains("GYSA006"))
+ {
+ colMapping[7] = new SqlBulkCopyColumnMapping("GYSA006", "GYS006"); //澶囨敞
+ }
//colMapping[8] = new SqlBulkCopyColumnMapping("AUDITING", "AUDITING");
- return DataTableToSQLServer(dt, conStr, "GS_GYS", colMapping, ref ErrorMsg);
+ DataTableToSQLServer(dt, conStr, "GS_GYS", colMapping, ref ErrorMsg);
#endregion
}
else if (operatype == "UPDATE")
@@ -1273,8 +1330,24 @@
FUseOrgld='{6}'
where ERPID='{0}'; ", dr["ERPID"]
, dr["GYSA001"], dr["GYSA002"], dr["GYSA003"], dr["GYSA004"], dr["GYSA005"], dr["FUseOrgld"]);
+
+ if (dt.Columns.Contains("GYSA006"))
+ {
+ sql = string.Format(@" update GS_GYS
+ set
+ GYS001='{1}',
+ GYS002='{2}',
+ GYS003='{3}',
+ GYS004='{4}',
+ GYS005='{5}',
+ FUseOrgld='{6}',
+ GYS006='{7}'
+ where ERPID='{0}'; ", dr["ERPID"]
+ , dr["GYSA001"], dr["GYSA002"], dr["GYSA003"], dr["GYSA004"], dr["GYSA005"], dr["FUseOrgld"], dr["GYSA006"]);
+ }
}
return _sqlHelper.ExecuteNonQuery(sql) > 0;
+
#endregion
}
else //DELETE
@@ -1287,13 +1360,14 @@
}
sql = string.Format(@" delete from GS_GYS where ERPID in ('{0}'); ", string.Join("','", IDList));
- return _sqlHelper.ExecuteNonQuery(sql) > 0;
+ _sqlHelper.ExecuteNonQuery(sql);
#endregion
}
+ return true;
}
catch (Exception ex)
{
- ErrorMsg = ex.Message;
+ ErrorMsg = "[" + dtName + "]" + ex.Message;
return false;
}
}
@@ -1847,6 +1921,8 @@
//鐢ㄦ潵鎷糏D闆嗗悎
List<string> IDList = new List<string>();
string dtName = "";
+ string statue = "";
+ string CGA001 = "";
if (operatype != "INSERT" && operatype != "UPDATE")
{
sql = string.Format(@" delete from GS_CG where CGA001 in ('{0}') ", operatype);
@@ -1915,6 +1991,12 @@
{
dr["CGA002"] = task_name == "TB_ERPTOMES_CG" ? "3301" : "3302";
}
+
+ if (dr["CGA005"].ToString() == "鏍囧噯濮斿璁㈠崟")
+ {
+ statue = "濮斿";
+ CGA001 = dr["CGA001"].ToString();
+ }
}
//鎻掑叆鍓嶅厛鍒犻櫎閲嶅閿�
@@ -1926,7 +2008,7 @@
//}
SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
-
+ int i = 19;
colMapping[0] = new SqlBulkCopyColumnMapping("AUDITING", "flagApp");
colMapping[1] = new SqlBulkCopyColumnMapping("NEWERPID", "ID"); //ID
colMapping[2] = new SqlBulkCopyColumnMapping("CGA001", "CGA001"); //閲囪喘鍗曞彿
@@ -1948,7 +2030,7 @@
colMapping[18] = new SqlBulkCopyColumnMapping("CGA0017", "CGA017"); //澶囨敞
if (dt.Columns.Contains("CGAORG"))
{
- colMapping[19] = new SqlBulkCopyColumnMapping("CGAORG", "CGAORG"); //澶囨敞
+ colMapping[i++] = new SqlBulkCopyColumnMapping("CGAORG", "CGAORG"); //澶囨敞
}
else
{
@@ -1956,11 +2038,15 @@
}
if (dt.Columns.Contains("CGA018"))
{
- colMapping[20] = new SqlBulkCopyColumnMapping("CGA018", "CGA018"); //澶囨敞
+ colMapping[i++] = new SqlBulkCopyColumnMapping("CGA018", "CGA018"); //澶囨敞
}
if (dt.Columns.Contains("CGA0018"))
{
- colMapping[20] = new SqlBulkCopyColumnMapping("CGA0018", "CGA018"); //澶囨敞
+ colMapping[i++] = new SqlBulkCopyColumnMapping("CGA0018", "CGA018"); //澶囨敞
+ }
+ if (dt.Columns.Contains("CGA0019"))
+ {
+ colMapping[i++] = new SqlBulkCopyColumnMapping("CGA0019", "CGA019"); //澶囨敞
}
@@ -2073,6 +2159,18 @@
colMapping[22] = new SqlBulkCopyColumnMapping("CGB0020", "CGB020"); //瓒呮敹姣斾緥
colMapping[23] = new SqlBulkCopyColumnMapping("CGB0021", "CGB021"); //鍚◣鍗曚环
colMapping[24] = new SqlBulkCopyColumnMapping("CGB0022", "CGB022"); //浠风◣鍚堣
+ if (dt.Columns.Contains("CGB0024"))
+ {
+ colMapping[25] = new SqlBulkCopyColumnMapping("CGB0024", "CGB024"); //婧愬崟绫诲瀷
+ }
+ if (dt.Columns.Contains("CGB0025"))
+ {
+ colMapping[26] = new SqlBulkCopyColumnMapping("CGB0025", "CGB025"); //婧愬崟鍗曞彿
+ }
+ if (dt.Columns.Contains("CGB0026"))
+ {
+ colMapping[27] = new SqlBulkCopyColumnMapping("CGB0026", "CGB026"); //婧愬崟鏄庣粏ID
+ }
DataTableToSQLServer(dt, conStr, "CGDB", colMapping, ref ErrorMsg);
foreach (DataRow dF in dt.Rows)
@@ -2080,7 +2178,7 @@
string UP = string.Format(@"EXEC API_UPDATE_CGDB {0},{1} ", dF["CGB001"].ToString(), dF["CGB002"].ToString());
_sqlHelper.ExecuteNonQuery(UP);
}
-
+
#endregion
}
@@ -2102,6 +2200,13 @@
#endregion
}
}
+
+ //if (statue == "濮斿")
+ //{
+ // string WWSQL = string.Format(@"EXEC API_CREATE_LLD '{0}' ", CGA001);
+ // _sqlHelper.ExecuteNonQuery(WWSQL);
+ //}
+
return true;
}
catch (Exception ex)
@@ -3125,7 +3230,10 @@
/// <returns></returns>
private bool MesToErp(DataRow dr, ref string ErrorMsg,string rtaskid)
{
- string sql = string.Format(@" update sysdec set states='NEWIN' WHERE TASK_ID='{0}' ", rtaskid);
+ var logId = Guid.NewGuid();
+ string sql = string.Format(@" update sysdec set states='NEWIN' WHERE TASK_ID='{0}'
+ insert into SYSDECLOG
+ select *,'{1}',GETDATE(),GETDATE() from SYSDEC where TASK_ID = '{0}' ", rtaskid, logId);
_sqlHelper.ExecuteNonQuery(sql);
try
@@ -3146,17 +3254,36 @@
// sendt.arg0.
US.category = task_name;
US.data = data_inserted;
- US.op = operatype;
+ US.op = dr["mesid"].ToString();
string res = a.Body(US).msg.ToString();
sql = string.Format(@" update sysdec set states='NEW' WHERE TASK_ID='{0}' ", rtaskid);
_sqlHelper.ExecuteNonQuery(sql);
+
+ if (res.Contains("OK") || res.Contains("MES鍗曞彿鍞竴妫�娴嬩笉閫氳繃"))
+ {
+ sql = string.Format(@" update SYSDECLOG set states='SUCCESS',msg = '{1}',endtime = GETDATE() WHERE logId='{0}' ", logId, res);
+
+ _sqlHelper.ExecuteNonQuery(sql);
+ }
+ else
+ {
+ sql = string.Format(@" update SYSDECLOG set states='FAIL',msg = '{1}',endtime = GETDATE() WHERE logId='{0}' ", logId, res);
+
+ _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"))
{
ErrorMsg = res;
+ return true;
+ }
+ else if(res.Contains("MES鍗曞彿鍞竴妫�娴嬩笉閫氳繃"))
+ {
+ ErrorMsg = "OK-" + res;
return true;
}
else
@@ -4264,6 +4391,447 @@
}
#endregion
+ #region 26.ERPTHA閿�鍞��璐ч�氱煡鍗�(鍚屾鎺ㄩ��) bool TB_ERPTOMES_XSTH(string task_name,DataSet ds, string operatype, ref string ErrorMsg)
+ /// <summary>
+ /// ERPTHA閿�鍞��璐ч�氱煡鍗�(鍚屾鎺ㄩ��)
+ /// </summary>
+ /// <param name="task_name">浠诲姟鍚嶇О</param>
+ /// <param name="ds">鏁版嵁闆�</param>
+ /// <param name="operatype">鎵ц绫诲瀷</param>
+ /// <param name="ErrorMsg">閿欒璇存槑</param>
+ /// <returns></returns>
+ private bool TB_ERPTOMES_XSTH(string task_name, DataSet ds, string operatype, ref string ErrorMsg)
+ {
+ string sql = "";
+ //鐢ㄦ潵鎷糏D闆嗗悎
+ List<string> IDList = new List<string>();
+ string dtName = "";
+ string XSTHA001 = "";
+ if (operatype != "INSERT" && operatype != "UPDATE")
+ {
+ sql = string.Format(@" delete from GS_XSTHA where XSTHA001 in ('{0}') ", operatype);
+ string sqlTT = string.Format(@" delete from GS_XSTHB where XSTHB001 in ('{0}') ", operatype);
+ _sqlHelper.ExecuteNonQuery(sql);
+ _sqlHelper.ExecuteNonQuery(sqlTT);
+ return true;
+ }
+
+
+ if (ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+ {
+ ErrorMsg = "鐢熸垚鏁版嵁琛ㄥけ璐�";
+ return false;
+ }
+ try
+ {
+ foreach (DataTable dt in ds.Tables)
+ {
+ dtName = dt.TableName;
+ IDList.Clear();
+ //涓讳粠琛ㄧ殑鍚屾锛屼慨鏀瑰拰鏂板涓�鏍凤紝鍏堝垹闄ゅ師璁板綍鍚庢彃鍏ユ柊璁板綍,瑕佹眰鍚屾杩囨潵鐨勬暟鎹篃鏄暣鍗曞畬鏁存暟鎹�
+ if (operatype == "INSERT" || operatype == "UPDATE")
+ {
+ #region INSERT
+ if (dt.TableName == "ERPSALRETURNNOTICEA")
+ {
+ #region 閿�鍞��璐ч�氱煡鍗曚富琛ㄧ殑澶勭悊
+ dt.Columns.Add("AUDITING", typeof(string));
+
+ foreach (DataRow dr in dt.Rows)
+ {
+ IDList.Add(dr["ERPID"].ToString());
+
+ dr["AUDITING"] = "Y";
+ XSTHA001 = dr["XSTHA001"].ToString();
+
+ switch (dr["XSTHA005"].ToString())
+ {
+ case "A":
+ dr["XSTHA005"] = "鍒涘缓";
+ break;
+ case "B":
+ dr["XSTHA005"] = "瀹℃牳涓�";
+ break;
+ case "C":
+ dr["XSTHA005"] = "宸插鏍�";
+ break;
+ case "D":
+ dr["XSTHA005"] = "閲嶆柊瀹℃牳";
+ break;
+ case "Z":
+ dr["XSTHA005"] = "鏆傚瓨";
+ break;
+ }
+
+ }
+
+ //鎻掑叆鍓嶅厛鍒犻櫎閲嶅閿�
+ DeleteDataBeforeInsert("GS_XSTHA", "ID", string.Join("','", IDList), "");
+ //if (!DeleteDataBeforeInsert("PURDDA", "ERPID", string.Join("','", IDList), ""))
+ //{
+ // ErrorMsg = "PURDDA閲嶅閿垹闄ゅけ璐ワ紒";
+ // return false;
+ //}
+
+ SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
+
+ colMapping[0] = new SqlBulkCopyColumnMapping("AUDITING", "flagApp");
+ colMapping[1] = new SqlBulkCopyColumnMapping("ERPID", "ID"); //ID
+ colMapping[2] = new SqlBulkCopyColumnMapping("XSTHA001", "XSTHA001"); //閫�璐ч�氱煡鍗曞彿
+ colMapping[3] = new SqlBulkCopyColumnMapping("XSTHA003", "XSTHA003"); //鍗曟嵁鏃ユ湡
+ colMapping[4] = new SqlBulkCopyColumnMapping("XSTHA004", "XSTHA004"); //鍗曟嵁绫诲瀷
+ colMapping[5] = new SqlBulkCopyColumnMapping("XSTHA005", "XSTHA005"); //鍗曟嵁鐘舵��
+ colMapping[6] = new SqlBulkCopyColumnMapping("XSTHA006", "XSTHA006"); //鍗曟嵁绫诲瀷
+ colMapping[7] = new SqlBulkCopyColumnMapping("XSTHA007", "XSTHA007"); //閿�鍞粍缁�
+ colMapping[8] = new SqlBulkCopyColumnMapping("XSTHA008", "XSTHA008"); //閿�鍞儴闂�
+ colMapping[9] = new SqlBulkCopyColumnMapping("XSTHA009", "XSTHA009"); //閫�璐у鎴�
+ colMapping[10] = new SqlBulkCopyColumnMapping("XSTHA010", "XSTHA010"); //缁撶畻甯佸埆
+ colMapping[11] = new SqlBulkCopyColumnMapping("XSTHA011", "XSTHA011"); //搴撳瓨缁勭粐
+ colMapping[12] = new SqlBulkCopyColumnMapping("XSTHA012", "XSTHA012"); //澶囨敞
+ colMapping[13] = new SqlBulkCopyColumnMapping("XSTHA013", "XSTHA013"); //閫�璐у師鍥�
+
+
+ DataTableToSQLServer(dt, conStr, "GS_XSTHA", colMapping, ref ErrorMsg);
+ #endregion
+ }
+ if (dt.TableName == "ERPSALRETURNNOTICEB")
+ {
+ #region 閲囪喘璁㈠崟鏄庣粏鐨勫鐞�
+ dt.Columns.Add("AUDITING", typeof(string));
+
+ foreach (DataRow dr in dt.Rows)
+ {
+ IDList.Add(dr["ERPID"].ToString());
+ if (dt.Columns.Contains("XSTHB012"))
+ {
+ switch (dr["XSTHB012"].ToString())
+ {
+ case "Son":
+ dr["XSTHB012"] = "濂椾欢瀛愰」";
+ break;
+ case "Standard":
+ dr["XSTHB012"] = "鏍囧噯浜у搧";
+ break;
+ case "Parent":
+ dr["XSTHB012"] = "濂椾欢鐖堕」";
+ break;
+ case "Service":
+ dr["XSTHB012"] = "鏈嶅姟";
+ break;
+ }
+ }
+ dr["AUDITING"] = "Y";
+ }
+
+ //鎻掑叆鍓嶅厛鍒犻櫎閲嶅閿�
+ DeleteDataBeforeInsert("GS_XSTHB", "PID", string.Join("','", IDList), "");
+ //if (!DeleteDataBeforeInsert("PURDDB", "ERPID+DDB002", string.Join("','", IDList), ""))
+ //{
+ // ErrorMsg = "PURDDB閲嶅閿垹闄ゅけ璐ワ紒";
+ // return false;
+ //}
+
+ SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
+ colMapping[0] = new SqlBulkCopyColumnMapping("AUDITING", "flagApp");
+ colMapping[1] = new SqlBulkCopyColumnMapping("ERPID", "PID"); //ERPID
+ colMapping[2] = new SqlBulkCopyColumnMapping("XSTHB001", "XSTHB001"); //鐗╂枡ID
+ colMapping[3] = new SqlBulkCopyColumnMapping("XSTHB002", "XSTHB002"); //鐗╂枡缂栫爜
+ colMapping[4] = new SqlBulkCopyColumnMapping("XSTHB003", "XSTHB003"); //鐗╂枡鍚嶇О
+ colMapping[5] = new SqlBulkCopyColumnMapping("XSTHB004", "XSTHB004"); //瑙勬牸鍨嬪彿
+ colMapping[6] = new SqlBulkCopyColumnMapping("XSTHB005", "XSTHB005"); //閿�鍞崟浣�
+ colMapping[7] = new SqlBulkCopyColumnMapping("XSTHB006", "XSTHB006"); //瀹為��鏁伴噺
+ colMapping[8] = new SqlBulkCopyColumnMapping("XSTHB007", "XSTHB007"); //瀹㈡埛鐗╂枡缂栫爜
+ colMapping[9] = new SqlBulkCopyColumnMapping("XSTHB008", "XSTHB008"); //瀹㈡埛鐗╂枡鍚嶇О
+ colMapping[10] = new SqlBulkCopyColumnMapping("XSTHB009", "XSTHB009"); //閫�璐х被鍨�
+ colMapping[11] = new SqlBulkCopyColumnMapping("XSTHB010", "XSTHB010"); //浠撳簱
+ colMapping[12] = new SqlBulkCopyColumnMapping("XSTHB011", "XSTHB011"); //閫�璐ф棩鏈�
+ colMapping[13] = new SqlBulkCopyColumnMapping("ERP_EntryID", "ID"); //鏄庣粏ID
+ if (dt.Columns.Contains("XSTHB012"))
+ {
+ colMapping[14] = new SqlBulkCopyColumnMapping("XSTHB012", "XSTHB012"); //鏄庣粏浜у搧绫诲瀷
+ }
+ DataTableToSQLServer(dt, conStr, "GS_XSTHB", colMapping, ref ErrorMsg);
+
+ #endregion
+ }
+
+ #endregion
+ }
+ else //DELETE
+ {
+ //ErrorMsg = "鎵ц鍒犻櫎鏁版嵁琛�";
+ #region DELETE
+ //if (dt.TableName == "ERPCGA")
+ //{
+ // foreach (DataRow dr in dt.Rows)
+ // {
+ // IDList.Add(dr["ERPID"].ToString());
+ // }
+ // sql = string.Format(@" delete from PURDDA where ERPID in ('{0}'); delete from PURDDB where ERPID in ('{0}'); ", string.Join("','", IDList));
+ //}
+ //_sqlHelper.ExecuteNonQuery(sql);
+ #endregion
+ }
+ }
+ string UP = string.Format(@"EXEC API_UPDATE_XSTH '{0}' ", XSTHA001);
+ _sqlHelper.ExecuteNonQuery(UP);
+ return true;
+ }
+ catch (Exception ex)
+ {
+ ErrorMsg = "[" + dtName + "]" + ex.Message;
+ return false;
+ }
+ }
+ #endregion
+
+ #region 27.ERPCTHA閲囪喘閫�璐ч�氱煡鍗�(鍚屾鎺ㄩ��) bool TB_ERPTOMES_CGTH(string task_name,DataSet ds, string operatype, ref string ErrorMsg)
+ /// <summary>
+ /// ERPCGA閲囪喘璁㈠崟锝滃澶栬鍗�(鍚屾鎺ㄩ��)
+ /// </summary>
+ /// <param name="task_name">浠诲姟鍚嶇О</param>
+ /// <param name="ds">鏁版嵁闆�</param>
+ /// <param name="operatype">鎵ц绫诲瀷</param>
+ /// <param name="ErrorMsg">閿欒璇存槑</param>
+ /// <returns></returns>
+ private bool TB_ERPTOMES_CGTH(string task_name, DataSet ds, string operatype, ref string ErrorMsg)
+ {
+ string sql = "";
+ //鐢ㄦ潵鎷糏D闆嗗悎
+ List<string> IDList = new List<string>();
+ string dtName = "";
+ if (operatype != "INSERT" && operatype != "UPDATE")
+ {
+ sql = string.Format(@" delete from GS_CGTHA where CGTHA001 in ('{0}') ", operatype);
+ string sqlTT = string.Format(@" delete from GS_CGTHB where CGTHB001 in ('{0}') ", operatype);
+ _sqlHelper.ExecuteNonQuery(sql);
+ _sqlHelper.ExecuteNonQuery(sqlTT);
+ return true;
+ }
+
+
+ if (ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+ {
+ ErrorMsg = "鐢熸垚鏁版嵁琛ㄥけ璐�";
+ return false;
+ }
+ try
+ {
+ foreach (DataTable dt in ds.Tables)
+ {
+ dtName = dt.TableName;
+ IDList.Clear();
+ //涓讳粠琛ㄧ殑鍚屾锛屼慨鏀瑰拰鏂板涓�鏍凤紝鍏堝垹闄ゅ師璁板綍鍚庢彃鍏ユ柊璁板綍,瑕佹眰鍚屾杩囨潵鐨勬暟鎹篃鏄暣鍗曞畬鏁存暟鎹�
+ if (operatype == "INSERT" || operatype == "UPDATE")
+ {
+ #region INSERT
+ if (dt.TableName == "ERPCGTHA")
+ {
+ #region 閿�鍞��璐ч�氱煡鍗曚富琛ㄧ殑澶勭悊
+ dt.Columns.Add("AUDITING", typeof(string));
+
+ foreach (DataRow dr in dt.Rows)
+ {
+ IDList.Add(dr["ERPID"].ToString());
+ dr["AUDITING"] = "Y";
+ dr["AUDITING"] = "Y";
+
+ switch (dr["CGTHA008"].ToString())
+ {
+ case "A":
+ dr["CGTHA008"] = "妫�楠岄��鏂�";
+ break;
+ case "B":
+ dr["CGTHA008"] = "搴撳瓨閫�鏂�";
+ break;
+ }
+
+ switch (dr["CGTHA009"].ToString())
+ {
+ case "A":
+ dr["CGTHA009"] = "閫�鏂欒ˉ鏂�";
+ break;
+ case "B":
+ dr["CGTHA009"] = "閫�鏂欐墸娆�";
+ break;
+ }
+
+ switch (dr["CGTHA015"].ToString())
+ {
+ case "A":
+ dr["CGTHA015"] = "鍒涘缓";
+ break;
+ case "B":
+ dr["CGTHA015"] = "瀹℃牳涓�";
+ break;
+ case "C":
+ dr["CGTHA015"] = "宸插鏍�";
+ break;
+ case "D":
+ dr["CGTHA015"] = "閲嶆柊瀹℃牳";
+ break;
+ case "Z":
+ dr["CGTHA015"] = "鏆傚瓨";
+ break;
+ }
+ }
+
+ //鎻掑叆鍓嶅厛鍒犻櫎閲嶅閿�
+ DeleteDataBeforeInsert("GS_CGTHA", "ID", string.Join("','", IDList), "");
+ //if (!DeleteDataBeforeInsert("PURDDA", "ERPID", string.Join("','", IDList), ""))
+ //{
+ // ErrorMsg = "PURDDA閲嶅閿垹闄ゅけ璐ワ紒";
+ // return false;
+ //}
+
+ SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
+
+ colMapping[0] = new SqlBulkCopyColumnMapping("CGTHA001", "CGTHA001"); //鍗曟嵁缂栧彿
+ colMapping[1] = new SqlBulkCopyColumnMapping("CGTHA002", "CGTHA002"); //鍗曟嵁鏃ユ湡
+ colMapping[2] = new SqlBulkCopyColumnMapping("CGTHA003", "CGTHA003"); //鍗曟嵁绫诲瀷
+ colMapping[3] = new SqlBulkCopyColumnMapping("CGTHA004", "CGTHA004"); //鍗曟嵁绫诲瀷
+ colMapping[4] = new SqlBulkCopyColumnMapping("CGTHA005", "CGTHA005"); //涓氬姟绫诲瀷
+ colMapping[5] = new SqlBulkCopyColumnMapping("CGTHA006", "CGTHA006"); //渚涘簲鍟�
+ colMapping[6] = new SqlBulkCopyColumnMapping("CGTHA007", "CGTHA007"); //閲囪喘缁勭粐
+ colMapping[7] = new SqlBulkCopyColumnMapping("CGTHA008", "CGTHA008"); //閫�鏂欑被鍨�
+ colMapping[8] = new SqlBulkCopyColumnMapping("CGTHA009", "CGTHA009"); //閫�鏂欐柟寮�
+ colMapping[9] = new SqlBulkCopyColumnMapping("CGTHA010", "CGTHA010"); //琛ユ枡鏂瑰紡
+ colMapping[10] = new SqlBulkCopyColumnMapping("CGTHA011", "CGTHA011"); //鐢宠缁勭粐
+ colMapping[11] = new SqlBulkCopyColumnMapping("CGTHA012", "CGTHA012"); //闇�姹傜粍缁�
+ colMapping[12] = new SqlBulkCopyColumnMapping("CGTHA013", "CGTHA013"); //甯佸埆
+ colMapping[13] = new SqlBulkCopyColumnMapping("CGTHA015", "CGTHA015"); //鍗曟嵁鐘舵��
+ colMapping[14] = new SqlBulkCopyColumnMapping("CGTHA016", "CGTHA016"); //澶囨敞
+ colMapping[15] = new SqlBulkCopyColumnMapping("CGTHA017", "CGTHA017"); //缁撶畻缁勭粐
+ colMapping[16] = new SqlBulkCopyColumnMapping("ERPID", "ID"); //ERPID
+ colMapping[17] = new SqlBulkCopyColumnMapping("AUDITING", "flagApp");
+
+ DataTableToSQLServer(dt, conStr, "GS_CGTHA", colMapping, ref ErrorMsg);
+ #endregion
+ }
+ if (dt.TableName == "ERPCGTHB")
+ {
+ #region 閲囪喘璁㈠崟鏄庣粏鐨勫鐞�
+ dt.Columns.Add("AUDITING", typeof(string));
+
+ foreach (DataRow dr in dt.Rows)
+ {
+ IDList.Add(dr["ERPID"].ToString());
+
+ dr["AUDITING"] = "Y";
+ //搴旈��鏁伴噺
+ if (dr["CGTHB006"].ToString() == "")
+ {
+ dr["CGTHB006"] = "0";
+ }
+ else
+ {
+ double A = Convert.ToDouble(dr["CGTHB006"].ToString());
+ string B = A.ToString();
+ dr["CGTHB006"] = B;
+ }
+
+ //瀹為��鏁伴噺
+ if (dr["CGTHB007"].ToString() == "")
+ {
+ dr["CGTHB007"] = "0";
+ }
+ else
+ {
+ double A = Convert.ToDouble(dr["CGTHB007"].ToString());
+ string B = A.ToString();
+ dr["CGTHB007"] = B;
+ }
+
+ if (dr["CGTHB008"].ToString() == "")
+ {
+ dr["CGTHB008"] = "0";
+ }
+ else
+ {
+ double A = Convert.ToDouble(dr["CGTHB008"].ToString());
+ string B = A.ToString();
+ dr["CGTHB008"] = B;
+ }
+
+ if (dt.Columns.Contains("CGTHB012"))
+ {
+ switch (dr["CGTHB012"].ToString())
+ {
+ case "Son":
+ dr["CGTHB012"] = "濂椾欢瀛愰」";
+ break;
+ case "Standard":
+ dr["CGTHB012"] = "鏍囧噯浜у搧";
+ break;
+ case "Parent":
+ dr["CGTHB012"] = "濂椾欢鐖堕」";
+ break;
+ case "Service":
+ dr["CGTHB012"] = "鏈嶅姟";
+ break;
+ }
+ }
+ }
+
+ //鎻掑叆鍓嶅厛鍒犻櫎閲嶅閿�
+ DeleteDataBeforeInsert("GS_CGTHB", "PID", string.Join("','", IDList), "");
+ //if (!DeleteDataBeforeInsert("PURDDB", "ERPID+DDB002", string.Join("','", IDList), ""))
+ //{
+ // ErrorMsg = "PURDDB閲嶅閿垹闄ゅけ璐ワ紒";
+ // return false;
+ //}
+
+ SqlBulkCopyColumnMapping[] colMapping = new SqlBulkCopyColumnMapping[dt.Columns.Count];
+ colMapping[0] = new SqlBulkCopyColumnMapping("AUDITING", "flagApp");
+ colMapping[1] = new SqlBulkCopyColumnMapping("ERPID", "PID"); //ERPID
+ colMapping[2] = new SqlBulkCopyColumnMapping("CGTHB001", "CGTHB001"); //閲囪喘閫�鏂欓�氱煡鍗曞彿
+ colMapping[3] = new SqlBulkCopyColumnMapping("CGTHB002", "CGTHB002"); //搴忓彿
+ colMapping[4] = new SqlBulkCopyColumnMapping("CGTHB003", "CGTHB003"); //鐗╂枡缂栫爜
+ colMapping[5] = new SqlBulkCopyColumnMapping("CGTHB004", "CGTHB004"); //鐗╂枡鍚嶇О
+ colMapping[6] = new SqlBulkCopyColumnMapping("CGTHB005", "CGTHB005"); //瑙勬牸鍨嬪彿
+ colMapping[7] = new SqlBulkCopyColumnMapping("CGTHB006", "CGTHB006"); //鐢宠閫�鏂欐暟閲�
+ colMapping[8] = new SqlBulkCopyColumnMapping("CGTHB007", "CGTHB007"); //琛ユ枡鏁伴噺
+ colMapping[9] = new SqlBulkCopyColumnMapping("CGTHB008", "CGTHB008"); //鎵f鏁伴噺
+ colMapping[10] = new SqlBulkCopyColumnMapping("CGTHB009", "CGTHB009"); //搴撳瓨鍗曚綅
+ colMapping[11] = new SqlBulkCopyColumnMapping("CGTHB010", "CGTHB010"); //璁′环鍗曚綅
+ colMapping[12] = new SqlBulkCopyColumnMapping("CGTHB011", "CGTHB011"); //閫�璐у師鍥�
+ colMapping[13] = new SqlBulkCopyColumnMapping("ERP_EntryID", "ID"); //鏄庣粏ID
+ if (dt.Columns.Contains("CGTHB012"))
+ {
+ colMapping[14] = new SqlBulkCopyColumnMapping("CGTHB012", "CGTHB012"); //鏄庣粏浜у搧绫诲瀷
+ }
+ DataTableToSQLServer(dt, conStr, "GS_CGTHB", colMapping, ref ErrorMsg);
+ #endregion
+ }
+
+ #endregion
+ }
+ else //DELETE
+ {
+ //ErrorMsg = "鎵ц鍒犻櫎鏁版嵁琛�";
+ #region DELETE
+ //if (dt.TableName == "ERPCGA")
+ //{
+ // foreach (DataRow dr in dt.Rows)
+ // {
+ // IDList.Add(dr["ERPID"].ToString());
+ // }
+ // sql = string.Format(@" delete from PURDDA where ERPID in ('{0}'); delete from PURDDB where ERPID in ('{0}'); ", string.Join("','", IDList));
+ //}
+ //_sqlHelper.ExecuteNonQuery(sql);
+ #endregion
+ }
+ }
+ return true;
+ }
+ catch (Exception ex)
+ {
+ ErrorMsg = "[" + dtName + "]" + ex.Message;
+ return false;
+ }
+ }
+ #endregion
+
private bool XKY_GET_DHD(DataRow dr, ref string ErrorMsg)
{
--
Gitblit v1.9.3