-
- LoginReqDTO/RefreshTokenReqDTO/LoginVO/BrandVO DTO/VO - AuthService interface: login/refresh/getBrands - AuthServiceImpl: multi-tenant brand query, BCrypt, disabled/lock check, fail count (5x → lock 30min), success reset; refresh token validate + re-issue; getBrands ORDER BY sName - UpdateWrapper (string columns) avoids LambdaWrapper unit test issue - BeanConfig: @Bean BCryptPasswordEncoder - AuthServiceTest: 10/10 PASS (7 login + 3 refresh/brands)