public async Task <IApplicationResult <DadosPaginadosViewModel <ItemCatalogoViewModel> > > ObterPorFiltroAsync(ItemCatalogoFiltroRequest request) { var result = new ApplicationResult <DadosPaginadosViewModel <ItemCatalogoViewModel> >(); DynamicParameters parameters = new DynamicParameters(); parameters.Add("@titulo", request.Titulo, DbType.String, ParameterDirection.Input); parameters.Add("@formaCalculoTempoId", request.FormaCalculoTempoId, DbType.Int32, ParameterDirection.Input); parameters.Add("@permiteTrabalhoRemoto", request.PermiteTrabalhoRemoto, DbType.Boolean, ParameterDirection.Input); parameters.Add("@offset", (request.Page - 1) * request.PageSize, DbType.Int32, ParameterDirection.Input); parameters.Add("@pageSize", request.PageSize, DbType.Int32, ParameterDirection.Input); using (var connection = new SqlConnection(Configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); var dadosPaginados = new DadosPaginadosViewModel <ItemCatalogoViewModel>(request); using (var multi = await connection.QueryMultipleAsync(ItemCatalogoRawSqls.ObterPorFiltro, parameters)) { dadosPaginados.Registros = multi.Read <ItemCatalogoViewModel>().ToList(); dadosPaginados.Controle.TotalRegistros = multi.ReadFirst <int>(); result.Result = dadosPaginados; } connection.Close(); } return(result); }
public async Task <IApplicationResult <IEnumerable <ItemCatalogoViewModel> > > ObterTodos(ItemCatalogoFiltroRequest request) { var result = new ApplicationResult <IEnumerable <ItemCatalogoViewModel> >(); using (var connection = new SqlConnection(Configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); var dados = await connection.QueryAsync <ItemCatalogoViewModel>(ItemCatalogoRawSqls.ObterTodos); result.Result = dados; connection.Close(); } return(result); }
public async Task <IActionResult> GetAll([FromQuery] ItemCatalogoFiltroRequest request) => await ItemCatalogoQuery.ObterPorFiltroAsync(request);