package go.kr.project.system.user.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class SystemUserVO {

    private String userId;

    private String userAcnt;

    private String userNm;

    private String passwd;

    private String passwdHint;

    private String passwdNsr;

    private String empNo;

    private String gender;

    private String zip;

    private String addr;

    private String daddr;

    private String areaNo;

    private String emlAddr;

    private String orgCd;

    private String orgCdNm;

    private String userGroupId;

    private String userGroupIdNm;

    private String nsttCd;

    private String sttCdName;

    private String posNm;

    private String crtfcDn;

    private String lockYn;

    private Integer lockCnt;

    private String lockDttm;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")
    private LocalDateTime regDttm;

    private String rgtr;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")
    private LocalDateTime mdfcnDttm;

    private String mdfr;

    private String userStatusCd;

    private String userStatusNm;

    private String fxno;

    private String telno;

    private String mblTelno;

    private String brdt;

    private String deptCd;

    private String deptCdNm;

    private String useYn;

    private String rsdntNo;

    private String passwdInitYn;

    // 현재 비밀번호 (비밀번호 변경 시 사용)
    private String currentPasswd;

    // 새 비밀번호 (비밀번호 변경 시 사용)
    private String newPasswd;

    // 새 비밀번호 확인 (비밀번호 변경 시 사용)
    private String confirmPasswd;

}
