package com.fs.his.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 用户信息采集对象 fs_user_information_collection
 *
 * @author fs
 * @date 2025-10-14
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FsUserInformationCollection extends BaseEntity{

    /** $column.columnComment */
    private Long id;

    /** 问答id */
    @Excel(name = "问答id")
    private Long questionId;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 信息采集json数据 */
    @Excel(name = "信息采集json数据")
    private String jsonInfo;

    /** 用户确认状态 0-未确认 1-已确认 */
    @Excel(name = "用户确认状态 0-未确认 1-已确认")
    private Integer userConfirm;

    /** 医生确认状态 0-未确认 2-已确认 */
    @Excel(name = "医生确认状态 0-未确认 2-已确认")
    private Integer doctorConfirm;

    // 医生id
    private Long doctorId;

    //销售id
    private Long companyUserId;

    //套餐包id
    private Long packageId;

    //支付类型 0-全款 1-物流代收
    private Integer payType;

    //代收金额
    private BigDecimal amount;

    //用户补充说明
    private String userAdvice;

    //医生建议
    private String doctorAdvice;

    //医生签名
    private String doctorSign;

    //是否关联套餐包 0-不关联 1-关联
    private Integer isPackage;

    //套餐包订单号
    private String packageOrderCode;

    //套餐包订单id
    private Long packageOrderId;

    //用户第二次确认状态
    private Integer userConfirm2;

    //确认状态 1第一次确认 2第二次确认
    private Integer status;

    //医生确认时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date doctorConfirmTime;

    //用户性别 0女 1男
    private Integer sex;
    //用户姓名
    private String userName;
    //用户电话后四位
    private String userPhoneFour;

    //是否过敏
    private String allergy;
    //备注
    private String remark;

    private Long patientId;
    private String patientName;

    private Long companyId;
    //药师id
    private Long doctorType2Id;
    //药师确认
    private Integer doctorType2Confirm;
    //药师签名
    private String doctorType2Sign;

    //药品订单id
    private Long storeOrderId;

}
