public async Task <IActionResult> CreateAsync( [FromBody] Wppod.Models.User user) { Cloud.Result <Wppod.Models.User> result = new Cloud.Result <Wppod.Models.User>(); try { if (!ModelState.IsValid) { result.SetFail("Invalid model state"); } else { string status = string.Format("User Create request, received by Nest-{0}.{1} at {2}", _runtime.NestTag, _runtime.CushionIndex, DateTime.Now.ToString("t")); _logger.LogInformation(status); _cafeContext.Users.Add(user); await _cafeContext.SaveChangesAsync(); result.SetSuccess("user", user); } } catch (System.Exception e) { result.SetFail(e, "CreateAsync"); } return(Ok(result)); }
//POST : /Register public async Task <Object> PostOrder(WebModels.Order order) { var accessToken = Request.Headers[HeaderNames.Authorization]; var tokenHandler = new JwtSecurityTokenHandler(); var securityToken = tokenHandler.ReadToken(accessToken) as JwtSecurityToken; var stringClaimValue = securityToken.Claims.First(claim => claim.Type == "UserID").Value; var newOrder = new Models.Order(); newOrder.UserId = stringClaimValue; newOrder.OrderPlaced = DateTime.Now; newOrder.AddressId = Int32.Parse(order.AddressId); newOrder.DishOrders = new List <DishOrder>(); foreach (var item in order.DishOrders) { newOrder.DishOrders.Add(new Models.DishOrder() { DishId = Int32.Parse(item.DishId), Quantity = Int32.Parse(item.Quantity) }); } _db.Orders.Add(newOrder); var result = await _db.SaveChangesAsync(); return(result); //order.UserId = //_db.DishOrders.AddRange(dishOrders); }
public async Task <IActionResult> CreateAsync(int menu_id, [FromBody] MenuItem item) { try { if (!ModelState.IsValid) { return(StatusCode(422, ModelState)); } Cloud.Result <MenuItem> result = new Cloud.Result <MenuItem>(); Menu menu = _cafeContext.Menus.FirstOrDefault( searchMenu => searchMenu.Id == menu_id); if (menu == null) { result.SetFail("Menu not found"); } else { item.Menu = menu; string status; status = string.Format("Menu Item Create request, received by Nest {0}.{1} at {2}", _runtime.NestTag, _runtime.CushionIndex, DateTime.Now.ToString("t")); _logger.LogInformation(status); status = string.Format("Create under Menu id {0}, the Menu Item {1}", menu_id, JsonConvert.SerializeObject(item)); _logger.LogInformation(status); _cafeContext.MenuItems.Add(item); await _cafeContext.SaveChangesAsync(); _runtime.SendToNest( JsonConvert.SerializeObject(item), "stockallocator"); result.SetSuccess("menu_item", item); } return(Ok(result)); } catch (System.Exception e) { return(StatusCode(500, e)); } }
public async Task <Object> AddAddress(Address address) { var accessToken = Request.Headers[HeaderNames.Authorization]; var tokenHandler = new JwtSecurityTokenHandler(); var securityToken = tokenHandler.ReadToken(accessToken) as JwtSecurityToken; var stringClaimValue = securityToken.Claims.First(claim => claim.Type == "UserID").Value; address.Email = stringClaimValue; _db.Addresses.Add(address); var result = await _db.SaveChangesAsync(); return(address); //order.UserId = //_db.DishOrders.AddRange(dishOrders); }