From cb689799ee3c847eca78052473312aea3be37518 Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期二, 20 五月 2025 08:46:30 +0800 Subject: [PATCH] 1.获取携客云条码 --- entity/TblBarcodeInformation.cs | 308 ++++++++++++++++++++------------------ Dto/Xky/XkyBarcodeDataDto.cs | 103 ++++++++++++ service/Warehouse/MesXkyService.cs | 60 +++++- 3 files changed, 312 insertions(+), 159 deletions(-) diff --git a/Dto/Xky/XkyBarcodeDataDto.cs b/Dto/Xky/XkyBarcodeDataDto.cs new file mode 100644 index 0000000..3759eb8 --- /dev/null +++ b/Dto/Xky/XkyBarcodeDataDto.cs @@ -0,0 +1,103 @@ +using Newtonsoft.Json; + +namespace NewPdaSqlServer.Dto.Xky +{ + public class XkyBarcodeDataDto + { + [JsonProperty("poErpNo")] + public string PoErpNo { get; set; } + + [JsonProperty("poLineNo")] + public string PoLineNo { get; set; } + + [JsonProperty("productCode")] + public string ProductCode { get; set; } + + [JsonProperty("productName")] + public string ProductName { get; set; } + + [JsonProperty("productScale")] + public string ProductScale { get; set; } + + [JsonProperty("smallBarcode")] + public string SmallBarcode { get; set; } + + [JsonProperty("bigBarcode")] + public string BigBarcode { get; set; } + + [JsonProperty("outerBarcode")] + public string OuterBarcode { get; set; } + + [JsonProperty("includeQty")] + public int IncludeQty { get; set; } + + [JsonProperty("smallPackageLength")] + public int? SmallPackageLength { get; set; } + + [JsonProperty("smallPackageWidth")] + public int? SmallPackageWidth { get; set; } + + [JsonProperty("smallPackageHeight")] + public int? SmallPackageHeight { get; set; } + + [JsonProperty("bigPackageLength")] + public int? BigPackageLength { get; set; } + + [JsonProperty("bigPackageWidth")] + public int? BigPackageWidth { get; set; } + + [JsonProperty("bigPackageHeight")] + public int? BigPackageHeight { get; set; } + + [JsonProperty("outerPackageLength")] + public int? OuterPackageLength { get; set; } + + [JsonProperty("outerPackageWidth")] + public int? OuterPackageWidth { get; set; } + + [JsonProperty("outerPackageHeight")] + public int? OuterPackageHeight { get; set; } + + [JsonProperty("smallPackageSn")] + public string SmallPackageSn { get; set; } + + [JsonProperty("bigPackageSn")] + public string BigPackageSn { get; set; } + + [JsonProperty("outerPackageSn")] + public string OuterPackageSn { get; set; } + + [JsonProperty("dnLines")] + public string DnLines { get; set; } + + [JsonProperty("dynamicData")] + public XkyDynamicDataDto DynamicData { get; set; } + + [JsonProperty("createType")] + public int CreateType { get; set; } + + [JsonProperty("packLevel")] + public int PackLevel { get; set; } + } + + public class XkyDynamicDataDto + { + [JsonProperty("poErpNo")] + public string PoErpNo { get; set; } + + [JsonProperty("poLineNo")] + public string PoLineNo { get; set; } + + [JsonProperty("innerVendorCode")] + public string InnerVendorCode { get; set; } + + [JsonProperty("customize1")] + public string Customize1 { get; set; } + + [JsonProperty("customize2")] + public string Customize2 { get; set; } // 注意:JSON中这里是数字1747584000000 + + [JsonProperty("customize3")] + public string Customize3 { get; set; } + } +} \ No newline at end of file diff --git a/entity/TblBarcodeInformation.cs b/entity/TblBarcodeInformation.cs index a84b347..17c57af 100644 --- a/entity/TblBarcodeInformation.cs +++ b/entity/TblBarcodeInformation.cs @@ -1,180 +1,198 @@ 锘縰sing SqlSugar; using System; -namespace MES.Service.Models; - -/// <summary> -/// 鎼哄浜戞潯鐮佷俊鎭〃 -/// </summary> -[SugarTable("TBL_BARCODE_INFORMATION")] -public class TblBarcodeInformation +namespace MES.Service.Models { /// <summary> - /// 涓婚敭Guid锛圫EQ_XKY锛� + /// 鎼哄浜戞潯鐮佷俊鎭〃 /// </summary> - [SugarColumn(ColumnName = "id", IsPrimaryKey = true)] - public Guid Id { get; set; } + [SugarTable("TBL_BARCODE_INFORMATION")] + public class TblBarcodeInformation + { + /// <summary> + /// 涓婚敭Guid锛圫EQ_XKY锛� + /// </summary> + [SugarColumn(ColumnName = "id", IsPrimaryKey = true)] + public Guid Id { get; set; } - /// <summary> - /// 浜у搧缂栫爜 - /// </summary> - [SugarColumn(ColumnName = "product_code")] - public string ProductCode { get; set; } + /// <summary> + /// 浜у搧缂栫爜 + /// </summary> + [SugarColumn(ColumnName = "product_code")] + public string ProductCode { get; set; } - /// <summary> - /// 灏忓寘鏉$爜 - /// </summary> - [SugarColumn(ColumnName = "small_barcode")] - public string SmallBarcode { get; set; } + /// <summary> + /// 灏忓寘鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "small_barcode")] + public string SmallBarcode { get; set; } - /// <summary> - /// 澶у寘鏉$爜 - /// </summary> - [SugarColumn(ColumnName = "big_barcode")] - public string BigBarcode { get; set; } + /// <summary> + /// 澶у寘鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "big_barcode")] + public string BigBarcode { get; set; } - /// <summary> - /// 澶栫鏉$爜 - /// </summary> - [SugarColumn(ColumnName = "outer_barcode")] - public string OuterBarcode { get; set; } + /// <summary> + /// 澶栫鏉$爜 + /// </summary> + [SugarColumn(ColumnName = "outer_barcode")] + public string OuterBarcode { get; set; } - /// <summary> - /// 褰撳墠灏忓寘鏉$爜鍖呭惈鐨勬暟閲� - /// </summary> - [SugarColumn(ColumnName = "include_qty")] - public string IncludeQty { get; set; } + /// <summary> + /// 褰撳墠灏忓寘鏉$爜鍖呭惈鐨勬暟閲� + /// </summary> + [SugarColumn(ColumnName = "include_qty")] + public string IncludeQty { get; set; } - /// <summary> - /// 灏忓寘鏉$爜-闀� - /// </summary> - [SugarColumn(ColumnName = "small_package_length")] - public string SmallPackageLength { get; set; } + /// <summary> + /// 灏忓寘鏉$爜-闀� + /// </summary> + [SugarColumn(ColumnName = "small_package_length")] + public string SmallPackageLength { get; set; } - /// <summary> - /// 灏忓寘鏉$爜-瀹� - /// </summary> - [SugarColumn(ColumnName = "small_package_width")] - public string SmallPackageWidth { get; set; } + /// <summary> + /// 灏忓寘鏉$爜-瀹� + /// </summary> + [SugarColumn(ColumnName = "small_package_width")] + public string SmallPackageWidth { get; set; } - /// <summary> - /// 灏忓寘鏉$爜-楂� - /// </summary> - [SugarColumn(ColumnName = "small_package_height")] - public string SmallPackageHeight { get; set; } + /// <summary> + /// 灏忓寘鏉$爜-楂� + /// </summary> + [SugarColumn(ColumnName = "small_package_height")] + public string SmallPackageHeight { get; set; } - /// <summary> - /// 澶у寘鏉$爜-闀� - /// </summary> - [SugarColumn(ColumnName = "big_package_length")] - public string BigPackageLength { get; set; } + /// <summary> + /// 澶у寘鏉$爜-闀� + /// </summary> + [SugarColumn(ColumnName = "big_package_length")] + public string BigPackageLength { get; set; } - /// <summary> - /// 澶у寘鏉$爜-瀹� - /// </summary> - [SugarColumn(ColumnName = "big_package_width")] - public string BigPackageWidth { get; set; } + /// <summary> + /// 澶у寘鏉$爜-瀹� + /// </summary> + [SugarColumn(ColumnName = "big_package_width")] + public string BigPackageWidth { get; set; } - /// <summary> - /// 澶у寘鏉$爜-楂� - /// </summary> - [SugarColumn(ColumnName = "big_package_height")] - public string BigPackageHeight { get; set; } + /// <summary> + /// 澶у寘鏉$爜-楂� + /// </summary> + [SugarColumn(ColumnName = "big_package_height")] + public string BigPackageHeight { get; set; } - /// <summary> - /// 澶栫鏉$爜-闀� - /// </summary> - [SugarColumn(ColumnName = "outer_package_length")] - public string OuterPackageLength { get; set; } + /// <summary> + /// 澶栫鏉$爜-闀� + /// </summary> + [SugarColumn(ColumnName = "outer_package_length")] + public string OuterPackageLength { get; set; } - /// <summary> - /// 澶栫鏉$爜-瀹� - /// </summary> - [SugarColumn(ColumnName = "outer_package_width")] - public string OuterPackageWidth { get; set; } + /// <summary> + /// 澶栫鏉$爜-瀹� + /// </summary> + [SugarColumn(ColumnName = "outer_package_width")] + public string OuterPackageWidth { get; set; } - /// <summary> - /// 澶栫鏉$爜-楂� - /// </summary> - [SugarColumn(ColumnName = "outer_package_height")] - public string OuterPackageHeight { get; set; } + /// <summary> + /// 澶栫鏉$爜-楂� + /// </summary> + [SugarColumn(ColumnName = "outer_package_height")] + public string OuterPackageHeight { get; set; } - /// <summary> - /// 褰撳墠灏忓寘鏉$爜鐨勬祦姘寸爜 - /// </summary> - [SugarColumn(ColumnName = "small_package_sn")] - public string SmallPackageSn { get; set; } + /// <summary> + /// 褰撳墠灏忓寘鏉$爜鐨勬祦姘寸爜 + /// </summary> + [SugarColumn(ColumnName = "small_package_sn")] + public string SmallPackageSn { get; set; } - /// <summary> - /// 褰撳墠澶у寘鏉$爜鐨勬祦姘寸爜 - /// </summary> - [SugarColumn(ColumnName = "big_package_sn")] - public string BigPackageSn { get; set; } + /// <summary> + /// 褰撳墠澶у寘鏉$爜鐨勬祦姘寸爜 + /// </summary> + [SugarColumn(ColumnName = "big_package_sn")] + public string BigPackageSn { get; set; } - /// <summary> - /// 褰撳墠澶栫鏉$爜鐨勬祦姘寸爜 - /// </summary> - [SugarColumn(ColumnName = "out_package_sn")] - public string OutPackageSn { get; set; } + /// <summary> + /// 褰撳墠澶栫鏉$爜鐨勬祦姘寸爜 + /// </summary> + [SugarColumn(ColumnName = "out_package_sn")] + public string OutPackageSn { get; set; } - /// <summary> - /// 鍖呰灞傜骇 - /// </summary> - [SugarColumn(ColumnName = "pack_level")] - public string PackLevel { get; set; } + ///// <summary> + ///// 鏉$爜瑙勫垯涓搴旂殑鍔ㄦ�佸瓧娈电殑鍊� + ///// </summary> + //[SugarColumn(ColumnName = "dynamic_data")] + //public string DynamicData { get; set; } - /// <summary> - /// 鍒涘缓鏃堕棿 - /// </summary> - [SugarColumn(ColumnName = "create_time")] - public DateTime CreateTime { get; set; } = DateTime.Now; + /// <summary> + /// 鍖呰灞傜骇 + /// </summary> + [SugarColumn(ColumnName = "pack_level")] + public string PackLevel { get; set; } - /// <summary> - /// 鏇存柊鏃堕棿 - /// </summary> - [SugarColumn(ColumnName = "update_time")] - public DateTime UpdateTime { get; set; } = DateTime.Now; + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "create_time")] + public DateTime CreateTime { get; set; } = DateTime.Now; - /// <summary> - /// 閫佽揣鍗曞彿 - /// </summary> - [SugarColumn(ColumnName = "delivery_no")] - public string DeliveryNo { get; set; } + /// <summary> + /// 鏇存柊鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "update_time")] + public DateTime UpdateTime { get; set; } = DateTime.Now; - /// <summary> - /// 閲囪喘鍗曞彿 - /// </summary> - [SugarColumn(ColumnName = "po_erp_no")] - public string PoErpNo { get; set; } + /// <summary> + /// 閫佽揣鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "delivery_no")] + public string DeliveryNo { get; set; } - /// <summary> - /// 椤圭洰(鍗曡韩extendN01) - /// </summary> - [SugarColumn(ColumnName = "extend_n01")] - public string ExtendN01 { get; set; } + /// <summary> + /// 閲囪喘鍗曞彿 + /// </summary> + [SugarColumn(ColumnName = "po_erp_no")] + public string PoErpNo { get; set; } - /// <summary> - /// 璁㈠崟椤规(ERP) - /// </summary> - [SugarColumn(ColumnName = "po_line_no")] - public string PoLineNo { get; set; } + /// <summary> + /// 閫佽揣鍗曢」娆� + /// </summary> + [SugarColumn(ColumnName = "dnLines")] + public string DnLines { get; set; } - /// <summary> - /// 渚涘簲鍟嗙紪鐮� - /// </summary> - [SugarColumn(ColumnName = "inner_vendor_code")] - public string InnerVendorCode { get; set; } + /// <summary> + /// 璁㈠崟椤规(ERP) + /// </summary> + [SugarColumn(ColumnName = "po_line_no")] + public string PoLineNo { get; set; } - /// <summary> - /// 鐢熶骇鏃ユ湡锛堣嚜瀹氫箟瀛楁customize1锛� - /// </summary> - [SugarColumn(ColumnName = "customize1")] - public string Customize1 { get; set; } + /// <summary> + /// 渚涘簲鍟嗙紪鐮� + /// </summary> + [SugarColumn(ColumnName = "inner_vendor_code")] + public string InnerVendorCode { get; set; } + /// <summary> + /// 鑷畾涔夊瓧娈�1锛圶锛� + /// </summary> + [SugarColumn(ColumnName = "customize1")] + public string Customize1 { get; set; } - /// <summary> - /// 鍚屾鏃堕棿 - /// </summary> - [SugarColumn(ColumnName = "SYNCHRONOUS_DATE")] - public DateTime? SynchronousDate { get; set; } + /// <summary> + /// 鍚屾鏃堕棿 + /// </summary> + [SugarColumn(ColumnName = "SYNCHRONOUS_DATE")] + public DateTime? SynchronousDate { get; set; } + + /// <summary> + /// 鐢熶骇鏃ユ湡 + /// </summary> + [SugarColumn(ColumnName = "customize2")] + public string Customize2 { get; set; } + + /// <summary> + /// 鏈夋晥鏈� + /// </summary> + [SugarColumn(ColumnName = "customize3")] + public string Customize3 { get; set; } + } } \ No newline at end of file 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