public IHttpActionResult GetByFilter(FilterMarketingCategories filter)
        {
            var repository = new RepositoryMarketingCategories();

            if (filter == null)
            {
                filter = new FilterMarketingCategories {
                    PageSize = 25, CurrentPage = 1
                }
            }
            ;
            var response = repository.GetMarketingCategories(filter, CurrentBusinessId.Value);

            return(Ok <DataResponse <EntityList <EntityMarketingCategories> > >(response));
        }
        public DataResponse <EntityList <EntityMarketingCategories> > GetMarketingCategories(FilterMarketingCategories filter, int currentBusineId, int take = 10, int skip = 0)
        {
            var response = new DataResponse <EntityList <EntityMarketingCategories> >();

            try
            {
                if (filter != null)
                {
                    take = filter.Take;
                    skip = filter.Skip;
                }
                base.DBInit();
                var query = DBEntity.LookupMarketingCategories.Where(a => a.BusinessId == currentBusineId);
                if (filter != null)
                {
                    if (!String.IsNullOrEmpty(filter.KeyWords))
                    {
                        query = query.Where(a => a.Category.ToLower().Contains(filter.KeyWords));
                    }
                }
                var selectQuery = query.Select(a => new EntityMarketingCategories
                {
                    Id            = a.Id,
                    Category      = a.Category,
                    CreatedBy     = a.CreatedBy,
                    CreatedOn     = a.CreatedOn,
                    UpdatedBy     = a.UpdatedBy,
                    UpdatedOn     = a.UpdatedOn,
                    BusinessId    = a.BusinessId,
                    CreatedByName = a.User.FirstName + " " + a.User.LastName,
                    UpdatedByName = a.User1.FirstName + " " + a.User1.LastName,
                }).OrderByDescending(a => a.CreatedOn);

                response = GetList <EntityMarketingCategories>(selectQuery, skip, take);
            }
            catch (Exception ex)
            {
                ex.Log();
            }
            finally
            {
                base.DBClose();
            }

            return(response);
        }