public async Task <UsuariosDTO> VerificarUsuarioConEmailUsuarioYDeviceId(Usuarios usuarioParaVerificar) { using (SportsGoEntities context = new SportsGoEntities(false)) { AuthenticateRepository authenticateRepo = new AuthenticateRepository(context); UsuariosDTO usuarioExistente = await authenticateRepo.VerificarUsuarioConEmailUsuarioYDeviceId(usuarioParaVerificar); if (usuarioExistente != null) { Usuarios usuarioModificado = await authenticateRepo.ActualizarFechaUltimoAcceso(usuarioExistente.Consecutivo); await context.SaveChangesAsync(); } return(usuarioExistente); } }
public async Task AuthenticateRepository_ActualizarFechaAcceso_ShouldUpdate() { using (SportsGoEntities context = new SportsGoEntities(false)) { AuthenticateRepository authenticateRepo = new AuthenticateRepository(context); Usuarios usuarioParaVerificar = new Usuarios { Usuario = "Sergio", Clave = "Sergio" }; UsuariosDTO usuarioVerificado = await authenticateRepo.VerificarUsuario(usuarioParaVerificar); Usuarios usuarioExistente = await authenticateRepo.ActualizarFechaUltimoAcceso(usuarioParaVerificar.Consecutivo); Assert.IsNotNull(usuarioVerificado); Assert.AreNotEqual(usuarioVerificado.Consecutivo, 0); Assert.AreEqual(usuarioVerificado.UltimoAcceso.Value.Date, DateTime.Today); } }
public async Task <UsuariosDTO> VerificarUsuario(Usuarios usuarioParaVerificar) { using (SportsGoEntities context = new SportsGoEntities(false)) { AuthenticateRepository authenticateRepo = new AuthenticateRepository(context); UsuariosDTO usuarioVerificado = await authenticateRepo.VerificarUsuario(usuarioParaVerificar); if (usuarioVerificado != null) { Usuarios usuarioExistente = await authenticateRepo.ActualizarFechaUltimoAcceso(usuarioVerificado.Consecutivo); // Se vencio el plan if (usuarioVerificado.PlanesUsuarios.Vencimiento < DateTime.Now && usuarioVerificado.TipoPerfil != TipoPerfil.Administrador) { PlanesBusiness planBusiness = new PlanesBusiness(); WrapperSimpleTypesDTO wrapperCambiarPlan = await planBusiness.CambiarPlanUsuarioADefaultPerfilPorVencimiento(usuarioVerificado.PlanesUsuarios); usuarioVerificado = await authenticateRepo.VerificarUsuario(usuarioParaVerificar); } await context.SaveChangesAsync(); if (usuarioVerificado.TipoPerfil == TipoPerfil.Administrador) { AdministracionRepository adminRepo = new AdministracionRepository(context); ImagenesPerfilAdministradores imagenPerfilBuscada = await adminRepo.BuscarImagenPerfilAdministrador(usuarioVerificado.Consecutivo); if (imagenPerfilBuscada != null) { usuarioVerificado.CodigoImagenPerfilAdmin = imagenPerfilBuscada.CodigoArchivo; } } } return(usuarioVerificado); } }