How akram48616/ecommercebackend works
This is a Spring Boot e-commerce REST API. The principal flow is a customer browsing products, managing a cart, creating an order, and completing payment; authentication gates user-facing operations. The README documents the controller, service, and JPA repository layers and major feature areas, but no source excerpts were available to confirm detailed call wiring. The graph therefore shows documented controller-to-service responsibilities and explicit external integrations, omitting uncertain internal links.
Main entry points: AuthController.java Auth API · UserController.java User API · ProductController.java Product API · CategoryController.java Category API
Components 22
Accounts & Security
- Auth API
src/main/java/org/example/ecommercebackend/Controller/AuthController.java - User API
src/main/java/org/example/ecommercebackend/Controller/UserController.java - Auth Service
src/main/java/org/example/ecommercebackend/Service/AuthService.java - User Service
src/main/java/org/example/ecommercebackend/Service/UserService.java
Catalog & Orders
- Product API
src/main/java/org/example/ecommercebackend/Controller/ProductController.java - Category API
src/main/java/org/example/ecommercebackend/Controller/CategoryController.java - Cart API
src/main/java/org/example/ecommercebackend/Controller/CartController.java - Order API
src/main/java/org/example/ecommercebackend/Controller/OrderController.java - Product Service
src/main/java/org/example/ecommercebackend/Service/ProductService.java - Category Service
src/main/java/org/example/ecommercebackend/Service/CategoryService.java - Cart Service
src/main/java/org/example/ecommercebackend/Service/CartService.java - Order Service
src/main/java/org/example/ecommercebackend/Service/OrderService.java
Payments
- Payment API
src/main/java/org/example/ecommercebackend/Controller/PaymentController.java - Payment Service
src/main/java/org/example/ecommercebackend/Service/PaymentService.java - Razorpay
Customer Features
- Wishlist API
src/main/java/org/example/ecommercebackend/Controller/WishlistController.java - Review API
src/main/java/org/example/ecommercebackend/Controller/ReviewController.java
Analytics & Data
- Analytics API
src/main/java/org/example/ecommercebackend/Controller/AnalyticsController.java - Analytics Service
src/main/java/org/example/ecommercebackend/Service/AnalyticsService.java - JPA Data Layer
src/main/java/org/example/ecommercebackend/Repository - MySQL Database
Other components
- Customer
Connections 20
- Customer → Auth API: registers or logs in
- Customer → User API: manages profile
- Customer → Product API: browses products
- Customer → Category API: browses categories
- Customer → Cart API: manages cart
- Customer → Order API: places and tracks orders
- Customer → Payment API: pays
- Customer → Wishlist API: manages wishlist
- Customer → Review API: reviews products
- Customer → Analytics API: requests reports
- Auth API → Auth Service: handles authentication
- User API → User Service: handles profiles
- Product API → Product Service: handles catalog
- Category API → Category Service: handles categories
- Cart API → Cart Service: handles cart
- Order API → Order Service: handles orders
- Payment API → Payment Service: handles payments
- Payment Service → Razorpay: creates and verifies payments
- Analytics API → Analytics Service: handles reporting
- JPA Data Layer → MySQL Database: persists JPA data