This commit is contained in:
Дмитрий Блохин 2024-04-30 21:52:09 +04:00
commit 24ab0decab
4 changed files with 12 additions and 4 deletions

View File

@ -12,5 +12,6 @@ namespace Contracts.SearchModels
public string? Name { get; set; }
public int? UserId { get; set; }
public int? MachineId { get; set; }
public int? DetailId { get; set; }
}
}

View File

@ -11,5 +11,6 @@ namespace Contracts.SearchModels
public int? Id { get; set; }
public string? Name { get; set; }
public int? UserId { get; set; }
public int? DetailId { get; set; }
}
}

View File

@ -29,12 +29,15 @@ namespace DatabaseImplement.Implements
public List<ProductViewModel> GetFilteredList(ProductSearchModel model)
{
if (!model.UserId.HasValue)
if (!model.UserId.HasValue && !model.DetailId.HasValue)
{
return new();
}
using var context = new FactoryGoWorkDatabase();
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
if (model.DetailId.HasValue)
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).Where(x => x.UserId == model.Id).Where(x => x.Details.FirstOrDefault(y => y.DetailId == model.DetailId) != null).Select(x => x.GetViewModel).ToList();
else
return context.Products.Include(p => p.Details).ThenInclude(p => p.Detail).Where(x => x.UserId == model.Id).Select(x => x.GetViewModel).ToList();
}
public List<ProductViewModel> GetFullList()

View File

@ -29,12 +29,15 @@ namespace DatabaseImplement.Implements
public List<ProductionViewModel> GetFilteredList(ProductionSearchModel model)
{
if (!model.UserId.HasValue)
if (!model.UserId.HasValue && !model.DetailId.HasValue)
{
return new();
}
using var context = new FactoryGoWorkDatabase();
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).Where(x => x.UserId == model.UserId).Select(x => x.GetViewModel).ToList();
if (model.DetailId.HasValue)
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).Where(x => x.UserId == model.UserId).Where(x => x.Details.FirstOrDefault(y => y.DetailId == model.DetailId) != null).Include(x => x.User).Select(x => x.GetViewModel).ToList();
else
return context.Productions.Include(x => x.Details).ThenInclude(x => x.Detail).Where(x => x.UserId == model.UserId).Select(x => x.GetViewModel).ToList();
}
public List<ProductionViewModel> GetFullList()