Esempio n. 1
0
        private static IEnumerable <Kendo.Mvc.IFilterDescriptor> GetChildDescriptors(Kendo.Mvc.IFilterDescriptor f)

        {
            if (f is Kendo.Mvc.CompositeFilterDescriptor)
            {
                return(((Kendo.Mvc.CompositeFilterDescriptor)f).FilterDescriptors);
            }
            return(null);
        }
Esempio n. 2
0
        public IQueryable <SalesViewModel> FilterSalesGrid(IQueryable <SalesViewModel> modelQuery, Kendo.Mvc.IFilterDescriptor iFilter)
        {
            var filter = (Kendo.Mvc.FilterDescriptor)iFilter;

            var valueObjectString = filter.Value.ToString();
            var filterValue       = valueObjectString.ToLower();

            if (filter.Member == "PassengerName")
            {
                switch (filter.Operator)
                {
                case Kendo.Mvc.FilterOperator.Contains:
                    modelQuery = modelQuery.Where(r => r.PassengerName.ToLower().Contains(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.EndsWith:
                    modelQuery = modelQuery.Where(r => r.PassengerName.ToLower().EndsWith(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsEqualTo:
                    modelQuery = modelQuery.Where(r => r.PassengerName.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsNotEqualTo:
                    modelQuery = modelQuery.Where(r => !r.PassengerName.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.StartsWith:
                    modelQuery = modelQuery.Where(r => r.PassengerName.ToLower().StartsWith(filterValue));
                    break;
                }
            }

            if (filter.Member == "UserId")
            {
                switch (filter.Operator)
                {
                case Kendo.Mvc.FilterOperator.Contains:
                    modelQuery = modelQuery.Where(r => r.UserId.ToLower().Contains(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.EndsWith:
                    modelQuery = modelQuery.Where(r => r.UserId.ToLower().EndsWith(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsEqualTo:
                    modelQuery = modelQuery.Where(r => r.UserId.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsNotEqualTo:
                    modelQuery = modelQuery.Where(r => !r.UserId.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.StartsWith:
                    modelQuery = modelQuery.Where(r => r.UserId.ToLower().StartsWith(filterValue));
                    break;
                }
            }

            if (filter.Member == "Shop")
            {
                switch (filter.Operator)
                {
                case Kendo.Mvc.FilterOperator.Contains:
                    modelQuery = modelQuery.Where(r => r.Shop.ToLower().Contains(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.EndsWith:
                    modelQuery = modelQuery.Where(r => r.Shop.ToLower().EndsWith(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsEqualTo:
                    modelQuery = modelQuery.Where(r => r.Shop.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.IsNotEqualTo:
                    modelQuery = modelQuery.Where(r => !r.Shop.ToLower().Equals(filterValue));
                    break;

                case Kendo.Mvc.FilterOperator.StartsWith:
                    modelQuery = modelQuery.Where(r => r.Shop.ToLower().StartsWith(filterValue));
                    break;
                }
            }

            if (filter.Member == "CreatedDateTime")
            {
                //string propertyName = "CreatedDateTimeString";

                //    switch (filter.Operator)
                //    {
                //        //case Kendo.Mvc.FilterOperator.Contains:
                //        //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).Contains(filterValue));
                //        //    break;
                //        //case Kendo.Mvc.FilterOperator.EndsWith:
                //        //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).EndsWith(filterValue));
                //        //    break;
                //        //case Kendo.Mvc.FilterOperator.IsEqualTo:
                //        //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).Equals(filterValue));
                //        //    break;
                //        //case Kendo.Mvc.FilterOperator.IsNotEqualTo:
                //        //    modelQuery = modelQuery.Where(r => !r.ConvertDateTimeToString(propertyName).Equals(filterValue));
                //        //    break;
                //        //case Kendo.Mvc.FilterOperator.StartsWith:
                //        //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).StartsWith(filterValue));
                //        //    break;
                //    }
            }

            if (filter.Member == "BookingDate")
            {
                //string propertyName = "BookingDateString";

                //switch (filter.Operator)
                //{
                //    //case Kendo.Mvc.FilterOperator.Contains:
                //    //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).Contains(filterValue));
                //    //    break;
                //    //case Kendo.Mvc.FilterOperator.EndsWith:
                //    //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).EndsWith(filterValue));
                //    //    break;
                //    //case Kendo.Mvc.FilterOperator.IsEqualTo:
                //    //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).Equals(filterValue));
                //    //    break;
                //    //case Kendo.Mvc.FilterOperator.IsNotEqualTo:
                //    //    modelQuery = modelQuery.Where(r => !r.ConvertDateTimeToString(propertyName).Equals(filterValue));
                //    //    break;
                //    //case Kendo.Mvc.FilterOperator.StartsWith:
                //    //    modelQuery = modelQuery.Where(r => r.ConvertDateTimeToString(propertyName).StartsWith(filterValue));
                //    //    break;
                //}
            }

            return(modelQuery);
        }