public virtual UsuarioViewModel Registracion(UsuarioViewModel userView) { if (!DependencyFactory.Resolve <IUsuarioDA>().ExisteUsuario(userView.Mail)) { var user = userView.MapperClass <Usuario>(TypeMapper.IgnoreCaseSensitive); TipoUsuario tipoUsuario = DependencyFactory.Resolve <IBaseDA <TipoUsuario> >() .GetAll() .FirstOrDefault(o => o.Descripcion.Equals(userView.TipoUsuario)); if (tipoUsuario != null) { user.TipoUsuario = tipoUsuario; user.DatosPersona = new DatosPersona { Nombre = userView.Nombre, Apellido = userView.Apellido }; switch (user.TipoUsuario.Descripcion) { case "Jugador": user.Jugador = new Jugador { }; break; case "Entrenador": user.Entrenador = new Entrenador { }; break; case "Intermediario": user.Intermediario = new Intermediario { }; break; case "Club": user.Club = new Club { }; break; case "Video Analista": user.VideoAnalista = new VideoAnalista { }; break; } } else { throw new ExceptionBusiness(5, "Error en selección de tipo de usuario."); } user.Deporte = userView.DeporteId.HasValue ? DependencyFactory.Resolve <IBaseDA <Deporte> >().GetById(userView.DeporteId) : DependencyFactory.Resolve <IBaseDA <Deporte> >().GetAll().First(); DependencyFactory.Resolve <IUsuarioDA>().Save(user); return(FillViewModel.FillUsuarioViewModel(user)); } else { throw new ExceptionBusiness(4, "Usuario ya existe."); } }
public virtual UsuarioViewModel LoginUser(string mail, string password) { var user = DependencyFactory.Resolve <IUsuarioDA>().LoginBackOfficeUser(mail, password); if (user == null) { throw new ExceptionBusiness(2, "Usuario/Contraseña no encontrado"); } var userReturn = FillViewModel.FillUsuarioViewModel(user); user.UltimoLogin = DateTime.Now; DependencyFactory.Resolve <IUsuarioDA>().Save(user); userReturn.MenuUsuario = DependencyFactory.Resolve <IUsuarioDA>().ObtenerMenuTipoUsuario(user.TipoUsuario.Id); return(userReturn); }
public virtual UsuarioViewModel ActualizarPassword(UsuarioCambioPasswordViewModel usuarioCambioPassword) { var usuario = DependencyFactory.Resolve <IUsuarioDA>().LoginUser(usuarioCambioPassword.Mail, usuarioCambioPassword.OldPassword); if (usuario == null) { throw new ExceptionBusiness(3, "Invalido usuario y password"); } byte[] data = Convert.FromBase64String(usuarioCambioPassword.NewPassword); string decodedPassword = Encoding.UTF8.GetString(data); usuario.Password = decodedPassword; var user = DependencyFactory.Resolve <IUsuarioDA>().ActualizarPassword(usuario); var userReturn = FillViewModel.FillUsuarioViewModel(user); userReturn.MenuUsuario = DependencyFactory.Resolve <IUsuarioDA>().ObtenerMenuTipoUsuario(user.TipoUsuario.Id); return(userReturn); }