| | |
| | | using Model.InterFaceModel; |
| | | using Model.ModelDto.BllCheckDto; |
| | | using Model.ModelDto.PdaDto; |
| | | using Model.ModelVm; |
| | | using Newtonsoft.Json; |
| | | using SqlSugar; |
| | | using Utility.Tools; |
| | |
| | | } |
| | | #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 |
| | | |
| | | } |
| | | } |