- com.sb.web 패키지로 재구성: account / auth / board / user / admin / common - 가계부(account): 내역(필터), 계좌·순자산, 예산, 분류, 정기 거래, 투자 포트폴리오 (종목·매매 이력, 이동평균 평단·실현/평가손익) - MyBatis + MariaDB + Redis 세션, BCrypt - 스키마 자동 초기화(db/*.sql, 멱등), 사용자별 데이터 격리(member_id) - 문서: docs/BACKEND.md, .env.example Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
37 lines
908 B
Java
37 lines
908 B
Java
package com.sb.web.auth.dto;
|
|
|
|
import com.sb.web.auth.domain.Member;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Builder;
|
|
import lombok.Data;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
import java.io.Serializable;
|
|
|
|
/**
|
|
* Redis 세션에 저장되는 인증 주체 정보 (경량).
|
|
* 인터셉터 통과 후 컨트롤러에서 현재 로그인 사용자로 사용한다.
|
|
*/
|
|
@Data
|
|
@Builder
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
public class SessionUser implements Serializable {
|
|
|
|
private Long id;
|
|
private String loginId;
|
|
private String name;
|
|
private String role;
|
|
private String provider;
|
|
|
|
public static SessionUser from(Member m) {
|
|
return SessionUser.builder()
|
|
.id(m.getId())
|
|
.loginId(m.getLoginId())
|
|
.name(m.getName())
|
|
.role(m.getRole())
|
|
.provider(m.getProvider())
|
|
.build();
|
|
}
|
|
}
|