package com.yc.ship.module.trade.api.insurance.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Schema(description = "RPC 服务 - Insurance 被保人 Request DTO")
@Data
public class InsuredDTO {
    /**
     *  //必填 - 字符串 - 与被保人一一对应, 且必须唯一
     *   //个保时，用于唯一标识被保人,也作投保单号，需要贵方系统上保持唯一.
     *   //团保时，仅用于在当前请求中唯一标识被保人,不作为投保单号;
     */
    @Schema(description = "被保人唯一编号")
    private String externalPolicyNumber;

    /**
     * 必填 - 字符串 - 被保险人姓名
     */
    @Schema(description = "被保人姓名")
    private String insuredName;

    /** 可选 - 字符串 - 被保险人姓拼音 */
    private String firstName;

    /** /可选 - 字符串 - 被保险人名拼音 */
    private String lastName;

    /** 必填 - 数字 - 被保险人证件类型 */
    private Integer certificateType;

    /** 必填 - 字符串 - 被保险人证件号码 */
    private String certificateNo;

    /** 必填 - 字符串 - 被保险人生日 yyyy-MM-dd */
    private String birthday;

    /** 必填 - 数字 - 被保险人性别
     * 0	女
     * 1	男
     * */
    private Integer sex;

    /** 可选 - 字符串 - 被保险人手机号码(O2O业务时,必填) */
    private String mobile;

    /** 可选 - 字符串 - 被保险人邮箱(有些产品要求投保人时需要邮箱，具体见产品规则) */
    private String email;

    /** 可选 - 字符串 - 被保险人家庭住址(家财险时,必填) */
    private String address;

    /** 必填 - 数字 - 与投保人关系 */
    private Integer relation;

    //<!--applicantType为0且对应被保险人为未成年人时必填 - 开始-->
    /** 必填 - 字符串 - 投保人姓名; */
    private String applicant;

    /** 可选 - 字符串 - 投保人姓拼音 */
    private String applicantFirstName;

    /** 可选 - 字符串 - 投保人名拼音  */
    private String applicantLastName;

    /** 必填 - 数字 - 投保人证件类型  */
    private Integer applicantCertificateType;

    /** 必填 - 字符串 - 投保人证件号码 */
    private String applicantCertificateNo;

    /** 必填 - 字符串 - 投保人生日 yyyy-MM-dd  */
    private String applicantBirthday;

    /** 可选 - 数字 - 投保人性别 */
    private Integer applicantSex;

    /** 可选 - 字符串 - 投保人手机   */
    private String applicantMobile;

    /** 可选 - 字符串 - 投保人邮箱（上海太保 - 必填） */
    private String applicantEmail;
}
