public async Task <IApplicationResult <DadosPaginadosViewModel <AssuntoViewModel> > > ObterPorFiltroAsync(AssuntoFiltroRequest request)
        {
            var result = new ApplicationResult <DadosPaginadosViewModel <AssuntoViewModel> >();

            DynamicParameters parameters = new DynamicParameters();

            parameters.Add("@valor", request.Valor, DbType.String, 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 <AssuntoViewModel>(request);


                using (var multi = await connection.QueryMultipleAsync(AssuntoRawSqls.ObterPorFiltro, parameters))
                {
                    dadosPaginados.Registros = multi.Read <AssuntoViewModel>().ToList();
                    dadosPaginados.Controle.TotalRegistros = multi.ReadFirst <int>();
                    result.Result = dadosPaginados;
                }

                connection.Close();
            }

            return(result);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        public async Task <IApplicationResult <DadosPaginadosViewModel <CatalogoViewModel> > > ObterPorFiltroAsync(CatalogoFiltroRequest request)
        {
            var result = new ApplicationResult <DadosPaginadosViewModel <CatalogoViewModel> >();

            DynamicParameters parameters = new DynamicParameters();

            parameters.Add("@unidadeId", request.UnidadeId, DbType.Int32, 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 <CatalogoViewModel>(request);
                using (var multi = await connection.QueryMultipleAsync(CatalogoRawSqls.ObterPorFiltro, parameters))
                {
                    dadosPaginados.Registros = multi.Read <CatalogoViewModel, UnidadeViewModel, CatalogoViewModel>((catalogo, unidade) =>
                    {
                        catalogo.Unidade = unidade;
                        return(catalogo);
                    }, splitOn: "unidadeId").ToList();
                    dadosPaginados.Controle.TotalRegistros = multi.ReadFirst <int>();
                    result.Result = dadosPaginados;
                }

                connection.Close();
            }

            return(result);
        }
Ejemplo n.º 4
0
        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);
        }