private void LoadTaxQualities(bdFacturacionElectronicaEntities entities)
        {
            var        taxqualities     = entities.tblCalidadTributaria.ToList();
            SelectList taxqualitiesList = new SelectList(taxqualities, "ID", "Nombre");

            ViewBag.taxqualitiesListName = taxqualitiesList;
        }
 public ActionResult LinkActivacion(string userId, string activactionCode)
 {
     try
     {
         if (!string.IsNullOrEmpty(userId) && !string.IsNullOrEmpty(activactionCode))
         {
             bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities();
             int  userIdFind          = int.Parse(userId);
             Guid activactionCodeFind = new Guid(activactionCode);
             var  activationRegister  = entities.UsuarioActivacion.Where(x => x.UsuarioID == userIdFind && x.ActivacionCodigo == activactionCodeFind).FirstOrDefault();
             if (activationRegister != null)
             {
                 ActivateUser(entities, userIdFind, activationRegister);
             }
             else
             {
                 var userModel = entities.tblUsuariosProveedor.SingleOrDefault(u => u.ID == userIdFind);
                 if (userModel != null && userModel.Estado.ToLower().Equals("activo"))
                 {
                     GenerateAlert("info", "Usuario activo", "El usuario ya se encuentra activo en el sistema de Facturación electrónica", "/Login");
                 }
             }
             return(View());
         }
         else
         {
             return(RedirectToAction("Index", "Login"));
         }
     }
     catch (Exception exception)
     {
         string errorMessage = exception.Message;
         return(RedirectToAction("http404", "Error"));
     }
 }
        public ActionResult Update(ActualizarDatosViewModel actualizarDatosViewModel)
        {
            try
            {
                BindTaxQuality(actualizarDatosViewModel);
                using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
                {
                    tblUsuariosProveedor userProvider = UpdateUserProvider(actualizarDatosViewModel, entities);

                    if (userProvider.Email.ToLower().Equals(actualizarDatosViewModel.Emaildb.ToLower()))
                    {
                        GenerateAlert("success", "Actualización éxitosa", "La actualización se ha realizado correctamente", "/Menu/MenuProveedor");
                    }
                    else
                    {
                        UsuarioActivacion userActivation = InsertUserActivation(userProvider);
                        SendActivationLinkEmail(userProvider, userActivation);
                        FormsAuthentication.SignOut();
                        GenerateAlert("success", "Actualización éxitosa", "La actualización se ha realizado correctamente, debido a que el email ha cambiado, se debe activar nuevamente la cuenta, verifique el link de activación que fue enviado al email.", "/");
                    }
                }
            }
            catch (DbEntityValidationException exception)
            {
                GenerateAlert("error", "error", "validación de modelo", string.Empty);
            }
            catch (Exception exception)
            {
                GenerateAlert("error", "error", exception.Message, string.Empty);
            }

            return(View("Index", actualizarDatosViewModel));
        }
        public ActionResult Index(ActualizarDatosViewModel actualizarDatosViewModel)
        {
            try
            {
                string userNitLogged = HttpContext.User.Identity.Name;
                using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
                {
                    LoadTaxQualities(entities);
                    DeleteModalStateErrors();
                    if (ModelState.IsValid)
                    {
                        LoadInfoUserProvider(actualizarDatosViewModel, userNitLogged, entities);
                    }
                }
            }
            catch (DbEntityValidationException)
            {
                GenerateAlert("error", "error", "validación de modelo", string.Empty);
            }
            catch (Exception exception)
            {
                GenerateAlert("error", "error", exception.Message, string.Empty);
            }

            return(View(actualizarDatosViewModel));
        }
        public ActionResult AuthorizeProvider(LoginModelView userModel)
        {
            bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities();
            int?   userId  = entities.Validate_User(userModel.providerModel.UsuarioNit, userModel.providerModel.Password).FirstOrDefault();
            string message = string.Empty;

            switch (userId.Value)
            {
            case -1:
                message = "Usuario o clave incorrecta";
                break;

            case -2:
                message = "La cuenta no ha sido activada";
                break;

            default:
                FormsAuthentication.SetAuthCookie(userModel.providerModel.UsuarioNit, true);
                if (!string.IsNullOrEmpty(Request.Form["ReturnUrl"]))
                {
                    return(RedirectToAction(Request.Form["ReturnUrl"].Split('/')[2]));
                }
                else
                {
                    return(RedirectToAction("MenuProveedor", "Menu"));
                }
            }

            ViewBag.Message = message;
            userModel.providerModel.FEErrorMessage = message;
            return(View("Index", userModel));
        }
 public JsonResult ValidateNitProvider(string providerNit)
 {
     using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
     {
         var provider = entities.tblProveedor.Where(p => p.Nit.ToLower() == providerNit.ToLower()).FirstOrDefault();
         return(Json(provider, JsonRequestBehavior.AllowGet));
     }
 }
Exemple #7
0
 public ActionResult Create(tblUsuariosProveedor userModel)
 {
     using (bdFacturacionElectronicaEntities db = new bdFacturacionElectronicaEntities())
     {
         string prueba = "";
         return(RedirectToAction("Index", "Login"));
     }
 }
 private void BindTaxQuality(ActualizarDatosViewModel actualizarDatosViewModel)
 {
     using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
     {
         var        taxqualities     = entities.tblCalidadTributaria.ToList().Where(t => t.ID == actualizarDatosViewModel.IDCalidadTributaria);
         SelectList taxqualitiesList = new SelectList(taxqualities, "ID", "Nombre");
         ViewBag.taxqualitiesListName = taxqualitiesList;
     }
 }
Exemple #9
0
        // GET: Inscripcion
        public ActionResult Inscripcion()
        {
            bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities();
            var        taxqualities     = entities.tblCalidadTributaria.ToList();
            SelectList taxqualitiesList = new SelectList(taxqualities, "ID", "Nombre");

            ViewBag.taxqualitiesListName = taxqualitiesList;
            return(View());
        }
 private UsuarioActivacion InsertUserActivation(tblUsuariosProveedor userModel)
 {
     using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
     {
         UsuarioActivacion userActivation = new UsuarioActivacion();
         userActivation.UsuarioID        = userModel.ID;
         userActivation.ActivacionCodigo = Guid.NewGuid();
         entities.UsuarioActivacion.Add(userActivation);
         entities.SaveChanges();
         return(userActivation);
     }
 }
 private tblUsuariosProveedor InsertUserProvider(InscripcionViewModel inscripcionViewModel)
 {
     using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
     {
         HttpFileCollectionBase files              = Request.Files;
         HttpPostedFileBase     fileRut            = Request.Files["Rut"];
         HttpPostedFileBase     fileCamaraComercio = Request.Files["CamaraComercio"];
         string locationRut                = GetLocationFile("RUT", inscripcionViewModel, fileRut);
         string locationCamaraComercio     = GetLocationFile("CAMARACOMERCIO", inscripcionViewModel, fileCamaraComercio);
         tblUsuariosProveedor providerUser = SetModelProviderUser(inscripcionViewModel, locationRut, locationCamaraComercio);
         entities.tblUsuariosProveedor.Add(providerUser);
         entities.SaveChanges();
         return(providerUser);
     }
 }
        public ActionResult CambiarClave(CambioClaveViewModel cambioClaveViewModel)
        {
            try
            {
                string userNitLogged = HttpContext.User.Identity.Name;
                using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
                {
                    tblUsuariosProveedor userProvider = entities.tblUsuariosProveedor.Where(u => u.UsuarioNit == userNitLogged).FirstOrDefault();
                    string keyUser = userProvider.Password;
                    if (keyUser.Equals(cambioClaveViewModel.PasswordActual))
                    {
                        if (cambioClaveViewModel.PasswordActual.Equals(cambioClaveViewModel.NuevaPassword))
                        {
                            GenerateAlert("error", "Clave nueva igual a la clave actual", "La clave nueva no puede ser igual a la clave actual", string.Empty);
                            return(View("Index", cambioClaveViewModel));
                        }
                        else
                        {
                            if (cambioClaveViewModel.NuevaPassword.Equals(cambioClaveViewModel.ConfirmarNuevaPassword))
                            {
                                updatePassword(userProvider, cambioClaveViewModel, entities);
                                GenerateAlert("success", "Cambio de clave éxitosa", "La clave ha sido cambiada correctamente", "/Menu/MenuProveedor");
                            }
                            else
                            {
                                GenerateAlert("error", "Claves nuevas no coinciden", "Las nuevas claves no coinciden", string.Empty);
                            }
                        }
                    }
                    else
                    {
                        GenerateAlert("error", "Clave actual inválida", "La clave actual no coincide con la registrada en el sistema", string.Empty);
                    }
                }
            }
            catch (DbEntityValidationException)
            {
                GenerateAlert("error", "error", "validación de modelo", string.Empty);
            }
            catch (Exception exception)
            {
                GenerateAlert("error", "error", exception.Message, string.Empty);
            }

            return(View("Index", cambioClaveViewModel));
        }
        private void LoadCompaniesByProvider(string userNitLogged, bdFacturacionElectronicaEntities entities)
        {
            var companiesByProvider = (from empresaProveedor in entities.tblEmpresaPorProveedor
                                       join empresa in entities.tblEmpresa
                                       on empresaProveedor.IDEmpresa equals empresa.ID
                                       where empresaProveedor.UsuarioNit == userNitLogged
                                       select new
            {
                ID = empresaProveedor.IDEmpresa,
                Nombre = empresa.Nombre
            }).ToList();


            SelectList CompaniesList = new SelectList(companiesByProvider, "ID", "Nombre");

            ViewBag.companies = CompaniesList;
        }
 public ActionResult Authorize(tblUsuariosProveedor userModel)
 {
     using (bdFacturacionElectronicaEntities db = new bdFacturacionElectronicaEntities())
     {
         var user = db.tblUsuariosProveedor.Where(u => u.UsuarioNit.Equals(userModel.UsuarioNit) && u.Password.Equals(userModel.Password)).FirstOrDefault();
         if (user == null)
         {
             userModel.LoginErrorMessage = "Usuario o password inválido";
             return(View("Index", userModel));
         }
         else
         {
             Session["UserID"]   = user.ID;
             Session["Username"] = user.RazonSocial;
             return(RedirectToAction("MenuProveedor", "Menu"));
         }
     }
 }
 public ActionResult RadicarSoporte(RadicacionViewModel radicacionViewModel)
 {
     try
     {
         string userNitLogged = HttpContext.User.Identity.Name;
         using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
         {
             LoadInfoProvider(radicacionViewModel, userNitLogged, entities);
             LoadCompaniesByProvider(userNitLogged, entities);
             LoadOrdersType(userNitLogged, entities);
         }
     }
     catch (DbEntityValidationException)
     {
         GenerateAlert("error", "error", "validación de modelo", string.Empty);
     }
     catch (Exception exception)
     {
         GenerateAlert("error", "error", exception.Message, string.Empty);
     }
     return(View(radicacionViewModel));
 }
        public int ValidateStatusUser(InscripcionViewModel inscripcionViewModel)
        {
            //------------------------------------------------------------------------------
            //     Status 2 = No existe en la tabla de proveedores activos
            //     Status 1 = El usuario ya existe en la tabla de usuarios
            //     Status 0 = El usuario no está registrado
            //------------------------------------------------------------------------------

            using (bdFacturacionElectronicaEntities entities = new bdFacturacionElectronicaEntities())
            {
                var existUser = entities.tblUsuariosProveedor.Where(u => u.UsuarioNit == inscripcionViewModel.UserNit).FirstOrDefault();
                if (existUser != null)
                {
                    return(1);
                }
                else
                {
                    var IsActiveProvider = entities.tblProveedor.Where(p => p.Nit == inscripcionViewModel.UserNit).FirstOrDefault();
                    return((IsActiveProvider != null) ? 0 : 2);
                }
            }
        }
 private void ActivateUser(bdFacturacionElectronicaEntities entities, int userIdFind, UsuarioActivacion activationRegister)
 {
     activationRegister = entities.UsuarioActivacion.Remove(activationRegister);
     if (activationRegister != null)
     {
         var userModel = entities.tblUsuariosProveedor.SingleOrDefault(u => u.ID == userIdFind);
         if (userModel != null)
         {
             userModel.UsuarioNit          = userModel.UsuarioNit.ToUpper();
             userModel.Password            = userModel.Password;
             userModel.RazonSocial         = userModel.RazonSocial.ToUpper();
             userModel.IDCalidadTributaria = userModel.IDCalidadTributaria;
             userModel.Email              = userModel.Email.ToUpper();
             userModel.Telefono           = userModel.Telefono.ToUpper();
             userModel.Direccion          = userModel.Direccion.ToUpper();
             userModel.RepresentanteLegal = userModel.RepresentanteLegal.ToUpper();
             userModel.RutaRut            = userModel.RutaRut;
             userModel.RutaCamaraComercio = userModel.RutaCamaraComercio;
             userModel.Estado             = "ACTIVO";
         }
         entities.SaveChanges();
         GenerateAlert("success", "Activación de cuenta", "Su cuenta ha sido activada correctamente, ya puede iniciar sesión", "/");
     }
 }
        private tblUsuariosProveedor UpdateUserProvider(ActualizarDatosViewModel actualizarDatosViewModel, bdFacturacionElectronicaEntities entities)
        {
            string userNit = HttpContext.User.Identity.Name;
            HttpFileCollectionBase files        = Request.Files;
            tblUsuariosProveedor   userProvider = entities.tblUsuariosProveedor.Where(u => u.UsuarioNit == userNit).FirstOrDefault();

            userProvider.UsuarioNit          = userNit;
            userProvider.RazonSocial         = actualizarDatosViewModel.RazonSocial;
            userProvider.IDCalidadTributaria = actualizarDatosViewModel.IDCalidadTributaria;
            userProvider.Email              = actualizarDatosViewModel.Email;
            userProvider.Telefono           = actualizarDatosViewModel.Telefono;
            userProvider.Direccion          = actualizarDatosViewModel.Direccion;
            userProvider.RepresentanteLegal = actualizarDatosViewModel.RepresentanteLegal;

            if (!string.IsNullOrEmpty(actualizarDatosViewModel.Rut))
            {
                HttpPostedFileBase fileRut     = Request.Files["Rut"];
                string             locationRut = GetLocationFile("RUT", actualizarDatosViewModel, fileRut);
                userProvider.RutaRut = locationRut;
            }

            if (!string.IsNullOrEmpty(actualizarDatosViewModel.CamaraComercio))
            {
                HttpPostedFileBase fileCamaraComercio     = Request.Files["CamaraComercio"];
                string             locationCamaraComercio = GetLocationFile("CAMARACOMERCIO", actualizarDatosViewModel, fileCamaraComercio);
                userProvider.RutaCamaraComercio = locationCamaraComercio;
            }

            entities.SaveChanges();
            return(userProvider);
        }
        private static void LoadInfoProvider(RadicacionViewModel radicacionViewModel, string userNitLogged, bdFacturacionElectronicaEntities entities)
        {
            tblUsuariosProveedor userProvider = entities.tblUsuariosProveedor.Where(u => u.UsuarioNit == userNitLogged).FirstOrDefault();

            radicacionViewModel.UserNit     = userProvider.UsuarioNit;
            radicacionViewModel.RazonSocial = userProvider.RazonSocial;
        }
 private void LoadOrdersType(string userNitLogged, bdFacturacionElectronicaEntities entities)
 {
 }
 private void updatePassword(tblUsuariosProveedor userProvider, CambioClaveViewModel cambioClaveViewModel, bdFacturacionElectronicaEntities entities)
 {
     userProvider.Password = cambioClaveViewModel.NuevaPassword;
     entities.SaveChanges();
 }
        private void LoadInfoUserProvider(ActualizarDatosViewModel actualizarDatosViewModel, string userNitLogged, bdFacturacionElectronicaEntities entities)
        {
            tblUsuariosProveedor userProvider = entities.tblUsuariosProveedor.Where(u => u.UsuarioNit == userNitLogged).FirstOrDefault();

            actualizarDatosViewModel.UserNit             = userProvider.UsuarioNit;
            actualizarDatosViewModel.RazonSocial         = userProvider.RazonSocial;
            actualizarDatosViewModel.IDCalidadTributaria = (userProvider.IDCalidadTributaria.HasValue) ? userProvider.IDCalidadTributaria.Value : 0;
            actualizarDatosViewModel.Email              = userProvider.Email;
            actualizarDatosViewModel.Emaildb            = userProvider.Email;
            actualizarDatosViewModel.Telefono           = userProvider.Telefono;
            actualizarDatosViewModel.Direccion          = userProvider.Direccion;
            actualizarDatosViewModel.RepresentanteLegal = userProvider.RepresentanteLegal;
            actualizarDatosViewModel.Rut            = GetUrlFile(userProvider.RutaRut);
            actualizarDatosViewModel.CamaraComercio = GetUrlFile(userProvider.RutaCamaraComercio);
        }