public async Task <StoreModifier> GetOneStoreModifier(int id, int storeId) { var responseStream = await client.GetStreamAsync($"stores/{storeId}/Modifiers/{id}"); StoreModifier result = await JsonSerializer.DeserializeAsync <StoreModifier>(responseStream); return(result); }
public async Task <ActionResult <StoreModifier> > Edit(int id, StoreModifier modifier, int storeId) { try { await modifierService.UpdateStoreModifier(id, modifier, storeId); return(RedirectToAction(nameof(Index), new { storeId })); } catch { return(View()); } }
public async Task <ActionResult> Delete(int id, StoreModifier modifier, int storeId) { try { await modifierService.DeleteStoreModifier(id, storeId); return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
public async Task <ActionResult <StoreModifier> > Create(StoreModifier modifier, int storeId) { try { // TODO: Add insert logic here await modifierService.AddStoreModifier(modifier, storeId); return(RedirectToAction(nameof(Index), new { storeId })); } catch { return(View()); } }
// GET: Items/Create public ActionResult Create() { var model = new EditItemViewModel { ItemModifiers = StoreModifier.GetAll() .Select(sm => new EditItemModifier { Id = sm.Id, Name = sm.Name, }) .ToList(), }; return(View(model)); }
public async Task <IActionResult> PutModifier(int modifierId, int storeId, StoreModifier modifier) { if (modifierId != modifier.ModifierId) { return(BadRequest()); } bool didUpdate = await storeModifierRepository.UpdateModifier(modifierId, storeId, modifier); if (!didUpdate) { return(NotFound()); } return(NoContent()); }
public async Task <StoreModifier> UpdateStoreModifier(int id, StoreModifier storeModifier, int storeId) { using (var content = new StringContent(JsonSerializer.Serialize(storeModifier), System.Text.Encoding.UTF8, "Application/Json")) { var response = await client.PutAsync($"Stores/{storeId}/modifiers/{id}", content); if (response.StatusCode == System.Net.HttpStatusCode.NoContent) { return(storeModifier); } var errorBody = await response.Content.ReadAsStringAsync(); throw new Exception($"failed to post data: ({ response.StatusCode})"); } }
public async Task <StoreModifierDTO> SaveNewModifier(StoreModifier modifier, int storeId) { var newModifier = new StoreModifier { ModifierId = modifier.ModifierId, Name = modifier.Name, Description = modifier.Description, StoreId = modifier.StoreId }; _context.StoreModifier.Add(newModifier); await _context.SaveChangesAsync(); var modifierToRetun = await GetOneModifier(storeId, modifier.ModifierId); return(modifierToRetun); }
public async Task <StoreModifier> AddStoreModifier(StoreModifier storeModifier, int storeId) { using (var content = new StringContent(JsonSerializer.Serialize(storeModifier), System.Text.Encoding.UTF8, "application/Json")) { var response = await client.PostAsync($"Stores/{storeId}/Modifiers", content); if (response.StatusCode == System.Net.HttpStatusCode.Created) { var responseStream = response.Content.ReadAsStreamAsync().Result; StoreModifier result = await JsonSerializer.DeserializeAsync <StoreModifier>(responseStream); return(result); } throw new Exception($"failed to post data: ({response.StatusCode})"); } }
public async Task <bool> UpdateModifier(int modifierId, int itemId, StoreModifier modifier) { _context.Entry(modifier).State = EntityState.Modified; try { await _context.SaveChangesAsync(); return(true); } catch (DbUpdateConcurrencyException) { if (!ModifierExists(modifierId)) { return(false); } else { throw; } } }
public async Task <ActionResult <StoreModifierDTO> > PostItem(StoreModifier modifier, int storeId) { await storeModifierRepository.SaveNewModifier(modifier, storeId); return(CreatedAtAction("GetModifier", new { storeId = storeId, modifierId = modifier.ModifierId }, modifier)); }