public async Task <ActionResult <PaginatedList <UserSummary> > > GetAll([FromBody] UserFilterRequest filter) { try { // get list of active users (not deleted) var list = context.Users .AsNoTracking(); // filter if (filter != null) { list = list.Where(a => a.Username.Contains(filter.SearchTerm) || a.Firstname.Contains(filter.SearchTerm) || a.Lastname.Contains(filter.SearchTerm)); } // sort var ordering = $"{Constants.ColumnNames.Username} {Constants.DefaultSortDirection}"; if (!string.IsNullOrEmpty(filter?.SortBy)) { ordering = $"{filter.SortBy} {filter.SortDirection}"; } list = list.OrderBy(ordering); var result = await listHelpers.CreatePaginatedListAsync <ApplicationUser, UserSummary>(list, filter.PageNumber, filter.PageSize); return(result); } catch (Exception e) { logger.LogError(e.Message); return(StatusCode(StatusCodes.Status500InternalServerError)); } }
public async Task <Response <List <UserResponse> > > GetAsync(UserFilterRequest filter) { var result = _mapper.Map <UserFilters>(filter); var data = await _UserService.GetAsync(result); return(new Response <List <UserResponse> >(_mapper.Map <List <UserResponse> >(data))); }
/// <summary> /// Función que envia datos y parametros para consulta filtar una busqueda /// </summary> /// <param name="objRequest"></param> /// <returns></returns> public static (IQueryable <CUser> data, int totalRows) Get(UserFilterRequest objRequest) { var unitOfWork = new UnitOfWork(new TestDBContext()); // Forma el Query d ela consulta var where = GetWhere(objRequest); var Containers = unitOfWork.SelectPaged <CUser>(objRequest.page == 0 ? 1 : objRequest.page, objRequest.rows, x => x.Id, where); return(Containers); }
public async Task <ActionResult> Get([FromQuery] UserFilterRequest filters) { var response = await _UserApplication.GetAsync(filters); if (response.Data == null) { return(NoContent()); } return(Ok(response.Data)); }
public async Task <IResponseEntity> GetAllAsync(UserFilterRequest req) { var key = req?.Key; var withDisable = req != null ? req.WithDisable : false; var list = await _sysUserRepository.Select .WhereIf(key.IsNotNull(), a => (a.UserName.Contains(key) || a.DisplayName.Contains(key))) .WhereIf(!withDisable, a => a.IsDisabled == false) .Include(a => a.Permission) .ToListAsync(); var result = _mapper.Map <List <UserForListResponse> >(list); return(ResponseEntity.Ok(result)); }
public string CreateUserFilter(string projectId, string filterTitle, Dictionary <string, List <string> > fillterCollection, bool inclusive = true) { var items = new Dictionary <string, List <string> >(); var attributes = Query(projectId, ObjectTypes.Attribute); foreach (var item in fillterCollection) { var attribute = FindAttributeByTitle(projectId, item.Key, attributes); if (attribute == null) { Logger.WarnFormat("No attribute found with title {0}", item.Key); return(null); } var attributeElements = GetAttributeElements(projectId, attribute); var elements = new List <Element>(); foreach (var elementTitle in item.Value) { var fullAttribute = FindAttributeElementByTitle(projectId, attribute, elementTitle, attributeElements); if (fullAttribute != null) { elements.Add(fullAttribute); } } if (elements.Count == 0) { Logger.WarnFormat("No element {0} found for attribute {1}", string.Join(",", item.Value), attribute.Meta.Identifier); return(null); } items.Add(attribute.Meta.Uri, elements.Select(element => element.Uri).ToList()); } var url = Url.Combine(Config.Url, Constants.MD_URI, projectId, "obj"); var payload = new UserFilterRequest(filterTitle, items, inclusive); var response = PostRequest(url, payload); var filterResponse = JsonConvert.DeserializeObject(response, typeof(UriResponse)) as UriResponse; return(filterResponse.Uri); }
public string Create(string projectId, string title, string expression) { Logger.DebugFormat("BEGIN MandatoryUserFilter.Create ProjectId={0}, Title={1}, Expression={2}", projectId, title, expression); CheckAuthentication(); var url = Url.Combine(Config.Url, Constants.MD_URI, projectId, "obj"); var request = new UserFilterRequest { UserFilter = new UserFilter { Content = new UserFilterContent { Expression = expression }, Meta = new UserFilterMeta { Title = title } } }; var response = PostRequest(url, request); var filterResponse = JsonConvert.DeserializeObject <UriResponse>(response); Logger.DebugFormat("END MandatoryUserFilter.Create"); return(filterResponse.Uri); }
/// <summary> /// Función para generar cadena de filtros dependiendo los parametros enviados. /// </summary> /// <param name="objRequest"></param> /// <returns></returns> private static System.Linq.Expressions.Expression <Func <CUser, bool> > GetWhere(UserFilterRequest objRequest) { var where = "1=1"; if (objRequest.Id != 0) { where += "and id =" + objRequest.Id; } if (objRequest.Name != "" && objRequest.Name != null) { where += " and Name.ToUpper().Contains(\"" + objRequest.Name.ToUpper() + "\")"; } if (objRequest.Email != "" && objRequest.Email != null) { where += " and Email.ToUpper().Contains(\"" + objRequest.Email.ToUpper() + "\")"; } if (objRequest.Active != null) { where += "and Active =" + objRequest.Active; } var e = (Expression)DynamicExpressionParser.ParseLambda(new[] { Expression.Parameter(typeof(CUser), "x") }, null, where); return(where.Length > 0 ? (Expression <Func <CUser, bool> >)e : null); }
public async Task <IResponseEntity> GetAll(UserFilterRequest req) { return(await _sysUserService.GetAllAsync(req)); }