public List <Models.Suplements.SuplementPayment> GetAll( Models.Requests.Suplements.SuplementPaymentSearchParams searchParams) { IQueryable <SuplementPayment> query = _context.SuplementPayments .Include(x => x.Employee) .ThenInclude(x => x.AppUser) .Include(x => x.Client) .ThenInclude(x => x.AppUser) .Include(x => x.Suplement) .ThenInclude(x => x.SuplementType) .AsQueryable(); if (!string.IsNullOrEmpty(searchParams.ClientFirstName)) { query = query.Where(x => x.Client.AppUser.FirstName.StartsWith(searchParams.ClientFirstName)); } if (!string.IsNullOrEmpty(searchParams.ClientLastName)) { query = query.Where(x => x.Client.AppUser.LastName.StartsWith(searchParams.ClientLastName)); } if (!string.IsNullOrEmpty(searchParams.SuplementName)) { query = query.Where(x => x.Suplement.Name.StartsWith(searchParams.SuplementName)); } if (!string.IsNullOrEmpty(searchParams.SuplementType)) { query = query.Where(x => x.Suplement.SuplementType.Type == searchParams.SuplementType); } return(query.Select(x => SuplementPaymentMapper.fromDb(x)) .ToList()); }
public Models.Suplements.SuplementPayment Create( Models.Requests.Suplements.SuplementPaymentRequest paymentRequest, UserInfo info) { SuplementPayment dbPayment = SuplementPaymentMapper.toDb(paymentRequest, info); _context.SuplementPayments.Add(dbPayment); _context.SaveChanges(); return(GetById(dbPayment.Id)); }
public Models.Suplements.SuplementPayment GetById(int id) { SuplementPayment payment = _context.SuplementPayments .Include(x => x.Employee) .ThenInclude(x => x.AppUser) .Include(x => x.Client) .ThenInclude(x => x.AppUser) .Include(x => x.Suplement) .ThenInclude(x => x.SuplementType) .Where(x => x.Id == id) .FirstOrDefault(); if (payment == null) { throw new ResourceNotFoundException($"Suplement payment with id: {id} not found"); } return(SuplementPaymentMapper.fromDb(payment)); }