public IActionResult CreateReward([FromBody] CreateRewardOptions options)//landingpage { var result = rewardService_.CreateReward(options); if (result.Success) { return(Json(result.Data)); } return(StatusCode((int)result.ErrorCode, result.ErrorText)); }
public Result <Reward> CreateReward(int rewardPackageId, CreateRewardOptions options) { if (options == null) { return(Result <Reward> .ActionFailed( StatusCode.BadRequest, "Null options")); } if (string.IsNullOrWhiteSpace(options.Name)) { return(Result <Reward> .ActionFailed( StatusCode.BadRequest, "Null or empty Name")); } var rewardPackage = context_ .Set <RewardPackage>() .Include(x => x.Rewards) .Where(rp => rp.RewardPackageId == rewardPackageId) .SingleOrDefault(); if (rewardPackage == null) { return(Result <Reward> .ActionFailed( StatusCode.BadRequest, "Invalid Reward Package")); } var reward = new Reward() { Name = options.Name }; rewardPackage.Rewards.Add(reward); var rows = 0; try { rows = context_.SaveChanges(); } catch (Exception ex) { return(Result <Reward> .ActionFailed( StatusCode.InternalServerError, ex.ToString())); } if (rows <= 0) { return(Result <Reward> .ActionFailed( StatusCode.InternalServerError, "Reward could not be created")); } return(Result <Reward> .ActionSuccessful(reward)); }
public IActionResult Create(int id, [FromBody] CreateRewardOptions options) { var result = rewardService.CreateReward(id, options); if (!result.Success) { return(StatusCode((int)result.ErrorCode, result.ErrorText)); } return(Json(result.Data)); }
public Result <Reward> AddRewardToList(CreateRewardOptions options) { if (options == null) { return(Result <Reward> .ActionFailed( StatusCode.BadRequest, "Null options")); } if (string.IsNullOrWhiteSpace(options.Name)) { return(Result <Reward> .ActionFailed( StatusCode.BadRequest, "Null or empty Name")); } var reward = new Reward() { Name = options.Name }; context_.Add(reward); var rows = 0; try { rows = context_.SaveChanges(); } catch (Exception ex) { return(Result <Reward> .ActionFailed( StatusCode.InternalServerError, ex.ToString())); } if (rows <= 0) { return(Result <Reward> .ActionFailed( StatusCode.InternalServerError, "Reward could not be created")); } return(Result <Reward> .ActionSuccessful(reward)); }
public Result <Reward> CreateReward(CreateRewardOptions options) { if (options == null) { return(Result <Reward> .CreateFailed(StatusCode.BadRequest, "Null options")); } var project = projectService_.GetProjectById(options.ProjectId).Data; if (project == null) { return(Result <Reward> .CreateFailed(StatusCode.BadRequest, $"Project with {options.ProjectId} was not found")); } var reward = new Reward() { Title = options.Title, Description = options.Description, Price = options.Price, ProjectId = options.ProjectId, }; if (!reward.IsValidDescription(options.Description) || !reward.IsValidTitle(options.Title) || !reward.IsValidPrice(options.Price)) { return(Result <Reward> .CreateFailed(StatusCode.BadRequest, "Please check the validations")); } project.AvailableRewards.Add(reward); if (context_.SaveChanges() <= 0) { return(Result <Reward> .CreateFailed( StatusCode.InternalServerError, "Reward could not be created")); } return(Result <Reward> .CreateSuccessful(reward)); }