package com.fs.common.dto;

import lombok.Data;
import lombok.Builder;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;

import java.io.Serializable;
import java.text.ParseException;
import java.util.Date;

/**
 * 个人身份信息DTO
 *
 * @author xdd
 * @since 2025-02-27
 * @version 1.0
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PersonIdentityDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 姓名
     */
    private String name;

    /**
     * 身份证号
     */
    private String idcard;

    /**
     * 验证结果
     * 验证结果代码(1-一致,2-不一致)
     */
    private String res;

    /**
     * 验证描述
     */
    private String description;

    /**
     * 性别
     */
    private String sex;

    /**
     * 出生日期
     * 格式:YYYYMMDD
     */
    private String birthday;

    public Date getBirthdayDate() throws ParseException {
        if(StringUtils.isBlank(birthday)) {
            return null;
        }
        return DateUtils.parseDate(birthday,"yyyyMMdd");
    }

    /**
     * 户籍地址
     */
    private String address;

}
