Пример #1
0
        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());
        }
Пример #2
0
        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));
        }
Пример #3
0
        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));
        }