From 1e26a7575d9969e728b0aa01466f490409cb173c Mon Sep 17 00:00:00 2001 From: chengsc <Demo@DESKTOP-CPA90BF> Date: 星期五, 18 十月 2024 18:41:30 +0800 Subject: [PATCH] Merge branch 'master' into csc --- Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs | 106 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 106 insertions(+), 0 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs index 5fe710b..4b30086 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs @@ -5,6 +5,7 @@ using Model.InterFaceModel; using Model.ModelDto.BllCheckDto; using Model.ModelDto.PdaDto; +using Model.ModelVm; using Newtonsoft.Json; using SqlSugar; using Utility.Tools; @@ -1332,5 +1333,110 @@ } #endregion + #region 绠辩爜鏌ヨ + /// <summary> + /// 绠辩爜鏌ヨ + /// </summary> + /// <param name="boxNo">绠辩爜</param> + /// <returns></returns> + public DataBoxDto GetBoxQueryList(string boxNo) + { + // 瀹炰緥鍖栬繑鍥炵被 + DataBoxDto boxModel = new DataBoxDto(); + List<DataBoxInfoDto> list = new List<DataBoxInfoDto>(); + + // 鏍规嵁绠辩爜鑾峰彇绠变俊鎭� + var boxData = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo); + + if (boxData.Count() == 0) + { + // 鏍规嵁鐩掔爜鑾峰彇绠变俊鎭� + boxData = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo2 == boxNo); + if (boxData.Count() == 0) + { + boxModel = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo3 == boxNo).Select(it => new DataBoxDto() { Qty = it.Qty }, true).First(); + return boxModel; + } + + list = boxData.Select(it => new DataBoxInfoDto() + { + BoxNo2 = it.BoxNo3, + Qty2 = it.Qty + }).ToList(); + + boxData = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo2 == boxNo); + boxModel = boxData.GroupBy(m => new + { + m.BoxNo, + m.SkuName, + m.SkuNo, + m.LotNo, + m.SupplierLot, + m.InspectStatus + }).Select(it => new DataBoxDto() + { + BoxNo = it.BoxNo, + SkuName = it.SkuName, + SkuNo = it.SkuNo, + LotNo = it.LotNo, + SupplierLot = it.SupplierLot, + InspectStatus = it.InspectStatus == "0" ? "寰呮" : it.InspectStatus == "1" ? "鍚堟牸":"涓嶅悎鏍�", + Qty = SqlFunc.AggregateSum(it.Qty) + }).First(); + + boxModel.InfoList = list; + return boxModel; + } + else //绠辩爜鍐呮暟鎹� + { + // 澶勭悊澶氱骇鐮� + var num = boxData.Count(m => !string.IsNullOrWhiteSpace(m.BoxNo2)); + if (num > 0) + { + list = boxData.GroupBy(m => new + { + m.BoxNo2 + }).Select(it => new DataBoxInfoDto() + { + BoxNo2 = it.BoxNo2, + Qty2 = SqlFunc.AggregateSum(it.Qty) + }).ToList(); + } + else + { + list = boxData.Select(it => new DataBoxInfoDto() + { + BoxNo2 = SqlFunc.IsNull(it.BoxNo3,""), + Qty2 = it.Qty + }).ToList(); + } + + // 绠辩爜淇℃伅璧嬪�� + boxData = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo); + boxModel = boxData.GroupBy(m => new + { + m.BoxNo, + m.SkuName, + m.SkuNo, + m.LotNo, + m.SupplierLot, + m.InspectStatus + }).Select(it => new DataBoxDto() + { + BoxNo = it.BoxNo, + SkuName = it.SkuName, + SkuNo = it.SkuNo, + LotNo = it.LotNo, + SupplierLot = it.SupplierLot, + InspectStatus = it.InspectStatus == "0" ? "寰呮" : it.InspectStatus == "1" ? "鍚堟牸" : "涓嶅悎鏍�", + Qty = SqlFunc.AggregateSum(it.Qty) + }).First(); + boxModel.InfoList = list; + + return boxModel; + } + } + #endregion + } } -- Gitblit v1.8.0