Example #1
0
        public IEnumerable <Inverter> GetAll(InverterResourceParameters inverterResourceParameters)
        {
            if (inverterResourceParameters.MaximumPower == 0 &&
                string.IsNullOrWhiteSpace(inverterResourceParameters.SearchQuery) &&
                string.IsNullOrWhiteSpace(inverterResourceParameters.Name) &&
                string.IsNullOrWhiteSpace(inverterResourceParameters.Manufacturer))
            {
                return(_repository.GetAll());
            }

            var collection = _repository.GetAll();

            if (inverterResourceParameters.MaximumPower > 0)
            {
                collection = collection.Where(a => a.MaximumPower == inverterResourceParameters.MaximumPower);
            }

            if (!string.IsNullOrWhiteSpace(inverterResourceParameters.Name))
            {
                collection = collection.Where(a => a.Name == inverterResourceParameters.Name);
            }

            if (!string.IsNullOrWhiteSpace(inverterResourceParameters.Manufacturer))
            {
                collection = collection.Where(a => a.Manufacturer == inverterResourceParameters.Manufacturer);
            }

            if (!string.IsNullOrWhiteSpace(inverterResourceParameters.SearchQuery))
            {
                inverterResourceParameters.SearchQuery = inverterResourceParameters.SearchQuery.Trim();
                collection = collection.Where(a => a.Manufacturer.Contains(inverterResourceParameters.SearchQuery) ||
                                              a.Name.Contains(inverterResourceParameters.SearchQuery));
            }


            return(collection.ToList());
        }
 public IActionResult Get(InverterResourceParameters inverterResourceParameters)
 {
     return(Ok(_repositoryBLL.GetAll(inverterResourceParameters)));
 }