public async Task <IActionResult> GetDictionaries([FromQuery] DictionariesParameters parameters) { try { //验证排序的字段是否存在 if (!propertyMappingContainer.ValidateMappingExistsFor <DictionariesViewModel, Dictionaries>(parameters.OrderBy)) { return(BadRequest("order by Fidled not exist")); } //验证过滤的字段是否存在 if (!typeHelperService.TypeHasProperties <DictionariesViewModel>(parameters.Fields)) { return(BadRequest("fidled not exist")); } var users = await repository.GetAllDicAsync(parameters); var userViewModel = mapper.Map <IEnumerable <Dictionaries>, IEnumerable <DictionariesViewModel> >(users); return(Ok(new BaseResponse() { success = true, dynamicObj = userViewModel, TotalRecord = users.TotalItemsCount })); } catch (Exception ex) { return(Ok(new BaseResponse() { success = false, message = ex.Message })); } }
public async Task <DictionariesResponse> GetDictionariesAsync(DictionariesParameters parameters) { BaseServiceRequest <DictionariesResponse> baseService = new BaseServiceRequest <DictionariesResponse>(); var r = await baseService.GetRequest(new DictionariesRequest() { parameters = parameters }); return(r); }
public async Task <PaginatedList <Dictionaries> > GetAllDicAsync(DictionariesParameters parameters) { var query = context.Dictionaries.AsQueryable(); //搜索,按登录名、用户名 if (!string.IsNullOrEmpty(parameters.Search)) { var search = parameters.Search.ToLowerInvariant(); query = query.Where(t => t.DataCode.ToLowerInvariant().Contains(search) || t.EnglishName.ToLowerInvariant().Contains(search) || t.NativeName.ToLowerInvariant().Contains(search) ); } //自定义排序 query = query.ApplySort(parameters.OrderBy, propertyMappingContainer.Resolve <DictionariesViewModel, Dictionaries>()); var count = await query.CountAsync(); var data = await query.Skip(parameters.PageIndex - 1 *parameters.PageSize).Take(parameters.PageSize).ToListAsync(); return(new PaginatedList <Dictionaries>(parameters.PageIndex - 1, parameters.PageSize, count, data)); }