How marioshehan22/inventory-management-react-springboot works
This is a point-of-sale and inventory management system: an admin web application fronts a Spring service with product, stock, customer, order, payment, and loyalty capabilities. The visible order workflow creates an order, processes its items against batch stock, records inventory changes and payment, and may send a customer confirmation. The frontend-to-backend transport is not shown in the sampled sources, so no API connection is asserted; unsampled capabilities are represented at their known module paths.
Main entry points: App.tsx Admin navigation · OrderDetailServiceImpl.java Order processing · OrderPage.tsx Order management · ProductServiceImpl.java Product operations
Components 31
Admin interface
- Admin navigation
inventory-admin/src/App.tsx - Dashboard
inventory-admin/src/pages/DashboardPage.tsx - Catalog management
inventory-admin/src/pages/ProductPage.tsx - Customer management
inventory-admin/src/pages/CustomerPage.tsx - Supplier management
inventory-admin/src/pages/SupplierPage.tsx - Batch management
inventory-admin/src/pages/BatchPage.tsx - Order management
inventory-admin/src/pages/OrderPage.tsx - Order entry
inventory-admin/src/pages/OrderPanel.tsx - Payment and loyalty
inventory-admin/src/pages/PaymentLoyaltyPages.tsx - Role-based sign-in
inventory-admin/src/auth/useAuth.ts
Orders and payments
- Order processing
inventory-spring/src/main/java/com/pos/system/service/impl/OrderDetailServiceImpl.java
Spring API and services
- Product endpoints
inventory-spring/src/main/java/com/pos/system/controller/ProductController.java - Product operations
inventory-spring/src/main/java/com/pos/system/service/impl/ProductServiceImpl.java - Batch endpoints
inventory-spring/src/main/java/com/pos/system/controller/BatchController.java - Item detail endpoints
inventory-spring/src/main/java/com/pos/system/controller/ItemDetailController.java - Order endpoints
inventory-spring/src/main/java/com/pos/system/controller/OrderController.java - Payment endpoints
inventory-spring/src/main/java/com/pos/system/controller/PaymentController.java - Loyalty endpoints
inventory-spring/src/main/java/com/pos/system/controller/LoyaltyCardController.java - Customer endpoints
inventory-spring/src/main/java/com/pos/system/controller/CustomerController.java - Batch operations
inventory-spring/src/main/java/com/pos/system/service/impl/BatchServiceImpl.java - Item detail operations
inventory-spring/src/main/java/com/pos/system/service/impl/ItemDetailServiceImpl.java - Payment operations
inventory-spring/src/main/java/com/pos/system/service/impl/PaymentServiceImpl.java - Loyalty operations
inventory-spring/src/main/java/com/pos/system/service/impl/LoyaltyCardServiceImpl.java - Customer operations
inventory-spring/src/main/java/com/pos/system/service/impl/CustomerServiceImpl.java - Product repository
inventory-spring/src/main/java/com/pos/system/repo/ProductRepo.java
Persistent domain state
- Batch and inventory state
inventory-spring/src/main/java/com/pos/system/entity/Batch.java - Order item state
inventory-spring/src/main/java/com/pos/system/entity/ItemDetail.java - Order state
inventory-spring/src/main/java/com/pos/system/entity/OrderDetail.java
Other components
- POS operator
- Keycloak identity
- Mail service
Connections 22
- POS operator → Admin navigation: uses
- Admin navigation → Dashboard: renders
inventory-admin/src/App.tsx - Admin navigation → Catalog management: renders
inventory-admin/src/App.tsx - Admin navigation → Customer management: renders
inventory-admin/src/App.tsx - Admin navigation → Supplier management: renders
inventory-admin/src/App.tsx - Admin navigation → Batch management: renders
inventory-admin/src/App.tsx - Admin navigation → Order management: renders
inventory-admin/src/App.tsx - Admin navigation → Payment and loyalty: renders
inventory-admin/src/App.tsx - Order management → Order entry: uses
- Role-based sign-in → Keycloak identity: reads token
inventory-admin/src/auth/useAuth.ts - Product endpoints → Product operations: delegates to
inventory-spring/src/main/java/com/pos/system/controller/ProductController.java - Batch endpoints → Batch operations: delegates to
inventory-spring/src/main/java/com/pos/system/controller/BatchController.java - Item detail endpoints → Item detail operations: delegates to
inventory-spring/src/main/java/com/pos/system/controller/ItemDetailController.java - Order endpoints → Order processing: delegates to
- Payment endpoints → Payment operations: delegates to
- Loyalty endpoints → Loyalty operations: delegates to
- Customer endpoints → Customer operations: delegates to
- Product operations → Product repository: reads/writes
inventory-spring/src/main/java/com/pos/system/service/impl/ProductServiceImpl.java - Order processing → Batch and inventory state: updates stock
inventory-spring/src/main/java/com/pos/system/service/impl/OrderDetailServiceImpl.java - Order processing → Order item state: creates items
inventory-spring/src/main/java/com/pos/system/service/impl/OrderDetailServiceImpl.java - Order processing → Order state: creates order
inventory-spring/src/main/java/com/pos/system/service/impl/OrderDetailServiceImpl.java - Order processing → Mail service: sends confirmation
inventory-spring/src/main/java/com/pos/system/service/impl/OrderDetailServiceImpl.java