How chau165/microservice works
This repository is a Spring-based service suite: an API gateway, an authentication and customer-engagement service, and a metadata service covering franchise/contract administration and staff shifts/attendance. The visible workflows are HTTP requests handled by controllers and delegated to service interfaces; the sampled promotion and shift controllers show those delegations directly. The README is empty, and most implementation and gateway-routing sources were not sampled, so the graph preserves major capabilities visible in the tree but omits unverified wiring.
Main entry points: PromotionController.java Promotion endpoints · ShiftController.java Shift endpoints · CustomerUserDetailsService.java User lookup · UsersRepository.java User records
Components 22
API Gateway
- Gateway application
apigateway/src/main/java/com/group1/apigateway/ApiGatewayApplication.java - Gateway security
apigateway/src/main/java/com/group1/apigateway/infrastructure/security/SecurityConfig.java - IP rate limiting
apigateway/src/main/java/com/group1/apigateway/infrastructure/security/IpRateLimitWebFilter.java - Fallback responses
apigateway/src/main/java/com/group1/apigateway/controller/GlobalFallbackController.java - Service discovery
discovery-service/src/main/java/com/group1/discovery_service/DiscoveryServerApplication.java
Identity and Engagement
- Auth service
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/CsfcAuthServiceApplication.java - Authentication endpoints
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/controller/AuthenticationController.java - Authentication operations
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/service/AuthenticationService.java - User lookup
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/common/security/CustomerUserDetailsService.java - User records
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/repository/UsersRepository.java - Promotion endpoints
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/controller/PromotionController.java - Promotion operations
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/service/PromotionService.java - Coupon endpoints
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/controller/CouponController.java - Reward redemption
CSFC-auth-service/src/main/java/service/CSFC/CSFC_auth_service/controller/RedemptionController.java
Franchise Metadata
- Metadata service
metadataservice/src/main/java/com/group1/app/MetadataShiftApplication.java - Franchise management
metadataservice/src/main/java/com/group1/app/metadata/controller/franchise/FranchiseController.java - Contract management
metadataservice/src/main/java/com/group1/app/metadata/controller/contract/ContractController.java - Contract operations
metadataservice/src/main/java/com/group1/app/metadata/service/ContractService.java
Shift Operations
- Shift endpoints
metadataservice/src/main/java/com/group1/app/shift/controller/ShiftController.java - Shift operations
metadataservice/src/main/java/com/group1/app/shift/service/ShiftService.java - Attendance reporting
metadataservice/src/main/java/com/group1/app/shift/service/AttendanceService.java
Other components
- API client
Connections 5
- API client → Promotion endpoints: HTTP request
- Promotion endpoints → Promotion operations: delegates
- API client → Shift endpoints: HTTP request
- Shift endpoints → Shift operations: delegates
- User lookup → User records: loads user