From 716b29fea5945ca7dc4419d9f1f980c379312b32 Mon Sep 17 00:00:00 2001 From: chengsc <Demo@DESKTOP-CPA90BF> Date: 星期四, 24 十月 2024 18:46:48 +0800 Subject: [PATCH] 修改问题 --- Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs | 205 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 174 insertions(+), 31 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs index b3d758e..47e501b 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs @@ -23,6 +23,7 @@ using System.Reflection; using System.IO; using System.Security.Cryptography.X509Certificates; +using System.Net.WebSockets; namespace WMS.BLL.BllPdaServer { @@ -208,6 +209,8 @@ if (modelList.Count > 0) { + var notice = Db.Queryable<BllArrivalNotice>().First(m=>m.IsDel == "0" && m.ASNNo == modelList[0].ASNNo); + modelList[0].UDF5 = notice.Demo; return modelList[0]; } @@ -1903,15 +1906,21 @@ } if (!string.IsNullOrWhiteSpace(model.ASNNo)) { - var asnData = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == model.ASNNo); - if (asnData != null && (asnData.Type == "0" || asnData.Type == "3")) + var detailId = model.ASNNo.Split("-")[0]; + var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m=>m.IsDel =="0" && m.Id == int.Parse(detailId)); + if (detail != null) { - var count = Db.Queryable<BllBoxInfo>().Count(m => m.IsDel == "0" && m.Status == "0" && m.BoxNo == model.BoxNo); - if (count == 0) + var asnData = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == detail.ASNNo); + if (asnData != null && (asnData.Type == "0" || asnData.Type == "3")) { - GetBoxInfoByFuMa(model.BoxNo, ""); //浠庤祴鐮佺郴缁熻幏鍙栫鐮佷俊鎭� + var count = Db.Queryable<BllBoxInfo>().Count(m => m.IsDel == "0" && m.Status == "0" && m.BoxNo == model.BoxNo); + if (count == 0) + { + GetBoxInfoByFuMa(model.BoxNo, ""); //浠庤祴鐮佺郴缁熻幏鍙栫鐮佷俊鎭� + } } } + } string sqlString = $@"SELECT @@ -1938,6 +1947,111 @@ throw ex; } } + + /// <summary> + /// 鏍规嵁绠辩爜鑾峰彇鏍囩鏈�灏忚拷婧爜淇℃伅 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + public List<BoxInfoDto> GetBindBoxInfo2s(BoxInfoVm model) + { + try + { + if (string.IsNullOrEmpty(model.BoxNo3)) + { + throw new Exception("璇锋壂鎻忔渶灏忚拷婧潯鐮�!"); + } + if (!string.IsNullOrWhiteSpace(model.ASNNo)) + { + var detailId = model.ASNNo.Split("-")[0]; + var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == int.Parse(detailId)); + if (detail != null) + { + var asnData = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == detail.ASNNo); + if (asnData != null) + { + if (asnData.Type != "3") + { + throw new Exception("鍗曟嵁璇烽�夋嫨閫�璐у叆搴撳崟!"); + } + var count = Db.Queryable<BllBoxInfo>().Count(m => m.IsDel == "0" && m.Status == "0" && m.BoxNo3 == model.BoxNo3); + if (count == 0) + { + //浼樺厛WMS鏌ユ壘 + + var comDetail = Db.Queryable<BllBoxInfo>().First(m=>m.BoxNo3 == model.BoxNo3 && m.IsDel =="0" && m.Status =="2"); + if (comDetail!= null) + { + var boxInfo = new BllBoxInfo() + { + ASNNo = "", + //ASNDetailNo = 0, + OrderCode = "", + //BindNo = 0, + BoxNo = comDetail.BoxNo, + BoxNo2 = comDetail.BoxNo2, + BoxNo3 = comDetail.BoxNo3, + PalletNo = "", + Qty = comDetail.Qty, + FullQty = comDetail.FullQty, + Status = "0", + SkuNo = comDetail.SkuNo, + SkuName = comDetail.SkuName, + LotNo = comDetail.LotNo, + LotText = comDetail.LotText, + SupplierLot = comDetail.SupplierLot, + ProductionTime = comDetail.ProductionTime, + ExpirationTime = comDetail.ExpirationTime, + //CompleteTime = comTime, + InspectMark = comDetail.InspectMark, + BitBoxMark = "1", + InspectStatus = comDetail.InspectStatus, + Origin = "璧嬬爜", + Standard = comDetail.Standard, + PackageStandard = comDetail.PackageStandard, + StoreTime = comDetail.StoreTime, + QtyOrd = comDetail.QtyOrd, + QtyCount = comDetail.QtyCount, + CreateUser = 0, + CreateTime = DateTime.Now, + }; + Db.Insertable(boxInfo).ExecuteCommand(); + } + else + { + // GetBoxInfoByFuMa(model.BoxNo3, ""); //浠庤祴鐮佺郴缁熻幏鍙栫鐮佷俊鎭� + } + } + } + } + + + } + string sqlString = $@"SELECT + ASNNo, + BoxNo, + SkuNo, + SkuName, + LotNo, + SUM(Qty) as Qty + FROM BllBoxInfo + WHERE IsDel = '0' + AND Status='0' + AND BoxNo3 = '{model.BoxNo3}' + GROUP BY ASNNo,BoxNo,SkuNo,SkuName,LotNo; "; + var models = Db.Ado.SqlQuery<BoxInfoDto>(sqlString); + if (models.Count == 0) + { + throw new Exception("鏈�灏忚拷婧爜淇℃伅涓嶅瓨鍦�!"); + } + return models; + } + catch (Exception ex) + { + throw ex; + } + } + // 鏍规嵁鍗曟嵁鍙疯幏鍙栧崟鎹槑缁嗗垪琛� public List<ArrivalNoticeDetailDto> GetBindArrivalNoticeDetails(ArrivalNoticeVm model) { @@ -2090,19 +2204,35 @@ //鍒ゆ柇鐗╂枡鏁伴噺鏄惁涓�0 涓�0鍒ゆ柇绠辩爜淇℃伅 涓嶄负0缁х画 if (model.TableType == 0) { - if (string.IsNullOrEmpty(model.BoxNo)) + if (notice.Type != "3") { - throw new Exception("-1:绠辩爜淇℃伅涓嶅彲涓虹┖!"); - } - - if (model.IsContinue == "1") - { - if (string.IsNullOrWhiteSpace(model.TailBoxNo)) + if (string.IsNullOrEmpty(model.BoxNo)) { - throw new Exception("-1:寮�鍚繛缁粍鎵樻椂锛屽熬绠辩爜淇℃伅涓嶅彲涓虹┖!"); + throw new Exception("-1:绠辩爜淇℃伅涓嶅彲涓虹┖!"); } + if (model.IsContinue == "1") + { + if (string.IsNullOrWhiteSpace(model.TailBoxNo)) + { + throw new Exception("-1:寮�鍚繛缁粍鎵樻椂锛屽熬绠辩爜淇℃伅涓嶅彲涓虹┖!"); + } + } } + else + { + if (string.IsNullOrEmpty(model.BoxNo01)) + { + throw new Exception("-1:杩芥函鐮佷俊鎭笉鍙负绌�!"); + } + if (model.IsContinue == "1") + { + throw new Exception("-1:杩芥函鐮佷笉鍙繛缁粍鎵橈紒"); + } + } + + + } int isTextTable = model.TableType; int isDeposit = 0; @@ -2302,27 +2432,40 @@ var boxInfoList = new List<BllBoxInfo>(); if (model.SkuQty == 0) { - //棣栫 - var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.BoxNo && m.Status == "0").ToList(); - if (boxInfo.Count == 0) + if (notice.Type == "3") { - throw new Exception("-1:绠辩爜淇℃伅涓嶅瓨鍦�!"); - } - boxInfoList.AddRange(boxInfo); - //鏄惁杩炵画缁勬墭 - if (model.IsContinue == "1") - { - //灏剧 - var boxInfo2 = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.TailBoxNo && m.Status == "0").ToList(); - if (boxInfo2.Count == 0) + //棣栫 + var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo3 == model.BoxNo01 && m.Status == "0").ToList(); + if (boxInfo.Count == 0) { - throw new Exception("-1:灏剧鐮佷俊鎭笉瀛樺湪!"); + throw new Exception("-1:绠辩爜淇℃伅涓嶅瓨鍦�!"); } - boxInfoList.AddRange(boxInfo2); - var sql = $"select * from BllBoxInfo where IsDel = '0' and Status = '0' and boxNo>'{model.BoxNo}' and boxNo<'{model.TailBoxNo}'; "; - var list = Db.Ado.SqlQuery<BllBoxInfo>(sql); - boxInfoList.AddRange(list); - msgStr += $"灏剧鍙蜂负{model.TailBoxNo}"; + boxInfoList.AddRange(boxInfo); + } + else + { + //棣栫 + var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.BoxNo && m.Status == "0").ToList(); + if (boxInfo.Count == 0) + { + throw new Exception("-1:绠辩爜淇℃伅涓嶅瓨鍦�!"); + } + boxInfoList.AddRange(boxInfo); + //鏄惁杩炵画缁勬墭 + if (model.IsContinue == "1") + { + //灏剧 + var boxInfo2 = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.TailBoxNo && m.Status == "0").ToList(); + if (boxInfo2.Count == 0) + { + throw new Exception("-1:灏剧鐮佷俊鎭笉瀛樺湪!"); + } + boxInfoList.AddRange(boxInfo2); + var sql = $"select * from BllBoxInfo where IsDel = '0' and Status = '0' and boxNo>'{model.BoxNo}' and boxNo<'{model.TailBoxNo}'; "; + var list = Db.Ado.SqlQuery<BllBoxInfo>(sql); + boxInfoList.AddRange(list); + msgStr += $"灏剧鍙蜂负{model.TailBoxNo}"; + } } } #endregion -- Gitblit v1.8.0