cdk
2025-07-14 642780a87aa22b7e83d33ab9779a490da7468f9a
HandleData/AE_MES_ERP.cs
@@ -149,6 +149,7 @@
                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;
@@ -844,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"); //   物料名称
@@ -914,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);
@@ -929,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}',
@@ -949,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;
@@ -1211,6 +1254,7 @@
        private bool TB_ERPTOMES_GYS(DataSet ds, string operatype, ref string ErrorMsg)
        {
            string sql = "";
            string dtName = "";
            //用来拼ID集合
            List<string> IDList = new List<string>();
@@ -1238,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());
@@ -1263,11 +1307,11 @@
                    colMapping[6] = new SqlBulkCopyColumnMapping("FUseOrgId", "FUseOrgId"); //   内/外销
                    if (dt.Columns.Contains("GYSA006"))
                    {
                        colMapping[7] = new SqlBulkCopyColumnMapping("GYSA006", "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")
@@ -1316,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;
            }
        }
@@ -3209,7 +3254,7 @@
                // 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);
@@ -3230,10 +3275,6 @@
                    _sqlHelper.ExecuteNonQuery(sql);
                }
                if (string.IsNullOrWhiteSpace(res)) {
                    res = "数据有异常";
                }
                //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"))
                {
@@ -3242,7 +3283,7 @@
                }
                else if(res.Contains("MES单号唯一检测不通过"))
                {
                    ErrorMsg = res;
                    ErrorMsg = "OK-" + res;
                    return true;
                }
                else
@@ -4461,7 +4502,24 @@
                            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";
                            }
@@ -4488,7 +4546,10 @@
                            colMapping[11] = new SqlBulkCopyColumnMapping("XSTHB010", "XSTHB010"); //仓库
                            colMapping[12] = new SqlBulkCopyColumnMapping("XSTHB011", "XSTHB011"); //退货日期
                            colMapping[13] = new SqlBulkCopyColumnMapping("ERP_EntryID", "ID"); //明细ID
                            //colMapping[14] = new SqlBulkCopyColumnMapping("XSTHB006", "XSTHB012"); //明细ID
                            if (dt.Columns.Contains("XSTHB012"))
                            {
                                colMapping[14] = new SqlBulkCopyColumnMapping("XSTHB012", "XSTHB012"); //明细产品类型
                            }
                            DataTableToSQLServer(dt, conStr, "GS_XSTHB", colMapping, ref ErrorMsg);
                            #endregion
@@ -4691,6 +4752,25 @@
                                    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;
                                    }
                                }
                            }
                            //插入前先删除重复键
@@ -4716,6 +4796,10 @@
                            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
                        }