diff --git a/src/WMS.Web.Core/Dto/ChangeBoxRecord/ChangeBoxRecordQueryResponse.cs b/src/WMS.Web.Core/Dto/ChangeBoxRecord/ChangeBoxRecordQueryResponse.cs index 2b299f96..2ed3e05b 100644 --- a/src/WMS.Web.Core/Dto/ChangeBoxRecord/ChangeBoxRecordQueryResponse.cs +++ b/src/WMS.Web.Core/Dto/ChangeBoxRecord/ChangeBoxRecordQueryResponse.cs @@ -28,7 +28,7 @@ namespace WMS.Web.Core.Dto.ChangeBoxRecord /// /// 序列号 /// - public string SerialNumber { get; set; } + public string SerialNumbers { get; set; } /// /// 原箱子 /// diff --git a/src/WMS.Web.Core/Dto/MoveBoxRecord/MoveBoxRecordQueryInfoResponse.cs b/src/WMS.Web.Core/Dto/MoveBoxRecord/MoveBoxRecordQueryInfoResponse.cs index d0c489a8..80d238ca 100644 --- a/src/WMS.Web.Core/Dto/MoveBoxRecord/MoveBoxRecordQueryInfoResponse.cs +++ b/src/WMS.Web.Core/Dto/MoveBoxRecord/MoveBoxRecordQueryInfoResponse.cs @@ -7,7 +7,7 @@ namespace WMS.Web.Core.Dto.MoveBoxRecord public class MoveBoxRecordQueryInfoResponse { /// - /// 物料规格型号 + /// 规格型号 /// public string Specifications { get; set; } /// diff --git a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs index e28d5b20..c7ce8ee6 100644 --- a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs +++ b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs @@ -32,8 +32,8 @@ namespace WMS.Web.Domain.Entitys /// /// 序列号 /// - [Column("SerialNumber")] - public string SerialNumber { get; set; } + [Column("SerialNumbers")] + public string SerialNumbers { get; set; } /// /// 原箱子ID /// diff --git a/src/WMS.Web.Repositories/ChangeBoxRecordRepositories.cs b/src/WMS.Web.Repositories/ChangeBoxRecordRepositories.cs index 223569ad..79d1f41c 100644 --- a/src/WMS.Web.Repositories/ChangeBoxRecordRepositories.cs +++ b/src/WMS.Web.Repositories/ChangeBoxRecordRepositories.cs @@ -77,13 +77,17 @@ namespace WMS.Web.Repositories public async Task<(List list, int total)> GetListAsync(ChangeBoxRecordQueryRequest dto) { var query = _context.ChangeBoxRecord - .OrderByDescending(o => o.Id) + .GroupJoin(_context.Box, changeBox => changeBox.SrcBoxId, srcBox => srcBox.Id, (changeBox, srcBox) => new { changeBox, srcBox }) + .SelectMany(x => x.srcBox.DefaultIfEmpty(), (d, srcBox) => new { d.changeBox, srcBox }) + .GroupJoin(_context.Box, d => d.changeBox.DestBoxId, destBox => destBox.Id, (d, destBox) => new { d.changeBox, d.srcBox, destBox }) + .SelectMany(x => x.destBox.DefaultIfEmpty(), (d, destBox) => new { d.changeBox,d.srcBox, destBox }) + .OrderByDescending(o => o.changeBox.Id) .Where(adv => 1 == 1); if (dto.CreateBeginDate != null) - query = query.Where(w => w.CreateTime >= dto.CreateBeginDate); + query = query.Where(w => w.changeBox.CreateTime >= dto.CreateBeginDate); if (dto.CreateEndDate != null) - query = query.Where(w => w.CreateTime <= dto.CreateEndDate); + query = query.Where(w => w.changeBox.CreateTime <= dto.CreateEndDate); //组装 int total = await query.CountAsync(); var list = await query.Select(s => new ChangeBoxRecordQueryInfoResponse() @@ -92,14 +96,14 @@ namespace WMS.Web.Repositories MaterialName = "", MaterialNumber = "", Specifications = "", - Stock = _singleDataService.GetSingleData(SingleAction.Stocks, _loginRepositories.CompanyId, s.StockId), - SerialNumber = "", - SrcBox = "", - DestBox = "", - SrcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.SrcSubStockId), - DestSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.DestSubStockId), - Creator = _singleDataService.GetSingleData(SingleAction.Staffs, _loginRepositories.CompanyId, s.CreatorId), - CreateTime =s.CreateTime.DateToStringSeconds() + Stock = _singleDataService.GetSingleData(SingleAction.Stocks, _loginRepositories.CompanyId, s.changeBox.StockId), + SerialNumbers = s.changeBox.SerialNumbers, + SrcBox = s.srcBox.BoxBillNo, + DestBox = s.destBox.BoxBillNo, + SrcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.changeBox.SrcSubStockId), + DestSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.changeBox.DestSubStockId), + Creator = _singleDataService.GetSingleData(SingleAction.Staffs, _loginRepositories.CompanyId, s.changeBox.CreatorId), + CreateTime =s.changeBox.CreateTime.DateToStringSeconds() #endregion }).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync(); diff --git a/src/WMS.Web.Repositories/MoveBoxRecordRepositories.cs b/src/WMS.Web.Repositories/MoveBoxRecordRepositories.cs index 0e52eccf..80cf7736 100644 --- a/src/WMS.Web.Repositories/MoveBoxRecordRepositories.cs +++ b/src/WMS.Web.Repositories/MoveBoxRecordRepositories.cs @@ -77,26 +77,28 @@ namespace WMS.Web.Repositories public async Task<(List list, int total)> GetListAsync(MoveBoxRecordQueryRequest dto) { var query = _context.MoveBoxRecord - .OrderByDescending(o => o.Id) + .GroupJoin(_context.Box, moveBox => moveBox.BoxId, box => box.Id, (moveBox, box) => new { moveBox, box }) + .SelectMany(x => x.box.DefaultIfEmpty(), (d, box) => new { d.moveBox, box }) + .OrderByDescending(o => o.moveBox.Id) .Where(adv => 1 == 1); if (dto.CreateBeginDate != null) - query = query.Where(w => w.CreateTime >= dto.CreateBeginDate); + query = query.Where(w => w.moveBox.CreateTime >= dto.CreateBeginDate); if (dto.CreateEndDate != null) - query = query.Where(w => w.CreateTime <= dto.CreateEndDate); + query = query.Where(w => w.moveBox.CreateTime <= dto.CreateEndDate); //组装 int total = await query.CountAsync(); var list = await query.Select(s => new MoveBoxRecordQueryInfoResponse() { #region dto组装 - Box = "", - SrcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.SrcSubStockId), + Box = s.box.BoxBillNo, + SrcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.moveBox.SrcSubStockId), Specifications = "", - DestSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.DestSubStockId), - Qty = s.Qty, - Type = s.Type.GetRemark(), - Creator = _singleDataService.GetSingleData(SingleAction.Staffs, _loginRepositories.CompanyId, s.CreatorId), - CreateTime = s.CreateTime.DateToStringSeconds() + DestSubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.moveBox.DestSubStockId), + Qty = s.moveBox.Qty, + Type = s.moveBox.Type.GetRemark(), + Creator = _singleDataService.GetSingleData(SingleAction.Staffs, _loginRepositories.CompanyId, s.moveBox.CreatorId), + CreateTime = s.moveBox.CreateTime.DateToStringSeconds() #endregion }).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();