예제 #1
0
        //Si se quiere agregar más de una funcionalidad asociada por favor usar (,) el separador será la COMA
        public static void InsertNovedad()
        {
            FacturaProduccionContext dbProduccion  = new FacturaProduccionContext();
            FacturaContext           dbTestContext = new FacturaContext();

            if (!dbProduccion.DBNovedadesRegistradasModel.Any())
            {
                NovedadesRegistradasModel nuevaNovedad = new NovedadesRegistradasModel()
                {
                    NombreNovedad               = NovedadesEnumKeys.KeyNovedad.NewNumVoucherFormat.ToString(),
                    FechaCreacionNovedad        = DateTime.Now,
                    NombreFuncionalidadAsociada = NovedadesEnumKeys.KeyNovedadFuncionalidadAsociada.GetNumVoucher.ToString()
                };

                dbProduccion.DBNovedadesRegistradasModel.Add(nuevaNovedad);
                dbProduccion.SaveChanges();
            }

            if (!dbTestContext.DBNovedadesRegistradasModel.Any())
            {
                NovedadesRegistradasModel nuevaNovedad = new NovedadesRegistradasModel()
                {
                    NombreNovedad               = NovedadesEnumKeys.KeyNovedad.NewNumVoucherFormat.ToString(),
                    FechaCreacionNovedad        = DateTime.Now,
                    NombreFuncionalidadAsociada = NovedadesEnumKeys.KeyNovedadFuncionalidadAsociada.GetNumVoucher.ToString()
                };

                dbTestContext.DBNovedadesRegistradasModel.Add(nuevaNovedad);
                dbTestContext.SaveChanges();
            }
        }
예제 #2
0
    public static int GetCuentaContableIvaAUsar(ClientesContablesModel objCliente)
    {
        FacturaProduccionContext db = new FacturaProduccionContext();
        int cuentaContableId        = db.DBCuentaContable.SingleOrDefault(x => x.CuentaContableModelID == objCliente.ParametrosCliente.CuentaIvaCompras.CuentaContableModelID && x.ClientesContablesModelID == objCliente.ClientesContablesModelID).CuentaContableModelID;

        return(cuentaContableId);
    }
예제 #3
0
    public static List <FuncionesModel> PerfilUsuario(FacturaProduccionContext db, int TipoUsuario)
    {
        PerfilUsuarioModel    TipoUsuarioEncontrado = db.DBPerfilUsuario.SingleOrDefault(x => x.PerfilUsuarioModelID == TipoUsuario);
        List <FuncionesModel> ReturnValues          = new List <FuncionesModel>();

        if (TipoUsuarioEncontrado != null)
        {
            if (TipoUsuarioEncontrado.NombrePerfil == "SuperAdmin")
            {
                ReturnValues = db.DBFunciones.ToList();
            }
            if (TipoUsuarioEncontrado.NombrePerfil == "ContabilidadSuperAdmin")
            {
                ReturnValues = db.DBFunciones.Where(x => x.NombreModulo == "Contabilidad-SuperAdmin" ||
                                                    x.NombreModulo == "Contabilidad-Admin" ||
                                                    x.NombreModulo == "Contabilidad-Comun" ||
                                                    x.NombreFuncion == "Index").ToList();
            }
            if (TipoUsuarioEncontrado.NombrePerfil == "Admin")
            {
                ReturnValues = db.DBFunciones.Where(x => x.NombreModulo == "Contabilidad-Comun" ||
                                                    x.NombreModulo == "Contabilidad-Admin" ||
                                                    x.NombreFuncion == "PanelClienteContable").ToList();
            }
            if (TipoUsuarioEncontrado.NombrePerfil == "Contador")
            {
                ReturnValues = db.DBFunciones.Where(x => x.NombreModulo == "Contabilidad-Comun" ||
                                                    x.NombreFuncion == "PanelClienteContable").ToList();
            }
        }
        return(ReturnValues);
    }
예제 #4
0
    public static List <FuncionesModel> Superadmin(FacturaProduccionContext db)
    {
        List <FuncionesModel> ReturnValues = new List <FuncionesModel>();

        ReturnValues = db.DBFunciones.ToList();
        return(ReturnValues);
    }
예제 #5
0
    public static List <FuncionesModel> Contador(FacturaProduccionContext db)
    {
        List <FuncionesModel> ReturnValues = new List <FuncionesModel>();

        ReturnValues = db.DBFunciones.Where(x => x.NombreModulo == "Contabilidad-Comun" ||
                                            x.NombreFuncion == "PanelClienteContable").ToList();

        return(ReturnValues);
    }
예제 #6
0
    public static List <FuncionesModel> ContadorSuperAdmin(FacturaProduccionContext db)
    {
        List <FuncionesModel> ReturnValues = new List <FuncionesModel>();

        ReturnValues = db.DBFunciones.Where(x => x.NombreModulo == "Contabilidad-SuperAdmin" ||
                                            x.NombreModulo == "Contabilidad-Admin" ||
                                            x.NombreModulo == "Contabilidad-Comun" ||
                                            x.NombreFuncion == "Index").ToList();
        return(ReturnValues);
    }
예제 #7
0
        public ActionResult SwitchPlatformProd()
        {
            string UserID = User.Identity.GetUserId();
            FacturaProduccionContext db = new FacturaProduccionContext();

            /*
             * QuickEmisorModel objEmisor = db.Emisores.SingleOrDefault(r => r.IdentityID == UserID);
             * objEmisor.DatabaseContextToUse = 1;
             */
            UsuarioModel objUsuario = db.DBUsuarios.SingleOrDefault(r => r.IdentityID == UserID);

            objUsuario.DatabaseContextToUse = 1;
            Session["AlertaLibro"]          = null;
            db.DBUsuarios.AddOrUpdate(c => c.UsuarioModelID, objUsuario);
            //db.Emisores.AddOrUpdate(c => c.QuickEmisorModelID, objEmisor);
            db.SaveChanges();
            return(RedirectToAction("Index", "Home"));
        }
예제 #8
0
    public static void Initialize()
    {
        Database.SetInitializer(new FacturaInitializer()); //if u want to use your initializer
        using (var db = new FacturaContext())
        {
            {
                db.Database.Initialize(false);
            }
        }

        Database.SetInitializer(new FacturaProduccionInitializer());
        using (var dvo = new FacturaProduccionContext())
        {
            {
                dvo.Database.Initialize(false);
            }
        }
    }
예제 #9
0
    public static void CrearFuncionesBases()
    {
        FacturaContext           dbCertificacion = new FacturaContext();
        FacturaProduccionContext dbProduccion    = new FacturaProduccionContext();

        if (dbCertificacion.DBFunciones.Count() > 0 || dbProduccion.DBFunciones.Count() > 0)
        {
            return;
        }

        List <Tuple <string, string> > lstFunciones = new List <Tuple <string, string> >();

        //Inicio
        lstFunciones.Add(new Tuple <string, string>("homey", "Inicio")); //MANAGE/INDEX TURN INTO

        //Configuracion
        lstFunciones.Add(new Tuple <string, string>("DatosEmpresa", "Configuracion"));
        lstFunciones.Add(new Tuple <string, string>("Register", "Configuracion"));
        lstFunciones.Add(new Tuple <string, string>("Certificacion", "Configuracion"));
        lstFunciones.Add(new Tuple <string, string>("Index", "Inicio"));
        lstFunciones.Add(new Tuple <string, string>("AgregarUsuario", "Configuracion"));

        //Clientes
        lstFunciones.Add(new Tuple <string, string>("ListarCliente", "Clientes"));
        lstFunciones.Add(new Tuple <string, string>("EditarCliente", "Clientes"));
        lstFunciones.Add(new Tuple <string, string>("NuevoCliente", "Clientes"));

        //FACTURAS //not complete
        lstFunciones.Add(new Tuple <string, string>("ListaFacturas", "Facturas"));
        lstFunciones.Add(new Tuple <string, string>("ListaNotaCredito", "Facturas"));
        lstFunciones.Add(new Tuple <string, string>("ListaNotaDebito", "Facturas"));

        lstFunciones.Add(new Tuple <string, string>("MakeFacturaExp", "Facturas"));
        lstFunciones.Add(new Tuple <string, string>("MakeFacturaNeoNote", "Facturas"));

        //COMPRAS
        lstFunciones.Add(new Tuple <string, string>("DTEsRecibidos", "Compras"));

        //GASTOS //not complete
        lstFunciones.Add(new Tuple <string, string>("ListaHonorarios", "Gastos"));
        lstFunciones.Add(new Tuple <string, string>("ListaEgresosFijos", "Gastos"));

        //PAGOS
        lstFunciones.Add(new Tuple <string, string>("ListaPagos", "Pagos"));

        //DECLARACIONES
        lstFunciones.Add(new Tuple <string, string>("ListaF29", "Declaraciones"));

        //Informes
        lstFunciones.Add(new Tuple <string, string>("InformeIngresos", "Informes"));
        lstFunciones.Add(new Tuple <string, string>("InformeEgresos", "Informes"));
        lstFunciones.Add(new Tuple <string, string>("InformeResultados", "Informes"));
        lstFunciones.Add(new Tuple <string, string>("ter", "Informes"));

        //AMBIENTES
        lstFunciones.Add(new Tuple <string, string>("SwitchPlatformCert", "Ambientes"));
        lstFunciones.Add(new Tuple <string, string>("SwitchPlatformProd", "Ambientes"));

        foreach (Tuple <string, string> pairFuncion in lstFunciones)
        {
            FuncionesModel fnFuncionObjGenerico = new FuncionesModel();
            fnFuncionObjGenerico.NombreFuncion = pairFuncion.Item1;
            fnFuncionObjGenerico.NombreModulo  = pairFuncion.Item2;
            dbCertificacion.DBFunciones.Add(fnFuncionObjGenerico);
            dbProduccion.DBFunciones.Add((FuncionesModel)fnFuncionObjGenerico.Clone());
        }

        dbCertificacion.SaveChanges();
        dbProduccion.SaveChanges();
    }
예제 #10
0
    public static QuickReceptorModel CrearOActualizarPrestadorPorRut(string RUTPrestador, string NombrePrestador, ClientesContablesModel objCliente, String tipoReceptor)
    {
        FacturaProduccionContext db = new FacturaProduccionContext();
        int existe = db.Receptores.Where(r => r.RUT == RUTPrestador && r.QuickEmisorModelID == objCliente.QuickEmisorModelID && r.tipoReceptor == tipoReceptor && r.ClientesContablesModelID == objCliente.ClientesContablesModelID).Count();

        if (existe < 1)
        {
            QuickReceptorModel objPrestadores = new QuickReceptorModel();
            try
            {
                objPrestadores.QuickEmisorModelID = objCliente.QuickEmisorModelID;
                objPrestadores.RUT                      = RUTPrestador;
                objPrestadores.RazonSocial              = NombrePrestador;
                objPrestadores.tipoReceptor             = tipoReceptor;
                objPrestadores.Direccion                = "1";
                objPrestadores.Giro                     = "1";
                objPrestadores.ClientesContablesModelID = objCliente.ClientesContablesModelID;


                db.Receptores.Add(objPrestadores);

                db.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw;
            }


            //agrego filtro para saber que clientes tiene el cliente contable
            //int  clienteEmisor = db.DBClientesContablesEmisor.Where(r => objCliente.QuickEmisorModelID == r.QuickReceptorModelID && r.ClientesContablesModelID == objCliente.ParametrosCliente.ClientesContablesModelID).Count();
            //ClientesContablesEmisorModel clientesContablesEmisor = ((from t1 in db.DBClientesContablesEmisor
            //                                                         where t1.QuickReceptorModelID == objCliente.QuickEmisorModelID && t1.ClientesContablesModelID == objCliente.ClientesContablesModelID

            //                                                         select t1
            //                   ).FirstOrDefault());

            ClientesContablesEmisorModel clientesContablesEmisor = db.DBClientesContablesEmisor.Where(x => x.QuickReceptorModelID == objCliente.QuickEmisorModelID && x.ClientesContablesModelID == objCliente.ClientesContablesModelID).FirstOrDefault();

            if (clientesContablesEmisor == null)
            {
                ClientesContablesEmisorModel clienteEmisor2 = new ClientesContablesEmisorModel();
                clienteEmisor2.ClientesContablesModelID = objCliente.ClientesContablesModelID;
                clienteEmisor2.QuickReceptorModelID     = objCliente.QuickEmisorModelID;
                db.DBClientesContablesEmisor.Add(clienteEmisor2);
            }

            db.SaveChanges();
            return(objPrestadores);
        }
        else
        {
            QuickReceptorModel objPrestadores = db.Receptores.Where(r => r.RUT == RUTPrestador && r.QuickEmisorModelID == objCliente.QuickEmisorModelID && r.tipoReceptor == tipoReceptor).First();

            ClientesContablesEmisorModel clientesContablesEmisor = db.DBClientesContablesEmisor.Where(t1 => t1.QuickReceptorModelID == objCliente.QuickEmisorModelID && t1.ClientesContablesModelID == objCliente.ClientesContablesModelID).FirstOrDefault();



            // db.DBClientesContablesEmisor.Where(r => objCliente.QuickEmisorModelID == r.QuickReceptorModelID && r.ClientesContablesModelID == objCliente.ParametrosCliente.ClientesContablesModelID).Count();

            if (clientesContablesEmisor == null)
            {
                ClientesContablesEmisorModel clienteEmisor = new ClientesContablesEmisorModel();
                clienteEmisor.ClientesContablesModelID = objCliente.ClientesContablesModelID;
                clienteEmisor.QuickReceptorModelID     = objCliente.QuickEmisorModelID;
                db.DBClientesContablesEmisor.Add(clienteEmisor);
                db.SaveChanges();
            }

            if (objPrestadores.RazonSocial == NombrePrestador)
            {
                return(objPrestadores);
            }
            else
            {
                objPrestadores.RazonSocial = NombrePrestador;
                db.Receptores.AddOrUpdate(objPrestadores);
                db.SaveChanges();
                return(objPrestadores);
            }
        }
    }