示例#1
0
        /// <summary>
        /// Leonardo Carrion
        /// 14/jun/2019
        /// Efecto: obtiene todas las planillas de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de planillas
        /// </summary>
        /// <returns></returns>
        public List <Planilla> getPlanillas()
        {
            SqlConnection   sqlConnection = conexion.conexionPEP();
            List <Planilla> planillas     = new List <Planilla>();

            String consulta = @"select * from Planilla order by ano_periodo desc;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Periodo periodo = new Periodo();
                periodo.anoPeriodo = Convert.ToInt32(reader["ano_periodo"].ToString());

                Planilla planilla = new Planilla();

                planilla.idPlanilla = Convert.ToInt32(reader["id_planilla"].ToString());
                planilla.anualidad1 = Convert.ToDouble(reader["anualidad_1"].ToString());
                planilla.anualidad2 = Convert.ToDouble(reader["anualidad_2"].ToString());
                planilla.periodo    = periodo;

                planillas.Add(planilla);
            }

            sqlConnection.Close();

            return(planillas);
        }
示例#2
0
        /// <summary>
        ///  Leonardo Carrion
        ///  11/nov/2020
        ///  Efecto: obtiene todas las subunidades segun la unidad de la base de datos
        ///  Requiere: unidad
        ///  Modifica: -
        ///  Devuelve: lista de sub unidades
        /// </summary>
        /// <param name="unidad"></param>
        /// <returns></returns>
        public List <SubUnidad> getSubUnidadesPorUnidad(Unidad unidad)
        {
            SqlConnection    sqlConnection    = conexion.conexionPEP();
            List <SubUnidad> listaSUbUnidades = new List <SubUnidad>();

            String consulta = @"select SU.* from Sub_Unidad SU where SU.id_unidad = @idUnidad order by SU.nombre";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idUnidad", unidad.idUnidad);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                SubUnidad subUnidad = new SubUnidad();

                subUnidad.activo      = Convert.ToBoolean(reader["activo"].ToString());
                subUnidad.idSubUnidad = Convert.ToInt32(reader["id_sub_unidad"].ToString());
                subUnidad.nombre      = reader["nombre"].ToString();
                subUnidad.unidad      = unidad;

                listaSUbUnidades.Add(subUnidad);
            }

            sqlConnection.Close();

            return(listaSUbUnidades);
        }
示例#3
0
        /// <summary>
        /// Inserta un nuevo presupuesto de egreso
        /// </summary>
        /// <param name="presupuestoEgreso">Presupuesto de Egreso</param>
        public int InsertarPresupuestoEgreso(PresupuestoEgreso presupuestoEgreso)
        {
            SqlConnection sqlConnection       = conexion.conexionPEP();
            int           idPresupuestoEgreso = 0;

            sqlConnection.Open();

            try
            {
                SqlCommand sqlCommand = new SqlCommand("insert into Presupuesto_Egreso(id_unidad,  plan_estrategico_operacional, montoTotal) " +
                                                       "output INSERTED.id_presupuesto_egreso values(@id_unidad_, @plan_estrategico_operacional_, @montoTotal_);", sqlConnection);
                //El estado por defecto es false=Pendiente, mas tarde se cambiara a Aprobado
                sqlCommand.Parameters.AddWithValue("@id_unidad_", presupuestoEgreso.unidad.idUnidad);
                sqlCommand.Parameters.AddWithValue("@plan_estrategico_operacional_", presupuestoEgreso.planEstrategicoOperacional);
                sqlCommand.Parameters.AddWithValue("@montoTotal_", presupuestoEgreso.montoTotal);

                idPresupuestoEgreso = (int)sqlCommand.ExecuteScalar();
            }
            catch (SqlException ex)
            {
                //Utilidades.ErrorBitacora(ex.Message, "Error al insertar el periodo");
            }

            sqlConnection.Close();

            return(idPresupuestoEgreso);
        }
示例#4
0
        /// <summary>
        /// Obtiene todos los periodos de la base de datos
        /// </summary>
        /// <returns>Retorna una lista <code>LinkedList<Periodo></code> que contiene todos los periodos</returns>
        public LinkedList <Periodo> ObtenerTodos()
        {
            SqlConnection        sqlConnection = conexion.conexionPEP();
            LinkedList <Periodo> periodos      = new LinkedList <Periodo>();

            String consulta = @"select ano_periodo, habilitado from Periodo where disponible=1;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Periodo periodo = new Periodo();
                periodo.anoPeriodo = Convert.ToInt32(reader["ano_periodo"].ToString());
                periodo.habilitado = Boolean.Parse(reader["habilitado"].ToString());

                periodos.AddLast(periodo);
            }

            sqlConnection.Close();

            return(periodos);
        }
示例#5
0
        /// <summary>
        /// Jean Carlos Monge Mendez
        /// 16/10/2019
        /// Efecto: obtiene todas las jornadaUnidadFuncionarioUnidadFuncionario de un funcionario de la base de datos
        /// Requiere: idFuncionario
        /// Modifica: -
        /// Devuelve: lista de jornadaUnidadFuncionario
        /// </summary>
        /// <param name="idFuncionario"></param>
        /// <param name="idUnidad"></param>
        /// <returns></returns>
        public List <JornadaUnidadFuncionario> getJornadaUnidadFuncionario(int idFuncionario, int idProyecto)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            List <JornadaUnidadFuncionario> listaJornadaUnidadFuncionarios = new List <JornadaUnidadFuncionario>();
            String     consulta   = @"select * from JornadaUnidadFuncionario ju JOIN Jornada j ON ju.id_jornada = j.id_jornada 
            JOIN Unidad u ON ju.id_unidad = u.id_unidad 
            WHERE id_funcionario = @idFuncionario AND u.id_proyecto = @idProyecto";
            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idFuncionario", idFuncionario);
            sqlCommand.Parameters.AddWithValue("@idProyecto", idProyecto);
            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();
            while (reader.Read())
            {
                JornadaUnidadFuncionario jornadaUnidadFuncionario = new JornadaUnidadFuncionario();
                jornadaUnidadFuncionario.idFuncionario   = Convert.ToInt32(reader["id_Funcionario"].ToString());
                jornadaUnidadFuncionario.descUnidad      = reader["nombre_unidad"].ToString();
                jornadaUnidadFuncionario.idUnidad        = Convert.ToInt32(reader["id_unidad"].ToString());
                jornadaUnidadFuncionario.idJornada       = Convert.ToInt32(reader["id_jornada"].ToString());
                jornadaUnidadFuncionario.jornadaAsignada = Convert.ToDouble(reader["porcentaje_jornada"].ToString());
                listaJornadaUnidadFuncionarios.Add(jornadaUnidadFuncionario);
            }
            sqlConnection.Close();
            return(listaJornadaUnidadFuncionarios);
        }
示例#6
0
        /// <summary>
        /// Leonardo Carrion
        /// 01/nov/2019
        /// Efecto: obtiene todas las anualidades de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de anualidades
        /// </summary>
        /// <returns></returns>
        public List <Anualidad> getAnualidades()
        {
            SqlConnection    sqlConnection    = conexion.conexionPEP();
            List <Anualidad> listaAnualidades = new List <Anualidad>();

            String consulta = @"select A.*
                                            from Anualidad A
                                            order by A.ano_periodo;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Anualidad anualidad = new Anualidad();
                Periodo   periodo   = new Periodo();

                periodo.anoPeriodo    = Convert.ToInt32(reader["ano_periodo"].ToString());
                anualidad.periodo     = periodo;
                anualidad.idAnualidad = Convert.ToInt32(reader["id_anualidad"].ToString());
                anualidad.porcentaje  = Convert.ToDouble(reader["porcentaje"].ToString());

                listaAnualidades.Add(anualidad);
            }

            sqlConnection.Close();

            return(listaAnualidades);
        }
示例#7
0
        /// <summary>
        /// Obtiene todos las unidades del proyecto especificado
        /// </summary>
        /// <param name="idProyecto">Valor de tipo <code>int</code> para filtrar la búsqueda</param>
        /// <returns>Retorna la lista <code>LinkedList<Unidad></code> que contiene las unidades que correspondan al periodo especificado</returns>
        public List <Unidad> ObtenerPorProyecto(int idProyecto)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            List <Unidad> unidades      = new List <Unidad>();
            SqlCommand    sqlCommand    = new SqlCommand("select id_unidad, nombre_unidad, coordinador from Unidad where id_proyecto=@id_proyecto_ AND disponible=1;", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@id_proyecto_", idProyecto);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Unidad unidad = new Unidad();
                unidad.idUnidad     = Convert.ToInt32(reader["id_unidad"].ToString());
                unidad.nombreUnidad = reader["nombre_unidad"].ToString();
                unidad.coordinador  = reader["coordinador"].ToString();
                unidades.Add(unidad);
            }

            sqlConnection.Close();

            return(unidades);
        }
示例#8
0
        /// <summary>
        /// Inserta Ejecucion
        /// </summary>
        /// <param name="ejecucion">ejecucion</param>
        public int insertarEjecucion(Ejecucion ejecucion)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            int           respuesta     = 0;

            sqlConnection.Open();
            String consulta = @"insert Ejecucion(id_estado,ano_periodo,id_proyecto,monto,id_tipo_tramite,numero_referencia,descripcion_tramite_otro,realizado_por,fecha) output INSERTED.id_ejecucion
                                            values(@id_estado,@ano_periodo,@id_proyecto,@monto,@id_tipo_tramite,@numero_referencia,@descripcion_tramite_otro,@realizadoPor,@fecha)";

            SqlCommand command = new SqlCommand(consulta, sqlConnection);

            command.Parameters.AddWithValue("@id_estado", ejecucion.estadoEjecucion.idEstado);
            command.Parameters.AddWithValue("@ano_periodo", ejecucion.anoPeriodo);
            command.Parameters.AddWithValue("@id_proyecto", ejecucion.idProyecto);
            command.Parameters.AddWithValue("@monto", ejecucion.monto);
            command.Parameters.AddWithValue("@id_tipo_tramite", ejecucion.tipoTramite.idTramite);
            command.Parameters.AddWithValue("@numero_referencia", ejecucion.numeroReferencia);
            command.Parameters.AddWithValue("@descripcion_tramite_otro", ejecucion.descripcionEjecucionOtro);
            command.Parameters.AddWithValue("@realizadoPor", ejecucion.realizadoPor);
            command.Parameters.AddWithValue("@fecha", DateTime.Now);

            respuesta = (int)command.ExecuteScalar();


            sqlConnection.Close();
            return(respuesta);
        }
示例#9
0
        /// <summary>
        /// Obtiene todos los proyectos del periodo especificado
        /// </summary>
        /// <param name="anoPeriodo">Valor de tipo <code>int</code> para filtrar la búsqueda</param>
        /// <returns>Retorna la lista <code>LinkedList<Proyecto></code> que contiene los proyectos que correspondan al periodo especificado</returns>
        public LinkedList <Proyectos> ObtenerPorPeriodo(int anoPeriodo)
        {
            SqlConnection          sqlConnection = conexion.conexionPEP();
            LinkedList <Proyectos> proyectos     = new LinkedList <Proyectos>();

            SqlCommand sqlCommand = new SqlCommand("select id_proyecto, nombre_proyecto, codigo, es_UCR" +
                                                   " from Proyecto where ano_periodo=@ano_periodo_ AND disponible=1; ", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@ano_periodo_", anoPeriodo);

            sqlConnection.Open();
            SqlDataReader reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Proyectos proyecto = new Proyectos();
                proyecto.idProyecto     = Convert.ToInt32(reader["id_proyecto"].ToString());
                proyecto.nombreProyecto = reader["nombre_proyecto"].ToString();
                proyecto.codigo         = reader["codigo"].ToString();
                proyecto.esUCR          = Boolean.Parse(reader["es_UCR"].ToString());
                proyectos.AddLast(proyecto);
            }

            sqlConnection.Close();

            return(proyectos);
        }
示例#10
0
        /// <summary>
        /// Leonardo Carrion
        /// 04/oct/2019
        /// Efecto: obtiene el estado segun la palabra ingresada
        /// Requiere: String de desc estado
        /// Modifica: -
        /// Devuelve: estado presupuesto
        /// </summary>
        /// <returns></returns>
        public EstadoPresupuesto getEstadoPresupuestoPorNombre(String descEstado)
        {
            SqlConnection     sqlConnection     = conexion.conexionPEP();
            EstadoPresupuesto estadoPresupuesto = new EstadoPresupuesto();

            String consulta = @"select * from Estado_presupuestos where descripcion_estado_presupuesto = @descEstado;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@descEstado", descEstado);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                estadoPresupuesto.idEstadoPresupuesto = Convert.ToInt32(reader["id_estado_presupuesto"].ToString());
                estadoPresupuesto.descripcionEstado   = reader["descripcion_estado_presupuesto"].ToString();
            }

            sqlConnection.Close();

            return(estadoPresupuesto);
        }
示例#11
0
        /// <summary>
        /// Leonardo Carrion
        /// 30/oct/2019
        /// Efecto: devuelve lista de meses que se encuentran en la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de meses
        /// </summary>
        /// <returns></returns>
        public List <Mes> getMeses()
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            List <Mes>    meses         = new List <Mes>();

            String consulta = @"select * from Mes order by numero;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Mes mes = new Mes();

                mes.idMes     = Convert.ToInt32(reader["id_mes"].ToString());
                mes.nombreMes = reader["nombre_mes"].ToString();
                mes.numero    = Convert.ToInt32(reader["numero"].ToString());

                meses.Add(mes);
            }

            sqlConnection.Close();

            return(meses);
        }
示例#12
0
        /// <summary>
        /// Leonardo Carrion
        /// 12/jun/2019
        /// Efecto: obtiene todas los funcionarios de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de funcionarios
        /// </summary>
        /// <returns></returns>
        public List <Parametros> getCorreosDestinatarios()
        {
            SqlConnection     sqlConnection = conexion.conexionPEP();
            List <Parametros> parametros    = new List <Parametros>();

            String consulta = @"select * from Parametros  where nombre_parametro='correo' order by id_parametro";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Parametros parametro = new Parametros();
                parametro.idParametro     = Convert.ToInt32(reader["id_parametro"].ToString());
                parametro.nombreParametro = reader["nombre_parametro"].ToString();
                parametro.valor           = reader["valor"].ToString();
                parametros.Add(parametro);
            }

            sqlConnection.Close();

            return(parametros);
        }
示例#13
0
        /// <summary>
        /// Leonardo Carrion
        /// 10/mar/2021
        /// Efecto: devuelve el estado segun la descripcion ingresada
        /// Requiere: nombre estado
        /// Modifica: -
        /// Devuelve: estadoEjecucion
        /// </summary>
        /// <param name="estado"></param>
        /// <returns></returns>
        public EstadoEjecucion getEstadoEjecucionSegunNombre(String estado)
        {
            EstadoEjecucion estadoEjecucion = new EstadoEjecucion();

            SqlConnection sqlConnection = conexion.conexionPEP();

            String consulta = @"SELECT * from EstadoEjecucion where descripcion_estado = @descripcion";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@descripcion", estado);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            if (reader.Read())
            {
                estadoEjecucion.idEstado    = Convert.ToInt32(reader["id_estado"].ToString());
                estadoEjecucion.descripcion = reader["descripcion_estado"].ToString();
            }

            sqlConnection.Close();

            return(estadoEjecucion);
        }
示例#14
0
        /// <summary>
        /// Leonardo Carrion
        /// 04/nov/2019
        /// Efecto: inserta en la base de datos la relacion de proyeccion y carga social
        /// Requiere: proyeccion, carga social y monto
        /// Modifica: -
        /// Devuelve: -
        /// </summary>
        /// <param name="proyeccion"></param>
        /// <returns></returns>
        public void insertarProyeccionCargaSocial(Proyeccion_CargaSocial proyeccion_CargaSocial)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();

            String consulta = @"Insert Proyeccion_CargaSocial(id_proyeccion,id_carga_social,monto)
                                            values(@idProyeccion,@idCargaSocial,@monto)";

            SqlCommand command = new SqlCommand(consulta, sqlConnection);

            command.Parameters.AddWithValue("@idProyeccion", proyeccion_CargaSocial.proyeccion.idProyeccion);
            command.Parameters.AddWithValue("@idCargaSocial", proyeccion_CargaSocial.cargaSocial.idCargaSocial);
            command.Parameters.AddWithValue("@monto", proyeccion_CargaSocial.monto);

            sqlConnection.Open();
            command.ExecuteReader();
            sqlConnection.Close();
        }
示例#15
0
        /// <summary>
        /// Leonardo Carrion
        /// 08/oct/2019
        /// Efecto: devuelve la lista de partidas con los montos segun el presupuesto de egreso
        /// Requiere: presupuesto de egreso
        /// Modifica: -
        /// Devuelve: lista de presupuesto egreso partidas
        /// </summary>
        /// <param name="presupuestoEgreso"></param>
        /// <returns></returns>
        public List <PresupuestoEgresoPartida> getPresupuestoEgresoPartidas(PresupuestoEgreso presupuestoEgreso)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            List <PresupuestoEgresoPartida> listaPresupuestoEgresoPartida = new List <PresupuestoEgresoPartida>();

            SqlCommand sqlCommand = new SqlCommand(@"select PEP.*, P.descripcion_partida,P.numero_partida,EP.descripcion_estado_presupuesto 
                                                                                            from Presupuesto_Egreso_Partida PEP, Partida P,Estado_presupuestos EP
                                                                                            where PEP.id_presupuesto_egreso = @idPresupuestoEgreso and P.id_partida = PEP.id_partida and P.id_partida_padre is not null
                                                                                            and P.ano_periodo = (select ano_periodo from Proyecto where id_proyecto = (
                                                                                            select id_proyecto from Unidad where id_unidad = (select id_unidad from Presupuesto_Egreso where id_presupuesto_egreso = @idPresupuestoEgreso)
                                                                                            )) and P.disponible = 'True' and EP.id_estado_presupuesto = PEP.id_estado_presupuesto
                                                                                            union
                                                                                            select @idPresupuestoEgreso as id_presupuesto_egreso, P.id_partida, 0 as monto, '' as descripcion,(select id_estado_presupuesto from Estado_presupuestos where descripcion_estado_presupuesto='Guardar') as id_estado_presupuesto,1 as id_linea, P.descripcion_partida,P.numero_partida,'Espera' as descripcion_estado_presupuesto
                                                                                            from Partida P
                                                                                            where P.id_partida not in ( Select PEP.id_partida from Presupuesto_Egreso_Partida PEP where PEP.id_presupuesto_egreso = @idPresupuestoEgreso
                                                                                            ) and P.id_partida_padre is not null and P.ano_periodo = (select ano_periodo from Proyecto where id_proyecto = (
                                                                                            select id_proyecto from Unidad where id_unidad = (select id_unidad from Presupuesto_Egreso where id_presupuesto_egreso = @idPresupuestoEgreso)
                                                                                            )) and P.disponible = 'True'
                                                                                            order by P.numero_partida", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idPresupuestoEgreso", presupuestoEgreso.idPresupuestoEgreso);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                PresupuestoEgresoPartida presupuestoEgresoPartida = new PresupuestoEgresoPartida();
                Partida           partida           = new Partida();
                EstadoPresupuesto estadoPresupuesto = new EstadoPresupuesto();

                partida.idPartida          = Convert.ToInt32(reader["id_partida"].ToString());
                partida.descripcionPartida = reader["descripcion_partida"].ToString();
                partida.numeroPartida      = reader["numero_partida"].ToString();

                estadoPresupuesto.idEstadoPresupuesto = Convert.ToInt32(reader["id_estado_presupuesto"].ToString());
                estadoPresupuesto.descripcionEstado   = reader["descripcion_estado_presupuesto"].ToString();

                presupuestoEgresoPartida.partida             = partida;
                presupuestoEgresoPartida.estadoPresupuesto   = estadoPresupuesto;
                presupuestoEgresoPartida.idPresupuestoEgreso = Convert.ToInt32(reader["id_presupuesto_egreso"].ToString());
                presupuestoEgresoPartida.monto       = Convert.ToDouble(reader["monto"].ToString());
                presupuestoEgresoPartida.descripcion = reader["descripcion"].ToString();
                presupuestoEgresoPartida.idLinea     = Convert.ToInt32(reader["id_linea"].ToString());

                listaPresupuestoEgresoPartida.Add(presupuestoEgresoPartida);
            }

            sqlConnection.Close();

            return(listaPresupuestoEgresoPartida);
        }
示例#16
0
        /// <summary>
        /// Juan Solano Brenes
        /// 14/06/2019
        /// Insertar una nueva planillaFundevi a la base de datos
        /// </summary>
        /// <param name="anoPeriodo"></param>
        /// <returns></returns>
        public Boolean Insertar(int anoPeriodo)
        {
            Boolean       bandera       = false;
            SqlConnection sqlConnection = conexion.conexionPEP();
            SqlCommand    sqlCommand    = new SqlCommand("insert into Planilla_fundevi(ano_periodo) " +
                                                         "values(@ano_periodo);", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@ano_periodo", anoPeriodo);

            sqlConnection.Open();
            if (sqlCommand.ExecuteScalar() != null)
            {
                return(bandera);
            }

            sqlConnection.Close();

            return(bandera);
        }
示例#17
0
        /// <summary>
        /// Inserta Ejecucion
        /// </summary>
        /// <param name="cajaChica">ejecucion</param>
        public int insertarCajaChica(CajaChica cajaChica)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            int           respuesta     = 0;
            string        numeroSolicitud;

            sqlConnection.Open();
            String consulta = @"insert Solicitud_Caja_Chica(numero,ano_periodo,id_proyecto,fecha,realizado_por,monto,id_estado_caja_chica,comentario,numero_caja_chica) output INSERTED.id_solicitud_caja_chica
                                            values(@numero,@ano_periodo,@id_proyecto,@fecha,@realizadoPor,@monto,@id_estado_caja_chica,@comentario,@numero_caja_chica)";

            SqlCommand command = new SqlCommand(consulta, sqlConnection);

            numeroSolicitud = getNumeroSolicitudCajaChica(cajaChica.anoPeriodo);
            command.Parameters.AddWithValue("@numero", numeroSolicitud);
            command.Parameters.AddWithValue("@ano_periodo", cajaChica.anoPeriodo);
            command.Parameters.AddWithValue("@id_proyecto", cajaChica.idProyedto);
            command.Parameters.AddWithValue("@fecha", DateTime.Now);
            command.Parameters.AddWithValue("@realizadoPor", cajaChica.realizadoPor);
            command.Parameters.AddWithValue("@monto", cajaChica.monto);
            command.Parameters.AddWithValue("@id_estado_caja_chica", cajaChica.idEstadoCajaChica.idEstadoCajaChica);
            command.Parameters.AddWithValue("@comentario", cajaChica.comentario);
            command.Parameters.AddWithValue("@numero_caja_chica", cajaChica.numeroCajaChica);


            respuesta = (int)command.ExecuteScalar();


            sqlConnection.Close();
            return(respuesta);
        }
        /// <summary>
        /// Leonardo Carrion
        /// 05/mar/2021
        /// Efecto: devuelve en monto disponible de una partida en especifico segun la unidad
        /// Requiere: unidad y partida
        /// Modifica: -
        /// Devuelve: monto disponible
        /// </summary>
        /// <param name="unidad"></param>
        /// <param name="partida"></param>
        /// <returns></returns>
        public Double getMontoDisponible(Unidad unidad, Partida partida)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            Double        monto         = 0;

            String consulta = @"select (select ISNULL(sum(monto),0) from Presupuesto_Egreso_Partida where id_presupuesto_egreso in (
select id_presupuesto_egreso from Presupuesto_Egreso where id_unidad = @idUnidad
) and id_partida = @idPartida and id_estado_presupuesto = (select id_estado_presupuesto from Estado_presupuestos where (descripcion_estado_presupuesto = 'Aprobar' or descripcion_estado_presupuesto='Comprometer')))
- (select ISNULL(sum(monto),0) from [dbo].[Ejecucion_Unidad_Partida] where id_unidad = @idUnidad and id_partida = @idPartida and 
id_ejecucion in (select id_ejecucion from Ejecucion where id_estado!=1)) as monto_disponible";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idUnidad", unidad.idUnidad);
            sqlCommand.Parameters.AddWithValue("@idPartida", partida.idPartida);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            if (reader.Read())
            {
                monto = Convert.ToDouble(reader["monto_disponible"].ToString());
            }

            sqlConnection.Close();

            return(monto);
        }
示例#19
0
        /// <summary>
        /// Leonardo Carrion
        /// 18/sep/2019
        /// Efecto: obtiene todas las jornadas de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de jornadas
        /// </summary>
        /// <returns></returns>
        public List <Jornada> getJornadasActivas()
        {
            SqlConnection  sqlConnection = conexion.conexionPEP();
            List <Jornada> listaJornadas = new List <Jornada>();

            String consulta = @"select * from Jornada where activo = 'True' order by desc_jornada;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Jornada jornada = new Jornada();

                jornada.idJornada         = Convert.ToInt32(reader["id_jornada"].ToString());
                jornada.descJornada       = reader["desc_jornada"].ToString();
                jornada.activo            = Convert.ToBoolean(reader["activo"].ToString());
                jornada.porcentajeJornada = Convert.ToDouble(reader["porcentaje_jornada"].ToString());

                listaJornadas.Add(jornada);
            }

            sqlConnection.Close();

            return(listaJornadas);
        }
示例#20
0
        /// <summary>
        /// Juan Solano Brenes
        /// 20/06/2019
        /// Metodo encargado de insertar nuevos funcionarios
        /// </summary>
        /// <param name="funcionario"></param>
        /// <returns>true si es insertado con exito</returns>
        public Boolean InsertFuncionario(FuncionarioFundevi funcionario)
        {
            Boolean       flag          = false;
            SqlConnection sqlConnection = conexion.conexionPEP();
            SqlCommand    sqlCommand    = new SqlCommand("insert into Funcionario_fundevi(id_planilla,nombre_funcionario,salario)  " +
                                                         "values(@id_planilla,@nombre_funcionario,@salario);", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@id_planilla", funcionario.idPlanilla);
            sqlCommand.Parameters.AddWithValue("@nombre_funcionario", funcionario.nombre);
            sqlCommand.Parameters.AddWithValue("@salario", funcionario.salario);
            sqlConnection.Open();
            if (sqlCommand.ExecuteNonQuery() != -1)
            {
                flag = true;
            }
            sqlConnection.Close();
            return(flag);
        }
        /// <summary>
        /// Leonardo Carrion
        /// 09/ene/2020
        /// Efecto: devuelve la lista para llenar el reporte
        /// Requiere: proyecto
        /// Modifica: -
        /// Devuelve: lista de Reporte egreso
        /// </summary>
        /// <param name="periodo"></param>
        /// <param name="proyecto"></param>
        /// <returns></returns>
        public List <Reporte_Egresos_Unidad> getReporteEgresosPorUnidades(Proyectos proyecto)
        {
            SqlConnection sqlConnection           = conexion.conexionPEP();
            List <Reporte_Egresos_Unidad> egresos = new List <Reporte_Egresos_Unidad>();

            String consulta = @"select U.nombre_unidad, PA.numero_partida, PA.descripcion_partida, P.descripcion, P.monto
                                            from Presupuesto_Egreso_Partida P, Unidad U, Partida PA
                                            where U.id_proyecto= @idProyecto and P.id_presupuesto_egreso in (
                                            select id_presupuesto_egreso from Presupuesto_Egreso where id_unidad = U.id_unidad)
                                            and PA.id_partida = P.id_partida and P.id_estado_presupuesto = (select id_estado_presupuesto from Estado_presupuestos where descripcion_estado_presupuesto ='Aprobar')
                                            order by U.id_unidad, PA.numero_partida;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idProyecto", proyecto.idProyecto);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Reporte_Egresos_Unidad egreso = new Reporte_Egresos_Unidad();

                egreso.nombreUnidad    = reader["nombre_unidad"].ToString();
                egreso.numeroPartida   = reader["numero_partida"].ToString();
                egreso.descPartida     = reader["descripcion_partida"].ToString();
                egreso.descPresupuesto = reader["descripcion"].ToString();
                egreso.monto           = Convert.ToDouble(reader["monto"].ToString());

                egresos.Add(egreso);
            }

            sqlConnection.Close();

            return(egresos);
        }
示例#22
0
        /*Kevin Picado
         * 20/03/20
         * Metodo que inserta un archivo muestra en la base de datos
         * devuelve el id del archivo ingresado*/
        public int insertarArchivoMuestra(ArchivoEjecucion archivoEjecucion)
        {
            SqlConnection connection = conexion.conexionPEP();

            String consulta
                = @"INSERT Archivo_Ejecucion (id_ejecucion,fecha_creacion, creado_por,nombre_archivo,ruta_archivo) output INSERTED.id_ejecucion 
                    VALUES (@idEjecucion,@fechaCreacion, @creadoPor,@nombreArchivo,@rutaArchivo);";

            SqlCommand command = new SqlCommand(consulta, connection);

            command.Parameters.AddWithValue("@idEjecucion", archivoEjecucion.idEjecucion);

            command.Parameters.AddWithValue("@fechaCreacion", archivoEjecucion.fechaCreacion);
            command.Parameters.AddWithValue("@creadoPor", archivoEjecucion.creadoPor);
            command.Parameters.AddWithValue("@nombreArchivo", archivoEjecucion.nombreArchivo);
            command.Parameters.AddWithValue("@rutaArchivo", archivoEjecucion.rutaArchivo);

            connection.Open();
            int idArchivo = Convert.ToInt32(command.ExecuteScalar());

            connection.Close();

            return(idArchivo);
        }
示例#23
0
        /// <summary>
        /// Leonardo Carrion
        /// 10/jun/2019
        /// Efecto: obtiene todas las escalas salariales de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de escalas salariales
        /// </summary>
        /// <returns></returns>
        public List <EscalaSalarial> getEscalasSalariales()
        {
            SqlConnection         sqlConnection = conexion.conexionPEP();
            List <EscalaSalarial> escalas       = new List <EscalaSalarial>();

            String consulta = @"select * from EscalaSalarial order by desc_salarial;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Periodo periodo = new Periodo();
                periodo.anoPeriodo = Convert.ToInt32(reader["ano_periodo"].ToString());

                EscalaSalarial escalaSalarial = new EscalaSalarial();

                escalaSalarial.idEscalaSalarial     = Convert.ToInt32(reader["id_escala_salarial"].ToString());
                escalaSalarial.descEscalaSalarial   = reader["desc_escala_salarial"].ToString();
                escalaSalarial.salarioBase1         = Convert.ToDouble(reader["salario_base_1"].ToString());
                escalaSalarial.salarioBase2         = Convert.ToDouble(reader["salario_base_2"].ToString());
                escalaSalarial.topeEscalafones      = Convert.ToInt32(reader["tope_escalafones"].ToString());
                escalaSalarial.porentajeEscalafones = Convert.ToDouble(reader["porcentaje_escalafones"].ToString());
                escalaSalarial.periodo = periodo;

                escalas.Add(escalaSalarial);
            }

            sqlConnection.Close();

            return(escalas);
        }
示例#24
0
        /// <summary>
        /// Leonardo Carrion
        /// 27/sep/2019
        /// Efecto: devuelve lista de presupuestos de ingresos segun el proyecto ingresado
        /// Requiere: proyecto a consultar
        /// Modifica: -
        /// Devuelve: lista de presupuestos de ingresos
        /// </summary>
        /// <param name="proyecto"></param>
        /// <returns></returns>
        public List <PresupuestoIngreso> getPresupuestosIngresosPorProyecto(Proyectos proyecto)
        {
            SqlConnection             sqlConnection       = conexion.conexionPEP();
            List <PresupuestoIngreso> presupuestoIngresos = new List <PresupuestoIngreso>();

            SqlCommand sqlCommand = new SqlCommand("SELECT PI.id_presupuesto_ingreso, PI.id_estado_presup_ingreso, PI.monto, PI.es_inicial, PI.id_proyecto, EPI.desc_estado FROM Presupuesto_Ingreso PI, Estado_presup_ingreso EPI where id_proyecto=@id_proyecto_ and EPI.id_estado_presup_ingreso = PI.id_estado_presup_ingreso;", sqlConnection);

            sqlCommand.Parameters.AddWithValue("@id_proyecto_", proyecto.idProyecto);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                PresupuestoIngreso  presupuestoIngreso  = new PresupuestoIngreso();
                EstadoPresupIngreso estadoPresupIngreso = new EstadoPresupIngreso();
                estadoPresupIngreso.idEstadoPresupIngreso = Convert.ToInt32(reader["id_estado_presup_ingreso"].ToString());
                estadoPresupIngreso.descEstado            = reader["desc_estado"].ToString();

                presupuestoIngreso.idPresupuestoIngreso = Convert.ToInt32(reader["id_presupuesto_ingreso"].ToString());
                presupuestoIngreso.estadoPresupIngreso  = estadoPresupIngreso;
                presupuestoIngreso.monto     = Convert.ToDouble(reader["monto"].ToString());
                presupuestoIngreso.esInicial = Convert.ToBoolean(reader["es_inicial"].ToString());

                presupuestoIngreso.proyecto            = new Proyectos();
                presupuestoIngreso.proyecto.idProyecto = Convert.ToInt32(reader["id_proyecto"].ToString());

                presupuestoIngresos.Add(presupuestoIngreso);
            }

            sqlConnection.Close();

            return(presupuestoIngresos);
        }
示例#25
0
        /// <summary>
        /// Leonardo Carrion
        /// 21/oct/2019
        /// Efecto: devuelve la lista para llenar el reporte
        /// Requiere: Periodo y proyecto
        /// Modifica: -
        /// Devuelve: lista de Reporte egreso
        /// </summary>
        /// <param name="periodo"></param>
        /// <param name="proyecto"></param>
        /// <returns></returns>
        public List <Reporte_Egresos> getReporteEgresos(Periodo periodo, Proyectos proyecto)
        {
            SqlConnection          sqlConnection = conexion.conexionPEP();
            List <Reporte_Egresos> egresos       = new List <Reporte_Egresos>();

            String consulta = @"select P2.numero_partida as numero_partida_padre,P2.descripcion_partida as descripcion_partida_padre,P.numero_partida as numero_partida_hija,P.descripcion_partida as descripcion_partida_hija,U.nombre_unidad,PEP.monto,PEP.id_linea
                                from Partida P,Partida P2, Proyecto PR,Unidad U, Presupuesto_Egreso PE, Presupuesto_Egreso_Partida PEP
                                where P.disponible = 1 and P.id_partida_padre is not null and P2.id_partida = P.id_partida_padre
                                and PR.id_proyecto = @idProyecto and U.id_proyecto = PR.id_proyecto and PE.id_unidad = U.id_unidad and
                                PEP.id_presupuesto_egreso = PE.id_presupuesto_egreso and P.id_partida = PEP.id_partida
                                union
                                select P2.numero_partida as numero_partida_padre,P2.descripcion_partida as descripcion_partida_padre,P.numero_partida as numero_partida_hija,P.descripcion_partida as descripcion_partida_hija,U.nombre_unidad, 0 as monto,0 as id_linea
                                from Unidad U, Partida P, Partida P2
                                Where U.id_proyecto = @idProyecto and P.disponible = 1 and P.id_partida_padre is not null and P2.id_partida = P.id_partida_padre
                                and P.ano_periodo = @anoPeriodo and P.id_partida not in (select id_partida from Presupuesto_Egreso_Partida where id_presupuesto_egreso in(
                                select id_presupuesto_egreso from Presupuesto_Egreso where id_unidad in 
                                (select id_unidad from Unidad where id_proyecto in (select id_proyecto from Proyecto where id_proyecto=@idProyecto))
                                ))
                                order by P.numero_partida;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idProyecto", proyecto.idProyecto);
            sqlCommand.Parameters.AddWithValue("@anoPeriodo", periodo.anoPeriodo);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Reporte_Egresos egreso = new Reporte_Egresos();

                egreso.numeroPartidaPadre      = reader["numero_partida_padre"].ToString();
                egreso.descripcionPartidaPadre = reader["descripcion_partida_padre"].ToString();
                egreso.numeroPartidaHija       = reader["numero_partida_hija"].ToString();
                egreso.descripcionPartidaHija  = reader["descripcion_partida_hija"].ToString();
                egreso.nombreUnidad            = reader["nombre_unidad"].ToString();
                egreso.monto = Convert.ToDouble(reader["monto"].ToString());

                egresos.Add(egreso);
            }

            sqlConnection.Close();

            return(egresos);
        }
示例#26
0
        /// <summary>
        /// Josseline M
        /// Este método se encarga de obtener el tipo de tramite existente para el tipo de proyecto UCR o Fundevi
        /// </summary>
        /// <param name="proyecto"></param>
        /// <returns></returns>
        public List <TipoTramite> obtenerTipoTramitesPorProyecto(Proyectos proyecto)
        {
            List <TipoTramite> tramites      = new List <TipoTramite>();
            SqlConnection      sqlConnection = conexion.conexionPEP();

            if (proyecto.esUCR)
            {
                SqlCommand sqlCommand = new SqlCommand("select id_tramite,nombre_tramite,Es_UCR" +
                                                       " from  Tipos_tramite where Es_UCR=1; ", sqlConnection);
                sqlConnection.Open();
                SqlDataReader reader = sqlCommand.ExecuteReader();

                while (reader.Read())
                {
                    TipoTramite tramite = new TipoTramite();
                    tramite.idTramite     = Convert.ToInt32(reader["id_tramite"].ToString());
                    tramite.nombreTramite = reader["nombre_tramite"].ToString();
                    tramite.EsUCR         = Convert.ToInt32(reader["ES_UCR"].ToString());
                    tramites.Add(tramite);
                }

                sqlConnection.Close();
            }
            else
            {
                SqlCommand sqlCommand = new SqlCommand("select id_tramite,nombre_tramite,Es_UCR" +
                                                       " from  Tipos_tramite where Es_UCR=0; ", sqlConnection);

                sqlConnection.Open();
                SqlDataReader reader = sqlCommand.ExecuteReader();

                while (reader.Read())
                {
                    TipoTramite tramite = new TipoTramite();
                    tramite.idTramite     = Convert.ToInt32(reader["id_tramite"].ToString());
                    tramite.EsUCR         = Convert.ToInt32(reader["ES_UCR"].ToString());
                    tramite.nombreTramite = reader["nombre_tramite"].ToString();
                    tramites.Add(tramite);
                }

                sqlConnection.Close();
            }


            return(tramites);
        }
        /// <summary>
        /// Leonardo Carrion
        /// 04/may/2021
        /// Efecto: devuelve la lista para el reporte
        /// Requiere: id_proyecto, id_año y id_unidad
        /// Modifica: -
        /// Devuelve: lista de reporte detalle ejecucion
        /// </summary>
        /// <param name="idProyecto"></param>
        /// <param name="idPeriodo"></param>
        /// <param name="idUnidad"></param>
        /// <returns></returns>
        public List <ReporteDetalleEjecucion> getReporteEgresosPorUnidades(int idProyecto, int idPeriodo, int idUnidad)
        {
            SqlConnection sqlConnection = conexion.conexionPEP();
            List <ReporteDetalleEjecucion> ejecuciones = new List <ReporteDetalleEjecucion>();

            String consulta = @"select eup.*, E.monto as monto_ejecucion,P.numero_partida, P.descripcion_partida,EE.descripcion_estado,TT.nombre_tramite
from Ejecucion_Unidad_Partida eup, Ejecucion E, Partida P,EstadoEjecucion EE, Tipos_tramite TT
where eup.id_ejecucion in (
select id_ejecucion from Ejecucion where id_proyecto = @idProyecto and ano_periodo= @idPeriodo and (id_estado =2 or id_estado=3))
and eup.id_unidad =@idUnidad and E.id_ejecucion = eup.id_ejecucion and P.id_partida = EUP.id_partida and EE.id_estado = E.id_estado and
TT.id_tramite = E.id_tipo_tramite
order by numero_partida";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            sqlCommand.Parameters.AddWithValue("@idProyecto", idProyecto);
            sqlCommand.Parameters.AddWithValue("@idPeriodo", idPeriodo);
            sqlCommand.Parameters.AddWithValue("@idUnidad", idUnidad);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                ReporteDetalleEjecucion ejecucion = new ReporteDetalleEjecucion();

                ejecucion.descEstado     = reader["descripcion_estado"].ToString();
                ejecucion.descPartida    = reader["descripcion_partida"].ToString();
                ejecucion.idEjecucion    = Convert.ToInt32(reader["id_ejecucion"].ToString());
                ejecucion.monto          = Convert.ToDouble(reader["monto"].ToString());
                ejecucion.montoEjecucion = Convert.ToDouble(reader["monto_ejecucion"].ToString());
                ejecucion.nombreTramite  = reader["nombre_tramite"].ToString();
                ejecucion.numeroPartida  = reader["numero_partida"].ToString();

                ejecuciones.Add(ejecucion);
            }

            sqlConnection.Close();

            return(ejecuciones);
        }
示例#28
0
        /// <summary>
        /// Leonardo Carrion
        /// 20/sep/2019
        /// Efecto: obtiene todas las escalas sociales de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de cargas sociales
        /// </summary>
        /// <returns></returns>
        public List <CargaSocial> getCargasSocialesActivas()
        {
            SqlConnection      sqlConnection       = conexion.conexionPEP();
            List <CargaSocial> listaCargasSociales = new List <CargaSocial>();

            String consulta = @"select CS.*, P.numero_partida, P.descripcion_partida
                                            from CargaSocial CS, Partida P 
                                            where CS.activo = 'True' and P.id_partida = CS.id_partida
                                            order by CS.desc_carga_social;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                CargaSocial cargaSocial = new CargaSocial();
                Periodo     periodo     = new Periodo();
                Partida     partida     = new Partida();

                periodo.anoPeriodo = Convert.ToInt32(reader["ano_periodo"].ToString());

                partida.idPartida          = Convert.ToInt32(reader["id_partida"].ToString());
                partida.numeroPartida      = reader["numero_partida"].ToString();
                partida.descripcionPartida = reader["descripcion_partida"].ToString();

                cargaSocial.idCargaSocial         = Convert.ToInt32(reader["id_carga_social"].ToString());
                cargaSocial.descCargaSocial       = reader["desc_carga_social"].ToString();
                cargaSocial.activo                = Convert.ToBoolean(reader["activo"].ToString());
                cargaSocial.porcentajeCargaSocial = Convert.ToDouble(reader["porcentaje_carga_social"].ToString());
                cargaSocial.periodo               = periodo;
                cargaSocial.partida               = partida;

                listaCargasSociales.Add(cargaSocial);
            }

            sqlConnection.Close();

            return(listaCargasSociales);
        }
示例#29
0
        /// <summary>
        /// Leonardo Carrion
        /// 04/nov/2019
        /// Efecto: obtiene todas las proyeccion de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de proyecciones
        /// </summary>
        /// <returns></returns>
        public List <Proyeccion> getProyecciones()
        {
            SqlConnection     sqlConnection     = conexion.conexionPEP();
            List <Proyeccion> listaProyecciones = new List <Proyeccion>();

            String consulta = @"select P.*, F.nombre_funcionario, M.nombre_mes, M.numero
                                            from Proyeccion P, Funcionario F, Mes M
                                            where F.id_funcionario = P.id_funcionario and M.id_mes = P.id_mes
                                            order by F.id_funcionario, M.numero ;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Proyeccion  proyeccion  = new Proyeccion();
                Periodo     periodo     = new Periodo();
                Mes         mes         = new Mes();
                Funcionario funcionario = new Funcionario();

                periodo.anoPeriodo = Convert.ToInt32(reader["ano_periodo"].ToString());
                proyeccion.periodo = periodo;

                mes.idMes     = Convert.ToInt32(reader["id_mes"].ToString());
                mes.nombreMes = reader["nombre_mes"].ToString();
                mes.numero    = Convert.ToInt32(reader["numero"].ToString());

                funcionario.idFuncionario     = Convert.ToInt32(reader["id_funcionario"].ToString());
                funcionario.nombreFuncionario = reader["nombre_funcionario"].ToString();

                proyeccion.idProyeccion     = Convert.ToInt32(reader["id_proyeccion"].ToString());
                proyeccion.funcionario      = funcionario;
                proyeccion.mes              = mes;
                proyeccion.montoSalario     = Convert.ToDouble(reader["monto_salario"].ToString());
                proyeccion.montoCargasTotal = Convert.ToDouble(reader["monto_cargas_total"].ToString());

                listaProyecciones.Add(proyeccion);
            }

            sqlConnection.Close();

            return(listaProyecciones);
        }
示例#30
0
        /// <summary>
        /// Leonardo Carrion
        /// 12/jun/2019
        /// Efecto: obtiene todas los funcionarios de la base de datos
        /// Requiere: -
        /// Modifica: -
        /// Devuelve: lista de funcionarios
        /// </summary>
        /// <returns></returns>
        public List <Funcionario> getFuncionarios()
        {
            SqlConnection      sqlConnection = conexion.conexionPEP();
            List <Funcionario> funcionarios  = new List <Funcionario>();

            String consulta = @"select f.*, es.id_escala_salarial, es.desc_escala_salarial, 
                es.salario_base_1 AS escala_salario_base_1, es.salario_base_2 AS escala_salario_base_2,es.tope_escalafones,es.porcentaje_escalafones,
                jl.*
                FROM Funcionario f 
                JOIN EscalaSalarial es ON f.id_escala_salarial = es.id_escala_salarial
                JOIN Jornada jl ON jl.id_jornada = f.id_jornada_laboral 
                ORDER BY nombre_funcionario;";

            SqlCommand sqlCommand = new SqlCommand(consulta, sqlConnection);

            SqlDataReader reader;

            sqlConnection.Open();
            reader = sqlCommand.ExecuteReader();

            while (reader.Read())
            {
                Planilla planilla = new Planilla();
                planilla.idPlanilla = Convert.ToInt32(reader["id_planilla"].ToString());

                EscalaSalarial escalaSalarial = new EscalaSalarial();
                escalaSalarial.idEscalaSalarial     = Convert.ToInt32(reader["id_escala_salarial"].ToString());
                escalaSalarial.descEscalaSalarial   = reader["desc_escala_salarial"].ToString();
                escalaSalarial.salarioBase1         = Convert.ToDouble(reader["escala_salario_base_1"].ToString());
                escalaSalarial.salarioBase2         = Convert.ToDouble(reader["escala_salario_base_2"].ToString());
                escalaSalarial.topeEscalafones      = Convert.ToInt32(reader["tope_escalafones"].ToString());
                escalaSalarial.porentajeEscalafones = Convert.ToDouble(reader["porcentaje_escalafones"].ToString());

                Jornada jornada = new Jornada();
                jornada.idJornada         = Convert.ToInt32(reader["id_jornada"].ToString());
                jornada.porcentajeJornada = Convert.ToDouble(reader["porcentaje_jornada"].ToString());
                jornada.descJornada       = reader["desc_jornada"].ToString();

                Funcionario funcionario = new Funcionario();
                funcionario.planilla              = planilla;
                funcionario.escalaSalarial        = escalaSalarial;
                funcionario.JornadaLaboral        = jornada;
                funcionario.fechaIngreso          = Convert.ToDateTime(reader["fecha_ingreso"].ToString());
                funcionario.salarioBase1          = Convert.ToDouble(reader["salario_base_1"].ToString());
                funcionario.noEscalafones1        = Convert.ToInt32(reader["no_escalafones_1"].ToString());
                funcionario.montoEscalafones1     = Convert.ToDouble(reader["monto_escalafones_1"].ToString());
                funcionario.porcentajeAnualidad1  = Convert.ToDouble(reader["porcentaje_anualidad_1"].ToString());
                funcionario.montoAnualidad1       = Convert.ToDouble(reader["monto_anualidad_1"].ToString());
                funcionario.salarioContratacion1  = Convert.ToDouble(reader["salario_contratacion_1"].ToString());
                funcionario.salarioEnero          = Convert.ToDouble(reader["salario_enero"].ToString());
                funcionario.conceptoPagoLey       = Convert.ToDouble(reader["concepto_pago_ley"].ToString());
                funcionario.salarioBase2          = Convert.ToDouble(reader["salario_base_2"].ToString());
                funcionario.noEscalafones2        = Convert.ToInt32(reader["no_escalafones_2"].ToString());
                funcionario.montoEscalafones2     = Convert.ToDouble(reader["monto_escalafones_2"].ToString());
                funcionario.porcentajeAnualidad2  = Convert.ToDouble(reader["porcentaje_anualidad_2"].ToString());
                funcionario.montoAnualidad2       = Convert.ToDouble(reader["monto_anualidad_2"].ToString());
                funcionario.salarioContratacion2  = Convert.ToDouble(reader["salario_contratacion_2"].ToString());
                funcionario.salarioJunio          = Convert.ToDouble(reader["salario_junio"].ToString());
                funcionario.salarioPromedio       = Convert.ToDouble(reader["salario_promedio"].ToString());
                funcionario.observaciones         = reader["observaciones"].ToString();
                funcionario.nombreFuncionario     = reader["nombre_funcionario"].ToString();
                funcionario.porcentajeSumaSalario = Convert.ToDouble(reader["porcentaje_suma_salario"].ToString());
                funcionario.idFuncionario         = Convert.ToInt32(reader["id_funionario"].ToString());

                funcionarios.Add(funcionario);
            }

            sqlConnection.Close();

            return(funcionarios);
        }