예제 #1
0
        public ActionResult EditarUsuario(UsuarioVista model, HttpPostedFileBase fichero)
        {
            if (model != null && ModelState.IsValid)
            {
                //Buscamos el usuario a modificar...
                var usu = DbContext.Usuario.Find(model.IdUsuario);

                usu.nombre     = model.Nombre;
                usu.apellidos  = model.Apellidos;
                usu.nick       = model.Nick;
                usu.login      = model.Login;
                usu.idRol      = model.IdRol;
                usu.newsletter = model.Newsletter;
                usu.linkedin   = model.Linkedin;

                if (fichero != null && fichero.ContentLength > 0)
                {
                    //guardamos el fichero de la foto con nombre usu + id
                    var nombreFichero = fichero.FileName;
                    var extension     = nombreFichero.Substring(nombreFichero.LastIndexOf(".", StringComparison.Ordinal));
                    var rutacompleta  = Server.MapPath("~/uploads/fotos") + @"\usu" + model.IdUsuario + extension;
                    fichero.SaveAs(rutacompleta);
                    usu.foto = "~/uploads/fotos/usu" + model.IdUsuario + extension;
                }

                DbContext.SaveChanges();
            }

            return(RedirectToAction("Index", "GestionUsuarios"));
        }
예제 #2
0
        public HttpResponseMessage Login(HttpRequestMessage request, [FromBody] UserInformation userInformation)
        {
            string errorMessage = string.Empty;


            TransactionalInformation transaction = new TransactionalInformation();

            string emailAddress = userInformation.EmailAddress;
            string password     = userInformation.Password;

            UsuarioVista user = UsuarioBusiness.ValidaUsuario(emailAddress, password, out transaction);

            if (transaction.ReturnStatus == false)
            {
                var badResponse = Request.CreateResponse <TransactionalInformation>(HttpStatusCode.BadRequest, transaction);
                return(badResponse);
            }

            userInformation.UserID = user.id_persona_institucional;

            string tokenString = TokenManager.CreateToken(userInformation);

            userInformation.UserID       = user.id_persona_institucional;
            userInformation.EmailAddress = user.Mail;
            userInformation.FirstName    = user.Nombre;
            userInformation.LastName     = user.Apellido;
            userInformation.AddressLine1 = user.Domicilio;
            //userInformation.AddressLine2 = user.AddressLine2;
            //userInformation.City = user.;
            //userInformation.State = user.State;
            //userInformation.ZipCode = user.ZipCode;

            userInformation.ReturnStatus  = true;
            userInformation.ReturnMessage = transaction.ReturnMessage;

            var response = Request.CreateResponse <UserInformation>(HttpStatusCode.OK, userInformation);

            response.Headers.Add("Access-Control-Expose-Headers", "Authorization");
            response.Headers.Add("Authorization", tokenString);
            return(response);
        }
예제 #3
0
        public List <UsuarioVista> listarusuariosxrol(int usuario)
        {
            using (var db = new Mapeo("public"))
            {
                List <UsuarioVista> lista = null;
                UsuarioVista        us    = new UsuarioVista();
                us.id_usua     = 0;
                us.nombre_usua = "Select";
                lista          = new List <UsuarioVista>();
                lista.Add(us);
                var query = lista;
                var usus  = db.usuario.ToList <Usuario>().Where(x => x.rol_id == usuario)
                            .Select(m => new UsuarioVista
                {
                    id_usua     = m.id_usua,
                    nombre_usua = m.nombre_usua + " " + m.apellido_usua
                }).ToList();

                return(query.Union(usus).ToList <UsuarioVista>());
            }
        }
예제 #4
0
        public ActionResult NuevoUsuario(UsuarioVista model, HttpPostedFileBase fichero)
        {
            if (model != null && ModelState.IsValid)
            {
                try
                {
                    var usu = new Usuario
                    {
                        nombre       = model.Nombre,
                        apellidos    = model.Apellidos,
                        nick         = model.Nick,
                        login        = model.Login,
                        ultimoupdate = System.DateTime.Now,
                        idRol        = model.IdRol,
                        password     = model.Login,
                        newsletter   = model.Newsletter,
                        linkedin     = model.Linkedin
                    };
                    //Le pongo como password el login de momento y ojo sin cifrar!!

                    //Necesito guardar previamente los datos de contacto
                    var dc = new DatosContacto
                    {
                        email     = model.DatosContacto.email,
                        direccion = model.DatosContacto.direccion,
                        telefono  = model.DatosContacto.telefono
                    };

                    DbContext.DatosContacto.Add(dc);
                    DbContext.SaveChanges();

                    usu.idDatosContacto = dc.idDatosContacto;

                    //Y también necesito un idCurriculum

                    var cv = new Curriculum
                    {
                        Titulo = "Rellenar por el usuario"
                    };

                    DbContext.Curriculum.Add(cv);
                    DbContext.SaveChanges();

                    usu.idCurriculum = cv.idCurriculum;

                    //Ahora la foto
                    if (fichero != null && fichero.ContentLength > 0)
                    {
                        //guardo previamente el usuario para poder asignar su id a la foto
                        usu.foto = "sin foto";
                        DbContext.Usuario.Add(usu);
                        DbContext.SaveChanges();

                        var nombreFichero = fichero.FileName;
                        var extension     = nombreFichero.Substring(nombreFichero.LastIndexOf(".", StringComparison.Ordinal));
                        var rutacompleta  = Server.MapPath("~/uploads/fotos") + @"\usu" + usu.idUsuario + extension;
                        fichero.SaveAs(rutacompleta);
                        usu.foto = "~/uploads/fotos/usu" + usu.idUsuario + extension;

                        DbContext.SaveChanges();
                    }
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("UcemeError", Utilidades.ErrorManager.ErrorCodeToString(Utilidades.ErrorCodes.ErrorAddingItem) + " " + e.Message);
                    return(RedirectToAction("NuevoUsuario", "GestionUsuarios", model));
                }
            }

            return(RedirectToAction("Index", "GestionUsuarios"));
        }