Beispiel #1
0
        public PagedResultDto <MerchandiseTypeDto> GetMerchandiseTypes(MerchandiseTypeFilter input)
        {
            var query = merchandiseTypeRepository.GetAll().Where(x => !x.IsDelete);

            // filter by typeID
            if (input.TypeID != null)
            {
                query = query.Where(x => x.TypeID.ToLower().Contains(input.TypeID));
            }

            // filter by name
            if (input.Name != null)
            {
                query = query.Where(x => x.Name.ToLower().Contains(input.Name));
            }

            // filter by isActive
            if (input.IsActive != null)
            {
                if (input.IsActive.Equals(("True").ToLower()))
                {
                    query = query.Where(x => x.IsActive == true);
                }
                else if (input.IsActive.Equals(("False").ToLower()))
                {
                    query = query.Where(x => x.IsActive == false);
                }
            }

            var totalCount = query.Count();

            // sort
            if (!string.IsNullOrWhiteSpace(input.Sorting))
            {
                query = query.OrderBy(input.Sorting);
            }

            // paging
            var items = query.PageBy(input).ToList();

            // result
            return(new PagedResultDto <MerchandiseTypeDto>(
                       totalCount,
                       items.Select(item => ObjectMapper.Map <MerchandiseTypeDto>(item)).ToList()));
        }
Beispiel #2
0
 public PagedResultDto <MerchandiseTypeDto> GetMerchandiseByFilter(MerchandiseTypeFilter filter)
 {
     return(merchandiseTypeAppService.GetMerchandiseTypes(filter));
 }