How canknotcawh/hk1_2627_int3505e_2_nhom6 works
This is a library-management system with a public/member web app, an admin web app, and a Spring LMS API. The apparent user workflow is browsing books, borrowing and managing loans; administrators manage books, loans, and users. Sampled backend code confirms controller-to-service calls and loan-service repository access. The README provides no capability details, and most frontend pages and several service implementations were not sampled, so frontend-to-API links and unsampled service wiring are not asserted.
Main entry points: LoanServiceImpl.java Loan service · UserService.java Identity service · UserRepository.java User repository · UserController.java Member API
Components 21
Member web app
- Main app
frontend/main-web/src/App.tsx - Member pages
frontend/main-web/src/pages - API client
frontend/main-web/src/lib/api-client.ts
Admin web app
- Admin app
frontend/admin-web/src/App.tsx - Admin pages
frontend/admin-web/src/pages
LMS API
- Public book API
backend/src/lms/src/main/java/com/soa/gr6/lms/controller/PublicController/PublicBookController.java - Member API
backend/src/lms/src/main/java/com/soa/gr6/lms/controller/identity/UserController.java - Admin book API
backend/src/lms/src/main/java/com/soa/gr6/lms/controller/admin/AdminBookController.java - Admin loan API
backend/src/lms/src/main/java/com/soa/gr6/lms/controller/admin/AdminLoanController.java - Admin user API
backend/src/lms/src/main/java/com/soa/gr6/lms/controller/admin/AdminUserController.java
Domain and persistence
- Book service
backend/src/lms/src/main/java/com/soa/gr6/lms/service/BookService.java - Loan service
backend/src/lms/src/main/java/com/soa/gr6/lms/service/imple/LoanServiceImpl.java - Identity service
backend/src/lms/src/main/java/com/soa/gr6/lms/service/identity/UserService.java - Admin user service
backend/src/lms/src/main/java/com/soa/gr6/lms/service/AdminUserService.java - Book repository
backend/src/lms/src/main/java/com/soa/gr6/lms/repository/BookRepository.java - Loan repository
backend/src/lms/src/main/java/com/soa/gr6/lms/repository/LoanRepository.java - User repository
backend/src/lms/src/main/java/com/soa/gr6/lms/repository/UserRepository.java - Library data
Other components
- Reader
- Administrator
- JWT issuer
Connections 18
- Reader → Main app: uses
- Main app → Member pages: presents
- Administrator → Admin app: uses
- Admin app → Admin pages: presents
- Public book API → Book service: calls
- Member API → Identity service: calls
- Member API → Loan service: calls
- Admin book API → Book service: calls
- Admin loan API → Loan service: calls
- Admin user API → Admin user service: calls
- Loan service → Loan repository: reads/writes
- Loan service → Book repository: reads/locks
- Loan service → User repository: reads
- Identity service → User repository: reads/writes
- Book repository → Library data: persists
- Loan repository → Library data: persists
- User repository → Library data: persists
- JWT issuer → Identity service: provides claims