Exemple #1
0
        public Decimal ActualizarAuditoriaContratosPorSeccionYEstadoProceso(Decimal ID_EMPLEADO, String TABLA_AUDITADA, Decimal ID_AUDITADO, Boolean ACTUALIZAR_ESTADO_PROCESO, Decimal ID_SOLICITUD, String ESTADO_PROCESO)
        {
            Decimal ID_AUDITORIA = 0;

            Conexion conexion = new Conexion(Empresa);

            conexion.IniciarTransaccion();

            try
            {
                ID_AUDITORIA = AdicionarAuditoriaContratos(ID_EMPLEADO, TABLA_AUDITADA, ID_AUDITADO, DateTime.Now, conexion);

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

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

            return(ID_AUDITORIA);
        }
        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);
            }
        }