Пример #1
0
        public IActionResult Get([FromQuery] CustomerParameters customerParameters)
        {
            try
            {
                var customers = _service.GetAllCustomers(customerParameters);

                var metadata = new
                {
                    customers.TotalCount,
                    customers.PageSize,
                    customers.CurrentPage,
                    customers.TotalPages,
                    customers.HasNext,
                    customers.HasPrevious
                };

                if (Response != null)
                {
                    Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata));
                }

                return(customers.Count() > 0 ? (IActionResult)Ok(customers) : (IActionResult)NotFound());
            }
            catch (Exception e)
            {
                _logger.LogError(e, "Exception on Get All");
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
        public async Task <IActionResult> GetAllCustomers([FromQuery] CustomerParameters customerParameters)
        {
            if (!customerParameters.ValidYearRange)
            {
                return(BadRequest("Max year of signup cannot be less than min year of signup"));
            }

            var customers = await _repository.Customer.GetAllCustomersAsync(customerParameters);

            var metadata = new
            {
                customers.TotalCount,
                customers.PageSize,
                customers.CurrentPage,
                customers.TotalPages,
                customers.HasNext,
                customers.HasPrevious
            };

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata));

            var customersResult = _mapper.Map <IEnumerable <CustomerDto> >(customers);

            return(Ok(customersResult));
        }
        public ActionResult Get(CustomerParameters parameters)
        {
            int rc;

            Customer[] customers = Customer.GetAutoCustomers(parameters, out rc);
            //  ViewBag.customers = customers;

            return(Content(JsonConvert.SerializeObject(customers)));
        }
        private void Search()
        {
            CustomerParameters pmtCustomer = new CustomerParameters();

            pmtCustomer.Name = "%" + this.frmCustomer.txtSchName.Text + "%";

            DataTable dtCustomers = srvCustomer.SearchByParameters(pmtCustomer);

            this.frmCustomer.grdSchSearch.DataSource = null;
            this.frmCustomer.grdSchSearch.DataSource = dtCustomers;
        }
Пример #5
0
        public override void Search()
        {
            CustomerParameters pmtCustomer = new CustomerParameters();

            pmtCustomer.Name          = "%" + this.frmCustomer.txtSchName.Text + "%";
            pmtCustomer.ComercialName = "%" + this.frmCustomer.txtSchComercialName.Text + "%";

            DataTable dtCustomers = srvCustomer.SearchByParameters(pmtCustomer);

            this.frmCustomer.grdPrincipal.DataSource = null;
            this.frmCustomer.grdPrincipal.DataSource = dtCustomers;
        }
        public async Task <PagedList <Customer> > GetAllCustomersAsync(CustomerParameters customerParameters)
        {
            var customers = FindAll();

            SearchBySignupDate(ref customers, customerParameters.MinSignupDate, customerParameters.MaxSignupDate);
            SearchByName(ref customers, customerParameters.name);
            SearchByLastName(ref customers, customerParameters.lastName);
            SearchByEmail(ref customers, customerParameters.email);
            SearchByArchive(ref customers, customerParameters.archive);

            return(await PagedList <Customer> .ToPagedList(customers,
                                                           customerParameters.PageNumber,
                                                           customerParameters.PageSize));
        }
Пример #7
0
        //http://localhost:5000/api/customers?email=k
        public async Task <ActionResult <List <CustomerDto> > > GetCustomers([FromQuery] CustomerParameters customerParameters)
        {
            _orm.OpenConn();

            var customersFromDB = await _orm.GetAllCustomers(customerParameters);

            if (customersFromDB == null)
            {
                return(NotFound());
            }
            var customersDto = _mapper.Map <List <CustomerDto> >(customersFromDB);
            await _orm.CloseConn();

            return(Ok(customersDto));
        }
Пример #8
0
 public PagedList <Customer> GetAllCustomers(CustomerParameters customerParameters)
 {
     try
     {
         Db.Connection.Open();
         using var cmd   = Db.Connection.CreateCommand();
         cmd.CommandText = @"SELECT `id`, `first_name`, `last_name`, `date_created`, `date_last_updated` FROM `customers`";
         var result = ReadAll(cmd.ExecuteReader());
         return(PagedList <Customer> .ToPagedList(result.AsQueryable().OrderBy(on => on.Id),
                                                  customerParameters.PageNumber,
                                                  customerParameters.PageSize));
     }
     catch (Exception e)
     {
         throw e;
     }
     finally
     {
         Db.Connection.Close();
     }
 }
Пример #9
0
        public async Task <List <Customer> > GetAllCustomers([FromQuery] CustomerParameters parameters)
        {
            IQueryable <Customer> customers = _context.Customers;

            if (!string.IsNullOrEmpty(parameters.Country))
            {
                customers = customers.Where(
                    c => c.Country == parameters.Country);
            }

            if (!string.IsNullOrEmpty(parameters.CompanyName))
            {
                customers = customers.Where(
                    c => c.CompanyName.ToLower().Contains(parameters.CompanyName.ToLower()));
            }

            if (!string.IsNullOrEmpty(parameters.SortBy))
            {
                if (typeof(Customer).GetProperty(parameters.SortBy) != null)
                {
                    customers = customers.OrderByCustom(parameters.SortBy, parameters.SortOrder);
                }
            }

            // Page should not exceed count divided by page;
            // otherwise, set page to max possible pages
            if ((parameters.Page > 0) && (parameters.Size > 0))
            {
                if (customers.Count() % parameters.Size < parameters.Page)
                {
                    parameters.Page = (customers.Count() % parameters.Size) + 1;
                }

                customers = customers
                            .Skip(parameters.Size * (parameters.Page - 1))
                            .Take(parameters.Size);
            }

            return(await customers.ToListAsync());
        }
Пример #10
0
        public static Customer[] GetCustomers(CustomerParameters parameters, out int rowsCount)
        {
            List <Customer> l = new List <Customer>();

            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Connection  = new SqlConnection(cstr.con);
                cmd.Connection.Open();
                cmd.CommandText = "GetCustomers";

                /*cmd.Parameters.AddWithValue("status", parameters.Status);
                 * cmd.Parameters.AddWithValue("page", parameters.CurrentPage);
                 * cmd.Parameters.AddWithValue("pageLength", parameters.PageLength);
                 * SqlParameter rowsCountParam = cmd.Parameters.Add("rowsCount", SqlDbType.Int);
                 * rowsCountParam.Direction = ParameterDirection.InputOutput;*/
                SqlDataReader r = cmd.ExecuteReader();
                if (r.HasRows)
                {
                    while (r.Read())
                    {
                        Customer c = new Customer();
                        if (r["id"] != DBNull.Value)
                        {
                            c.Id = Convert.ToInt32(r["id"]);
                        }
                        if (r["username"] != DBNull.Value)
                        {
                            c.Username = Convert.ToString(r["username"]);
                        }
                        if (r["meter_id"] != DBNull.Value)
                        {
                            c.MeterId = Convert.ToInt32(r["meter_id"]);
                        }
                        if (r["card_id"] != DBNull.Value)
                        {
                            c.CardId = Convert.ToInt32(r["card_id"]);
                        }
                        if (r["telephone"] != DBNull.Value)
                        {
                            c.Telephone = Convert.ToString(r["telephone"]);
                        }
                        if (r["country_id"] != DBNull.Value)
                        {
                            c.CountryId = Convert.ToInt32(r["country_id"]);
                        }
                        if (r["city_id"] != DBNull.Value)
                        {
                            c.CityId = Convert.ToInt32(r["city_id"]);
                        }
                        if (r["area"] != DBNull.Value)
                        {
                            c.Area = Convert.ToString(r["area"]);
                        }
                        if (r["street"] != DBNull.Value)
                        {
                            c.Street = Convert.ToString(r["street"]);
                        }
                        if (r["password"] != DBNull.Value)
                        {
                            c.Password = Convert.ToString(r["password"]);
                        }

                        l.Add(c);
                    }
                }

                r.Close();
                cmd.Connection.Close();
                //rowsCount = Convert.ToInt32(rowsCountParam.Value);
                rowsCount = l.Count;
            }
            return(l.ToArray());
        }
Пример #11
0
 public PagedList <Customer> GetAllCustomers(CustomerParameters customerParameters)
 {
     return(PagedList <Customer> .ToPagedList(_customers.AsQueryable().OrderBy(on => on.Id),
                                              customerParameters.PageNumber,
                                              customerParameters.PageSize));
 }
Пример #12
0
        public async Task <IActionResult> GetAllCustomers([FromQuery] CustomerParameters parameters)
        {
            var customers = await _customerRepository.GetAllCustomers(parameters);

            return(Ok(customers));
        }