From cb689799ee3c847eca78052473312aea3be37518 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期二, 20 五月 2025 08:46:30 +0800
Subject: [PATCH] 1.获取携客云条码

---
 service/Warehouse/MesXkyService.cs |   60 ++++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 46 insertions(+), 14 deletions(-)

diff --git a/service/Warehouse/MesXkyService.cs b/service/Warehouse/MesXkyService.cs
index 7e8b66c..cbb4aca 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;
@@ -470,30 +469,63 @@
     private int SaveDeliveryNoticeBar(dynamic responseJson,string deliveryNo)
     {
         var result = 1;
-        List<TblBarcodeInformation> noticeList = JsonConvert.DeserializeObject<List<TblBarcodeInformation>>(responseJson.dataList.ToString());
-        
-        // 鏂板鍒楄〃绌哄�兼鏌�
-        if (noticeList == null || !noticeList.Any() || noticeList.Count < 1)
+        List<XkyBarcodeDataDto> noticeList = JsonConvert.DeserializeObject<List<XkyBarcodeDataDto>>(responseJson.dataList.ToString());
+
+        if (noticeList == null || !noticeList.Any())
         {
             _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 => {
             // 澧炲己寮傚父淇℃伅

--
Gitblit v1.9.3