public void Create(LancamentoDTO entity)
        {
            var lancamento = _mapper.Map<LancamentoDTO, Lancamento>(entity);

            _unityOfWork.Lancamentos.Create(lancamento);
            _unityOfWork.Complete();
        }
Пример #2
0
        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));
        }
Пример #3
0
        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());
        }
Пример #4
0
        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"));
        }
Пример #5
0
        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));
        }
Пример #6
0
        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());
        }
Пример #7
0
        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());
        }
Пример #9
0
        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);
        }
Пример #10
0
        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));
        }
Пример #11
0
        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"));
        }
Пример #12
0
        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"));
        }
Пример #13
0
        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());
        }
Пример #14
0
        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"));
        }