Commit f1ec7e34 authored by Alex Pinto's avatar Alex Pinto

Merge branch 'feat/README.md' into 'master'

Added README

See merge request !1
parents 393f56af c377bd70
#Warehouse Management (WM)
---
## What To Expect
#### API Contracts
- **No APIs made for public consumption.**
#### Inventory, Pricing, & Promotions
- Warehouse Management (WM) to provide Kafka message upon order fulfillment or cancellation.
#### E-Commerce
- None
#### Order Management
- Warehouse Management (WM) to expect Kafka message upon order creation.
- WM to provide Kafka message upon order fulfillment or cancellation.
---
## Details
#### Schema
```
{
_id: String
orderId: String
status: String "unfulfilled" (default) > "fulfilled"/"cancelled"
orderObject?: (will have it on initial Kafka message, not sure if we need to store this)
}
```
#### Workflow
- Warehouse Management (WM) expects an Order object (?) from Order Management (OM) on order placement in Kafka.
- On receipt of an Order object, WM will create a warehouse order entry in database with a status of "unfulfilled."
- In the WM UI, a warehouse manager will have the ability to fulfill or cancel unfulfilled orders.
- When an order is marked **"fulfilled"** or **"cancelled"**, a Kafka message will be sent to be consumed.
#### UI
- Login
- Order status update screen mark orders as fulfilled or cancelled
- Order search
- Order information page
~~Warehouse UI - ReactJS UI to mark orders as fulfilled or cancelled.
Spring boot backend, CRU endpoints for orders
ReactJS front end, search orders, view order status in table, update status
Update the status order management system via Kafka.
Java program that subscribes to “order topic” and pushes status updates
Database: Mongo
Kafka message going to be sent to Inventory, Pricing, and Promotions (IPP) to update the Inventory, pricing, and promotion about the items for which order is fulfilled.
Java program that subscribes to “order topic” and pushes status updates~~
~~Warehouse Database: (sample order (?): { item1: 2qty, item2: 1qty, item3: 5qty })~~
~~Need to check inventory to see if there is adequate inventory for each item in the Order
If there is adequate inventory for every item:
WM will send back a “fulfilled” status to OM (Kafka)
WM will update the Warehouse Database with status to “fulfilled”.
Else:
WM will send back a “cancelled” status to OM (Kafka),
? - along with the inventory error message (includes qty)
WM will update the Warehouse Database with status to “cancelled”.~~
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment