public HomeModule() { Get["/"] = _ => View["index"]; Post["/"] = _ => { _bus.Send(new CreateInventoryItem(Guid.NewGuid(), Request.Form.name)); return(View["index"]); }; Put["/{guid:id}/{int:version}"] = _ => { _bus.Send(new RenameInventoryItem(_.id, Request.Form.name, _.version)); return(View["index"]); }; Delete["/{guid:id}/{int:version}"] = _ => { _bus.Send(new DeactivateInventoryItem(_.id, _.version)); return(View["index"]); }; Post["/Checkin/{guid:id}/{int:version}"] = _ => { _bus.Send(new CheckInItemsToInventory(_.id, Request.Form.number, _.version)); return(View["index"]); }; Post["/Checkout/{guid:id}/{int:version}"] = _ => { _bus.Send(new RemoveItemsFromInventory(_.id, Request.Form.number, _.version)); return(View["index"]); }; }
public HomeModule() { Get["/"] = _ => View["index", new InventoryWebModelData { Id = new Guid(), Version = -1 }]; Post["/"] = _ => { Guid guid = Guid.NewGuid(); _bus.Send(new CreateInventoryItem(guid, Request.Form.name)); var model = new InventoryWebModelData { Id = guid, Version = 0 }; return(View["index", model]); }; Put["/{id:guid}/{version:int}"] = _ => { Guid guid = _.id; int version = _.version; _bus.Send(new RenameInventoryItem(_.id, Request.Form.name, _.version)); var model = new InventoryWebModelData { Id = guid, Version = version + 1 }; return(View["index", model]); }; Delete["/{id:guid}/{version:int}"] = _ => { _bus.Send(new DeactivateInventoryItem(_.id, _.version)); return(View["index", new InventoryWebModelData()]); }; Post["/Checkin/{id:guid}/{version:int}"] = _ => { Guid guid = _.id; int version = _.version; _bus.Send(new CheckInItemsToInventory(guid, Request.Form.number, version)); var model = new InventoryWebModelData() { Id = guid, Version = version + 1 }; return(View["index", model]); }; Post["/Checkout/{id:guid}/{version:int}"] = _ => { Guid guid = _.id; int version = _.version; _bus.Send(new RemoveItemsFromInventory(guid, Request.Form.number, version)); var model = new InventoryWebModelData() { Id = guid, Version = version + 1 }; return(View["index", model]); }; }