You are reading a single comment by @Emyr and its replies. Click here to read the full conversation.
  • Does Event have somekind of superclass ListDriven?

    I can see some value in GroupPurchase inherits from ListDriven, where each entry has more than UID, so maybe a ListItem.Options field could hold JSON representing choices.

    An example might be the Mielec group buy...
    Current process:

    • Members express interest
    • Interest List starts
    • OP gets a quote for rough numbers, finds available options
    • Purchase Intents, with option details, gathered using Google Form backed by a GoogleDocs Spreadsheet
    • New list in thread for those who have registered their Purchase Intent
    • OP declares payment window, tracks progress via GoogleDocs


    New Process:

    • OP creates GroupPurchase instance, provides Meta Info, LISTSTATE = SURVEY
    • Members add themselves ITEMSTATE = INTEREST
    • OP gets quote, options
    • OP modifies GroupPurchase record to define options, LISTSTATE => METAORDER
    • Notify list members
    • Members update their entries to select options (or back out) ITEMSTATE => INTENT
    • OP "closes" list, LISTSTATE => PREORDER
    • Notify list members
    • Members make payments, ITEMSTATE => CONFIRMED (or PAID)
    • OP exports GroupPurchase info, places order LISTSTATE => ORDERING
    • OP receives confirmation of order, delivery estimate LISTSTATE => ORDERED
    • OP updates GroupPurchase info to add detailed delivery options (i.e. if collection requested, 1-to-1, CompassBeers, Delegate; If postage requested, Address or Delegate aka GroupedPostageReceiver)
    • Notify list members
    • Members make delivery choices ITEMSTATE => PENDING-COLLECTION or PENDING-DELIVERY
      etc.
    • OP marks GroupPurchase as DELIVERY when main consignment received
    • Tracking infos?
    • Members (or OP?) declare receipt, LISTSTATE => COMPLETE when all items ITEMSTATE => RECEIVED
About

Avatar for Emyr @Emyr started