How seoulmilk4/seoulmilk_be works
Seoulmilk is a backend for agency, employee, and administrator workflows, including authentication and tax-invoice handling. Users authenticate, then access role-specific operations; tax invoices can be queried, updated, deleted, exported, and processed through OCR or tax-service integrations. The tree and sampled files establish the domain areas, while excerpts show concrete authentication calls and invoice query capabilities. Most controllers, tax implementations, and integrations were not sampled, so their relationships are left unverified rather than presented as confirmed call paths.
Main entry points: ntsTax Tax endpoints · AgencyAuthService.java Agency authentication · MemberAuthService.java Employee authentication · AdminAuthService.java Admin authentication
Components 25
Identity and access
- Agency authentication
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Employee authentication
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Admin authentication
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminAuthService.java
Agency administration
- Agency records
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/domain/Agency.java - Employee records
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/domain/Member.java - Admin record
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/domain/Admin.java - Agency and staff management
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service - Agency operations
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyService.java - Agency endpoints
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/controller - Admin endpoints
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/controller
Tax invoices
- Tax endpoints
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax - Tax search and export
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/service/NtsTaxQueryService.java - Tax changes
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/service/NtsTaxCommandService.java - Tax invoice records
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/domain/NtsTax.java - OCR processing
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/ocr
Shared services
- Codef token service
src/main/java/com/seoulmilk/seoulmilkServer/global/codef/service/CodefAuthService.java - Email and OTP
src/main/java/com/seoulmilk/seoulmilkServer/global/mail/service - Refresh-token storage
src/main/java/com/seoulmilk/seoulmilkServer/global/auth/repository/RefreshTokenRepository.java - OTP verification storage
src/main/java/com/seoulmilk/seoulmilkServer/global/auth/repository/AuthVerifyRepository.java - JWT provider
src/main/java/com/seoulmilk/seoulmilkServer/global/jwt/provider/JwtProvider.java
Other components
- Agency user
- Employee
- Administrator
- Clova OCR
- Hometax service
Connections 33
- Agency user → Agency authentication: authenticates
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Employee → Employee authentication: authenticates
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Administrator → Admin authentication: authenticates
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminAuthService.java - Agency authentication → Agency records: reads and updates
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Agency authentication → OTP verification storage: stores verification
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Agency authentication → Email and OTP: sends OTP
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Agency authentication → JWT provider: creates tokens
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Agency authentication → Refresh-token storage: stores refresh token
src/main/java/com/seoulmilk/seoulmilkServer/domain/agency/service/AgencyAuthService.java - Employee authentication → Employee records: reads and updates
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Employee authentication → OTP verification storage: stores verification
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Employee authentication → Email and OTP: sends OTP
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Employee authentication → JWT provider: creates tokens
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Employee authentication → Refresh-token storage: stores refresh token
src/main/java/com/seoulmilk/seoulmilkServer/domain/member/service/MemberAuthService.java - Admin authentication → Admin record: reads admin
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminAuthService.java - Admin authentication → JWT provider: creates tokens
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminAuthService.java - Admin authentication → Refresh-token storage: stores refresh token
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminAuthService.java - Administrator → Admin endpoints: manages accounts
- Admin endpoints → Agency and staff management: dispatches operations
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/controller/AdminController.java - Agency and staff management → Agency records: manages agencies
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminEmployeeService.java - Agency and staff management → Employee records: manages employees
src/main/java/com/seoulmilk/seoulmilkServer/domain/admin/service/AdminEmployeeService.java - Agency user → Agency endpoints: uses endpoints
- Agency endpoints → Agency operations: dispatches operations
- Employee → Tax endpoints: uses endpoints
- Agency user → Tax endpoints: uses endpoints
- Administrator → Tax endpoints: uses endpoints
- Tax endpoints → Tax search and export: requests queries
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/service/NtsTaxQueryServiceImpl.java - Tax endpoints → Tax changes: requests changes
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/service/NtsTaxCommandService.java - Tax search and export → Tax invoice records: queries records
src/main/java/com/seoulmilk/seoulmilkServer/domain/ntsTax/service/NtsTaxQueryService.java - Tax changes → Tax invoice records: changes records
- OCR processing → Clova OCR: requests OCR
- Tax endpoints → OCR processing: requests processing
- Tax endpoints → Hometax service: requests tax data
- Tax endpoints → Codef token service: uses token service