public async Task <HttpResponseMessage> Get(int id = -1) { if (id != -1) { DatabaseContext.Data.Type res = await _db.Types.Where(b => b.Id == id && !b.Deleted).FirstOrDefaultAsync(); if (res == null) { return(Request.CreateErrorResponse(HttpStatusCode.NoContent, "No Menu Item Type Found With ID")); } LibBookingService.Dtos.MenuItemType menuItem = CreateMenuItemTypeFromDbMenuItemType(res); return(Request.CreateResponse(HttpStatusCode.OK, menuItem)); } else { IEnumerable <DatabaseContext.Data.Type> res = await _db.Types.Where(b => !b.Deleted).ToListAsync(); IEnumerable <LibBookingService.Dtos.MenuItemType> menuItemTypes = res.Select(b => CreateMenuItemTypeFromDbMenuItemType(b)).OrderBy(b => b.Name); return(menuItemTypes.Any() ? Request.CreateResponse(HttpStatusCode.OK, menuItemTypes) : Request.CreateErrorResponse(HttpStatusCode.NoContent, "No Menu Item Types")); } }
public async Task <HttpResponseMessage> Post(LibBookingService.Dtos.MenuItemType menuItemType) { try { DatabaseContext.Data.Type newMenuItem = _db.Types.Add(new DatabaseContext.Data.Type { Name = menuItemType.Name }); await _db.SaveChangesAsync(); return(Request.CreateResponse(HttpStatusCode.OK, CreateMenuItemTypeFromDbMenuItemType(newMenuItem))); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Failed")); } }
public async Task <HttpResponseMessage> Update(int id, LibBookingService.Dtos.MenuItemType menuItemType) { try { DatabaseContext.Data.Type mi = await _db.Types.Where(m => m.Id == id).FirstOrDefaultAsync(); mi.Name = menuItemType.Name; _db.SetModified(mi); await _db.SaveChangesAsync(); LibBookingService.Dtos.MenuItemType res = CreateMenuItemTypeFromDbMenuItemType(mi); return(Request.CreateResponse(HttpStatusCode.OK, res)); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Failed")); } }