- Improve consistency in tracking a customer
- Track team members associated with acted on steps
- Track when a change occurred for an acted on step
- Allow for listing of steps related to a customer
- Allow steps to have prioritization ordering
- Create steps for customer booking process
- Track steps involved
- Allow for prioritization of steps
- Load and store data related to scheduling and tracking steps
Since the application revolves around the customer and CSR actions, here's the steps and prioritizations chosen:
- Submitted a requests
- Picking a destination
- Destination chosen
- flight or train, or not needed
- rental cars booked
- flight
- hotel
- itinerary
- Insurance
Hierarchical order
- Started order
- Picking a destination
- How is customer getting there
- Where are they staying
- How will they getting around
- What do you do when you're there
Normalized data objects
1. Customers
2. Customer Service Reps / CSRs
3. Steps
4. Priority
5. Tracking
Kept to a very simple list. Connect and Router are used for the http serving without the rest of Express. Sqllite3 is used for some basic DB storage of the tracking and customer data
- http
- router
- bodyParser
- sqlite3 (probs a mistake)
- bluebird
/customer/list
Get all the customers listed in the database
/customer/list/:id
Get specific customer and associated tracking information
/csr/list/:id
Get all the tracking data for a specific customer service rep
/dash/list/
List of people and current step, sorted by priority
/dash/track:[customer_id, step_id, date, csr]
Post a step for tracking given a customer
- testing mocha