From 6b859e3a66611841adbabd4bf01ae6575be96bca Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期三, 20 十一月 2024 21:40:21 +0800
Subject: [PATCH] 一些优化

---
 Tiger.Business.MES/iERP/MES_U9C.cs |   80 +++++++++++++++++++++++++---------------
 1 files changed, 50 insertions(+), 30 deletions(-)

diff --git a/Tiger.Business.MES/iERP/MES_U9C.cs b/Tiger.Business.MES/iERP/MES_U9C.cs
index 069f0a5..9635204 100644
--- a/Tiger.Business.MES/iERP/MES_U9C.cs
+++ b/Tiger.Business.MES/iERP/MES_U9C.cs
@@ -19,12 +19,17 @@
 using System.Diagnostics;
 using Tiger.Model.Entitys.MES.U9C;
 using Newtonsoft.Json.Linq;
+using System.Security.Policy;
+using NetTaste;
 
 namespace Tiger.Business.MES
 {
     public partial class MES_U9C : IMES_U9C
     {
-        public static string U9CAuthLoginUrl { get; set; } = "http://172.16.80.20/U9C/webapi/OAuth2/AuthLogin";
+        public static string U9CAuthLoginUrl { get; set; } = "http://172.16.80.20/U9C/webapi/OAuth2/AuthLogin?";
+        public static string secret = "&entcode=02&orgcode=101&clientid=mes&clientsecret=12c8ee7e9bb74ad2a6a0fb3315c8af20";
+        public static string RcvRptDocCreateUrl
+        { get; set; } = "http://172.16.80.20/u9C/webapi/RcvRptDoc/Create";
 
         /// <summary>
         /// 鍏ュ簱鍗曟帴鍙�
@@ -37,39 +42,54 @@
             var action = new ApiAction();
             try
             {
-                JObject json = new JObject();
-                json["CompleteList"] = new JArray(); // 鍒涘缓涓�涓┖鐨凧Array
-                JObject moKey = new JObject();
-                moKey["DocNo"] = input.WorkOrder;
-                JObject Wh = new JObject();
-                Wh["Code"] = input.WhCode;
-                json["CompleteList"]["Wh"] = Wh;
-                JObject DescFlexField = new JObject();
-                DescFlexField["PrivateDescSeg1"] = input.PkgQty;
-                json["CompleteList"]["DescFlexField"] = DescFlexField;
-                JObject Item = new JObject();
-                Item["Code"] = input.ItemCode;
-                json["CompleteList"]["Item"] = Item;
-                json["CompleteList"]["CompleteQty"] = input.CompleteQty;
-                json["CompleteList"]["OutputType"] = input.OutputType;
-                json["CompleteList"]["StorageType"] = input.StorageType;
-                json["CompleteList"]["DocState"] = input.DocState;
-
-                var response = await HttpHelper.PostAsync(U9CAuthLoginUrl, json);
-                var result = JsonConvert.DeserializeObject<U9CReturnData>(response.Message);
-                Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曟帴鍙f彁浜son: {json}锛岃繑鍥濲son: {response.Message}");
-                var db = Biz.Db;
-                var dbTran = db.UseTran(() =>
+                List<RcvRptDocCreateParam> param = new List<RcvRptDocCreateParam>();
+                param.Add(new RcvRptDocCreateParam
                 {
-
-
+                    CompleteList = new List<CompleteList> { new CompleteList
+                    {
+                        MOKey = new MOKey { DocNo = input.WorkOrder },
+                        Wh = new Wh { Code = input.WhCode },
+                        DescFlexField = new DescFlexField { PrivateDescSeg1 = input.PkgQty.ToString() },
+                        Item = new Item { Code = input.ItemCode },
+                        CompleteQty = input.CompleteQty,
+                        OutputType = input.OutputType,
+                        StorageType = input.StorageType,
+                        DocState = input.DocState,
+                    } }
                 });
-                if (!dbTran.IsSuccess)
+
+                var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode=admin{secret}");
+                if (u9CLoginResult.Success)
                 {
-                    action.CatchExceptionWithLog(dbTran.ErrorException, $"鏁版嵁澶勭悊澶辫触");
-                    Logger.Interface.Error(action.Message);
+                    var token = u9CLoginResult.Data;
+                    Logger.Interface.Info($"U9C鐧诲綍token: {token}");
+                    var response = await HttpHelper.PostAsync(RcvRptDocCreateUrl, JsonConvert.SerializeObject(param), new Dictionary<string, string>() { { "token", token } });
+                    var result = JsonConvert.DeserializeObject<U9CResult>(response.Message);
+                    if (result != null)
+                    {
+                        if (result.Success)
+                        {
+                            Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曟帴鍙f彁浜son: {JsonConvert.SerializeObject(param)}锛岃繑鍥濲son: {response.Message}");
+                            var db = Biz.Db;
+                            var dbTran = db.UseTran(() =>
+                            {
+
+                            });
+                            if (!dbTran.IsSuccess)
+                            {
+                                action.CatchExceptionWithLog(dbTran.ErrorException, $"鏁版嵁澶勭悊澶辫触");
+                                Logger.Interface.Error(action.Message);
+                            }
+                            Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曟垚鍔�");
+                        }
+                        else
+                        {
+                            action.IsSuccessed = false;
+                            action.LocaleMsg = new($"{result.Data[0].m_errorMsg}");
+                            Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曞け璐�:{result.Data[0].m_errorMsg}");
+                        }
+                    }
                 }
-                Logger.Interface.Info($"鐢熸垚鍏ュ簱鍗曟垚鍔�");
             }
             catch (System.Exception ex)
             {

--
Gitblit v1.9.3