From 950fac9fd7b9477fc2bbe3253d217f62ac7608e5 Mon Sep 17 00:00:00 2001 From: wxw <Administrator@DESKTOP-5BIMHQ3> Date: 星期一, 21 七月 2025 17:01:21 +0800 Subject: [PATCH] SAP接口开发 --- Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 99 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 74 insertions(+), 25 deletions(-) diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs index 3704120..b83a0fb 100644 --- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs +++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs @@ -630,7 +630,7 @@ } //鍥炰紶鍑哄簱鍗� - public bool FinishSo(int id, string url, int userId) + public bool FinishSo(int id, string url, string url2, int userId) { try { @@ -652,34 +652,83 @@ { throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍏抽棴璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�"); } - var list = new List<SoDetail>(); - foreach (var d in detail) + if (notice.Type == "2")//鎶芥鍑哄簱 { - var item = new SoDetail() + var list = new List<SendSampleSku>(); + foreach (var d in detail) { - SkuNo = d.SkuNo, - LotNo = d.LotNo, - Qty = (decimal)d.CompleteQty - }; - list.Add(item); - } - var soInfo = new SoInfo() - { - OrderCode = notice.OrderCode, - SoDetails = list - }; - #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp - //绯荤粺瀵规帴鍚庢斁寮� - /*var jsonData = JsonConvert.SerializeObject(soInfo); + var item = new SendSampleSku() + { + skuNo = d.SkuNo, + skuName = d.SkuName, + lotNo = d.LotNo, + skuQty = Convert.ToDecimal(d.CompleteQty) + }; + list.Add(item); + } + SendSampleVm sendSampleVm = new SendSampleVm(); + sendSampleVm.pallDataList = list; - var response = HttpHelper.DoPost(url, jsonData, "鍑哄簱鍗曞畬鎴愪笂浼�", "ERP"); - - var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁 - if (obj.Success != 0) + SapSampleVm sapSampleVm = new SapSampleVm(); + sapSampleVm.data = sendSampleVm; + + #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp + //绯荤粺瀵规帴鍚庢斁寮� + /*var jsonData = JsonConvert.SerializeObject(sapSampleVm); + + var response = HttpHelper.DoPost(url2, jsonData, "鎶芥鍑哄簱瀹屾垚涓婁紶", "ERP"); + + var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁 + if (obj.Success != 0) + { + throw new Exception("涓婁紶澶辫触" + obj.Message); + }*/ + #endregion + } + else { - throw new Exception("涓婁紶澶辫触" + obj.Message); - }*/ - #endregion + var list = new List<BackSoDetail>(); + foreach (var d in detail) + { + var mater = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == d.SkuNo); + if (mater == null) + { + throw new Exception($"澶嶆牳澶辫触锛岀墿鏂欑紪鐮�:{d.SkuNo}鐨勭墿鏂欎俊鎭笉瀛樺湪"); + } + var item = new BackSoDetail() + { + POSNR = d.OrderDetailCode, + MATNR = d.SkuNo, + CHARG = d.LotNo, + LFIMG = d.CompleteQty.ToString(), + MEINS = mater.UnitNo, + HSDAT = "", + VFDAT = "" + }; + list.Add(item); + } + var soInfo = new BackSoVm() + { + ZUUID = Guid.NewGuid().ToString(), + VBELN = notice.OrderCode, + WERKS = notice.CustomerNo, + LFART = notice.Type, + WADAT_IST = Convert.ToDateTime(notice.CompleteTime).ToString("yyyy-MM-dd"), + ITEM = list + }; + #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp + //绯荤粺瀵规帴鍚庢斁寮� + /*var jsonData = JsonConvert.SerializeObject(soInfo); + + var response = HttpHelper.DoPost(url, jsonData, "鍑哄簱鍗曞畬鎴愪笂浼�", "ERP"); + + var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁 + if (obj.Success != 0) + { + throw new Exception("涓婁紶澶辫触" + obj.Message); + }*/ + #endregion + } notice.Status = "6"; notice.CheckTime = DateTime.Now; -- Gitblit v1.8.0