How disconnect821/orderserviceplatform works
This is a Spring-based order platform for managing products and orders backed by PostgreSQL. The documented order workflow accepts a create request, validates and records an idempotency key when supplied, then processes the order while locking products to prevent stock overselling; clients can subsequently retrieve orders. Product creation and order retrieval are also documented API operations. The README is the only relationship evidence provided, so the graph omits undocumented controller/service calls and does not infer a payment workflow from the tree.
Main entry points: OrderController.java Order API · OrderService.java Order processing · ProductController.java Product API · V1__init.sql Flyway schema
Components 14
Client API
- Product API
src/main/java/com/example/orderplatform/product/ProductController.java - Order API
src/main/java/com/example/orderplatform/order/OrderController.java
Order and Inventory
- Product management
src/main/java/com/example/orderplatform/product/ProductService.java - Product locking
src/main/java/com/example/orderplatform/product/ProductRepository.java - Order processing
src/main/java/com/example/orderplatform/order/OrderService.java - Order storage
src/main/java/com/example/orderplatform/order/OrderRepository.java - Order model
src/main/java/com/example/orderplatform/order/Order.java - Order items
src/main/java/com/example/orderplatform/order/OrderItem.java
Idempotency
- Key validation
src/main/java/com/example/orderplatform/order/OrderService.java - Key repository
src/main/java/com/example/orderplatform/idempotency/IdempotencyKeyRepository.java - Key record
src/main/java/com/example/orderplatform/idempotency/IdempotencyKey.java
Persistence
- PostgreSQL
- Flyway schema
src/main/resources/db/migration/V1__init.sql
Other components
- API client
Connections 8
- API client → Product API: creates products
README.md - API client → Order API: submits orders
README.md - API client → Order API: retrieves orders
README.md - Order processing → Key repository: stores keys
README.md - Order processing → Product locking: locks products
README.md - Product API → PostgreSQL: persists products
- Order API → PostgreSQL: persists orders
- Flyway schema → PostgreSQL: defines schema
README.md