/// <summary>
        /// Leonardo Carrion
        /// 01/oct/2019
        /// Efecto: actualiza el presupuesto de ingreso seleccionado
        /// Requiere: dar clic al boton de "Actualizar"
        /// Modifica: el monto del presupuesto de ingreso seleccionado
        /// Devuelve: -
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnActualizarIngresoModalEditar_Click(object sender, EventArgs e)
        {
            Entidades.PresupuestoIngreso presupuestoIngreso = presupuestoIngresoSeleccionado;

            Double monto    = 0;
            String txtMonto = txtMontoModalEditar.Text.Replace(".", ",");

            if (Double.TryParse(txtMonto, out monto))
            {
                txtMontoModalEditar.Text = monto.ToString();
            }

            presupuestoIngreso.monto = monto;

            presupuestoIngresoServicios.actualizarPresupuestoIngreso(presupuestoIngreso);

            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "#modalEditarIngreso", "$('body').removeClass('modal-open');$('.modal-backdrop').remove();$('#modalEditarIngreso').hide();", true);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "toastr.success('" + "Se actualizo correctamente el presupuesto" + "');", true);

            List <Entidades.PresupuestoIngreso> listaPresupuestosIngresos = presupuestoIngresoServicios.getPresupuestosIngresosPorProyecto(proyectoSeleccionado);

            Session["listaPresupuestosIngresos"] = listaPresupuestosIngresos;

            cargarDatosTblIngresos();
        }
        /// <summary>
        /// Leonardo Carrion
        /// 30/sep/2019
        /// Efecto: Guarda en la base de datos el ingreso en el proyecto seleccionado
        /// Requiere: llenar el dato de monto y darle clic al boton de "Guardar"
        /// Modifica: tabla de ingresos
        /// Devuelve: -
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnNuevoIngresoModal_Click(object sender, EventArgs e)
        {
            Entidades.PresupuestoIngreso presupuestoIngreso = new Entidades.PresupuestoIngreso();
            presupuestoIngreso.proyecto = proyectoSeleccionado;

            List <Entidades.PresupuestoIngreso> listaPresupuestosIngresos = (List <Entidades.PresupuestoIngreso>)Session["listaPresupuestosIngresos"];

            if (listaPresupuestosIngresos.Count > 0)
            {
                presupuestoIngreso.esInicial = false;
            }
            else
            {
                presupuestoIngreso.esInicial = true;
            }

            Double monto    = 0;
            String txtMonto = txtMontoModalNuevo.Text.Replace(".", ",");

            if (Double.TryParse(txtMonto, out monto))
            {
                txtMontoModalNuevo.Text = monto.ToString();
            }

            presupuestoIngreso.monto = monto;

            EstadoPresupIngreso estadoPresupIngreso = estadoPresupIngresoServicios.getEstadoPresupIngresoPorNombre("Guardar");

            presupuestoIngreso.estadoPresupIngreso = estadoPresupIngreso;

            presupuestoIngresoServicios.InsertarPresupuestoIngreso(presupuestoIngreso);

            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "#modalNuevoIngreso", "$('body').removeClass('modal-open');$('.modal-backdrop').remove();$('#modalNuevoIngreso').hide();", true);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "toastr.success('" + "Se ingreso correctamente el presupuesto" + "');", true);

            listaPresupuestosIngresos            = presupuestoIngresoServicios.getPresupuestosIngresosPorProyecto(proyectoSeleccionado);
            Session["listaPresupuestosIngresos"] = listaPresupuestosIngresos;

            cargarDatosTblIngresos();
        }
        /// <summary>
        /// Leonardo Carrion
        /// 02/oct/2019
        /// Efecto: levanta el modal para aprobar el presupuesto de ingreso
        /// Requiere: dar clic al boton  de "Aprobar"
        /// Modifica: -
        /// Devuelve: -
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnAprobar_Click(object sender, EventArgs e)
        {
            int idPresupuestoIngreso = Convert.ToInt32((((LinkButton)(sender)).CommandArgument).ToString());

            List <Entidades.PresupuestoIngreso> listaPresupuestosIngresos = (List <Entidades.PresupuestoIngreso>)Session["listaPresupuestosIngresos"];

            foreach (Entidades.PresupuestoIngreso presupuestoIngreso in listaPresupuestosIngresos)
            {
                if (presupuestoIngreso.idPresupuestoIngreso == idPresupuestoIngreso)
                {
                    presupuestoIngresoSeleccionado = presupuestoIngreso;
                    break;
                }
            }

            lblProyectoAprobarModal.Text    = proyectoSeleccionado.nombreProyecto;
            lblTipoIngresoModalAprobar.Text = presupuestoIngresoSeleccionado.esInicial ? "Inicial" : "Adicional";

            txtMontoModalAprobar.Text = presupuestoIngresoSeleccionado.monto.ToString();

            ScriptManager.RegisterStartupScript(this, this.GetType(), "activar", "activarModalAprobarIngreso();", true);
        }