public async Task <IActionResult> Create([FromBody] EvaluationCreateRequest newAchievement) { if ((await _authorizationService.AuthorizeAsync(User, newAchievement.GameId, HttpContext.ScopeItems(ClaimScope.Game))).Succeeded) { var achievement = newAchievement.ToAchievementModel(); achievement = (Achievement)EvaluationCoreController.Create(achievement); var achievementContract = achievement.ToContract(); return(new ObjectResult(achievementContract)); } return(Forbid()); }
public async Task <IActionResult> create([FromBody] EvaluationCreateRequest request) { var evaluationId = await _evaluationService.Create(request); if (evaluationId == 0) { return(BadRequest("Thêm đánh giá không thành công!")); } var evaluation = await _evaluationService.getEvaluationById(evaluationId); return(CreatedAtAction(nameof(getEvaluationById), new { id = evaluationId }, evaluation)); }
public static Skill ToSkillModel(this EvaluationCreateRequest skillContract) { var skillModel = new Skill { Name = skillContract.Name, Description = skillContract.Description, GameId = skillContract.GameId.Value, ActorType = skillContract.ActorType.Value, Token = skillContract.Token, EvaluationCriterias = skillContract.EvaluationCriterias.ToModelList(), Rewards = skillContract.Rewards.ToModelList() }; return(skillModel); }
public static Achievement ToAchievementModel(this EvaluationCreateRequest achievementContract) { var achievementModel = new Achievement { Name = achievementContract.Name, Description = achievementContract.Description, GameId = achievementContract.GameId.Value, ActorType = achievementContract.ActorType.Value, Token = achievementContract.Token, EvaluationCriterias = achievementContract.EvaluationCriterias.ToModelList(), Rewards = achievementContract.Rewards.ToModelList() }; return(achievementModel); }
public async Task <int> Create(EvaluationCreateRequest request) { var isAdmin = await _context.Users.Where(x => x.Id == request.userId).FirstOrDefaultAsync(); if (isAdmin.displayname == "Admin") { var evaluation = new Evaluation() { rating = request.rating, title = request.title, content = request.content, status = EvaluationStatus.Confirm, productId = request.productId, createDate = DateTime.Now, userId = request.userId, }; _context.evaluations.Add(evaluation); await _context.SaveChangesAsync(); return(evaluation.id); } else { var evaluation = new Evaluation() { rating = request.rating, title = request.title, content = request.content, status = EvaluationStatus.Decline, productId = request.productId, createDate = DateTime.Now, userId = request.userId, }; _context.evaluations.Add(evaluation); await _context.SaveChangesAsync(); return(evaluation.id); } }
public void CreateSkillAsync(EvaluationCreateRequest skill, Action <EvaluationResponse> onSuccess, Action <Exception> onError) { AsyncRequestController.EnqueueRequest(() => CreateSkill(skill), onSuccess, onError); }
/// <summary> /// Create a new Skill. /// </summary> /// <param name="game"><see cref="EvaluationCreateRequest"/> object that holds the details of the new skill request.</param> /// <returns>A <see cref="GameResponse"/> containing the new skill details.</returns> public EvaluationResponse CreateSkill(EvaluationCreateRequest skill) { var query = GetUriBuilder(ControllerPrefix + "skills/create").ToString(); return(Post <EvaluationCreateRequest, EvaluationResponse>(query, skill)); }
public void CreateAchievementAsync(EvaluationCreateRequest achievement, Action <EvaluationResponse> onSuccess, Action <Exception> onError) { AsyncRequestController.EnqueueRequest(() => CreateAchievement(achievement), onSuccess, onError); }
/// <summary> /// Create a new Achievement. /// </summary> /// <param name="game"><see cref="EvaluationCreateRequest"/> object that holds the details of the new achievement request.</param> /// <returns>A <see cref="GameResponse"/> containing the new achievement details.</returns> public EvaluationResponse CreateAchievement(EvaluationCreateRequest achievement) { var query = GetUriBuilder(ControllerPrefix + "achievements/create").ToString(); return(Post <EvaluationCreateRequest, EvaluationResponse>(query, achievement)); }