Пример #1
0
        public Decimal AdicionarconafiliacionfpensionesAuditoria(Decimal ID_SOLICITUD
            , Decimal ID_F_PENSIONES
            , DateTime FECHA_R
            , String OBSERVACIONES
            , String PENSIONADO
            , Decimal ID_REQUERIMIENTO
            , String TIPO_PENSIONADO
            , String NUMERO_RESOLUCION_TRAMITE
            , Decimal ID_EMPLEADO
            , Boolean ACTUALIZAR_ESTADO_PROCESO
            , DateTime FECHA_RADICACION
            , Decimal ID_CONTRATO
            , String ENTIDAD_ARCHIVO_RADICACION
            , Byte[] ARCHIVO_RADICACION
            , Int32 ARCHIVO_RADICACION_TAMANO
            , String ARCHIVO_RADICACION_EXTENSION
            , String ARCHIVO_RADICACION_TYPE)
        {
            Decimal ID_AFILIACION = 0;
            Decimal ID_AUDITORIA = 0;

            Conexion conexion = new Conexion(Empresa);
            conexion.IniciarTransaccion();

            Boolean verificador = true;

            try
            {
                ID_AFILIACION = AdicionarAfiFondoPensiones(ID_SOLICITUD, ID_F_PENSIONES, FECHA_R, OBSERVACIONES, PENSIONADO, ID_REQUERIMIENTO, TIPO_PENSIONADO, NUMERO_RESOLUCION_TRAMITE, conexion, FECHA_RADICACION);

                if (ID_AFILIACION <= 0)
                {
                    conexion.DeshacerTransaccion();
                    ID_AFILIACION = 0;
                    verificador = false;
                }
                else
                {
                    if (ActualizarAfpDeNomEmpleadosPorIdEmpleado(ID_EMPLEADO, ID_AFILIACION, conexion) == false)
                    {
                        conexion.DeshacerTransaccion();
                        ID_AFILIACION = 0;
                        verificador = false;
                    }
                    else
                    {
                        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Empresa, Usuario);
                        ID_AUDITORIA = _auditoriaContratos.AdicionarAuditoriaContratos(ID_EMPLEADO, tabla.CON_AFILIACION_F_PENSIONES, ID_AFILIACION, DateTime.Now, conexion);

                        if (ID_AUDITORIA <= 0)
                        {
                            conexion.DeshacerTransaccion();
                            MensajeError = _auditoriaContratos.MensajeError;
                            ID_AFILIACION = 0;
                            verificador = false;
                        }
                        else
                        {
                            if (ARCHIVO_RADICACION != null)
                            {
                                if (conexion.ExecuteEscalarParaAdicionarDocsAfiliacion(ID_CONTRATO, ENTIDAD_ARCHIVO_RADICACION, ARCHIVO_RADICACION, ARCHIVO_RADICACION_EXTENSION, ARCHIVO_RADICACION_TAMANO, ARCHIVO_RADICACION_TYPE, Usuario) == null)
                                {
                                    conexion.DeshacerTransaccion();
                                    MensajeError = "Ocurrio un error al momento de adicionar el documento de radicación de la afiliación.";
                                    ID_AFILIACION = 0;
                                    verificador = false;
                                }
                            }

                            if (verificador == true)
                            {
                                if (ACTUALIZAR_ESTADO_PROCESO == true)
                                {
                                    radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Empresa, Usuario);

                                    if (_radicacionHojasDeVida.ActualizarEstadoProcesoRegSolicitudesIngresoAuditoria(ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_CON_AFILIACION_FONDO, conexion) == false)
                                    {
                                        conexion.DeshacerTransaccion();
                                        MensajeError = _radicacionHojasDeVida.MensajeError;
                                        ID_AFILIACION = 0;
                                        verificador = false;
                                    }
                                }

                                if (verificador == true)
                                {
                                    conexion.AceptarTransaccion();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MensajeError = ex.Message;
                conexion.DeshacerTransaccion();
                ID_AFILIACION = 0;
                verificador = false;
            }
            finally
            {
                conexion.Desconectar();
            }

            return ID_AFILIACION;
        }
        public Boolean ActualizarContratoDesdeAuditoria(Decimal ID_CONTRATO,
            Decimal ID_EMPLEADO,
            Decimal RIESGO,
            String TIPO_CONTRATO,
            Decimal ID_PERFIL,
            Decimal ID_SUB_C,
            Decimal ID_CENTRO_C,
            String ID_CIUDAD,
            String PAGO_DIAS_PRODUCTIVIDAD,
            Decimal VALOR_NOMINA,
            Decimal VALOR_CONTRATO,
            Decimal SALARIO,
            String SAL_INT,
            String FORMA_PAGO,
            Decimal ID_ENTIDAD,
            String NUM_CUENTA,
            Decimal ID_SOLICITUD,
            Boolean ACTUALIZAR_ESTADO_PROCESO,
            String TIPO_CUENTA,
            DateTime FECHA_INICIO_PERIODO,
            DateTime FECHA_FIN_PERIODO,
            String PERIODO_PAGO,
            String CLASE_CONTRATO,
            String CONTROL_CONTRATO,
            String CHEQUE_REG)
        {
            Boolean verificador = true;

            Conexion conexion = new Conexion(Empresa);
            conexion.IniciarTransaccion();

            DataTable tablaResultadoNomina = new DataTable();

            try
            {
                tablaResultadoNomina = ComprobarRestriccionNomina(ID_EMPLEADO, ID_CIUDAD, ID_CENTRO_C, ID_SUB_C, conexion);

                if (tablaResultadoNomina.Rows.Count <= 0)
                {
                    conexion.DeshacerTransaccion();
                    verificador = false;
                    MensajeError = "No se puedieron determinar las restriciones de nomina. No se pudo actualizar la información del contrato del trabajador seleccionado.";
                }
                else
                {
                    DataRow filaRestriccionesNomina = tablaResultadoNomina.Rows[0];

                    if (filaRestriccionesNomina["valorResultado"].ToString().ToUpper() == "ERROR")
                    {
                        conexion.DeshacerTransaccion();
                        verificador = false;
                        MensajeError = filaRestriccionesNomina["descripcionResultado"].ToString();
                    }
                    else
                    {
                        if (ActualizarConRegContratosAuditoria(ID_CONTRATO, TIPO_CONTRATO, PAGO_DIAS_PRODUCTIVIDAD, VALOR_NOMINA, VALOR_CONTRATO, FECHA_INICIO_PERIODO, FECHA_FIN_PERIODO, PERIODO_PAGO, CLASE_CONTRATO, CONTROL_CONTRATO, conexion) == false)
                        {
                            conexion.DeshacerTransaccion();
                            verificador = false;
                        }
                        else
                        {
                            if (ActualizarNomEmpleadosAuditoria(ID_EMPLEADO, SALARIO, RIESGO, ID_ENTIDAD, NUM_CUENTA, SAL_INT, ID_PERFIL, FORMA_PAGO, ID_CIUDAD, ID_CENTRO_C, ID_SUB_C, conexion, TIPO_CUENTA, FECHA_INICIO_PERIODO, CHEQUE_REG) == false)
                            {
                                conexion.DeshacerTransaccion();
                                verificador = false;
                            }
                            else
                            {
                                auditoriaContratos _auditoriaContratos = new auditoriaContratos(Empresa, Usuario);
                                Decimal ID_AUDITORIA = _auditoriaContratos.AdicionarAuditoriaContratos(ID_EMPLEADO, tabla.CON_REG_CONTRATOS, ID_CONTRATO, DateTime.Now, conexion);

                                if (ID_AUDITORIA <= 0)
                                {
                                    conexion.DeshacerTransaccion();
                                    MensajeError = _auditoriaContratos.MensajeError;
                                    verificador = false;
                                }
                                else
                                {
                                    if (ACTUALIZAR_ESTADO_PROCESO == true)
                                    {
                                        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Empresa, Usuario);

                                        if (_radicacionHojasDeVida.ActualizarEstadoProcesoRegSolicitudesIngresoAuditoria(ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_CONTRATO, conexion) == false)
                                        {
                                            conexion.DeshacerTransaccion();
                                            MensajeError = _radicacionHojasDeVida.MensajeError;
                                            verificador = false;
                                        }
                                        else
                                        {
                                            conexion.AceptarTransaccion();
                                        }
                                    }
                                    else
                                    {
                                        conexion.AceptarTransaccion();
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MensajeError = ex.Message;
                verificador = false;
            }
            finally
            {
                conexion.Desconectar();
            }

            return verificador;
        }
    protected void Button_ACTUALIZAR_EXAMENES_Click(object sender, EventArgs e)
    {
        Decimal ID_EMPLEADO = Convert.ToDecimal(Label_ID_EMPLEADO.Text);
        Decimal ID_SOLICITUD = Convert.ToDecimal(TextBox_ID_SOLICITUD.Text);

        Boolean ACTUALIZAR_ESTADO_PROCESO = true;
        if (HiddenField_PRESENTACION.Value == Presentacion.ContratosActivos.ToString())
        {
            ACTUALIZAR_ESTADO_PROCESO = false;
        }

        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        Decimal ID_AUDITORIA = _auditoriaContratos.ActualizarAuditoriaContratosPorSeccionYEstadoProceso(ID_EMPLEADO, tabla.CON_REG_EXAMENES_EMPLEADO, 1, ACTUALIZAR_ESTADO_PROCESO, ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_EXAMENES);

        if (ID_AUDITORIA <= 0)
        {
            Informar(Panel_MENSAJES, Label_MENSAJE, _auditoriaContratos.MensajeError, Proceso.Error);
        }
        else
        {
            Informar(Panel_MENSAJES, Label_MENSAJE, "La auditoría a la sección de examenes y autos de recomendación fue realizada correctamente.", Proceso.Correcto);

            cargar_seccion_examenes_autos(ID_EMPLEADO);

            presentar_interfaz_segun_resultado();
        }
    }
        public Boolean ActualizarRegSolicitudesingreso(Decimal ID_SOLICITUD,
            String APELLIDOS,
            String NOMBRES,
            String TIP_DOC_IDENTIDAD,
            String NUM_DOC_IDENTIDAD,
            String CIU_CEDULA,
            String LIB_MILITAR,
            String CAT_LIC_COND,
            String DIR_ASPIRANTE,
            String SECTOR,
            String CIU_ASPIRANTE,
            String TEL_ASPIRANTE,
            String SEXO,
            DateTime FCH_NACIMIENTO,
            String E_MAIL,
            Decimal SALARIO,
            Decimal ID_EMPLEADO,
            Boolean ACTUALIZAR_ESTADO_PROCESO)
        {
            Decimal ID_AUDITORIA = 0;
            Boolean ejecutar = true;

            if (ejecutar)
            {
                Conexion conexion = new Conexion(Empresa);
                conexion.IniciarTransaccion();
                try
                {
                    if (ActualizarSolicitudAuditoria(ID_SOLICITUD, APELLIDOS, NOMBRES, TIP_DOC_IDENTIDAD, NUM_DOC_IDENTIDAD, CIU_CEDULA, LIB_MILITAR, CAT_LIC_COND, DIR_ASPIRANTE, SECTOR, CIU_ASPIRANTE, TEL_ASPIRANTE, SEXO, FCH_NACIMIENTO, E_MAIL, SALARIO, conexion) == true)
                    {
                        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Empresa, Usuario);

                        ID_AUDITORIA = _auditoriaContratos.AdicionarAuditoriaContratos(ID_EMPLEADO, tabla.REG_SOLICITUDES_INGRESO, ID_SOLICITUD, DateTime.Now, conexion);

                        if (ID_AUDITORIA <= 0)
                        {
                            conexion.DeshacerTransaccion();
                            ejecutar = false;
                            MensajeError = _auditoriaContratos.MensajeError;
                        }
                        else
                        {
                            if (ACTUALIZAR_ESTADO_PROCESO == true)
                            {
                                if (ActualizarEstadoProcesoRegSolicitudesIngresoAuditoria(ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_REG_SOLICITUDES_INGRESO, conexion) == false)
                                {
                                    conexion.DeshacerTransaccion();
                                    ejecutar = false;
                                }
                                else
                                {
                                    conexion.AceptarTransaccion();
                                }
                            }
                            else
                            {
                                conexion.AceptarTransaccion();
                            }
                        }
                    }
                    else
                    {
                        conexion.DeshacerTransaccion();
                        ejecutar = false;
                    }
                }
                catch (Exception e)
                {
                    MensajeError = e.Message;
                    ejecutar = false;
                }
                finally
                {
                    conexion.Desconectar();
                }
            }

            return ejecutar;
        }
    private void cargar_seccion_solicitud_ingreso(Decimal ID_SOLICITUD, Decimal ID_EMPLEADO)
    {
        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaInfoSolicitud = _radicacionHojasDeVida.ObtenerRegSolicitudesingresoPorIdSolicitud(Convert.ToInt32(ID_SOLICITUD));
        DataRow filaTablaInfoSolicitud = tablaInfoSolicitud.Rows[0];

        llenar_info_adicional_con_solicitud(filaTablaInfoSolicitud);

        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.REG_SOLICITUDES_INGRESO, ID_EMPLEADO);
        if (tablaUltimaAuditoria.Rows.Count > 0)
        {
            DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
            Panel_CABEZA_SOLICITUD_INGRESO.BackColor = colorAuditado;
            Label_SOLICITUD_INGRESO_AUDITADO.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
        }
        else
        {
            Panel_CABEZA_SOLICITUD_INGRESO.BackColor = colorSinAuditar;
            Label_SOLICITUD_INGRESO_AUDITADO.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.SolicitudIngreso.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.SolicitudIngreso.ToString();
            }
        }

        TextBox_ID_SOLICITUD.Text = filaTablaInfoSolicitud["ID_SOLICITUD"].ToString().Trim();
        TextBox_ID_SOLICITUD.Enabled = false;

        Label_ID_EMPLEADO.Text = ID_EMPLEADO.ToString();

        TextBox_APELLIDOS.Text = filaTablaInfoSolicitud["APELLIDOS"].ToString().Trim();
        TextBox_NOMBRES.Text = filaTablaInfoSolicitud["NOMBRES"].ToString().Trim();
        cargar_DropDownList_SEXO();
        DropDownList_SEXO.SelectedValue = filaTablaInfoSolicitud["SEXO"].ToString();
        TextBox_FCH_NACIMIENTO.Text = Convert.ToDateTime(filaTablaInfoSolicitud["FCH_NACIMIENTO"]).ToShortDateString();

        cargamos_DropDownList_TIP_DOC_IDENTIDAD();
        try
        {
            DropDownList_TIP_DOC_IDENTIDAD.SelectedValue = filaTablaInfoSolicitud["TIP_DOC_IDENTIDAD"].ToString().Trim();
        }
        catch
        {
            DropDownList_TIP_DOC_IDENTIDAD.SelectedIndex = 0;
        }

        TextBox_NUM_DOC_IDENTIDAD.Text = filaTablaInfoSolicitud["NUM_DOC_IDENTIDAD"].ToString().Trim();

        DataRow filaInfoCiudadYDepartamento = obtenerIdDepartamentoIdCiudad(filaTablaInfoSolicitud["CIU_CEDULA"].ToString().Trim());
        if (filaInfoCiudadYDepartamento != null)
        {
            cargar_DropDownList_DEPARTAMENTO_CEDULA();
            DropDownList_DEPARTAMENTO_CEDULA.SelectedValue = filaInfoCiudadYDepartamento["ID_DEPARTAMENTO"].ToString().Trim();

            cargar_DropDownList_CIU_CEDULA(filaInfoCiudadYDepartamento["ID_DEPARTAMENTO"].ToString().Trim());
            DropDownList_CIU_CEDULA.SelectedValue = filaInfoCiudadYDepartamento["ID_CIUDAD"].ToString().Trim();
        }
        else
        {
            cargar_DropDownList_DEPARTAMENTO_CEDULA();
            DropDownList_DEPARTAMENTO_CEDULA.Enabled = true;
            inhabilitar_DropDownList_CIU_CEDULA();
        }

        Ocultar(Acciones.libretaMilitar);
        if (DropDownList_SEXO.SelectedValue == "M")
        {
            Mostrar(Acciones.libretaMilitar);
            TextBox_LIB_MILITAR.Text = filaTablaInfoSolicitud["LIB_MILITAR"].ToString().Trim();
        }

        try
        {
            TextBox_ASPIRACION_SALARIAL.Text = Convert.ToInt32(filaTablaInfoSolicitud["ASPIRACION_SALARIAL"]).ToString();
        }
        catch
        {
            TextBox_ASPIRACION_SALARIAL.Text = "";
        }

        TextBox_TEL_ASPIRANTE.Text = filaTablaInfoSolicitud["TEL_ASPIRANTE"].ToString().Trim();
        TextBox_E_MAIL.Text = filaTablaInfoSolicitud["E_MAIL"].ToString().Trim();
        cargar_DropDownList_CAT_LIC_COND();
        try
        {
            DropDownList_CAT_LIC_COND.SelectedValue = filaTablaInfoSolicitud["CAT_LIC_COND"].ToString().Trim();
        }
        catch
        {
            DropDownList_CAT_LIC_COND.SelectedIndex = 0;
        }

        filaInfoCiudadYDepartamento = obtenerIdDepartamentoIdCiudad(filaTablaInfoSolicitud["CIU_ASPIRANTE"].ToString().Trim());
        if (filaInfoCiudadYDepartamento != null)
        {
            cargar_DropDownList_DEPARTAMENTO_ASPIRANTE();
            DropDownList_DEPARTAMENTO_ASPIRANTE.SelectedValue = filaInfoCiudadYDepartamento["ID_DEPARTAMENTO"].ToString().Trim();

            cargar_DropDownList_CIU_ASPIRANTE(filaInfoCiudadYDepartamento["ID_DEPARTAMENTO"].ToString().Trim());
            DropDownList_CIU_ASPIRANTE.SelectedValue = filaInfoCiudadYDepartamento["ID_CIUDAD"].ToString().Trim();
        }
        else
        {
            cargar_DropDownList_DEPARTAMENTO_ASPIRANTE();
            DropDownList_DEPARTAMENTO_CEDULA.Enabled = true;
            inhabilitar_DropDownList_CIU_ASPIRANTE();
        }
        TextBox_SECTOR.Text = filaTablaInfoSolicitud["SECTOR"].ToString();

        TextBox_DIR_ASPIRANTE.Text = filaTablaInfoSolicitud["DIR_ASPIRANTE"].ToString().Trim();
    }
    protected void Button_ACTUALIZAR_AFILIACION_F_PENSIONES_Click(object sender, EventArgs e)
    {
        tools _tools = new tools();

        Decimal ID_SOLICITUD = Convert.ToDecimal(TextBox_ID_SOLICITUD.Text);
        Decimal ID_REQUERIMIENTO = Convert.ToDecimal(HiddenField_ID_REQUERIMIENTO.Value);
        Decimal ID_EMPLEADO = Convert.ToDecimal(Label_ID_EMPLEADO.Text);
        Decimal ID_CONTRATO = Convert.ToDecimal(HiddenField_ID_CONTRATO.Value);

        DateTime FECHA_R;
        DateTime FECHA_RADICACION;
        String PENSIONADO = "N";
        String TIPO_PENSIONADO = null;
        String NUMERO_RESOLUCIOON_TRAMITE = null;
        String OBSERVACIONES;
        Decimal REGISTRO_AFILIACION;

        Decimal ID_ENTIDAD = Convert.ToDecimal(DropDownList_AFP.SelectedValue);
        FECHA_R = Convert.ToDateTime(TextBox_FECHA_R_AFP.Text);
        FECHA_RADICACION = Convert.ToDateTime(TextBox_FECHA_RADICACION_AFP.Text);

        if (DropDownList_pensionado.SelectedValue == "S")
        {
            PENSIONADO = "S";
            TIPO_PENSIONADO = DropDownList_tipo_pensionado.SelectedValue;
            NUMERO_RESOLUCIOON_TRAMITE = TextBox_Numero_resolucion_tramite.Text;
        }

        OBSERVACIONES = TextBox_OBS_AFP.Text.Trim().ToUpper();

        Boolean ACTUALIZAR_ESTADO_PROCESO = true;
        if (HiddenField_PRESENTACION.Value == Presentacion.ContratosActivos.ToString())
        {
            ACTUALIZAR_ESTADO_PROCESO = false;
        }

        Byte[] ARCHIVO_RADICACION = null;
        Int32 ARCHIVO_RADICACION_TAMANO = 0;
        String ARCHIVO_RADICACION_EXTENSION = null;
        String ARCHIVO_RADICACION_TYPE = null;
        if (FileUpload_ARCHIVO_AFILIACION_AFP.HasFile == true)
        {
            using (BinaryReader reader = new BinaryReader(FileUpload_ARCHIVO_AFILIACION_AFP.PostedFile.InputStream))
            {
                ARCHIVO_RADICACION = reader.ReadBytes(FileUpload_ARCHIVO_AFILIACION_AFP.PostedFile.ContentLength);
                ARCHIVO_RADICACION_TAMANO = FileUpload_ARCHIVO_AFILIACION_AFP.PostedFile.ContentLength;
                ARCHIVO_RADICACION_TYPE = FileUpload_ARCHIVO_AFILIACION_AFP.PostedFile.ContentType;
                ARCHIVO_RADICACION_EXTENSION = _tools.obtenerExtensionArchivo(FileUpload_ARCHIVO_AFILIACION_AFP.PostedFile.FileName);
            }
        }

        afiliacion _afiliacion = new afiliacion(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        if (Label_ID_AFILIACION_F_PENSIONES.Text == "Sin asignar")
        {

            REGISTRO_AFILIACION = _afiliacion.AdicionarconafiliacionfpensionesAuditoria(ID_SOLICITUD, ID_ENTIDAD, FECHA_R, OBSERVACIONES, PENSIONADO, ID_REQUERIMIENTO, TIPO_PENSIONADO, NUMERO_RESOLUCIOON_TRAMITE, ID_EMPLEADO, ACTUALIZAR_ESTADO_PROCESO, FECHA_RADICACION, ID_CONTRATO, EntidadesAfiliacion.AFP.ToString(), ARCHIVO_RADICACION, ARCHIVO_RADICACION_TAMANO, ARCHIVO_RADICACION_EXTENSION, ARCHIVO_RADICACION_TYPE);

            if (REGISTRO_AFILIACION == 0)
            {
                Informar(Panel_MENSAJES, Label_MENSAJE, _afiliacion.MensajeError, Proceso.Error);
            }
            else
            {
                Informar(Panel_MENSAJES, Label_MENSAJE, "La información de la afilicaión a fondo de p. fue actualizada correctamente.", Proceso.Correcto);
            }

            cargar_afp(REGISTRO_AFILIACION, ID_SOLICITUD, ID_EMPLEADO);

            presentar_interfaz_segun_resultado();
        }
        else
        {

            if ((HiddenField_ENTIDAD_AFP.Value != DropDownList_AFP.SelectedValue) || (HiddenField_FECHA_R_AFP.Value != TextBox_FECHA_R_AFP.Text) || (HiddenField_FECHA_RADICACION_AFP.Value != TextBox_FECHA_RADICACION_AFP.Text) || (HiddenField_OBS_AFP.Value != TextBox_OBS_AFP.Text) || (DropDownList_pensionado.SelectedValue != HiddenField_pensionado.Value) || (DropDownList_tipo_pensionado.SelectedValue != HiddenField_tipo_pensionado.Value) || (TextBox_Numero_resolucion_tramite.Text != HiddenField_resolucion_tramite.Value) || (ARCHIVO_RADICACION != null))
            {

                REGISTRO_AFILIACION = _afiliacion.AdicionarconafiliacionfpensionesAuditoria(ID_SOLICITUD, ID_ENTIDAD, FECHA_R, OBSERVACIONES, PENSIONADO, ID_REQUERIMIENTO, TIPO_PENSIONADO, NUMERO_RESOLUCIOON_TRAMITE, ID_EMPLEADO, ACTUALIZAR_ESTADO_PROCESO, FECHA_RADICACION, ID_CONTRATO, EntidadesAfiliacion.AFP.ToString(), ARCHIVO_RADICACION,ARCHIVO_RADICACION_TAMANO, ARCHIVO_RADICACION_EXTENSION, ARCHIVO_RADICACION_TYPE);

                if (REGISTRO_AFILIACION == 0)
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, _afiliacion.MensajeError, Proceso.Error);
                }
                else
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, "La información de la afilicaión a fondo de p. fue actualizada correctamente.", Proceso.Correcto);
                }
            }
            else
            {
                REGISTRO_AFILIACION = Convert.ToDecimal(Label_ID_AFILIACION_F_PENSIONES.Text);

                auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

                Decimal ID_AUDITORIA = _auditoriaContratos.ActualizarAuditoriaContratosPorSeccionYEstadoProceso(ID_EMPLEADO, tabla.CON_AFILIACION_F_PENSIONES, REGISTRO_AFILIACION, ACTUALIZAR_ESTADO_PROCESO, ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_CON_AFILIACION_FONDO);

                if (ID_AUDITORIA == 0)
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, _auditoriaContratos.MensajeError, Proceso.Error);
                }
                else
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, "La información de la afilicaión a fondo de p. fue actualizada correctamente (solo auditoría).", Proceso.Correcto);
                }
            }

            cargar_afp(REGISTRO_AFILIACION, ID_SOLICITUD, ID_EMPLEADO);

            presentar_interfaz_segun_resultado();
        }
    }
    private void cargar_seccion_envio_archivos(Decimal ID_EMPLEADO)
    {
        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.CON_CONFIGURACON_DOCS_ENTREGABLES, ID_EMPLEADO);
        if (tablaUltimaAuditoria.Rows.Count > 0)
        {
            DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
            Panel_CABEZA_ENVIOARCHIVOS.BackColor = colorAuditado;
            Label_ENVIOARCHIVOS_AUDITORIA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
        }
        else
        {
            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.ExamenesAutosRecomendacion.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.ExamenesAutosRecomendacion.ToString();
            }
        }

        Ocultar(Acciones.CargarEnvioArchivos);
        Desactivar(Acciones.CargarEnvioArchivos);

        Decimal ID_EMPRESA = Convert.ToDecimal(HiddenField_ID_EMPRESA.Value);

        ConfDocEntregable _confDocEntregable = new ConfDocEntregable(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaDos = _confDocEntregable.ObtenerPorEmpresa(ID_EMPRESA);

        if (!tablaDos.Rows.Count.Equals(0))
        {
            DataRow filaDocs = tablaDos.Rows[0];

            if (filaDocs["ENTREGA_DOCUMENTOS"].ToString().ToUpper() == "FALSE")
            {
                Mostrar(Acciones.CargarEnvioArchivos);
            }
            else
            {
                Mostrar(Acciones.CargarEnvioArchivos);
                SeleccionarDocsSeleccion(filaDocs);
                SeleccionarDocsContratacion(filaDocs);
                SeleccionarEmailSeleccion(filaDocs);
                SeleccionarEmailContratacion(filaDocs);
            }
        }
    }
    private void cargar_seccion_examenes_autos(Decimal ID_EMPLEADO)
    {
        Decimal ID_REQUERIMIENTO = Convert.ToDecimal(HiddenField_ID_REQUERIMIENTO.Value);
        Decimal ID_SOLICITUD = Convert.ToDecimal(TextBox_ID_SOLICITUD.Text);

        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.CON_REG_EXAMENES_EMPLEADO, ID_EMPLEADO);
        if (tablaUltimaAuditoria.Rows.Count > 0)
        {
            DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
            Panel_CABEZA_EXAMENES.BackColor = colorAuditado;
            Label_EXAMENES_AUDITORIA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
        }
        else
        {
            Panel_CABEZA_EXAMENES.BackColor = colorSinAuditar;
            Label_EXAMENES_AUDITORIA.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.ExamenesAutosRecomendacion.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.ExamenesAutosRecomendacion.ToString();
            }
        }

        ordenExamenes _ordenes = new ordenExamenes(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaOrdenes = _ordenes.ObtenerConRegOrdenExamenPorSolicitud(Convert.ToInt32(ID_REQUERIMIENTO), Convert.ToInt32(ID_SOLICITUD));

        if(tablaOrdenes.Rows.Count <= 0)
        {
            Informar(Panel_MENSAJE_EXAMENES, Label_MENSAJE_EXAMENES, "No se encontraron examenes aplicados al empleado seleccionado.", Proceso.Error);

            GridView_EXAMENES_REALIZADOS.DataSource = null;
            GridView_EXAMENES_REALIZADOS.DataBind();

            Button_IMPRIMIR_AUTOS.Visible = false;
        }
        else
        {
            Cargar_GridView_EXAMENES_REALIZADOS_desde_tabla(tablaOrdenes);

            Button_IMPRIMIR_AUTOS.Visible = ExistenAutosRecomendacion(tablaOrdenes);
        }
    }
    private void cargar_seccion_conceptos_fijos(Decimal ID_PERFIL, Decimal ID_EMPLEADO)
    {
        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.NOM_CONCEPTOS_EMPLEADO, ID_EMPLEADO);
        if (tablaUltimaAuditoria.Rows.Count > 0)
        {
            DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
            Panel_CABEZA_CONCEPTOS_FIJOS.BackColor = colorAuditado;
            Label_CONCEPTOS_FIJOS_AUDITADA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
        }
        else
        {
            Panel_CABEZA_CONCEPTOS_FIJOS.BackColor = colorSinAuditar;
            Label_CONCEPTOS_FIJOS_AUDITADA.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.ConceptosFijos.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.ConceptosFijos.ToString();
            }
        }

        cargar_todas_clausulas_activas(Convert.ToDecimal(Label_ID_EMPLEADO.Text));

        cargar_conceptos_fijos_parametrizados(ID_EMPLEADO);

        Panel_DatosNuevaClausula.Visible = false;
    }
    private void cargar_seccion_contratos(Decimal ID_EMPLEADO)
    {
        Ocultar(Acciones.contrato);

        auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());
        DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.CON_REG_CONTRATOS, ID_EMPLEADO);
        if (tablaUltimaAuditoria.Rows.Count > 0)
        {
            DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
            Panel_CABEZA_CONTRATO.BackColor = colorAuditado;
            Label_CONTRATO_AUDITADA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
        }
        else
        {
            Panel_CABEZA_CONTRATO.BackColor = colorSinAuditar;
            Label_CONTRATO_AUDITADA.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.Contrato.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.Contrato.ToString();
            }
        }
        registroContrato _registroContrato = new registroContrato(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        DataTable tablaInfoContrato = _registroContrato.ObtenerDatosContratoParaAuditar(ID_EMPLEADO);

        if (!tablaInfoContrato.Rows.Count.Equals(0))
        {
            DataRow filaInfoContrato = tablaInfoContrato.Rows[0];

            cargar_ubicacion_trabajador(filaInfoContrato);

            cargar_datos_salariales(filaInfoContrato);

            cargar_datos_basicos_de_contrato(filaInfoContrato);

        }
    }
    private void cargar_eps(Decimal ID_AFILIACION_EPS, Decimal ID_SOLICITUD, Decimal ID_EMPLEADO)
    {
        Decimal ID_CONTRATO = Convert.ToDecimal(HiddenField_ID_CONTRATO.Value);

        afiliacion _afilicaion = new afiliacion(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        DataTable tablaAfiliacion = _afilicaion.ObtenerconafiliacionEpsPorRegistro(Convert.ToInt32(ID_AFILIACION_EPS));

        DataTable tablaHistorial = _afilicaion.ObtenerconafiliacionEpsPorIdSolicitud(Convert.ToInt32(ID_SOLICITUD));

        if (tablaHistorial.Rows.Count <= 0)
        {
            Panel_GRILLA_EPS.Visible = false;
        }
        else
        {
            Panel_GRILLA_EPS.Visible = true;
            GridView_EPS.DataSource = tablaHistorial;
            GridView_EPS.DataBind();
        }

        cargar_DropDownList_ENTIDAD_EPS();

        DataRow fila;
        if (tablaAfiliacion.Rows.Count > 0)
        {
            fila = tablaAfiliacion.Rows[0];

            auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

            DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.CON_AFILIACION_EPS, ID_EMPLEADO);
            if (tablaUltimaAuditoria.Rows.Count > 0)
            {
                DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
                Panel_CABEZA_AFILIACION_EPS.BackColor = colorAuditado;
                Label_AFILIACION_EPS_AUDITADA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
            }
            else
            {
                Panel_CABEZA_AFILIACION_EPS.BackColor = colorSinAuditar;
                Label_AFILIACION_EPS_AUDITADA.Text = "(SIN AUDITAR)";

                if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
                {
                    HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.AfiliacionEPS.ToString();
                }
                else
                {
                    HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.AfiliacionEPS.ToString();
                }
            }

            try
            {
                TextBox_FECHA_R_EPS.Text = Convert.ToDateTime(fila["FECHA_R"]).ToShortDateString();
            }
            catch
            {
                TextBox_FECHA_R_EPS.Text = "";
            }
            HiddenField_FECHA_R_EPS.Value = TextBox_FECHA_R_EPS.Text;

            try
            {
                TextBox_FECHA_RADICACION_EPS.Text = Convert.ToDateTime(fila["FECHA_RADICACION"]).ToShortDateString();
            }
            catch
            {
                TextBox_FECHA_RADICACION_EPS.Text = "";
            }
            HiddenField_FECHA_RADICACION_EPS.Value = TextBox_FECHA_RADICACION_EPS.Text;

            DataTable TablaArchivoRadicacion = _afilicaion.ObtenerDocsRadicacionPorCOntratoYEntidad(ID_CONTRATO, EntidadesAfiliacion.EPS.ToString());
            if (TablaArchivoRadicacion.Rows.Count > 0)
            {
                SecureQueryString QueryStringSeguro;
                tools _tools = new tools();

                Panel_ARCHIVO_AFILIACION_EPS.Visible = true;

                QueryStringSeguro = new SecureQueryString(_tools.byteParaQueryStringSeguro());
                QueryStringSeguro["contrato"] = ID_CONTRATO.ToString();
                QueryStringSeguro["afiliacion"] = EntidadesAfiliacion.EPS.ToString();

                HyperLink_ARCHIVO_AFILIACION_EPS.NavigateUrl = "~/contratacion/visorDocsAfiliaciones.aspx?data=" + HttpUtility.UrlEncode(QueryStringSeguro.ToString());
            }
            else
            {
                Panel_ARCHIVO_AFILIACION_EPS.Visible = false;
            }

            try
            {
                DropDownList_ENTIDAD_EPS.SelectedValue = fila["ID_EPS"].ToString();
            }
            catch
            {
                DropDownList_ENTIDAD_EPS.ClearSelection();
            }
            HiddenField_ENTIDAD_EPS.Value = fila["ID_EPS"].ToString();

            TextBox_OBS_EPS.Text = fila["OBSERVACIONES"].ToString().Trim();
            HiddenField_OBS_EPS.Value = fila["OBSERVACIONES"].ToString().Trim();

            Label_ID_AFILIACION_EPS.Text = ID_AFILIACION_EPS.ToString();
        }
        else
        {
            HiddenField_FECHA_R_EPS.Value = "";
            HiddenField_FECHA_RADICACION_EPS.Value = "";

            Label_ID_AFILIACION_EPS.Text = "Sin asignar";

            TextBox_FECHA_R_EPS.Text = "";
            TextBox_FECHA_RADICACION_EPS.Text = "";

            DropDownList_ENTIDAD_EPS.ClearSelection();
            HiddenField_ENTIDAD_EPS.Value = "";

            TextBox_OBS_EPS.Text = "";
            HiddenField_OBS_EPS.Value = "";

            Panel_CABEZA_AFILIACION_EPS.BackColor = colorSinAuditar;
            Label_AFILIACION_EPS_AUDITADA.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.AfiliacionEPS.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.AfiliacionEPS.ToString();
            }

            Panel_ARCHIVO_AFILIACION_EPS.Visible = false;
        }
    }
    private void cargar_caja(Decimal ID_AFILIACION_CAJA, Decimal ID_SOLICITUD, Decimal ID_EMPLEADO)
    {
        Decimal ID_CONTRATO = Convert.ToDecimal(HiddenField_ID_CONTRATO.Value);

        afiliacion _afilicaion = new afiliacion(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

        DataTable tablaAfiliacion = _afilicaion.ObtenerconafiliacionCajasCPorRegistro(Convert.ToInt32(ID_AFILIACION_CAJA));

        DataTable tablaHistorial = _afilicaion.ObtenerconafiliacionCajasCPorIdSolicitud(Convert.ToInt32(ID_SOLICITUD));

        if (tablaHistorial.Rows.Count <= 0)
        {
            Panel_GRILLA_CAJA.Visible = false;
        }
        else
        {
            Panel_GRILLA_CAJA.Visible = true;
            GridView_CAJA.DataSource = tablaHistorial;
            GridView_CAJA.DataBind();
        }

        cargar_DropDownList_ENTIDAD_CAJA();

        DataRow fila;
        if (tablaAfiliacion.Rows.Count > 0)
        {
            fila = tablaAfiliacion.Rows[0];

            auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

            DataTable tablaUltimaAuditoria = _auditoriaContratos.ObtenerUltimaAuditoriaPorTablaYEmpleado(tabla.CON_AFILIACION_CAJAS_C, ID_EMPLEADO);

            if (tablaUltimaAuditoria.Rows.Count > 0)
            {
                DataRow filaInfoAuditoria = tablaUltimaAuditoria.Rows[0];
                Panel_CABEZA_AFILIACION_CCF.BackColor = colorAuditado;
                Label_AFILIACION_CCF_AUDITADA.Text = "(AUDITADO) - " + Convert.ToDateTime(filaInfoAuditoria["FECHA_AUDITORIA"]).ToShortDateString();
            }
            else
            {
                Panel_CABEZA_AFILIACION_CCF.BackColor = colorSinAuditar;
                Label_AFILIACION_CCF_AUDITADA.Text = "(SIN AUDITAR)";

                if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
                {
                    HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.AfiliacionCCF.ToString();
                }
                else
                {
                    HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.AfiliacionCCF.ToString();
                }
            }

            try
            {
                TextBox_FECHA_R_CAJA.Text = Convert.ToDateTime(fila["FECHA_R"]).ToShortDateString();
            }
            catch
            {
                TextBox_FECHA_R_CAJA.Text = "";
            }
            HiddenField_FECHA_R_CAJA.Value = Convert.ToDateTime(fila["FECHA_R"]).ToShortDateString();

            try
            {
                TextBox_FECHA_RADICACION_CAJA.Text = Convert.ToDateTime(fila["FECHA_RADICACION"]).ToShortDateString();
            }
            catch
            {
                TextBox_FECHA_RADICACION_CAJA.Text = "";
            }
            HiddenField_FECHA_RADICACION_CAJA.Value = TextBox_FECHA_RADICACION_CAJA.Text;

            DataTable TablaArchivoRadicacion = _afilicaion.ObtenerDocsRadicacionPorCOntratoYEntidad(ID_CONTRATO, EntidadesAfiliacion.CAJA.ToString());
            if (TablaArchivoRadicacion.Rows.Count > 0)
            {
                SecureQueryString QueryStringSeguro;
                tools _tools = new tools();

                Panel_ARCHIVO_AFILIACION_CAJA.Visible = true;

                QueryStringSeguro = new SecureQueryString(_tools.byteParaQueryStringSeguro());
                QueryStringSeguro["contrato"] = ID_CONTRATO.ToString();
                QueryStringSeguro["afiliacion"] = EntidadesAfiliacion.CAJA.ToString();

                HyperLink_ARCHIVO_AFILIACION_CAJA.NavigateUrl = "~/contratacion/visorDocsAfiliaciones.aspx?data=" + HttpUtility.UrlEncode(QueryStringSeguro.ToString());
            }
            else
            {
                Panel_ARCHIVO_AFILIACION_CAJA.Visible = false;
            }

            try
            {
                DropDownList_ENTIDAD_Caja.SelectedValue = fila["ID_CAJA_C"].ToString();
            }
            catch
            {
                DropDownList_ENTIDAD_Caja.ClearSelection();
            }

            HiddenField_ENTIDAD_Caja.Value = fila["ID_CAJA_C"].ToString();

            TextBox_OBS_CAJA.Text = fila["OBSERVACIONES"].ToString().Trim();
            HiddenField_OBS_CAJA.Value = fila["OBSERVACIONES"].ToString().Trim();

            Label_ID_AFILIACION_CAJA_C.Text = ID_AFILIACION_CAJA.ToString();

            llenarDropDepartamentos(Convert.ToDecimal(fila["ID_CAJA_C"]));

            if (DropDownList_ENTIDAD_Caja.SelectedValue == "43" || DropDownList_ENTIDAD_Caja.SelectedItem.Text.ToUpper() == "SIN CAJA")
            {
                Panel_CiudadCaja.Visible = false;
                DropDownList_DepartamentoCajaC.ClearSelection();
                DropDownList_CiudadCajaC.Items.Clear();
                DropDownList_CiudadCajaC.Items.Add(new System.Web.UI.WebControls.ListItem("Seleccione...", ""));
            }
            else
            {
                Panel_CiudadCaja.Visible = true;

                try
                {
                    DropDownList_DepartamentoCajaC.SelectedValue = fila["ID_DEPARTAMENTO"].ToString();
                    llenarDropCiudades(fila["ID_DEPARTAMENTO"].ToString(), Convert.ToDecimal(fila["ID_CAJA_C"]));
                    DropDownList_CiudadCajaC.SelectedValue = fila["ID_CIUDAD"].ToString();
                }
                catch
                {
                    limpiar_DropDownList(DropDownList_CiudadCajaC);
                }
            }
        }
        else
        {
            HiddenField_FECHA_R_CAJA.Value = "";
            HiddenField_FECHA_RADICACION_CAJA.Value = "";

            Label_ID_AFILIACION_CAJA_C.Text = "Sin asignar";

            TextBox_FECHA_R_CAJA.Text = "";
            TextBox_FECHA_RADICACION_CAJA.Text = "";

            DropDownList_ENTIDAD_Caja.ClearSelection();
            HiddenField_ENTIDAD_Caja.Value = "";

            TextBox_OBS_CAJA.Text = "";
            HiddenField_OBS_CAJA.Value = "";

            Panel_CABEZA_AFILIACION_CCF.BackColor = colorSinAuditar;
            Label_AFILIACION_CCF_AUDITADA.Text = "(SIN AUDITAR)";

            if (String.IsNullOrEmpty(HiddenField_SECCIONES_SIN_AUDITORIA.Value) == true)
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = SeccionesAuditoria.AfiliacionCCF.ToString();
            }
            else
            {
                HiddenField_SECCIONES_SIN_AUDITORIA.Value = ";" + SeccionesAuditoria.AfiliacionCCF.ToString();
            }

            Panel_ARCHIVO_AFILIACION_CAJA.Visible = false;

            Panel_CiudadCaja.Visible = true;

            limpiar_DropDownList(DropDownList_DepartamentoCajaC);
            limpiar_DropDownList(DropDownList_CiudadCajaC);
        }
    }
    private void ArmarYEnviarArchivos(AccionesEnvio accion)
    {
        String prefijoNombreArchivo = TextBox_NUM_DOC_IDENTIDAD.Text.Trim() + "-" + HiddenField_ID_CONTRATO.Value + "-";

        Dictionary<String, byte[]> listaArchivosSeleccion = ObtenerArchivosSeleccionados(prefijoNombreArchivo, SeccionEnvio.Seleccion);
        Dictionary<String, byte[]> listaArchivosContratacion = ObtenerArchivosSeleccionados(prefijoNombreArchivo, SeccionEnvio.Contratacion);

        if (accion == AccionesEnvio.download)
        {
            DownloadArchivo(prefijoNombreArchivo, listaArchivosSeleccion, listaArchivosContratacion);
        }
        else
        {
            Boolean verificado = true;

            if (ConfigurationManager.AppSettings["extensionesImagenesPermitidas"].ToLower() == "true")
            {
                if (listaArchivosSeleccion.Count > 0)
                {
                    if (EnviarArchivo(prefijoNombreArchivo, SeccionEnvio.Seleccion, listaArchivosSeleccion) == false)
                    {
                        verificado = false;
                    }
                }

                if (verificado == true)
                {
                    if (listaArchivosContratacion.Count > 0)
                    {
                        if (EnviarArchivo(prefijoNombreArchivo, SeccionEnvio.Contratacion, listaArchivosContratacion) == false)
                        {
                            verificado = false;
                        }
                    }
                }
            }

            if (verificado == true)
            {
                Decimal ID_EMPLEADO = Convert.ToDecimal(Label_ID_EMPLEADO.Text.Trim());
                Decimal ID_SOLICITUD = Convert.ToDecimal(TextBox_ID_SOLICITUD.Text.Trim());

                Boolean ACTUALIZAR_ESTADO_PROCESO = true;
                if (HiddenField_PRESENTACION.Value == Presentacion.ContratosActivos.ToString())
                {
                    ACTUALIZAR_ESTADO_PROCESO = false;
                }

                auditoriaContratos _auditoriaContratos = new auditoriaContratos(Session["idEmpresa"].ToString(), Session["USU_LOG"].ToString());

                Decimal ID_AUDITORIA = _auditoriaContratos.ActualizarAuditoriaContratosPorSeccionYEstadoProceso(ID_EMPLEADO, tabla.CON_CONFIGURACON_DOCS_ENTREGABLES, 1, ACTUALIZAR_ESTADO_PROCESO, ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_ENVIO_ARCHIVOS);

                if (ID_AUDITORIA <= 0)
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, _auditoriaContratos.MensajeError, Proceso.Error);
                }
                else
                {
                    Informar(Panel_MENSAJES, Label_MENSAJE, "La auditoría a la sección de envío de documentación al cliente fue realizada correctamente.", Proceso.Correcto);

                    cargar_seccion_envio_archivos(ID_EMPLEADO);

                    presentar_interfaz_segun_resultado();
                }
            }
        }
    }
        public Decimal ActualizarConceptosFijosEmpleado(Decimal ID_EMPLEADO, List <ConceptosNominaEmpleado> listaConceptos, Boolean ACTUALIZAR_ESTADO_PROCESO, Decimal ID_SOLICITUD)
        {
            Boolean ejecutar = true;

            if (ID_EMPLEADO == 0)
            {
                MensajeError = "El campo ID_EMPLEADO no puede ser 0\n";
                ejecutar     = false;
            }

            if (ejecutar)
            {
                Conexion conexion = new Conexion(Empresa);
                conexion.IniciarTransaccion();

                try
                {
                    DataTable tablaConceptosActuales = ObtenerNomConceptosEmpleadosPorIdEmpleadoConceptosFijos(Convert.ToInt32(ID_EMPLEADO));

                    foreach (DataRow fila in tablaConceptosActuales.Rows)
                    {
                        ejecutar = true;
                        foreach (ConceptosNominaEmpleado filaDeLaLista in listaConceptos)
                        {
                            if (filaDeLaLista.REGISTRO == Convert.ToDecimal(fila["REGISTRO"]))
                            {
                                ejecutar = false;
                                break;
                            }
                        }

                        if (ejecutar == true)
                        {
                            if (desactivarConceptosFijoDeEmpleado(Convert.ToDecimal(fila["REGISTRO"]), conexion) == false)
                            {
                                conexion.DeshacerTransaccion();
                                return(0);
                            }
                        }
                    }

                    foreach (ConceptosNominaEmpleado filaDeLaLista in listaConceptos)
                    {
                        if (filaDeLaLista.REGISTRO == 0)
                        {
                            if (AdicionarConceptoFijoAEmpleado(ID_EMPLEADO, filaDeLaLista.ID_CONCEPTO, filaDeLaLista.CAN_PRE, filaDeLaLista.VAL_PRE, filaDeLaLista.LIQ_Q_1, filaDeLaLista.LIQ_Q_2, filaDeLaLista.LIQ_Q_3, filaDeLaLista.LIQ_Q_4, filaDeLaLista.ID_CLAUSULA, conexion) == 0)
                            {
                                conexion.DeshacerTransaccion();
                                return(0);
                            }
                        }
                    }

                    auditoriaContratos _auditoriaContratos = new auditoriaContratos(Empresa, Usuario);
                    Decimal            ID_AUDITORIA        = _auditoriaContratos.AdicionarAuditoriaContratos(ID_EMPLEADO, tabla.NOM_CONCEPTOS_EMPLEADO, 1, DateTime.Now, conexion);

                    if (ID_AUDITORIA <= 0)
                    {
                        conexion.DeshacerTransaccion();
                        MensajeError = _auditoriaContratos.MensajeError;
                        return(0);
                    }

                    if (ACTUALIZAR_ESTADO_PROCESO == true)
                    {
                        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Empresa, Usuario);

                        if (_radicacionHojasDeVida.ActualizarEstadoProcesoRegSolicitudesIngresoAuditoria(ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_CONCEPTOS_FIJOS, conexion) == false)
                        {
                            conexion.DeshacerTransaccion();
                            MensajeError = _radicacionHojasDeVida.MensajeError;
                            return(0);
                        }
                    }

                    conexion.AceptarTransaccion();
                    return(1);
                }
                catch
                {
                    conexion.DeshacerTransaccion();
                    return(0);
                }
                finally
                {
                    conexion.Desconectar();
                }
            }
            else
            {
                return(0);
            }
        }
        public Decimal ActualizarConceptosFijosEmpleado(Decimal ID_EMPLEADO, List<ConceptosNominaEmpleado> listaConceptos, Boolean ACTUALIZAR_ESTADO_PROCESO, Decimal ID_SOLICITUD)
        {
            Boolean ejecutar = true;

            if (ID_EMPLEADO == 0)
            {
                MensajeError = "El campo ID_EMPLEADO no puede ser 0\n";
                ejecutar = false;
            }

            if (ejecutar)
            {
                Conexion conexion = new Conexion(Empresa);
                conexion.IniciarTransaccion();

                try
                {
                    DataTable tablaConceptosActuales = ObtenerNomConceptosEmpleadosPorIdEmpleadoConceptosFijos(Convert.ToInt32(ID_EMPLEADO));

                    foreach (DataRow fila in tablaConceptosActuales.Rows)
                    {
                        ejecutar = true;
                        foreach (ConceptosNominaEmpleado filaDeLaLista in listaConceptos)
                        {
                            if (filaDeLaLista.REGISTRO == Convert.ToDecimal(fila["REGISTRO"]))
                            {
                                ejecutar = false;
                                break;
                            }
                        }

                        if (ejecutar == true)
                        {
                            if (desactivarConceptosFijoDeEmpleado(Convert.ToDecimal(fila["REGISTRO"]), conexion) == false)
                            {
                                conexion.DeshacerTransaccion();
                                return 0;
                            }
                        }
                    }

                    foreach (ConceptosNominaEmpleado filaDeLaLista in listaConceptos)
                    {
                        if (filaDeLaLista.REGISTRO == 0)
                        {
                            if (AdicionarConceptoFijoAEmpleado(ID_EMPLEADO, filaDeLaLista.ID_CONCEPTO, filaDeLaLista.CAN_PRE, filaDeLaLista.VAL_PRE, filaDeLaLista.LIQ_Q_1, filaDeLaLista.LIQ_Q_2, filaDeLaLista.LIQ_Q_3, filaDeLaLista.LIQ_Q_4, filaDeLaLista.ID_CLAUSULA, conexion) == 0)
                            {
                                conexion.DeshacerTransaccion();
                                return 0;
                            }
                        }
                    }

                    auditoriaContratos _auditoriaContratos = new auditoriaContratos(Empresa, Usuario);
                    Decimal ID_AUDITORIA = _auditoriaContratos.AdicionarAuditoriaContratos(ID_EMPLEADO, tabla.NOM_CONCEPTOS_EMPLEADO, 1, DateTime.Now, conexion);

                    if (ID_AUDITORIA <= 0)
                    {
                        conexion.DeshacerTransaccion();
                        MensajeError = _auditoriaContratos.MensajeError;
                        return 0;
                    }

                    if (ACTUALIZAR_ESTADO_PROCESO == true)
                    {
                        radicacionHojasDeVida _radicacionHojasDeVida = new radicacionHojasDeVida(Empresa, Usuario);

                        if (_radicacionHojasDeVida.ActualizarEstadoProcesoRegSolicitudesIngresoAuditoria(ID_SOLICITUD, tabla.VAR_ESTADO_PROCESO_CONCEPTOS_FIJOS, conexion) == false)
                        {
                            conexion.DeshacerTransaccion();
                            MensajeError = _radicacionHojasDeVida.MensajeError;
                            return 0;
                        }
                    }

                    conexion.AceptarTransaccion();
                    return 1;
                }
                catch
                {
                    conexion.DeshacerTransaccion();
                    return 0;
                }
                finally
                {
                    conexion.Desconectar();
                }
            }
            else
            {
                return 0;
            }
        }