From 9f14e1ca1594739eb9d523c707ce841db156db6d Mon Sep 17 00:00:00 2001 From: xuli Date: Fri, 2 Aug 2024 15:39:22 +0800 Subject: [PATCH] =?UTF-8?q?U8=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/ICSSoft.FromERP/v14/.suo | Bin 246272 -> 246272 bytes ICSSoft.FromERP/ICSInventoryFromU8.cs | 28 +++++++++++++++--- ICSSoft.FromERP/ICSMoFromU8.cs | 27 +++++++++++++++-- ICSSoft.FromERP/ICSModel.cs | 14 +++++++++ ICSSoft.FromERP/ICSSoft.FromERP.csproj | 1 + ICSSoft.FromERP/IcsMainCategoryCodeFromU8.cs | 23 +++++++++++++-- ICSSoft.FromERP/IcsSBomFromU8.cs | 29 +++++++++++++++++-- 7 files changed, 112 insertions(+), 10 deletions(-) create mode 100644 ICSSoft.FromERP/ICSModel.cs diff --git a/.vs/ICSSoft.FromERP/v14/.suo b/.vs/ICSSoft.FromERP/v14/.suo index 630ee8a26b9d83862bc2067f61fb8e03d795e4c0..e274849d5dbd607e05b535dbe4252a83632904fa 100644 GIT binary patch delta 5116 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 DBS = erpNames.Split(',').ToList(); + List ListDB = new List(); + foreach (string DB in DBS) + { + if (DB.Split('_') != null && DB.Split('_').Count() > 1) + { + WorkpointERPDBLink wd = new WorkpointERPDBLink(); + wd.Workpoint = DB.Split('_')[0]; + wd.ERPDB = DB.Split('_')[1]; + ListDB.Add(wd); + } + } DataTable dt = ICSHelper.GetERPDB(conStr); foreach (DataRow dr in dt.Rows) { - string erpName = ICSHelper.GetConfigString()["ERPDB"]; - string TenantId = dr["TenantId"].ToString(); + + string TenantId = dr["TenantId"].ToString(); string TenantCode = dr["TenantCode"].ToString(); string ErpId = dr["ErpID"].ToString(); //erpID string Class = this.GetType().Name + TenantCode; - erpName = string.Format(erpName, TenantId); + + WorkpointERPDBLink dblink= ListDB.FindLast(a => a.Workpoint == TenantCode); + if (dblink == null) + { + return; + } + string erpName = dblink.ERPDB; + //erpName = string.Format(erpName, TenantId); #region SQL string sql = @" diff --git a/ICSSoft.FromERP/ICSMoFromU8.cs b/ICSSoft.FromERP/ICSMoFromU8.cs index f7e188b..d7c25ab 100644 --- a/ICSSoft.FromERP/ICSMoFromU8.cs +++ b/ICSSoft.FromERP/ICSMoFromU8.cs @@ -40,14 +40,37 @@ namespace ICSSoft.FromERP string Namespace = this.GetType().Namespace; //string Class = this.GetType().Name; DataTable dt = ICSHelper.GetERPDB(conStr); + + string erpNames = ICSHelper.GetConfigString()["Workpoint_ERPDB"]; + List DBS = erpNames.Split(',').ToList(); + List ListDB = new List(); + foreach (string DB in DBS) + { + if (DB.Split('_') != null && DB.Split('_').Count() > 1) + { + WorkpointERPDBLink wd = new WorkpointERPDBLink(); + wd.Workpoint = DB.Split('_')[0]; + wd.ERPDB = DB.Split('_')[1]; + ListDB.Add(wd); + } + } + foreach (DataRow dr in dt.Rows) { - string erpName = ICSHelper.GetConfigString()["ERPDB"]; + // string erpName = ICSHelper.GetConfigString()["ERPDB"]; string TenantId = dr["TenantId"].ToString();//mes 组织 string TenantCode = dr["TenantCode"].ToString(); string ErpId = dr["ErpID"].ToString(); //erpID string Class = this.GetType().Name + TenantCode; - erpName = string.Format(erpName, TenantId); + + WorkpointERPDBLink dblink = ListDB.FindLast(a => a.Workpoint == TenantCode); + if (dblink == null) + { + return; + } + string erpName = dblink.ERPDB; + + //erpName = string.Format(erpName, TenantId); #region SQL string sql = @" diff --git a/ICSSoft.FromERP/ICSModel.cs b/ICSSoft.FromERP/ICSModel.cs new file mode 100644 index 0000000..49046ff --- /dev/null +++ b/ICSSoft.FromERP/ICSModel.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace ICSSoft.FromERP +{ + public class WorkpointERPDBLink + { + public String Workpoint { get; set; } + public String ERPDB { get; set; } + } +} diff --git a/ICSSoft.FromERP/ICSSoft.FromERP.csproj b/ICSSoft.FromERP/ICSSoft.FromERP.csproj index e82caa4..257811d 100644 --- a/ICSSoft.FromERP/ICSSoft.FromERP.csproj +++ b/ICSSoft.FromERP/ICSSoft.FromERP.csproj @@ -98,6 +98,7 @@ + diff --git a/ICSSoft.FromERP/IcsMainCategoryCodeFromU8.cs b/ICSSoft.FromERP/IcsMainCategoryCodeFromU8.cs index de53dfb..6908e25 100644 --- a/ICSSoft.FromERP/IcsMainCategoryCodeFromU8.cs +++ b/ICSSoft.FromERP/IcsMainCategoryCodeFromU8.cs @@ -40,15 +40,34 @@ namespace ICSSoft.FromERP string Namespace = this.GetType().Namespace; //string Class = this.GetType().Name; + string erpNames = ICSHelper.GetConfigString()["Workpoint_ERPDB"]; + List DBS = erpNames.Split(',').ToList(); + List ListDB = new List(); + foreach (string DB in DBS) + { + if (DB.Split('_') != null && DB.Split('_').Count() > 1) + { + WorkpointERPDBLink wd = new WorkpointERPDBLink(); + wd.Workpoint = DB.Split('_')[0]; + wd.ERPDB = DB.Split('_')[1]; + ListDB.Add(wd); + } + } DataTable dt = ICSHelper.GetERPDB(conStr); foreach (DataRow dr in dt.Rows) { - string erpName = ICSHelper.GetConfigString()["ERPDB"]; + // string erpName = ICSHelper.GetConfigString()["ERPDB"]; string TenantId = dr["TenantId"].ToString();//mes 组织 string TenantCode = dr["TenantCode"].ToString(); string ErpId = dr["ErpID"].ToString(); //erpID string Class = this.GetType().Name + TenantCode; - erpName = string.Format(erpName, TenantId); + WorkpointERPDBLink dblink = ListDB.FindLast(a => a.Workpoint == TenantCode); + if (dblink == null) + { + return; + } + string erpName = dblink.ERPDB; + // erpName = string.Format(erpName, TenantId); #region SQL string sql = @" select a.cInvCCode as ItemMainCategoryCode diff --git a/ICSSoft.FromERP/IcsSBomFromU8.cs b/ICSSoft.FromERP/IcsSBomFromU8.cs index c78aa67..373ad8a 100644 --- a/ICSSoft.FromERP/IcsSBomFromU8.cs +++ b/ICSSoft.FromERP/IcsSBomFromU8.cs @@ -39,14 +39,39 @@ namespace ICSSoft.FromERP string Namespace = this.GetType().Namespace; //string Class = this.GetType().Name; DataTable dt = ICSHelper.GetERPDB(conStr); + + + + string erpNames = ICSHelper.GetConfigString()["Workpoint_ERPDB"]; + List DBS = erpNames.Split(',').ToList(); + List ListDB = new List(); + foreach (string DB in DBS) + { + if (DB.Split('_') != null && DB.Split('_').Count() > 1) + { + WorkpointERPDBLink wd = new WorkpointERPDBLink(); + wd.Workpoint = DB.Split('_')[0]; + wd.ERPDB = DB.Split('_')[1]; + ListDB.Add(wd); + } + } + foreach (DataRow dr in dt.Rows) { - string erpName = ICSHelper.GetConfigString()["ERPDB"]; + // string erpName = ICSHelper.GetConfigString()["ERPDB"]; string TenantId = dr["TenantId"].ToString(); string TenantCode = dr["TenantCode"].ToString(); string ErpId = dr["ErpID"].ToString(); //erpID string Class = this.GetType().Name + TenantCode; - erpName = string.Format(erpName, TenantId); + + WorkpointERPDBLink dblink = ListDB.FindLast(a => a.Workpoint == TenantCode); + if (dblink == null) + { + return; + } + string erpName = dblink.ERPDB; + + // erpName = string.Format(erpName, TenantId); #region SQL string sql = @"