From c6239213a60120d4f3f8d2105f48b6fa715a99ed Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期三, 21 五月 2025 13:30:02 +0800 Subject: [PATCH] 1.获取携客云信息返回结构优化 2.SRM送货单扫码收料-PDA 3.OA->MES新增字段 --- service/Warehouse/MesXkyService.cs | 103 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 68 insertions(+), 35 deletions(-) diff --git a/service/Warehouse/MesXkyService.cs b/service/Warehouse/MesXkyService.cs index e2822f3..ceb40ea 100644 --- a/service/Warehouse/MesXkyService.cs +++ b/service/Warehouse/MesXkyService.cs @@ -8,8 +8,7 @@ using System.Net; using System.Net.Http.Headers; using System.Text; -using System.Data.SqlClient; -using System.Data; +using NewPdaSqlServer.Dto.Xky; using static NewPdaSqlServer.Controllers.Warehouse.MesXkyController; namespace NewPdaSqlServer.service.QC; @@ -153,7 +152,7 @@ // 鏂板鍒楄〃绌哄�兼鏌� if (noticeList == null || !noticeList.Any() || noticeList.Count < 1) { - _logMessageDhdBar += $"鏈鑾峰彇鏀惰揣鍗曟暟鎹负绌�"; + _logMessageDHD += $"鏈鑾峰彇鏀惰揣鍗曟暟鎹负绌�"; return result; } @@ -263,7 +262,7 @@ sendStatus = _responseData.result; // 瀵规暟鎹仛澶勭悊瀛樺叆mes - if (SaveDeliveryNoticeDetail(_responseData) > 0) + if (SaveDeliveryNoticeDetail(_responseData, entity.deliveryNo) > 0) sendStatus = 1; else sendStatus = 0; @@ -294,7 +293,7 @@ edtUserGuid: Guid.Parse("11111111-1111-1111-1111-111111111111"), abtGuid: null, abtTable: "DELIVERY_NOTICE_DETAIL", - detail: _logMessageDhdDetail, + detail: _logMessageDhdDetail + $"绯荤粺寮傚父閿欒锛歿e.Message}\n璺熻釜锛歿e.StackTrace}", orderNo: "", sendJson: _requestJson, rtnJson: JsonConvert.SerializeObject(_responseData), @@ -309,25 +308,26 @@ } //瀵硅幏鍙栧埌鐨勬惡瀹簯閫佽揣鍗曞仛澶勭悊 - private int SaveDeliveryNoticeDetail(dynamic responseJson) + private int SaveDeliveryNoticeDetail(dynamic responseJson,string deliveryNo) { - var result = 0; + var result = 1; List<DeliveryNoticeDetail> noticeList = JsonConvert.DeserializeObject<List<DeliveryNoticeDetail>>(responseJson.data.lineList.ToString()); + + // 鏂板鍒楄〃绌哄�兼鏌� + if (noticeList == null || !noticeList.Any() || noticeList.Count < 1) + { + _logMessageDhdBar += $"閫佽揣鏄庣粏鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}"; + return result; + } + + // 鑾峰彇閫佽揣鍗曞彿骞舵牎楠� var deliveryNoObj = responseJson.data.deliveryNo; if (deliveryNoObj == null || string.IsNullOrEmpty(deliveryNoObj.ToString())) { - _logMessageDhdDetail += $"銆愬紓甯搞�戣幏鍙栭�佽揣鍗曞け璐ワ細{responseJson}"; - return result; + throw new Exception($"銆愬紓甯搞�戣幏鍙栭�佽揣鍗曞け璐ワ細{responseJson}"); } - string deliveryNo = deliveryNoObj.ToString(); - - // 鏂板鍒楄〃绌哄�兼鏌� - if (noticeList == null || !noticeList.Any()) - { - _logMessageDhdBar += $"銆愬紓甯搞�戦�佽揣鏄庣粏鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}"; - return result; - } + deliveryNo = deliveryNoObj.ToString(); //璧嬪�糶uid鍜屽埌璐у崟鍙� noticeList.ForEach(n => n.Id = Guid.NewGuid()); @@ -347,8 +347,8 @@ }, ex => { // 澧炲己寮傚父淇℃伅 - _logMessageDhdDetail = _logMessageDhdDetail + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"; - //throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"); + //_logMessageDhdDetail = _logMessageDhdDetail + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"; + throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"); }); return result; @@ -451,7 +451,7 @@ edtUserGuid: Guid.Parse("11111111-1111-1111-1111-111111111111"), abtGuid: null, abtTable: "TBL_BARCODE_INFORMATION", - detail: _logMessageDhdBar, + detail: _logMessageDhdBar + $"绯荤粺寮傚父閿欒锛歿e.Message}\n璺熻釜锛歿e.StackTrace}", orderNo: "", sendJson: _requestJson, rtnJson: JsonConvert.SerializeObject(_responseData), @@ -468,36 +468,69 @@ //瀵硅幏鍙栧埌鐨勬惡瀹簯閫佽揣鍗曟潯鐮佸仛澶勭悊 private int SaveDeliveryNoticeBar(dynamic responseJson,string deliveryNo) { - var result = 0; - List<TblBarcodeInformation> noticeList = JsonConvert.DeserializeObject<List<TblBarcodeInformation>>(responseJson.dataList.ToString()); - - // 鏂板鍒楄〃绌哄�兼鏌� + var result = 1; + List<XkyBarcodeDataDto> noticeList = JsonConvert.DeserializeObject<List<XkyBarcodeDataDto>>(responseJson.dataList.ToString()); + if (noticeList == null || !noticeList.Any()) { - _logMessageDhdBar += $"銆愬紓甯搞�戞潯鐮佹暟鎹负绌猴紝閫佽揣鍗曞彿锛歿deliveryNo}"; + _logMessageDhdBar += $"鏉$爜鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}"; return result; } - // 璧嬪�糶uid鍜屽埌璐у崟鍙� - noticeList.ForEach(n => n.Id = Guid.NewGuid()); - noticeList.ForEach(n => n.DeliveryNo = deliveryNo); - noticeList.ForEach(n => n.SynchronousDate = DateTime.Now); + var barcodeList = noticeList.Select(n => new TblBarcodeInformation + { + Id = Guid.NewGuid(), + DeliveryNo = deliveryNo, + SynchronousDate = DateTime.Now, + // 鐩存帴鏄犲皠瀛楁 + ProductCode = n.ProductCode, + SmallBarcode = n.SmallBarcode, + BigBarcode = n.BigBarcode, + OuterBarcode = n.OuterBarcode, + IncludeQty = n.IncludeQty.ToString(), + SmallPackageSn = n.SmallPackageSn, + BigPackageSn = n.BigPackageSn, + OutPackageSn = n.OuterPackageSn, + PackLevel = n.PackLevel.ToString(), - Db.Ado.UseTran(() => + // 灏哄瀛楁鏄犲皠 + SmallPackageLength = n.SmallPackageLength?.ToString(), + SmallPackageWidth = n.SmallPackageWidth?.ToString(), + SmallPackageHeight = n.SmallPackageHeight?.ToString(), + BigPackageLength = n.BigPackageLength?.ToString(), + BigPackageWidth = n.BigPackageWidth?.ToString(), + BigPackageHeight = n.BigPackageHeight?.ToString(), + OuterPackageLength = n.OuterPackageLength?.ToString(), + OuterPackageWidth = n.OuterPackageWidth?.ToString(), + OuterPackageHeight = n.OuterPackageHeight?.ToString(), + + // 鍔ㄦ�佸瓧娈垫槧灏� + PoErpNo = n.DynamicData?.PoErpNo ?? n.PoErpNo, + PoLineNo = n.DynamicData?.PoLineNo ?? n.PoLineNo, + InnerVendorCode = n.DynamicData?.InnerVendorCode, + Customize1 = n.DynamicData?.Customize1, + Customize2 = n.DynamicData?.Customize2, + Customize3 = n.DynamicData?.Customize3, + + // 鍏朵粬瀛楁 + DnLines = n.DnLines // 鏍规嵁鏁版嵁搴撴敞閲婏紝ExtendN01瀵瑰簲椤圭洰(鍗曡韩extendN01)锛岃繖閲屾槧灏刣nLines + }).ToList(); + + Db.Ado.UseTran(() => { // 鍒犻櫎鍏宠仈閫佽揣鏄庣粏鏁版嵁 Db.Deleteable<TblBarcodeInformation>() .Where(d => d.DeliveryNo == deliveryNo) - .ExecuteCommand(); + .ExecuteCommand(); - // 鎵归噺鎻掑叆浼樺寲 - result = Db.Fastest<TblBarcodeInformation>().BulkCopy(noticeList); + // 鎵归噺鎻掑叆浼樺寲锛堜娇鐢ㄦ纭殑barcodeList锛� + result = Db.Fastest<TblBarcodeInformation>().BulkCopy(barcodeList); }, ex => { // 澧炲己寮傚父淇℃伅 - _logMessageDhdBar = _logMessageDhdBar + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"; - //throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"); + //_logMessageDhdBar = _logMessageDhdBar + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"; + throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}"); }); return result; -- Gitblit v1.9.3