public IHttpActionResult GetAllRepgroups(FilterRepGroups filter) { if (filter == null) { filter = new FilterRepGroups(); filter.PageSize = 25; filter.CurrentPage = 1; } var response = repository.GetRepGroups(filter, CurrentBusinessId.Value); return(Ok <DataResponse <EntityList <EntityRepGroups> > >(response)); }
public IHttpActionResult GetByFilter(FilterRepGroups filter) { var repository = new RepositoryRepGroups(); if (filter == null) { filter = new FilterRepGroups { PageSize = 25, CurrentPage = 1 } } ; var response = repository.GetRepGroups(filter, CurrentBusinessId.Value); return(Ok <DataResponse <EntityList <EntityRepGroups> > >(response)); }
public DataResponse <EntityList <EntityRepGroups> > GetRepGroups(FilterRepGroups filter, int currentBusineId, int take = 10, int skip = 0) { var response = new DataResponse <EntityList <EntityRepGroups> >(); try { if (filter != null) { take = filter.Take; skip = filter.Skip; } base.DBInit(); var query = DBEntity.RepGroups.Where(a => a.BusinessId == currentBusineId); if (filter != null) { if (!String.IsNullOrEmpty(filter.KeyWords)) { query = query.Where(a => a.RepGroupName.ToLower().Contains(filter.KeyWords) || a.RepgroupManagerMappers.Any(b => b.User.FirstName.ToLower().Contains(filter.KeyWords.ToLower())) || a.RepgroupManagerMappers.Any(b => b.User.Email.ToLower().Contains(filter.KeyWords.ToLower())) || a.Reps.Any(b => b.User2.Email.ToLower().Contains(filter.KeyWords.ToLower())) || a.RepgroupManagerMappers.Any(b => b.User.Email.ToLower().Contains(filter.KeyWords.ToLower())) || a.BusinessMaster.BusinessName.ToLower().Contains(filter.KeyWords.ToLower())); } } var selectQuery = query.Select(a => new EntityRepGroups { Id = a.Id, RepGroupName = a.RepGroupName, Description = a.Description, CreatedBy = a.CreatedBy, CreatedOn = a.CreatedOn, UpdatedBy = a.UpdatedBy, UpdatedOn = a.UpdatedOn, BusinessId = a.BusinessId, IsActive = a.IsActive, OldId = a.OldId, //SalesDirectorId = a.SalesDirectorId, CreatedByName = a.User.FirstName + " " + a.User.LastName, UpdatedByName = a.User1.FirstName + " " + a.User1.LastName, SalesDirectors = a.RepgroupManagerMappers.Where(b => b.UserRole == (int)RepgroupUserType.Director).Select(b => b.User.FirstName + " " + a.User.LastName), RepGroupManagerIds = a.RepgroupManagerMappers.Select(b => b.ManagerId).ToList(), Managers = a.RepgroupManagerMappers.Where(b => b.User.IsActive == true).Select(b => b.User.FirstName + " " + b.User.LastName) }); if (string.IsNullOrEmpty(filter.SortKey) || string.IsNullOrEmpty(filter.SortOrder)) { selectQuery = selectQuery.OrderByDescending(o => o.CreatedOn); } else { string orderBy = string.Format("{0} {1}", filter.SortKey, filter.SortOrder); selectQuery = selectQuery.OrderBy(orderBy); } response = GetList <EntityRepGroups>(selectQuery, skip, take); } catch (Exception ex) { ex.Log(); } finally { base.DBClose(); } return(response); }