public async Task <IApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> > > ObterPorFiltroAsync(PactoTrabalhoFiltroRequest request) { var result = new ApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> >(); var query = PactoTrabalhoRawSqls.ObterPorFiltro; DynamicParameters parameters = new DynamicParameters(); parameters.Add("@pessoaId", request.PessoaId, DbType.Int64, ParameterDirection.Input); parameters.Add("@formaExecucaoId", request.FormaExecucaoId, DbType.Int64, ParameterDirection.Input); parameters.Add("@situacaoId", request.SituacaoId, DbType.Int32, ParameterDirection.Input); parameters.Add("@dataInicio", request.DataInicio, DbType.Date, ParameterDirection.Input); parameters.Add("@dataFim", request.DataFim, DbType.Date, ParameterDirection.Input); parameters.Add("@offset", (request.Page - 1) * request.PageSize, DbType.Int32, ParameterDirection.Input); parameters.Add("@pageSize", request.PageSize, DbType.Int32, ParameterDirection.Input); var unidades = new List <Int64>(); if (request.UnidadeId.HasValue) { unidades.Add(request.UnidadeId.Value); } else if (request.UnidadesUsuario != null) { foreach (var unidadeId in request.UnidadesUsuario) { unidades.Add(unidadeId); } } if (unidades.Any()) { query = query.Replace("#UNIDADES#", " AND p.unidadeId in (" + String.Join(',', unidades) + " )"); } else { query = query.Replace("#UNIDADES#", string.Empty); } using (var connection = new SqlConnection(Configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); var dadosPaginados = new DadosPaginadosViewModel <PactoTrabalhoViewModel>(request); using (var multi = await connection.QueryMultipleAsync(query, parameters)) { dadosPaginados.Registros = multi.Read <PactoTrabalhoViewModel>().ToList(); dadosPaginados.Controle.TotalRegistros = multi.ReadFirst <int>(); result.Result = dadosPaginados; } connection.Close(); } return(result); }
public async Task <IApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> > > ObterPorFiltroAsync(PactoTrabalhoFiltroRequest request) { var result = new ApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> >(); var query = PactoTrabalhoRawSqls.ObterPorFiltro; DynamicParameters parameters = new DynamicParameters(); parameters.Add("@pessoaLogadaId", request.UsuarioLogadoId, DbType.Int64, ParameterDirection.Input); parameters.Add("@pessoaId", request.PessoaId, DbType.Int64, ParameterDirection.Input); parameters.Add("@formaExecucaoId", request.FormaExecucaoId, DbType.Int64, ParameterDirection.Input); parameters.Add("@situacaoId", request.SituacaoId, DbType.Int32, ParameterDirection.Input); parameters.Add("@dataInicio", request.DataInicio, DbType.Date, ParameterDirection.Input); parameters.Add("@dataFim", request.DataFim, DbType.Date, ParameterDirection.Input); parameters.Add("@offset", (request.Page - 1) * request.PageSize, DbType.Int32, ParameterDirection.Input); parameters.Add("@pageSize", request.PageSize, DbType.Int32, ParameterDirection.Input); if (!request.IsGestor) { query = query.Replace("#CONTROLE#", PactoTrabalhoRawSqls.ControleAcesso); } else { query = query.Replace("#CONTROLE#", string.Empty); } using (var connection = new SqlConnection(Configuration.GetConnectionString("DefaultConnection"))) { connection.Open(); var dadosPaginados = new DadosPaginadosViewModel <PactoTrabalhoViewModel>(request); using (var multi = await connection.QueryMultipleAsync(query, parameters)) { dadosPaginados.Registros = multi.Read <PactoTrabalhoViewModel>().ToList(); dadosPaginados.Controle.TotalRegistros = multi.ReadFirst <int>(); result.Result = dadosPaginados; } connection.Close(); } return(result); }
public async Task <IApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> > > ObterPactoTrabalhoPorFiltroAsync(PactoTrabalhoFiltroRequest request) { var result = new ApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> >(); var perfil = await ObterPerfilPessoaAsync(request); request.IsGestor = perfil.Result.Perfis.Any(p => p.Perfil == (int)Domain.Enums.PerfilUsuarioEnum.Gestor); //Obtém as unidades var dados = await PactoTrabalhoQuery.ObterPorFiltroAsync(request); result.Result = dados.Result; return(result); }
public async Task <IApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> > > ObterPactoTrabalhoPorFiltroAsync(PactoTrabalhoFiltroRequest request) { var result = new ApplicationResult <DadosPaginadosViewModel <PactoTrabalhoViewModel> >(); var unidadesUsuario = await ObterUnidadesPerfilPessoa(request); if (unidadesUsuario != null) { request.UnidadesUsuario = unidadesUsuario.ToList(); } //Obtém as unidades var dados = await PactoTrabalhoQuery.ObterPorFiltroAsync(request); result.Result = dados.Result; return(result); }
public async Task <IActionResult> GetAll([FromQuery] PactoTrabalhoFiltroRequest request) => await EstruturaOrganizacionalQuery.ObterPactoTrabalhoPorFiltroAsync(request);