调整列表查询

This commit is contained in:
18942506660
2023-10-28 14:56:59 +08:00
parent 8abdbd9746
commit f5cc13f422
4 changed files with 26 additions and 17 deletions

View File

@@ -190,6 +190,9 @@ namespace WMS.Web.Repositories.Configuration
public DbSet<OutStock> OutStock { get; set; }
public DbSet<OutStockTask> OutStockTask { get; set; }
public DbSet<TakeStock> TakeStock { get; set; }
public DbSet<OutStockDetails> OutStockDetails { get; set; }
public DbSet<OutStockTaskDetails> OutStockTaskDetails { get; set; }
public DbSet<TakeStockDetails> TakeStockDetails { get; set; }
public DbSet<InStock> Instock { get; set; }
public DbSet<InStockDetails> InStockDetails { get; set; }
public DbSet<InStockTask> InStockTask { get; set; }

View File

@@ -69,14 +69,16 @@ namespace WMS.Web.Repositories
/// <returns></returns>
public async Task<(List<OutStockQueryInfoResponse> list, int total)> GetListAsync(OutStockQueryRequest dto)
{
var query = _context.OutStock
.OrderByDescending(o => o.Id)
var query = _context.OutStockDetails
.GroupJoin(_context.OutStock, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
.OrderByDescending(o => o.order.Id)
.Where(adv => 1 == 1);
if (dto.CreateBeginDate != null)
query = query.Where(w => w.CreateTime >= dto.CreateBeginDate);
query = query.Where(w => w.order.CreateTime >= dto.CreateBeginDate);
if (dto.CreateEndDate != null)
query = query.Where(w => w.CreateTime <= dto.CreateEndDate);
query = query.Where(w => w.order.CreateTime <= dto.CreateEndDate);
//组装
int total = await query.CountAsync();
var list = await query.Select(s => new OutStockQueryInfoResponse()
@@ -86,8 +88,8 @@ namespace WMS.Web.Repositories
Status = "",
Type = "",
Creator = "",
CreateTime=s.CreateTime.DateToStringSeconds(),
SuccessSync = s.SuccessSync,
CreateTime=s.order.CreateTime.DateToStringSeconds(),
SuccessSync = s.order.SuccessSync,
Stock = "",
SourceBillNo="",
SaleBillNo = "",

View File

@@ -153,14 +153,16 @@ namespace WMS.Web.Repositories
/// <returns></returns>
public async Task<(List<OutStockTaskQueryInfoResponse> list, int total)> GetListAsync(OutStockTaskQueryRequest dto)
{
var query = _context.OutStockTask
.OrderByDescending(o => o.Id)
var query = _context.OutStockTaskDetails
.GroupJoin(_context.OutStockTask, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
.OrderByDescending(o => o.order.Id)
.Where(adv => 1 == 1);
if (dto.CreateBeginDate != null)
query = query.Where(w => w.OperateTime >= dto.CreateBeginDate);
query = query.Where(w => w.order.OperateTime >= dto.CreateBeginDate);
if (dto.CreateEndDate != null)
query = query.Where(w => w.OperateTime <= dto.CreateEndDate);
query = query.Where(w => w.order.OperateTime <= dto.CreateEndDate);
//组装
int total = await query.CountAsync();
var list = await query.Select(s => new OutStockTaskQueryInfoResponse()
@@ -169,7 +171,7 @@ namespace WMS.Web.Repositories
Id = 0,
Status = "",
Type = "",
CreateTime = s.OperateTime.DateToStringSeconds(),
CreateTime = s.order.OperateTime.DateToStringSeconds(),
Stock = "",
SourceBillNo = "",
SaleBillNo = "",

View File

@@ -68,14 +68,16 @@ namespace WMS.Web.Repositories
/// <returns></returns>
public async Task<(List<TakeStockQueryInfoResponse> list, int total)> GetListAsync(TakeStockQueryRequest dto)
{
var query = _context.TakeStock
.OrderByDescending(o => o.Id)
var query = _context.TakeStockDetails
.GroupJoin(_context.TakeStock, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
.OrderByDescending(o => o.order.Id)
.Where(adv => 1 == 1);
if (dto.DateBeginDate != null)
query = query.Where(w => w.Date >= dto.DateBeginDate);
query = query.Where(w => w.order.Date >= dto.DateBeginDate);
if (dto.DateEndDate != null)
query = query.Where(w => w.Date <= dto.DateEndDate);
query = query.Where(w => w.order.Date <= dto.DateEndDate);
//组装
int total = await query.CountAsync();
var list = await query.Select(s => new TakeStockQueryInfoResponse()
@@ -92,8 +94,8 @@ namespace WMS.Web.Repositories
ResultType="",
Remark="",
Creator = "",
Date = s.Date.DateToStringSeconds(),
SuccessSync=s.SuccessSync
Date = s.order.Date.DateToStringSeconds(),
SuccessSync=s.order.SuccessSync
#endregion
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();