Ejemplo n.º 1
0
        public ActionResult Registrarse(FrmRegistroCliente registroCliente)
        {
            if (registroCliente.CUIL == null && registroCliente.Direccion == null && registroCliente.Email == null && registroCliente.Psw == null && registroCliente.RazonSocial == null && registroCliente.Telefono == null)
            {
                registroCliente.CUIL        = registroCliente.CUIL_Eng;
                registroCliente.Direccion   = registroCliente.Direccion_Eng;
                registroCliente.Email       = registroCliente.Email_Eng;
                registroCliente.Psw         = registroCliente.Psw_Eng;
                registroCliente.RazonSocial = registroCliente.RazonSocial_Eng;
                registroCliente.Telefono    = registroCliente.Telefono_Eng;
            }

            var ln = new NegocioCuenta();

            var ws = new WebService();

            var mensajeria = new Mensajeria();

            TraducirPagina((String)Session["IdiomaApp"]);

            Session["ErrorRegistro"] = null;
            Session["Excepcion"]     = null;

            // Usuario existente, solo devuelvo el error.
            if (ln.ValidarUsuario(registroCliente.Email) == false)
            {
                if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null)
                {
                    Session["ErrorRegistro"] = "EL CORREO DE REGISTRO YA EXISTE";
                }
                else

                {
                    Session["ErrorRegistro"] = "THAT USER ALREADY EXIST";
                }

                return(RedirectToAction("Registrarse"));
            }

            if (ws.ValidarCUIT(registroCliente.CUIL) == false)
            {
                if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null)
                {
                    Session["ErrorRegistro"] = "EL CUIT ES INVÁLIDO";
                }
                else

                {
                    Session["ErrorRegistro"] = "INVALID CUIT NUMBER";
                }

                return(RedirectToAction("Registrarse"));
            }

            var usuario = new Usuario();

            usuario.RazonSocial = registroCliente.RazonSocial;
            usuario.Email       = registroCliente.Email;
            usuario.Psw         = registroCliente.Psw;
            usuario.CUIL        = registroCliente.CUIL.ToString();
            usuario.Direccion   = registroCliente.Direccion;
            usuario.Localidad   = registroCliente.Localidad;
            usuario.PerfilUsr   = new PerfilUsr {
                Id = 3, Descripcion = "Cliente"
            };
            usuario.Idioma = new Idioma {
                Id = 1, Descripcion = "Español", Abreviacion = "Esp"
            };
            usuario.Estado    = "S";
            usuario.FechaAlta = DateTime.Now;
            usuario.FechaBaja = new DateTime(2000, 01, 01);

            // Características propias de Clientes.
            usuario.Nombre   = registroCliente.RazonSocial;
            usuario.Apellido = registroCliente.RazonSocial;
            usuario.Usr      = registroCliente.Email;
            usuario.Telefono = registroCliente.Telefono;

            // Registro Usuario.
            var usrSesion = ln.RegistrarUsuario(usuario);

            ln.OtorgarPermisosCliente(usrSesion.Id);

            try
            {
                // Envío correo de bienvenida.
                var cuerpoMsj = "Bienvenido a Implantagraf. Muchas gracias por confiar en nosotros, esperamos que encuentres lo que buscas y no dudes en consultarnos por lo que necesites.";
                var asuntoMsj = "Bienvenido!!";
                mensajeria.EnviarCorreo("*****@*****.**", usuario.Email, asuntoMsj, cuerpoMsj);
            }
            catch
            {
            }

            if (usrSesion.Nombre != "" && usrSesion.PerfilUsr.Descripcion != "")
            {
                Session["IdUsuario"]          = usrSesion.Id.ToString();
                Session["NombreUsuario"]      = usrSesion.Nombre;
                Session["RazonSocialUsuario"] = usrSesion.RazonSocial;
                Session["PerfilUsuario"]      = usrSesion.PerfilUsr.Descripcion;
                Session["EmailUsuario"]       = usrSesion.Email;
                Session["CodUsuario"]         = usrSesion.Id;
                Session["DireccionUsuario"]   = usrSesion.Direccion;

                Session["UsrLogin"] = usrSesion.Usr;

                HttpCookie cookie = new HttpCookie("UsrLogin");
                cookie.Value = usrSesion.Usr;
                Response.Cookies.Add(cookie);

                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                var audi = new Auditoria();
                audi.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR CAMBIO CLAVE", "ERROR LEVE", "Error al intentar registrar un Usuario.");
                return(RedirectToAction("Index", "Home"));
            }
        }