fubin 2 lat temu
rodzic
commit
8f134c1846
1 zmienionych plików z 0 dodań i 168 usunięć
  1. 0 168
      wwwroot/api/ZhongTai/testOrderMatnr.ashx

+ 0 - 168
wwwroot/api/ZhongTai/testOrderMatnr.ashx

@@ -1,168 +0,0 @@
-<%@ WebHandler Language="C#" Class="testOrderMatnr" %>
-
-using System;
-using System.Web;
-using System.IO;
-using System.Text;
-using System.Data;
-using Curtain.DataAccess;
-using DK.XuWei.WebMes;
-using Newtonsoft.Json.Linq;
-using System.Web.SessionState;
-using Curtain.Extension.ExObjectConvert;
-
-/// <summary>
-/// 同步生产订单上的物料编码
-/// </summary>
-public class testOrderMatnr : IHttpHandler, IReadOnlySessionState
-{
-
-    public void ProcessRequest(HttpContext context)
-    {
-        context.Response.Write(syncMatnr(context));
-    }
-
-    /// <summary>
-    /// 同步生产订单上的物料编码
-    /// </summary>
-    /// <returns>json</returns>
-    private string syncMatnr(HttpContext context)
-    {
-        // 测试
-        string _connStr_ss = @"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.18.32.31)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dkmes)));User Id=dkmes;Password=dongke";
-        string Url138 = "http://hgs4podev.hegii.com:50200/RESTAdapter/DKMES/ZSDFM138";  // 测试
-        string userName = "hgsapdk:Sapdk#240";                                          // 测试
-
-        // 正式
-        //string _connStr_ss = @"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.18.32.116)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dkmes)));User Id=hgiboss;Password=dongke";
-        //string Url138 = "http://hgs4podev.hegii.com:8000/RESTAdapter/DKMES/ZSDFM138";       
-        //string userName = "PODKMES:Sapdk#800";                                            
-
-        string msg = string.Empty;
-        using (IDataAccess conn = DataAccess.CreateByString(DataBaseType.Oracle, _connStr_ss))
-        {
-            // 查询当前订单
-            string sql = @"
-            SELECT O.ORDERID,
-                   O.VBELN,
-                   O.POSNR
-              FROM TP_PM_ORDER O
-             WHERE INSTR(O.ORDERNO, 'HEGII') = 0
-               AND O.VBELN IS NOT NULL
-             ORDER BY O.ORDERID ";
-
-            DataTable dtOrder = conn.ExecuteDatatable(sql);
-            if (dtOrder == null || dtOrder.Rows.Count == 0)
-            {
-                return new JsonResult(JsonStatus.error) { message = "数据不完整,请检查!" }.ToJson();
-            }
-
-            string VBELN = string.Empty;
-            string POSNR = string.Empty;
-            int orderID = 0;
-            int r = 0;
-
-            string postString = string.Empty;
-            string result = string.Empty;
-            string ZTYPE = string.Empty;
-            string ZMSG = string.Empty;
-            string EV_MATNR = string.Empty;
-            string EV_WERKS = string.Empty;
-            string EV_MAKTX = string.Empty;
-            decimal EV_KWMENG = 0;
-
-            foreach (DataRow row in dtOrder.Rows)
-            {
-                VBELN = row["VBELN"].ToString();
-                POSNR = row["POSNR"].ToString();
-                int.TryParse(row["ORDERID"].ToString(), out orderID);
-
-                #region 调用SAP接口
-                if (!string.IsNullOrEmpty(VBELN) && !string.IsNullOrEmpty(POSNR))
-                {
-                    // 调用SAP接口,获取工厂号和物料号
-                    postString = "{\"IV_VBELN\":\"" + VBELN + "\",\"IV_POSNR\":\"" + POSNR.PadLeft(6, '0') + "\"}";
-                    try
-                    {
-                        result = JsonClient.PostData2(Url138, postString, "POST", userName);
-                        ZTYPE = JObject.Parse(result)["ZTYPE"].ToString();
-                        EV_MATNR = JObject.Parse(result)["EV_MATNR"].ToString();
-                        EV_WERKS = JObject.Parse(result)["EV_WERKS"].ToString();
-                        EV_MAKTX = JObject.Parse(result)["EV_MAKTX"].ToString();
-                        decimal.TryParse(JObject.Parse(result)["EV_KWMENG"].ToString(), out EV_KWMENG);
-                    }
-                    catch (Exception ex)
-                    {
-                        return new JsonResult(JsonStatus.error) { message = "ZSDFM138接口获取失败" }.ToJson();
-                    }
-
-                    if ("E".Equals("ZTYPE"))
-                    {
-                        return new JsonResult(JsonStatus.error) { message = ZMSG }.ToJson();
-                    }
-
-                    if (!"5000".Equals(EV_WERKS))
-                    {
-                        msg += orderID + ":不属于当前工厂\n";
-                        continue;
-                    }
-
-                    if (string.IsNullOrEmpty(EV_MATNR))
-                    {
-                        msg += orderID + ":订单未匹配到物料编码\n";
-                        continue;
-                    }
-                    #endregion
-
-                    #region 保存订单明细
-                    // 删除明细
-                    sql = "DELETE FROM tp_pm_orderdetail od WHERE od.orderid = @orderid@";
-                    r = conn.ExecuteNonQuery(sql,
-                        new CDAParameter("orderid", orderID, DataType.Int32)
-                    );
-
-                    // 新建明细
-                    if (!string.IsNullOrEmpty(EV_MATNR))
-                    {
-                        sql = @"
-                        INSERT INTO TP_PM_ORDERDETAIL
-                            (ORDERID,
-                             MATERIALCODE,
-                             MAKTX,
-                             KWMENG,
-                             ACCOUNTID,
-                             CREATEUSERID)
-                        VALUES
-                            (@ORDERID@,
-                             @MATERIALCODE@,
-                             @MAKTX@,
-                             @KWMENG@,
-                             @ACCOUNTID@,
-                             @CREATEUSERID@) ";
-
-                        r = conn.ExecuteNonQuery(sql,
-                             new CDAParameter("ORDERID", orderID, DataType.Int32),
-                             new CDAParameter("MATERIALCODE", EV_MATNR, DataType.VarChar),
-                             new CDAParameter("MAKTX", EV_MAKTX, DataType.NVarChar),
-                             new CDAParameter("KWMENG", EV_KWMENG, DataType.Decimal),
-                             new CDAParameter("ACCOUNTID", 1, DataType.Int32),
-                             new CDAParameter("CREATEUSERID", 1, DataType.Int32)
-                         );
-                    }
-                    #endregion
-                }
-            }
-        }
-        return new JsonResult(JsonStatus.success) { message = msg }.ToJson();
-    }
-
-
-    public bool IsReusable
-    {
-        get
-        {
-            return false;
-        }
-    }
-
-}