public async Task <ResultStatus> DeleteFlavourCombination(int id) { FlavourCombination target = await GetFlavourCombinationById(id); flavourCombinationRepository.Delete(target); int code = await flavourCombinationRepository.SaveChanges(); bool status = (code != 0); ResultStatus resultStatus = new ResultStatus { Status = status }; if (status) { resultStatus.Message = "Successfully deleted flavour"; } else { resultStatus.Message = "Failed to deleted flavour"; } return(resultStatus); }
public async Task <ResultStatus> CreateFlavourCombinationAsync(FlavourCombination flavourCombination, List <Flavour> flavours) { this.flavourCombinationRepository.Add(flavourCombination); foreach (Flavour flavour in flavours) { FlavourCombinationReference reference = new FlavourCombinationReference() { FlavourCombinationId = flavourCombination.Id, FlavourId = flavour.Id }; flavourCombination.FlavourCombinationReferences.Add(reference); } int code = await flavourCombinationRepository.SaveChanges(); bool status = code != 0; ResultStatus resultStatus = new ResultStatus() { Status = status }; if (status) { resultStatus.Message = "Successfully created a new combination"; } else { resultStatus.Message = "Failed to create a new combination"; } return(resultStatus); }
public async Task <ResultStatus> UpdateFlavourCombination(int id, string newName) { FlavourCombination target = await GetFlavourCombinationById(id); target.Name = newName; flavourCombinationRepository.Update(target); int code = await flavourCombinationRepository.SaveChanges(); bool status = (code != 0); ResultStatus resultStatus = new ResultStatus { Status = status }; if (status) { resultStatus.Message = "Successfully updated flavour combination"; } else { resultStatus.Message = "Failed to update flavour combination"; } return(resultStatus); }
private static void CreateFlavourCombinations(ShishaFlavoursDbContext context, IFlavourCombinationsService flavourCombinationsService, IFlavoursService flavoursService, UserManager <User> userManager, ILogger logger) { if (!context.FlavourCombinations.Any()) { string adminUserId = userManager.FindByNameAsync("Admin").Result.Id; FlavourCombination combination = new FlavourCombination() { Name = "Sweet Mint", Description = "A great combination of the most popular shisha flavours ever!", DateAdded = DateTime.Now, Votes = 20, UserId = adminUserId, FlavourCombinationReferences = new List <FlavourCombinationReference>() }; List <Flavour> flavours = new List <Flavour>() { flavoursService.GetFlavourByName("Blueberry").Result, flavoursService.GetFlavourByName("Mint").Result }; flavourCombinationsService.CreateFlavourCombinationAsync(combination, flavours).Wait(); } else { logger.LogInformation("Flavour combinations were already added"); } }
public async Task <IActionResult> Create([FromBody] FlavourCombinationCreateModel createModel) { IActionResult response = null; if (ModelState.IsValid) { FlavourCombination flavourCombo = new FlavourCombination() { Name = createModel.Name, Description = createModel.Description, DateAdded = DateTime.Now, Votes = 0, UserId = createModel.UserId, FlavourCombinationReferences = new List <FlavourCombinationReference>() }; List <Flavour> flavours = new List <Flavour>(); foreach (string flavourName in createModel.Flavours) { Flavour flavour = await flavoursService.GetFlavourByName(flavourName); flavours.Add(flavour); } ResultStatus status = await flavourCombinationsService.CreateFlavourCombinationAsync(flavourCombo, flavours); response = new JsonResult(status); } else { return(BadRequest(ModelState)); } return(response); }
public async Task <IActionResult> GetFlavourCombination(string Name) { FlavourCombination model = await flavourCombinationsService.GetFlavourCombinationByName(Name); return(new JsonResult(model)); }