• - UserPrincipal record + JwtAuthenticationFilter 注入用户上下文
    - SecurityConfig 补充 authenticationEntryPoint 返回 401
    - UserService/UserServiceImpl: 创建用户、获取员工列表、获取权限组
    - UserController: POST /users、GET /users/staffs、GET /users/permission-groups
    - UserServiceTest (6 cases) + UserControllerTest (5 cases) 全部通过
    zichun authored
     
    Browse Code »
  • - SecurityConfig: STATELESS, permitAll /api/auth/**, JWT filter
    - JwtAuthenticationFilter: Bearer token → SecurityContext
    - AuthController: POST /login, POST /refresh, GET /brands
    - BrandVO: @JsonProperty to fix Jackson serialization of sNo/sName
    - AuthControllerTest: 4/4 PASS; all 22 backend tests GREEN
    zichun authored
     
    Browse Code »
  • - 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)
    zichun authored
     
    Browse Code »