Esempio n. 1
0
    private void cargar_GridView_MotivosRotacion()
    {
        Decimal ID_EMPRESA = Convert.ToDecimal(HiddenField_ID_EMPRESA.Value);

        MotivoRotacionRetiro _motivo  = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable            tablaCat = _motivo.ObtenerAsociacionMotivosEmpresa(ID_EMPRESA);

        if (tablaCat.Rows.Count <= 0)
        {
            if (_motivo.MensajeError == null)
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se han configurado las categorías y motivos de rotación y retiro.", Proceso.Advertencia);
            }
            else
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
            }

            GridView_MotivosRotacion.DataSource = null;
            GridView_MotivosRotacion.DataBind();
        }
        else
        {
            CargarGrillaMotivosRotacionDesdeTabla(tablaCat);

            inhabilitarFilasGrilla(GridView_MotivosRotacion, 0);
        }
    }
Esempio n. 2
0
    protected void Button_GUARDAR_Click(object sender, EventArgs e)
    {
        Decimal ID_EMPRESA = Convert.ToDecimal(HiddenField_ID_EMPRESA.Value);

        if (GridView_MotivosRotacion.Rows.Count <= 0)
        {
            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "Debe seleccionar por lo menos un Motivo de Rotación y Retiro.", Proceso.Advertencia);
        }
        else
        {
            List <MotivoRotacionEmpresa> listaMotivosRotacionAsociados = new List <MotivoRotacionEmpresa>();

            for (int i = 0; i < GridView_MotivosRotacion.Rows.Count; i++)
            {
                GridViewRow filaGrilla = GridView_MotivosRotacion.Rows[i];

                CheckBox check = filaGrilla.FindControl("CheckBox_Configurado") as CheckBox;

                if (check.Checked == true)
                {
                    MotivoRotacionEmpresa _motivoParaLista = new MotivoRotacionEmpresa();

                    _motivoParaLista.ACTIVO = true;
                    _motivoParaLista.ID_DETALLE_ROTACION = Convert.ToDecimal(GridView_MotivosRotacion.DataKeys[i].Values["ID_DETALLE_ROTACION"]);
                    _motivoParaLista.ID_EMPRESA          = ID_EMPRESA;

                    Decimal ID_ROTACION_EMPRESA = 0;
                    if (GridView_MotivosRotacion.DataKeys[i].Values["ID_ROTACION_EMPRESA"].ToString().Trim() != "")
                    {
                        ID_ROTACION_EMPRESA = Convert.ToDecimal(GridView_MotivosRotacion.DataKeys[i].Values["ID_ROTACION_EMPRESA"]);
                    }
                    _motivoParaLista.ID_ROTACION_EMPRESA = ID_ROTACION_EMPRESA;

                    listaMotivosRotacionAsociados.Add(_motivoParaLista);
                }
            }

            MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

            Boolean verificado = _motivo.ActualizarMotivosRotacionEmpresa(ID_EMPRESA, listaMotivosRotacionAsociados);

            if (verificado == false)
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
            }
            else
            {
                Ocultar(Acciones.Inicio);
                Mostrar(Acciones.Inicio);
                Cargar(Acciones.Inicio);

                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "Los motivos de Rotación y Retiro asociados a la empresa se actualizaron correctamente.", Proceso.Correcto);
            }
        }
    }
    private void Cargar(Decimal ID_MAESTRA_ROTACION)
    {
        HiddenField_ID_MAESTRA_ROTACION.Value = ID_MAESTRA_ROTACION.ToString();

        MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        DataTable tablaCategoria = _motivo.ObtenerCategoriaPorId(ID_MAESTRA_ROTACION);

        if (tablaCategoria.Rows.Count <= 0)
        {
            if (_motivo.MensajeError != null)
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
            }
            else
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se encontró información de la catagoría seleccionada.", Proceso.Advertencia);
            }
        }
        else
        {
            DataRow filaCategoria = tablaCategoria.Rows[0];

            CargarControlRegistro(filaCategoria);

            TextBox_TituloCategoria.Text = filaCategoria["TITULO"].ToString().Trim();
            Cargar(Listas.EstadosCategoria, DropDownList_EstadoCategoria);
            DropDownList_EstadoCategoria.SelectedValue = filaCategoria["ACTIVO"].ToString().Trim();

            _motivo.MensajeError = null;

            DataTable tablaMotivos = _motivo.ObtenerMotivosActivosDeCategoria(ID_MAESTRA_ROTACION);

            if (tablaMotivos.Rows.Count <= 0)
            {
                if (_motivo.MensajeError != null)
                {
                    Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
                }
                else
                {
                    Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se encontraron Motivos de Rotacion y Retiro asociados a la categoría actual.", Proceso.Advertencia);
                }
                GridView_MotivosRetiro.DataSource = null;
                GridView_MotivosRetiro.DataBind();
            }
            else
            {
                cargarGridView_MotivosRetiroDesdeTabla(tablaMotivos);

                inhabilitarFilasGrilla(GridView_MotivosRetiro, 2);
            }
        }
    }
    private void Actualizar()
    {
        Decimal ID_MAESTRA_ROTACION_EMPLEADO = 0;
        Decimal ID_EMPLEADO       = Convert.ToDecimal(HiddenField_ID_EMPLEADO.Value);
        Decimal REGISTRO_CONTRATO = Convert.ToDecimal(HiddenField_REGISTRO_CONTRATO.Value);
        Decimal ID_SOLICITUD      = Convert.ToDecimal(HiddenField_ID_SOLICITUD.Value);
        Decimal ID_EMPRESA        = Convert.ToDecimal(HiddenField_ID_EMPRESA.Value);

        String OBSERVACIONES = TextBox_Observaciones.Text.Trim();

        if (String.IsNullOrEmpty(HiddenField_ID_MAESTRA_ENTREVISTA_EMPLEADO.Value) == false)
        {
            ID_MAESTRA_ROTACION_EMPLEADO = Convert.ToDecimal(HiddenField_ID_MAESTRA_ENTREVISTA_EMPLEADO.Value);
        }

        List <EntrevistaRotacionEmpleado> listaMotivosResultados = new List <EntrevistaRotacionEmpleado>();

        for (int i = 0; i < GridView_MotivosRotacion.Rows.Count; i++)
        {
            GridViewRow filaGrilla = GridView_MotivosRotacion.Rows[i];

            CheckBox check = filaGrilla.FindControl("CheckBox_Configurado") as CheckBox;

            if (check.Checked == true)
            {
                EntrevistaRotacionEmpleado _rotacionParaLista = new EntrevistaRotacionEmpleado();

                _rotacionParaLista.ACTIVO = true;
                _rotacionParaLista.ID_DETALLE_ROTACION_EMPLEADO = Convert.ToDecimal(GridView_MotivosRotacion.DataKeys[i].Values["ID_DETALLE_ROTACION_EMPLEADO"]);
                _rotacionParaLista.ID_MAESTRA_ROTACION_EMPLEADO = ID_MAESTRA_ROTACION_EMPLEADO;
                _rotacionParaLista.ID_ROTACION_EMPRESA          = Convert.ToDecimal(GridView_MotivosRotacion.DataKeys[i].Values["ID_ROTACION_EMPRESA"]);

                listaMotivosResultados.Add(_rotacionParaLista);
            }
        }

        MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        ID_MAESTRA_ROTACION_EMPLEADO = _motivo.ActualizarResultadosEntrevistaRetiroDeEmpleado(ID_MAESTRA_ROTACION_EMPLEADO, ID_EMPLEADO, OBSERVACIONES, listaMotivosResultados);

        if (ID_MAESTRA_ROTACION_EMPLEADO <= 0)
        {
            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
        }
        else
        {
            Ocultar(Acciones.Inicio);
            Mostrar(Acciones.Cargar);

            Cargar(ID_SOLICITUD, ID_EMPLEADO, ID_EMPRESA, REGISTRO_CONTRATO);

            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "La entrevista de Rotación y Retiro fue actualizada correctamente.", Proceso.Correcto);
        }
    }
    private void Actualizar()
    {
        Decimal ID_MAESTRA_ROTACION = Convert.ToDecimal(HiddenField_ID_MAESTRA_ROTACION.Value);

        String  TITULO_CATEGORIA = TextBox_TituloCategoria.Text;
        Boolean ACTIVO_CATEGORIA = false;

        if (DropDownList_EstadoCategoria.SelectedValue.ToUpper() == "TRUE")
        {
            ACTIVO_CATEGORIA = true;
        }

        List <MotivoRotacionRetiro> listaMotivos = new List <MotivoRotacionRetiro>();

        for (int i = 0; i < GridView_MotivosRetiro.Rows.Count; i++)
        {
            MotivoRotacionRetiro _motivoParaLista = new MotivoRotacionRetiro();

            _motivoParaLista.ACTIVO = true;
            _motivoParaLista.ID_DETALLE_ROTACION = Convert.ToDecimal(GridView_MotivosRetiro.DataKeys[i].Values["ID_DETALLE_ROTACION"]);

            TextBox textoTitutlo = GridView_MotivosRetiro.Rows[i].FindControl("TextBox_TituloMotivo") as TextBox;
            _motivoParaLista.TITULO = textoTitutlo.Text;

            _motivoParaLista.ID_MAESTRA_ROTACION = 0;

            listaMotivos.Add(_motivoParaLista);
        }

        MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        Boolean verificado = _motivo.ActualizarCategoriaYSusMotivos(ID_MAESTRA_ROTACION, TITULO_CATEGORIA, ACTIVO_CATEGORIA, listaMotivos);

        if (verificado == false)
        {
            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
        }
        else
        {
            Ocultar(Acciones.Inicio);
            Desactivar(Acciones.Inicio);
            Mostrar(Acciones.Cargar);

            Cargar(ID_MAESTRA_ROTACION);

            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "La Categoría de Motivos de Rotación y Retiros fue modificada correctamente.", Proceso.Correcto);
        }
    }
    private void Guardar()
    {
        String TITULO = TextBox_TituloCategoria.Text.Trim();

        List <MotivoRotacionRetiro> listaMotivos = new List <MotivoRotacionRetiro>();

        for (int i = 0; i < GridView_MotivosRetiro.Rows.Count; i++)
        {
            MotivoRotacionRetiro _motivoParaLista = new MotivoRotacionRetiro();

            _motivoParaLista.ACTIVO = true;
            _motivoParaLista.ID_DETALLE_ROTACION = Convert.ToDecimal(GridView_MotivosRetiro.DataKeys[i].Values["ID_DETALLE_ROTACION"]);

            TextBox textoTitutlo = GridView_MotivosRetiro.Rows[i].FindControl("TextBox_TituloMotivo") as TextBox;
            _motivoParaLista.TITULO = textoTitutlo.Text;

            _motivoParaLista.ID_MAESTRA_ROTACION = 0;

            listaMotivos.Add(_motivoParaLista);
        }

        MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        Decimal ID_MAESTRA_ROTACION  = _motivo.GuardarCategoriaYSusMotivos(TITULO, listaMotivos);

        if (ID_MAESTRA_ROTACION <= 0)
        {
            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
        }
        else
        {
            Ocultar(Acciones.Inicio);
            Desactivar(Acciones.Inicio);
            Mostrar(Acciones.Cargar);

            Cargar(ID_MAESTRA_ROTACION);

            Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "La Categoría de Motivos de Rotación y Retiros fue creada correctamente.", Proceso.Correcto);
        }
    }
    private void cargar_GridView_RESULTADOS_BUSQUEDA()
    {
        MotivoRotacionRetiro _motivo  = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable            tablaCat = _motivo.ObtenerCategoriasRotacionRetiroTodas();

        if (tablaCat.Rows.Count <= 0)
        {
            if (_motivo.MensajeError == null)
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se encontraron registros de Rotación y Retiro.", Proceso.Advertencia);
            }
            else
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
            }

            Panel_RESULTADOS_GRID.Visible = false;
        }
        else
        {
            GridView_RESULTADOS_BUSQUEDA.DataSource = tablaCat;
            GridView_RESULTADOS_BUSQUEDA.DataBind();
        }
    }
    private void Cargar(Decimal ID_SOLICITUD, Decimal ID_EMPLEADO, Decimal ID_EMPRESA, Decimal REGISTRO_CONTRATO)
    {
        HiddenField_ID_SOLICITUD.Value      = ID_SOLICITUD.ToString();
        HiddenField_ID_EMPLEADO.Value       = ID_EMPLEADO.ToString();
        HiddenField_ID_EMPRESA.Value        = ID_EMPRESA.ToString();
        HiddenField_REGISTRO_CONTRATO.Value = REGISTRO_CONTRATO.ToString();

        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable             tablaInfoTrabajador    = _radicacionHojasDeVida.ObtenerRegSolicitudesingresoPorIdSolicitud(Convert.ToInt32(ID_SOLICITUD));

        cliente   _cliente     = new cliente(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaCliente = _cliente.ObtenerEmpresaConIdEmpresa(ID_EMPRESA);

        if (tablaInfoTrabajador.Rows.Count <= 0)
        {
            if (_radicacionHojasDeVida.MensajeError != null)
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _radicacionHojasDeVida.MensajeError, Proceso.Error);
            }
            else
            {
                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se encontró información del Trabajador Seleciconado.", Proceso.Advertencia);
            }
        }
        else
        {
            if (tablaCliente.Rows.Count <= 0)
            {
                if (_cliente.MensajeError != null)
                {
                    Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _cliente.MensajeError, Proceso.Error);
                }
                else
                {
                    Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "No se encontró información de la Empresa asociada al trabajador.", Proceso.Advertencia);
                }
            }
            else
            {
                DataRow filainfoCliente = tablaCliente.Rows[0];

                cargarInfoTrabajador(tablaInfoTrabajador.Rows[0], filainfoCliente);

                MotivoRotacionRetiro _motivo = new MotivoRotacionRetiro(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
                DataTable            tablaMotivosAsociadosAEmpresa = _motivo.ObtenerMotivosActivosEmpresa(ID_EMPRESA);

                if (tablaMotivosAsociadosAEmpresa.Rows.Count <= 0)
                {
                    if (_motivo.MensajeError != null)
                    {
                        Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
                    }
                    else
                    {
                        Ocultar(Acciones.Inicio);
                        Desactivar(Acciones.Inicio);
                        Mostrar(Acciones.Inicio);
                        Cargar(Acciones.Inicio);

                        Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, "La empresa no tiene Motivos de Rotación y Retiros asociados.", Proceso.Advertencia);
                    }
                }
                else
                {
                    _motivo.MensajeError = null;

                    Boolean correcto = true;

                    DataTable tablaResultadosEntrevistaRetiro = _motivo.ObtenerResultadosEntrevistaDeRetiroParaEmpleado(ID_EMPLEADO);

                    if (tablaResultadosEntrevistaRetiro.Rows.Count <= 0)
                    {
                        if (_motivo.MensajeError != null)
                        {
                            if (_motivo.MensajeError != null)
                            {
                                Informar(Panel_FONDO_MENSAJE, Image_MENSAJE_POPUP, Panel_MENSAJES, Label_MENSAJE, _motivo.MensajeError, Proceso.Error);
                                correcto = false;
                            }
                        }
                    }

                    if (correcto == true)
                    {
                        DataTable tablaparaGrilla = configurarTablaParaGrillaMotivos();

                        Boolean idEncontrado = false;

                        Int32 contadorResultados = 0;

                        for (int i = 0; i < tablaMotivosAsociadosAEmpresa.Rows.Count; i++)
                        {
                            idEncontrado = false;

                            DataRow filaMotivo     = tablaMotivosAsociadosAEmpresa.Rows[i];
                            DataRow filaParaGrilla = tablaparaGrilla.NewRow();

                            filaParaGrilla["ID_MAESTRA_ROTACION"] = filaMotivo["ID_MAESTRA_ROTACION"];
                            filaParaGrilla["ID_DETALLE_ROTACION"] = filaMotivo["ID_DETALLE_ROTACION"];
                            filaParaGrilla["ID_ROTACION_EMPRESA"] = filaMotivo["ID_ROTACION_EMPRESA"];

                            filaParaGrilla["TITULO"] = filaMotivo["TITULO"];
                            filaParaGrilla["TITULO_MAESTRA_ROTACION"] = filaMotivo["TITULO_MAESTRA_ROTACION"];

                            Decimal ID_ROTACION_EMPRESA_1 = Convert.ToDecimal(filaMotivo["ID_ROTACION_EMPRESA"]);

                            Decimal ID_DETALLE_ROTACION_EMPLEADO = 0;

                            for (int j = 0; j < tablaResultadosEntrevistaRetiro.Rows.Count; j++)
                            {
                                DataRow filaResultado = tablaResultadosEntrevistaRetiro.Rows[j];

                                Decimal ID_ROTACION_EMPRESA_2 = Convert.ToDecimal(filaResultado["ID_ROTACION_EMPRESA"]);

                                if (ID_ROTACION_EMPRESA_1 == ID_ROTACION_EMPRESA_2)
                                {
                                    contadorResultados += 1;

                                    ID_DETALLE_ROTACION_EMPLEADO = Convert.ToDecimal(filaResultado["ID_DETALLE_ROTACION_EMPLEADO"]);
                                    idEncontrado = true;

                                    if (contadorResultados == 1)
                                    {
                                        HiddenField_ID_MAESTRA_ENTREVISTA_EMPLEADO.Value = filaResultado["ID_MAESTRA_ROTACION_EMPLEADO"].ToString().Trim();

                                        TextBox_Observaciones.Text = filaResultado["OBSERVACIONES"].ToString().Trim();
                                    }
                                    break;
                                }
                            }

                            if (idEncontrado == true)
                            {
                                filaParaGrilla["ID_DETALLE_ROTACION_EMPLEADO"] = ID_DETALLE_ROTACION_EMPLEADO;
                            }
                            else
                            {
                                filaParaGrilla["ID_DETALLE_ROTACION_EMPLEADO"] = 0;
                            }

                            tablaparaGrilla.Rows.Add(filaParaGrilla);
                        }

                        CargarGrillaMotivosRotacionDesdeTabla(tablaparaGrilla);

                        Ocultar(Acciones.Inicio);

                        if (contadorResultados <= 0)
                        {
                            Mostrar(Acciones.Nuevo);
                            Activar(Acciones.Nuevo);
                            Limpiar(Acciones.Nuevo);

                            habilitarFilasGrilla(GridView_MotivosRotacion, 0);
                        }
                        else
                        {
                            Mostrar(Acciones.Cargar);
                            Desactivar(Acciones.Cargar);

                            inhabilitarFilasGrilla(GridView_MotivosRotacion, 0);
                        }
                    }
                }
            }
        }
    }