public static UserResponse MapUserResponse(this Entities.AppUser appUser) { return(new UserResponse { UserId = appUser.Id, UserName = appUser.UserName }); }
public async Task <UserResponse> SignUpAsync(SignUpRequest request, CancellationToken cancellationToken) { var user = new Entities.AppUser { Email = request.Email, UserName = request.Email, FirstName = request.FirstName, LastName = request.LastName }; bool isCreated = await _userRepository.SignUpAsync(user, request.Password, "Planner", cancellationToken); return(!isCreated ? null : new UserResponse { Name = $"{request.FirstName} {request.LastName}", Email = request.Email }); }
public Guid Create(AppUserCreate input) { var model = new Entities.AppUser { Id = Guid.NewGuid(), CreatedAt = DateTime.UtcNow, ExternalId = input.ExternalId, Picture = input.Picture, Name = input.Name, Email = input.Email, IsOwner = true, }; _usersRepository.Insert(model); return(model.Id); }
public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { ActionExecutedContext resultContext = await next(); if (!resultContext.HttpContext.User.Identity.IsAuthenticated) { return; } IUnitOfWork uow = resultContext.HttpContext.RequestServices.GetService <IUnitOfWork>(); int userId = resultContext.HttpContext.User.GetUserId(); Entities.AppUser user = await uow.UserRepository.GetUserByIdAsync(userId); user.LastActive = DateTime.UtcNow; await uow.Complete(); }
public async Task <VendorResponse> AddVendorAsync(AddVendorRequest request) { var vendorItem = _vendorMapper.Map(request); var newUser = new Entities.AppUser { UserName = request.ContactEmail, Email = request.ContactEmail }; bool isCreated = await _userRepository.SignUpAsync(newUser, "partyAgile21", "Vendor"); if (isCreated) { vendorItem.UserId = newUser.Id; } var result = _vendorRepository.Add(vendorItem); await _vendorRepository.UnitOfWork.SaveChangesAsync(); var vendorEvent = new VendorEvent { Vendor = result, VendorId = result.Id, EventId = request.EventId, Budget = new Price { Amount = request.Budget.Amount, Currency = request.Budget.Currency }, DepositPaid = new Price { Amount = request.DepositPaid.Amount, Currency = request.Budget.Currency } }; _vendorEventRepository.Add(vendorEvent); await _vendorEventRepository.UnitOfWork.SaveChangesAsync(); return(_vendorMapper.Map(result)); }