public void Create(LancamentoDTO entity) { var lancamento = _mapper.Map<LancamentoDTO, Lancamento>(entity); _unityOfWork.Lancamentos.Create(lancamento); _unityOfWork.Complete(); }
public IHttpActionResult AddEmployee(EmployeeDTO employeeDTO) { Employee employee = GlobalAutoMapper.Mapper.Map <Employee>(employeeDTO); _unitOfWork.Employees.Add(employee); _unitOfWork.Complete(); EmployeeDTO employeeDTORes = GlobalAutoMapper.Mapper.Map <EmployeeDTO>(employee); return(CreatedAtRoute(nameof(GetEmployeeById), new { id = employeeDTORes.EmployeeID }, employeeDTORes)); }
public IActionResult Follow(FollowingDto dto) { var userId = _userManager.GetUserId(this.User); //se já estiver seguindo if (_unityOfWork.Followings.GetFollowing(dto.FolloweeId, userId) != null) { return(BadRequest()); } _unityOfWork.Followings.AddFollower(dto, userId); _unityOfWork.Complete(); return(Ok()); }
public async Task <ActionResult> UpdateUser(MemberUpdateDto memberUpdateDto) { var user = await _unityOfWork.UserRepository.GetUserByUserNameAsync(User.GetUsername()); _mapper.Map(memberUpdateDto, user); _unityOfWork.UserRepository.Update(user); if (await _unityOfWork.Complete()) { return(NoContent()); } return(BadRequest("Failed to update the user")); }
public CustomerDto AddCustomer(CustomerPostDto customer) { var exitingCustomer = _unityOfWork.Customers.GetCustomerByEmail(customer.ContactEmail); if (exitingCustomer != null) { throw new ValidationException($"customer with email: {exitingCustomer.ContactEmail} already exists"); } var newCustomer = _mapper.Map <Customer>(customer); _unityOfWork.Customers.Add(newCustomer); _unityOfWork.Complete(); return(GetCustomer(customer.ContactEmail)); }
public IActionResult Attend(AttendanceDto dto) { var userId = _userManager.GetUserId(this.User); if (_unityOfWork.Attendances.GetAttendance(dto.GigId, userId) != null) { return(BadRequest()); } _unityOfWork.Attendances.AttendGig(dto, userId); _unityOfWork.Complete(); return(Ok()); }
public IActionResult OnPost() { if (!ModelState.IsValid) { return(Page()); } var gig = _unityOfWork.Gigs.GetGigWithAttendees(Input.Id); if (_unityOfWork.Gigs.GigChangedIsValid(gig, Input)) { if (gig == null) { return(NotFound()); } if (gig.ArtistId != _userManager.GetUserId(this.User)) { return(new UnauthorizedResult()); } try { _unityOfWork.Gigs.UpdateGig(gig, Input); _unityOfWork.Complete(); } catch (DbUpdateConcurrencyException) { //exite uma exceção na atualização throw; } } return(RedirectToPage("Mine")); }
public IActionResult MarkAsRead() { var notificationsNotRead = _unityOfWork.Notifications.GetUserNotificationsIsNotRead(_userManager.GetUserId(this.User)); //marca como lido notificationsNotRead.ForEach(n => n.Read()); _unityOfWork.Complete(); return(Ok()); }
public override async Task OnConnectedAsync() { var httpContext = Context.GetHttpContext(); var otherUser = httpContext.Request.Query["user"].ToString(); var groupName = GetGroupName(Context.User.GetUsername(), otherUser); await Groups.AddToGroupAsync(Context.ConnectionId, groupName); var group = await AddToGroup(groupName); await Clients.Group(groupName).SendAsync("UpdatedGroup", group); var messages = await _unityOfWork.MessageRepository.GetMessageThread(Context.User.GetUsername(), otherUser); if (_unityOfWork.HasChanges()) { await _unityOfWork.Complete(); } await Clients.Caller.SendAsync("ReceiveMessageThread", messages); }
public TransactionDto AddTransaction(TransactionPostDto transactionDto) { var transaction = _mapper.Map <Transaction>(transactionDto); var currency = (Currencies)Enum.Parse(typeof(Currencies), transactionDto.Currency); transaction.CurrencyCodeId = (int)currency; transaction.TransactionStatusId = 1; transaction.TransactionDate = DateTime.UtcNow; _unityOfWork.Transactions.Add(transaction); _unityOfWork.Complete(); return(GetTransaction(transaction.TransactionId)); }
public async Task <ActionResult <MessageDto> > CreateMessage(CreateMessageDto createMessageDto) { var username = User.GetUsername(); if (username.Equals(createMessageDto.RecipientUsername.ToLower())) { return(BadRequest("You cannot send messages to yourself")); } var sender = await _unityOfWork.UserRepository.GetUserByUserNameAsync(username); var recipient = await _unityOfWork.UserRepository.GetUserByUserNameAsync(createMessageDto.RecipientUsername); if (recipient == null) { return(NotFound()); } var message = new Message { Sender = sender, Recipient = recipient, SenderUsername = sender.UserName, RecipientUsername = recipient.UserName, Content = createMessageDto.Content }; _unityOfWork.MessageRepository.AddMessage(message); if (await _unityOfWork.Complete()) { return(Ok(_mapper.Map <MessageDto>(message))); } return(BadRequest("Failed to send message")); }
public IActionResult OnPost() { if (!ModelState.IsValid) { return(Page()); } try { _unityOfWork.Gigs.AddGig(_userManager.GetUserId(this.User), Input); _unityOfWork.Complete(); } catch (System.Exception) { throw; } return(RedirectToPage("Mine")); }
public IActionResult Cancel(int id) { var userId = _userManager.GetUserId(this.User); var gigWithAttendances = _unityOfWork.Gigs.GetGigWithAttendeesByUserId(id, userId); if (gigWithAttendances == null || gigWithAttendances.IsCanceled) { return(NotFound()); } if (gigWithAttendances.ArtistId != userId) { return(Unauthorized()); } gigWithAttendances.Cancel(); _unityOfWork.Complete(); return(Ok()); }
public async Task <ActionResult> AddLike(string username) { var sourceUserId = User.GetUserId(); var likedUser = await _unityOfWork.UserRepository.GetUserByUserNameAsync(username); var sourceUser = await _unityOfWork.LikesRepository.GetUserWithLikes(sourceUserId); if (likedUser == null) { return(NotFound()); } if (sourceUser.UserName == username) { return(BadRequest("You cannot like yourself")); } var userLike = await _unityOfWork.LikesRepository.GetUserLike(sourceUserId, likedUser.Id); if (userLike != null) { return(BadRequest("You already like this user")); } userLike = new UserLike { SourceUserId = sourceUserId, LikedUserId = likedUser.Id }; sourceUser.LikedUsers.Add(userLike); if (await _unityOfWork.Complete()) { return(Ok()); } return(BadRequest("Failed to like user")); }