예제 #1
0
        public bool Guardar_DB(ro_Remplazo_x_emplado_Info info, ref int Id_Remplazo, ref decimal id_novedad)
        {
            try
            {
                decimal iddiario = 0;
                decimal idop     = 0;
                if (data.Guardar_DB(info, ref Id_Remplazo))
                {
                    if (info.Descuenta_rol == true)
                    {
                        ro_Empleado_Novedad_Info info_novedad = new ro_Empleado_Novedad_Info();
                        info_novedad = Get_novedad_info(info);
                        if (novedad_bus.GrabarDB(info_novedad, ref id_novedad, ref error))
                        {
                            info_novedad.InfoNovedadDet.IdNovedad = id_novedad;
                            info_novedad.InfoNovedadDet.IdEmpresa = info.IdEmpresa;
                            if (novedad_det_bus.GrabarDB(info_novedad.InfoNovedadDet, ref error))
                            {
                                info.IdNovedad   = id_novedad;
                                info.Id_remplazo = Id_Remplazo;
                                Modificar_DB_IdNovedad(info);
                            }
                        }
                    }

                    GetOrdenPao(info);
                    GetAsientoContable(info);
                    if (bus_ct.GrabarDB(infocont, ref iddiario, ref mensaje))
                    {
                        foreach (var item in CabOP.Detalle)
                        {
                            item.IdTipoCbte_cxp = infocont.IdTipoCbte;
                            item.IdCbteCble_cxp = iddiario;
                        }

                        if (bus_op.GuardaDB(CabOP, ref idop, ref mensaje))
                        {
                        }
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                mensaje = ex.ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", mensaje, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                throw new Exception(mensaje);
            }
        }
        public bool Guardar_DB(ro_descuento_no_planificados_Info info)
        {
            try
            {
                string  msg       = "";
                decimal idNovedad = 0;
                int     sec       = 0;
                bool    ba        = false;
                if (info.IdNovedad == null || info.IdNovedad == 0)
                {
                    foreach (var item in Get_Novedad(info))
                    {
                        if (bus_novedad.GrabarDB(item, ref idNovedad))
                        {
                            info.IdNovedad = Convert.ToInt32(idNovedad);
                            if (data.Modificar_DB(info))
                            {
                            }
                        }
                    }

                    foreach (var item_ in info.lista)
                    {
                        sec = sec + 1;
                        item_.IdDescuento = info.IdDescuento;
                        item_.Secuencia   = sec;
                    }
                    ba = bus_detalle.Guardar_DB(info.lista);
                }
                else// modificar
                {
                    foreach (var item in Get_Novedad(info))
                    {
                        if (bus_novedad.ModificarDB(item))
                        {
                            if (bus_novedad_Det.EliminarDB(item.IdEmpresa, item.IdNomina_Tipo, item.IdEmpleado, Convert.ToDecimal(item.IdNovedad)))
                            {
                                foreach (var itemN in item.LstDetalle)
                                {
                                    bus_novedad_Det.GrabarDB(itemN, ref msg);
                                }
                                info.IdNovedad = Convert.ToInt32(info.IdNovedad);
                                if (data.Modificar_DB(info))
                                {
                                }
                            }
                        }
                    }



                    foreach (var item_ in info.lista)
                    {
                        item_.IdDescuento = info.IdDescuento;
                        item_.Secuencia   = 1;
                    }
                    ba = bus_detalle.Guardar_DB(info.lista);
                }

                return(ba);
            }
            catch (Exception ex)
            {
                mensaje = ex.ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", mensaje, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                throw new Exception(mensaje);
            }
        }
        public void Grbar()
        {
            try
            {
                switch (Accion)
                {
                case Cl_Enumeradores.eTipo_action.grabar:

                    if (!Validar())
                    {
                        return;
                    }

                    Get();



                    if (InfoCatalogo.IdCatalogo == 218)
                    {
                        if (BusNovedaCab.GrabarDB(InfoNovedadCab, ref IDNovedad, ref MensError))        // grabo cab novedad
                        {
                            InfoNovedadDet.IdNovedad = IDNovedad;
                            if (BusNovedadDet.GrabarDB(InfoNovedadDet, ref MensError))        // grabo detale novedad
                            {
                                InfoGrabar.IdNovedad = (int)IDNovedad;
                                if (BusDiasFaltados.GuardarDB(InfoGrabar))        // grabo reg dias faltados
                                {
                                    MessageBox.Show("Se Guardo Correctamente la Informacion", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.None);
                                    Limpiar();
                                }
                                else
                                {
                                    MessageBox.Show("Error al Guardar la Informacion ", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                        }
                    }
                    else
                    {
                        if (BusDiasFaltados.GuardarDB(InfoGrabar))    // grabo reg dias faltados
                        {
                            MessageBox.Show("Se Guardo Correctamente la Informacion", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.None);
                            Limpiar();
                        }
                        else
                        {
                            MessageBox.Show("Error al Guardar la Informacion ", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    break;


                case Cl_Enumeradores.eTipo_action.actualizar:

                    break;

                case Cl_Enumeradores.eTipo_action.Anular:
                    Get();

                    FrmGe_MotivoAnulacion Frm = new FrmGe_MotivoAnulacion();

                    Frm.ShowDialog();
                    InfoGrabar.MotiAnula     = Frm.motivoAnulacion;
                    InfoNovedadCab.MotiAnula = Frm.motivoAnulacion;


                    // seteo datos de anulacion
                    InfoGrabar.IdUsuarioUltAnu = param.IdUsuario;
                    InfoGrabar.Fecha_UltAnu    = DateTime.Now;

                    InfoNovedadCab.IdUsuarioUltAnu = param.IdUsuario;
                    InfoNovedadCab.Fecha_UltAnu    = DateTime.Now;
                    InfoNovedadCab.Estado          = "I";

                    InfoNovedadDet.Estado = "I";

                    InfoGrabar.IdFalta = InfoGeneral.IdFalta;
                    if (InfoGeneral.IdNovedad > 0)
                    {
                        InfoNovedadCab.IdNovedad = (int)InfoGeneral.IdNovedad;
                    }
                    if (InfoCatalogo.IdCatalogo == 218)
                    {
                        if (BusNovedaCab.AnularDB(InfoNovedadCab))    // anulo cab novedad
                        {
                            InfoNovedadDet.IdNovedad = (int)InfoGeneral.IdNovedad;
                            if (BusNovedadDet.AnularDB(InfoNovedadDet))    // anulo detale novedad
                            {
                                if (BusDiasFaltados.Anular(InfoGrabar))    // anulo reg dias faltados
                                {
                                    MessageBox.Show("Se Guardo Correctamente la Informacion", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.None);
                                    this.Close();
                                }
                                else
                                {
                                    MessageBox.Show("Error al Guardar la Informacion ", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                        }
                    }
                    else
                    {
                        if (BusDiasFaltados.Anular(InfoGrabar))
                        {
                            MessageBox.Show("Se Anulo Correctamente el Registro", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.None);
                            this.Close();
                        }
                        else
                        {
                            MessageBox.Show("No se Pudo Anular el Registro", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }


                    break;

                case Cl_Enumeradores.eTipo_action.consultar:
                    break;

                case Cl_Enumeradores.eTipo_action.duplicar:
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
            }
        }