/// <summary> /// Validar usuario y clave de un cliente especifico. /// </summary> /// <param name="login"></param> /// <returns></returns> public void RegistrarUsuario(LoginFilter login) { ILoginRepository loginRepository = DependencyInjectionContainer.Resolve <ILoginRepository>(); ILoginDomain loginDomain = DependencyInjectionContainer.Resolve <ILoginDomain>(); Usuario usuario = new Usuario() { Apellido = login.Apellido, Cedula = login.Cedula, Clave = login.Clave, FechaCreacion = DateTime.Now, Login = login.Login, Nombre = login.Nombre }; //Verificar si el usuario ya esta registrado. bool UsuarioRegistrado = loginDomain.ValidarUsuarioRegistrado(usuario.Cedula, loginRepository); //Registrar el usuario si no existe if (!UsuarioRegistrado) { loginRepository.RegistrarUsuario(usuario); } else { throw new BussinesException(Messages.ErrorUsuarioRegistrado); } }
public async Task <UserDTO> Login(LoginFilter filter, CancellationToken cancellationToken = default) { try { var user = await _userQueryHandler.HandleAsync(filter, cancellationToken); if (user == null) { throw new ArgumentNullException(nameof(user)); } if (!user.Active) { throw new InvalidOperationException("user is currently not active."); } // create token data var tokenData = new TokenData(user.Company, user.Name, user.Email, user.CPF); // create and save a token for the logged user user.Token = _securityTokenService.CreateToken(tokenData); var loginCommand = new LoginUserCommand(user.Id, user.Token); await _userCommandHandler.ExecuteAsync(loginCommand, cancellationToken); return(user); } catch (Exception ex) { throw ex; } }
public async Task <IActionResult> Login([FromBody] LoginRequest request, CancellationToken cancellationToken = default) { var response = new LoginResponse(); try { var filter = new LoginFilter(request.Company, request.CPF, request.Password); var user = await _userAppService.Login(filter, cancellationToken); if (user == null) { response.StatusCode = 404; response.Messages.Add(ResponseMessage.Create("", "Cannot find user with this parameters.")); return(NotFound(response)); } response.StatusCode = 200; response.Data = user.Token; return(Ok(response)); } catch (Exception ex) { response.StatusCode = 500; response.Messages.Add(ResponseMessage.Create(ex, "")); return(StatusCode(500, response)); } }
public ActionResult ShowUserTickets() { int userId = LoginFilter.GetUserId(); TicketRepository repository = new TicketRepository(); List <Ticket> tickets = repository.GetAll(); List <Ticket> userTickets = new List <Ticket>(); foreach (var tick in tickets) { if (tick.UserId == userId) { userTickets.Add(tick); } else { ViewBag.Message = "This user has no tickets yet!"; // return RedirectToAction("Index", "Home"); } } TicketsListViewModel model = new TicketsListViewModel(); model.Tickets = userTickets; return(View(model)); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } var jwtSecret = Configuration["jwt.secret"]; var configuration = new OcelotPipelineConfiguration { AuthenticationMiddleware = async(ctx, next) => { LoginFilter loginFilter = new LoginFilter(); string json = ""; var flag = loginFilter.NeedLogin(ctx.HttpContext, Configuration, out json); if (!flag) { await ctx.HttpContext.Response.WriteAsync(json); return; } await next.Invoke(); } }; app.UseOcelot(configuration).Wait(); app.Run(async(context) => { await context.Response.WriteAsync(""); }); }
public ActionResult ShowTeacherSubjects() { int userId = LoginFilter.GetUserId(); SubjectRepository repository = new SubjectRepository(); List <Subject> subjects = repository.GetAll(); List <Subject> teacherSubjects = new List <Subject>(); foreach (var subject in subjects) { if (subject.TeacherId == userId) { teacherSubjects.Add(subject); } else { ViewBag.Message = "This user has no subjects yet!"; } } SubjectListViewModel model = new SubjectListViewModel(); model.Subjects = teacherSubjects; return(View(model)); }
public void ValidarUsuarioTest() { LoginApplication target = new LoginApplication(); UsuarioDTO usuario = new UsuarioDTO(); LoginFilter filtro = new LoginFilter(); filtro.Login = "******"; filtro.Clave = "tnsclave"; usuario = target.ValidarUsuario(filtro); Assert.IsNotNull(usuario); }
public User loginUser(LoginFilter filter) { User userToLogin = electContext.Users.FirstOrDefault(u => u.Username == filter.Username); string userPassword = UserUtils.getPasswordHash(filter.Password, userToLogin.salt); if (userToLogin.Password == userPassword) { return(userToLogin); } return(null); }
public async Task <UserDTO> HandleAsync(LoginFilter filter, CancellationToken cancellationToken = default) { try { ValidateFilter(filter); var user = await _userRepository.GetOneAsync(filter, cancellationToken); return(user.ToDTO()); } catch (Exception ex) { throw ex; } }
public IActionResult LoginUser([FromBody] LoginFilter filter) { if (ModelState.IsValid) { Users usersModel = new Users(electContext); User user = usersModel.loginUser(filter); if (user != null) { return(Ok(new { id = user.ID, username = user.Username, LIK = user.LIK, role = user.Role.ToString("g"), isCastingDone = user.isCastingDone })); } } return(BadRequest()); }
public ActionResult Create(int id) { int userId = LoginFilter.GetUserId(); Ticket ticket = new Ticket(); ticket.EventId = id; ticket.UserId = userId; var repository = new TicketRepository(); repository.Insert(ticket); return(RedirectToAction("Index")); }
public ActionResult ShowProfile() { int id = LoginFilter.GetUserId(); UserRepository repository = new UserRepository(); UserEditViewModel model = new UserEditViewModel(); User user = repository.GetById(id); model.Id = LoginFilter.GetUserId(); model.ImgURL = user.ImgURL; model.Username = user.Username; model.Password = user.Password; model.Email = user.Email; model.FirstName = user.FirstName; model.LastName = user.LastName; user.IsAdmin = model.IsAdmin; return(View(model)); }
public ActionResult Delete(UserDeleteViewModel model) { int id = LoginFilter.GetUserId(); UserRepository repository = new UserRepository(); if (model.Id.ToString() != String.Empty) { repository.Delete(model.Id); } if (model.Id == id) { return(RedirectToAction("Logout", "Home")); } else { return(RedirectToAction("Index")); } }
public ActionResult ShowProfile() { int id = LoginFilter.GetUserId(); TeacherRepository repository = new TeacherRepository(); CRUDTeacherViewModel model = new CRUDTeacherViewModel(); Teacher teacher = repository.GetById(id); model.Id = LoginFilter.GetUserId(); model.ImgURL = teacher.ImgURL; model.Username = teacher.Username; model.Password = teacher.Password; model.Email = teacher.Email; model.FirstName = teacher.FirstName; model.LastName = teacher.LastName; teacher.IsAdmin = model.IsAdmin; model.Subject = teacher.Subject; model.IsTeacher = teacher.IsTeacher; return(View(model)); }
public IActionResult RegistrarUsuario([FromBody] LoginFilter login) { try { if (login == null) { return(BadRequest(BadRequestError)); } new LoginApplication().RegistrarUsuario(login); return(Ok()); } catch (BussinesException ex) { return(StatusCode((int)HttpStatusCode.Conflict, ex.Message)); } catch (Exception ex) { logger.Error(ex, InternalServerErrorRegistrarUsuario); return(StatusCode((int)HttpStatusCode.InternalServerError, InternalServerErrorRegistrarUsuario)); } }
/// <summary> /// Validar usuario y clave de un cliente especifico. /// </summary> /// <param name="login"></param> /// <returns></returns> public UsuarioDTO ValidarUsuario(LoginFilter filtro) { var usuarioValido = new UsuarioDTO(); using (AerolineaTnsEntities context = new AerolineaTnsEntities()) { var usuario = context.Set <Usuario>() .Where(item => item.Login == filtro.Login && item.Clave == filtro.Clave); usuarioValido = usuario.Select(usuarioDto => new UsuarioDTO() { Apellido = usuarioDto.Apellido, Cedula = usuarioDto.Cedula, IdUsuario = usuarioDto.IdUsuario, Login = usuarioDto.Login, Nombre = usuarioDto.Nombre, FechaNacimiento = usuarioDto.FechaNacimiento }).FirstOrDefault(); } return(usuarioValido); }
public void RegistrarUsuarioTest() { LoginApplication target = new LoginApplication(); LoginFilter filtro = new LoginFilter { Nombre = "David", Apellido = "Lopez", Cedula = "708743564", Login = "******", Clave = "davidclave" }; try { target.RegistrarUsuario(filtro); } catch (BussinesException ex) { //Excepción esperada según alguna regla de negocio. Assert.IsNotNull(ex); } }
public ActionResult ShowProfile() { int id = LoginFilter.GetUserId(); StudentRepository repository = new StudentRepository(); CRUDStudentViewModel model = new CRUDStudentViewModel(); Student student = repository.GetById(id); model.Id = LoginFilter.GetUserId(); model.ImgURL = student.ImgURL; model.Username = student.Username; model.Password = student.Password; model.Email = student.Email; model.FirstName = student.FirstName; model.LastName = student.LastName; student.IsAdmin = model.IsAdmin; model.FacultyNumber = student.FacultyNumber; model.Specialty = student.Specialty; model.GroupId = student.GroupId; model.IsTeacher = student.IsTeacher; model.IsStudent = student.IsStudent; return(View(model)); }
public IActionResult ValidarUsuario([FromQuery] LoginFilter filtro) { try { if (string.IsNullOrEmpty(filtro.Login) || string.IsNullOrEmpty(filtro.Clave)) { return(BadRequest(BadRequestError)); } UsuarioDTO usuario = new LoginApplication().ValidarUsuario((LoginFilter)filtro); if (usuario == null) { return(NotFound(NotFoundError)); } return(Ok(usuario)); } catch (Exception ex) { logger.Error(ex, InternalServerErrorValidarUsuario); return(StatusCode((int)HttpStatusCode.InternalServerError, InternalServerErrorValidarUsuario)); } }
/// <summary> /// Validar usuario y clave de un cliente especifico. /// </summary> /// <param name="login"></param> /// <returns></returns> public UsuarioDTO ValidarUsuario(LoginFilter login) { ILoginRepository loginRepository = DependencyInjectionContainer.Resolve <ILoginRepository>(); return(loginRepository.ValidarUsuario(login)); }