From b2fc93e15a14847141b0a0a8bd591b945c9fa0a3 Mon Sep 17 00:00:00 2001 From: test <15284381150@163.com> Date: 星期四, 21 八月 2025 18:44:34 +0800 Subject: [PATCH] 添加赋码实体类和修改箱码方法,改正拣货拼托 --- Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs | 129 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 128 insertions(+), 1 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs index 72de3a2..657aebb 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs @@ -30,6 +30,7 @@ using System.Security.Cryptography.X509Certificates; using AutoMapper.Configuration.Annotations; using Utility; +using System.Diagnostics.Metrics; namespace WMS.BLL.BllPdaServer { @@ -2081,7 +2082,7 @@ /// </summary> /// <param name="model"></param> /// <returns></returns> - public List<BoxInfoDto> GetFMBindBoxInfos(string boxno,string url) + /*public List<BoxInfoDto> GetFMBindBoxInfos(string boxno,string url) { try { @@ -2184,6 +2185,132 @@ { throw ex; } + }*/ + + public List<BoxInfoDto> GetFMBindBoxInfos(string boxno, string url) + { + try + { + #region 绠辩爜璇锋眰鎺ュ彛锛屾寮忕郴缁熸斁寮� + var data = new + { + BoxNo = boxno + }; + var jsonData = JsonConvert.SerializeObject(data); + + var response = HttpHelper.DoPost(url, jsonData, "绠辩爜淇℃伅璇锋眰", "FM"); + + var obj = JsonConvert.DeserializeObject<FuMaPostModel>(response);//瑙f瀽杩斿洖鏁版嵁 + if (obj.Success != true) + { + throw new Exception("璇锋眰澶辫触" + obj.Message); + } + #endregion + + if (string.IsNullOrEmpty(obj.Data.SkuNo)) + { + //娴嬭瘯鐢紝鍙戝竷姝e紡鍓嶅垹闄ゆ娈典唬鐮� + //obj.Data.SkuNo = "50004632"; + throw new Exception($"鐗╂枡缂栫爜涓嶈兘涓虹┖"); + } + + //鏌ユ壘鐗╂枡淇℃伅 + var sku = Db.Queryable<SysMaterials>().First(m => m.SkuNo == obj.Data.SkuNo); + if (sku == null) + { + throw new Exception($"鏈煡璇㈠埌鐗╂枡{obj.Data.SkuNo}淇℃伅"); + } + + var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 + var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 + //鑾峰彇鍖呰淇℃伅 + new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum); + if (pNum == 0 || bNum == 0) + { + throw new Exception($"{sku.SkuNo}鐗╁搧鍖呰鏈壘鍒帮紒"); + } + + var boxList = new List<BllBoxInfo>(); + var comTime = DateTime.Now; + //娣诲姞绠辩爜淇℃伅 + foreach (var box in obj.Data.DetailList) + { + foreach (var box2 in box.DetailList2) + { + var boxInfo = new BllBoxInfo() + { + BoxNo = obj.Data.BoxNo, + BoxNo2 = box.BoxNo2, + BoxNo3 = box2.BoxNo3, + Qty = obj.Data.Qty, + BitBoxMark = obj.Data.BitBoxMark, + + ASNNo = "", + //ASNDetailNo = noticeDetail.Id, + OrderCode = "",//notice.OrderCode + //BindNo = bindId, + //PalletNo = model.PallNo, + FullQty = bNum, + Status = "0", + SkuNo = sku.SkuNo, + SkuName = sku.SkuName, + LotNo = box2.LotNo, + LotText = obj.Data.LotNoBoxNum, + ProductionTime = DateTime.Parse(box2.ProductionTime), + ExpirationTime = DateTime.Parse(box2.ExpirationTime), + //CompleteTime = "", + InspectMark = "0", + InspectStatus = "0", + Origin = "璧嬬爜", + CreateTime = comTime, + CreateUser = 0 + }; + boxList.Add(boxInfo); + }; + } + try + { + //寮�鍚簨鍔� + Db.BeginTran(); + + Db.Fastest<BllBoxInfo>().BulkCopy(boxList); + + //鎻愪氦浜嬪姟 + Db.CommitTran(); + } + catch (Exception ex) + { + //鍥炴粴浜嬪姟 + Db.RollbackTran(); + throw new Exception("鎻掑叆绠辩爜澶辫触锛�" + ex.Message); + } + + string sqlString = $@"SELECT + ASNNo, + BoxNo, + SkuNo, + SkuName, + LotNo, + BitBoxMark, + SUM(Qty) as Qty + FROM BllBoxInfo + WHERE IsDel = '0' + AND Status='0' + AND BoxNo = '{boxno}' + GROUP BY ASNNo,BoxNo,SkuNo,SkuName,LotNo,BitBoxMark; "; + + var models = Db.Ado.SqlQuery<BoxInfoDto>(sqlString); + + if (models.Count == 0) + { + throw new Exception("绠辩爜淇℃伅涓嶅瓨鍦�!"); + } + return models; + } + catch (Exception ex) + { + throw ex; + } } /// <summary> -- Gitblit v1.8.0