public async Task <IActionResult> Get(string id)
        {
            try
            {
                var achievements = _repository.GetAll().Where(x => x.UserId == id);

                return(Ok(achievements));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Exemplo n.º 2
0
        public ActionResult All()
        {
            var all            = _achievementRepository.GetAll();
            var badgesViewData = CreateViewData <BadgesViewData>();

            badgesViewData.Badges = all.Result.Select(
                x =>
                new BadgeViewData
            {
                Description = x.Description,
                Name        = x.Name,
                Count       = _achievementRepository.AwardedHowManyTimes(x)
            });

            return(View(badgesViewData));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Post([FromBody] FeedbackCommand command)
        {
            try
            {
                var user = await _userManager.FindByNameAsync(User.Identity.Name);

                var receiver = (await _userInfo.GetUserProfileById(command.ReceiverId)).User;

                await _repository.AddAsync(new Feedback
                {
                    CreatorId    = user.Id,
                    ReceiverId   = receiver.Id,
                    Description  = command.Description,
                    ProposalId   = command.ProposalId,
                    CreationDate = DateTime.Now
                });

                if (command.Achievement != null)
                {
                    var achievement = _achievements.GetAll().Where(x => x.User.UserInfoId == command.ReceiverId && x.Code == command.Achievement).FirstOrDefault();

                    if (achievement == null)
                    {
                        await _achievements.AddAsync(new Achievement
                        {
                            Points = 1,
                            Code   = command.Achievement.GetValueOrDefault(),
                            UserId = receiver.Id
                        });
                    }
                    else
                    {
                        achievement.Points++;
                    }
                }

                await _unitOfWork.Commit();

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
 public List <AchievementViewModel> GetAchievements()
 {
     return(_repository.GetAll().ProjectTo <AchievementViewModel>().ToList());
 }
Exemplo n.º 5
0
 public async Task <IEnumerable <Achievements> > Get()
 {
     return(await _achievementRepository.GetAll());
 }
Exemplo n.º 6
0
 public Task <IEnumerable <Achievement> > GetAllAchievements()
 {
     return(achievementRepository.GetAll());
 }