public bool AnularDB(ro_Calculo_Pago_Variable_Porcentaje_Info Info, ref string mensaje)
        {
            try
            {
                using (EntityRoles_FJ Context = new EntityRoles_FJ())
                {
                    ro_Calculo_Pago_Variable_Porcentaje contact = Context.ro_Calculo_Pago_Variable_Porcentaje.FirstOrDefault(q => q.IdEmpresa == Info.IdEmpresa && q.IdTipo_Nomina == Info.IdTipo_Nomina && q.IdTipoServicio == Info.IdTipoServicio);
                    if (contact != null)
                    {
                        contact.IdUsuarioUltAnu = Info.IdUsuarioUltAnu;
                        contact.Fecha_UltAnu    = Info.Fecha_UltAnu;
                        contact.MotivoAnulacion = Info.MotivoAnulacion;
                        contact.Estado          = false;

                        Context.SaveChanges();
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = 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(), "", arreglo, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.ToString();
                throw new Exception(ex.ToString());
            }
        }
        public bool ModificarDB(ro_Calculo_Pago_Variable_Porcentaje_Info Info, ref string mensaje)
        {
            try
            {
                using (EntityRoles_FJ Context = new EntityRoles_FJ())
                {
                    ro_Calculo_Pago_Variable_Porcentaje contact = Context.ro_Calculo_Pago_Variable_Porcentaje.FirstOrDefault(q => q.IdEmpresa == Info.IdEmpresa && q.IdTipo_Nomina == Info.IdTipo_Nomina);
                    if (contact != null)
                    {
                        contact.Efec_Entrega_Rango   = Info.Efec_Entrega_Rango;
                        contact.Efec_Entrega_Aplica  = Info.Efec_Entrega_Aplica;
                        contact.Efec_Volumen_Rango   = Info.Efec_Volumen_Rango;
                        contact.Efec_Volumen_Aplica  = Info.Efec_Volumen_Aplica;
                        contact.Recup_Cartera_Rango  = Info.Recup_Cartera_Rango;
                        contact.Recup_Cartera_Aplica = Info.Recup_Cartera_Aplica;
                        contact.IdUsuarioUltModi     = Info.IdUsuarioUltModi;

                        contact.Fecha_UltMod = DateTime.Now;
                        contact.nom_pc       = Info.nom_pc;
                        contact.ip           = Info.ip;
                        Context.SaveChanges();
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = 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(), "", arreglo, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.ToString();
                throw new Exception(ex.ToString());
            }
        }
        public List <ro_Calculo_Pago_Variable_Porcentaje_Info> Get_List_Calculo_Pago_Porcentaje(int IdEmpresa, int IdTipo_Nomina, int IdTipoServicio)
        {
            try
            {
                List <ro_Calculo_Pago_Variable_Porcentaje_Info> Lista_Calculo = new List <ro_Calculo_Pago_Variable_Porcentaje_Info>();

                using (EntityRoles_FJ Context = new EntityRoles_FJ())
                {
                    var contact = from q in Context.ro_Calculo_Pago_Variable_Porcentaje
                                  where q.IdEmpresa == IdEmpresa &&
                                  q.IdTipo_Nomina == IdTipo_Nomina &&
                                  q.IdTipoServicio == IdTipoServicio
                                  select q;

                    foreach (var item in contact)
                    {
                        ro_Calculo_Pago_Variable_Porcentaje_Info Info = new ro_Calculo_Pago_Variable_Porcentaje_Info();
                        Info.IdEmpresa            = item.IdEmpresa;
                        Info.IdTipo_Nomina        = item.IdTipo_Nomina;
                        Info.IdEfectividad        = item.IdEfectividad;
                        Info.Efec_Entrega_Rango   = item.Efec_Entrega_Rango;
                        Info.Efec_Entrega_Aplica  = item.Efec_Entrega_Aplica;
                        Info.Efec_Volumen_Rango   = item.Efec_Volumen_Rango;
                        Info.Efec_Volumen_Aplica  = item.Efec_Volumen_Aplica;
                        Info.Recup_Cartera_Rango  = item.Recup_Cartera_Rango;
                        Info.Recup_Cartera_Aplica = item.Recup_Cartera_Aplica;
                        Info.IdTipoServicio       = item.IdTipoServicio;
                        Info.SignoOperacion       = item.SignoOperacion;
                        Info.IdGrupo           = item.IdGrupo;
                        Info.Estado            = item.Estado;
                        Info.IdUsuario         = item.IdUsuario;
                        Info.Fecha_Transaccion = item.Fecha_Transaccion;
                        Info.IdUsuarioUltModi  = item.IdUsuarioUltModi;
                        Info.Fecha_UltMod      = item.Fecha_UltMod;
                        Info.IdUsuarioUltAnu   = item.IdUsuarioUltAnu;
                        Info.Fecha_UltAnu      = item.Fecha_UltAnu;
                        Info.MotivoAnulacion   = item.MotivoAnulacion;
                        Info.nom_pc            = item.nom_pc;
                        Info.ip = item.ip;
                        Lista_Calculo.Add(Info);
                    }
                }
                return(Lista_Calculo);
            }
            catch (Exception ex)
            {
                string array = 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(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.ToString() + " " + ex.Message;
                throw new Exception(ex.ToString());
            }
        }
예제 #4
0
 public bool GuardarDB(ro_Calculo_Pago_Variable_Porcentaje_Info Info, int IdTipo_Nomina, ref string mensaje)
 {
     try
     {
         return(oData.GuardarDB(Info, IdTipo_Nomina, ref mensaje));
     }
     catch (Exception ex)
     {
         string array = 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(), "", array, "", "", "", "", "", DateTime.Now);
         oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
         mensaje = ex.ToString() + " " + ex.Message;
         throw new Exception(ex.ToString());
     }
 }
        public bool GuardarDB(ro_Calculo_Pago_Variable_Porcentaje_Info Info, int IdTipo_Nomina, ref string mensaje)
        {
            try
            {
                int IdEfectividad = Get_Id(Info.IdEmpresa, Info.IdTipo_Nomina, ref mensaje);

                using (EntityRoles_FJ Context = new EntityRoles_FJ())
                {
                    ro_Calculo_Pago_Variable_Porcentaje contact = new ro_Calculo_Pago_Variable_Porcentaje();

                    contact.IdEmpresa            = Info.IdEmpresa;
                    contact.IdTipo_Nomina        = Info.IdTipo_Nomina;
                    contact.IdEfectividad        = IdEfectividad;
                    contact.Efec_Entrega_Rango   = Info.Efec_Entrega_Rango;
                    contact.Efec_Entrega_Aplica  = Info.Efec_Entrega_Aplica;
                    contact.Efec_Volumen_Rango   = Info.Efec_Volumen_Rango;
                    contact.Efec_Volumen_Aplica  = Info.Efec_Volumen_Aplica;
                    contact.Recup_Cartera_Rango  = Info.Recup_Cartera_Rango;
                    contact.Recup_Cartera_Aplica = Info.Recup_Cartera_Aplica;
                    contact.IdTipoServicio       = Info.IdTipoServicio;
                    contact.SignoOperacion       = Info.SignoOperacion;
                    contact.IdGrupo = Info.IdGrupo;
                    //campos de auditoria
                    contact.Estado            = Info.Estado;
                    contact.IdUsuario         = Info.IdUsuario;
                    contact.Fecha_Transaccion = Info.Fecha_Transaccion;
                    contact.nom_pc            = Info.nom_pc;
                    contact.ip = Info.ip;

                    Context.ro_Calculo_Pago_Variable_Porcentaje.Add(contact);
                    Context.SaveChanges();
                }

                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = 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(), "", arreglo, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.ToString();
                throw new Exception(ex.ToString());
            }
        }
예제 #6
0
        public void Get_Marcaciones_x_Turnos(string RutaFile)
        {
            try
            {
                // leo el excel
                OleDbConnectionStringBuilder cb = new OleDbConnectionStringBuilder();
                cb.DataSource = RutaFile;
                if (Path.GetExtension(cb.DataSource).ToUpper() == ".XLS")
                {
                    cb.Provider = "Microsoft.Jet.OLEDB.4.0";
                    cb.Add("Extended Properties", "Excel 8.0;HDR=YES;IMEX=0;");
                }
                else if (Path.GetExtension(cb.DataSource).ToUpper() == ".XLSX")
                {
                    cb.Provider = "Microsoft.ACE.OLEDB.12.0";
                    cb.Add("Extended Properties", "Excel 12.0 Xml;HDR=YES;IMEX=0;");
                }
                using (OleDbConnection conexion = new OleDbConnection(cb.ConnectionString))
                {
                    string Hoja = cmbHoja.Text;
                    conexion.Open();
                    string Sql = "SELECT Ruta,Efectividad_Entrega,Efectividad_Volumen,Recuperacion_cartera " +
                                 "FROM [" + Hoja + "$]  where Ruta is not null";


                    OleDbCommand    Cmd    = new OleDbCommand(Sql, conexion);
                    OleDbDataReader Reader = Cmd.ExecuteReader();
                    while (Reader.Read())
                    {
                        if (Reader.IsDBNull(0) == false)
                        {
                            bool bandera_ = false;

                            ro_Calculo_Pago_Variable_Porcentaje_Info info_rango_pago = new ro_Calculo_Pago_Variable_Porcentaje_Info();
                            string Ruta = Reader.GetString(0);

                            foreach (var item in lista_efectividad)
                            {
                                if (item.ru_descripcion.Trim() == Ruta.Trim())
                                {
                                    if (item.ru_descripcion == "501229")
                                    {
                                    }

                                    double valorDecimal = 0;
                                    bandera_ = true;
                                    List <ro_Calculo_Pago_Variable_Porcentaje_Info> Lista_tmp = new List <ro_Calculo_Pago_Variable_Porcentaje_Info>();
                                    item.ruta_excel = Reader.GetString(0).ToString();
                                    // busco el porcentaje correspondiente de efectividad


                                    valorDecimal = Convert.ToDouble(Reader.GetString(1));
                                    if (valorDecimal.ToString().Length > 4)
                                    {
                                        valorDecimal = Convert.ToDouble(valorDecimal.ToString().Substring(0, 4));
                                    }
                                    item.Efectividad_Entrega = Convert.ToDecimal(valorDecimal);
                                    Lista_tmp = Lista_Calculo.Where(v => v.Efec_Entrega_Rango == valorDecimal.ToString()).ToList();
                                    if (Lista_tmp.Count() > 0)
                                    {
                                        item.Efectividad_Entrega_aplica = Convert.ToDouble(Lista_tmp.FirstOrDefault().Efec_Entrega_Aplica);
                                    }
                                    else
                                    if (valorDecimal >= 1)
                                    {
                                        item.Efectividad_Entrega_aplica = 1.3;
                                    }
                                    else
                                    {
                                        item.Efectividad_Entrega_aplica = 0;
                                    }



                                    // busco el porcentaje correspondiente de volumen de entrega
                                    valorDecimal = Convert.ToDouble(Reader.GetString(2));
                                    if (valorDecimal.ToString().Length > 4)
                                    {
                                        valorDecimal = Convert.ToDouble(valorDecimal.ToString().Substring(0, 4));
                                    }
                                    item.Efectividad_Volumen = Convert.ToDecimal(valorDecimal);
                                    Lista_tmp = Lista_Calculo.Where(v => v.Efec_Volumen_Rango == valorDecimal.ToString()).ToList();
                                    if (Lista_tmp.Count() > 0)
                                    {
                                        item.Efectividad_Volumen_aplica = Convert.ToDouble(Lista_tmp.FirstOrDefault().Efec_Volumen_Aplica);
                                    }
                                    else
                                    if (valorDecimal >= 1)
                                    {
                                        item.Efectividad_Volumen_aplica = 1.3;
                                    }
                                    else
                                    {
                                        item.Efectividad_Volumen_aplica = 0;
                                    }
                                    // busco el porcentaje correspondiente de volumen de entrega



                                    valorDecimal = Convert.ToDouble(Reader.GetString(3));
                                    if (valorDecimal.ToString().Length > 4)
                                    {
                                        valorDecimal = Convert.ToDouble(valorDecimal.ToString().Substring(0, 4));
                                    }
                                    else
                                    {
                                        valorDecimal = Convert.ToDouble(valorDecimal);
                                    }
                                    item.Recuperacion_cartera = Convert.ToDecimal(valorDecimal);
                                    Lista_tmp = Lista_Calculo.Where(v => v.Recup_Cartera_Rango == valorDecimal.ToString().Trim()).ToList();
                                    if (Lista_tmp.Count() > 0)
                                    {
                                        item.Recuperacion_cartera_aplica = Convert.ToDouble(Lista_tmp.FirstOrDefault().Recup_Cartera_Aplica);
                                    }
                                    else
                                    if (valorDecimal >= 1)
                                    {
                                        item.Recuperacion_cartera_aplica = 1;
                                    }
                                    else
                                    {
                                        item.Recuperacion_cartera_aplica = 0;
                                    }
                                    item.Error = null;
                                    // break;
                                }
                                else
                                {
                                    //  item.Error = "Error las rutas no coinciden";
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }