package com.xinelu.familydoctor.applet.pojo.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @Author mengkuiliang
 * @Description 居民服务申请展示类
 * @Date 2023-10-07 007 11:34
 * @Param
 * @return
 **/
@ApiModel("居民服务申请展示类")
@Data
public class ResidentServiceApplyVo {
    /**
     * 履约预约编号
     */
    @ApiModelProperty("履约预约编号")
    private String bookingNo;

    /**
     * 居民编号
     */
    @ApiModelProperty(value = "居民业务主键")
    private String patientId;

    /**
     * 居民身份证号
     */
    @ApiModelProperty(value = "居民身份证号")
    private String identity;

    /**
     * 居民姓名
     */
    @ApiModelProperty("居民姓名")
    private String residentName;

    /**
     * 详细地址
     */
    @ApiModelProperty("详细地址")
    private String address;

    /**
     * 手机号码
     */
    @ApiModelProperty(value = "手机号码")
    private String phone;

    /**
     * 预约服务包编号
     */
    @ApiModelProperty("预约服务包编号")
    private String packageNo;

    /**
     * 预约服务包名称
     */
    @ApiModelProperty("预约服务包名称")
    private String packageName;

    /**
     * 预约服务项目编号
     */
    @ApiModelProperty("预约服务项目编号")
    private String formNo;

    /**
     * 预约服务项目名称
     */
    @ApiModelProperty("预约服务项目名称")
    private String formName;

    /**
     * 预约服务方式1：家庭2：门诊3：电话99：其他
     */
    @ApiModelProperty("预约服务方式1：家庭2：门诊3：电话99：其他")
    private String serviceWay;

    /**
     * 预约服务方式名称
     */
    @ApiModelProperty("预约服务方式名称")
    private String serviceWayName;

    /**
     * 预约时间
     */
    @ApiModelProperty("预约时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date bookingTime;

    /**
     * 申请时间
     */
    @ApiModelProperty("申请时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date applyTime;

    /**
     * 预约状态0：已申请1：已完成2：已取消
     */
    @ApiModelProperty("预约状态0：已申请1：已完成2：已取消")
    private String bookingStatus;

    /**
     * 取消时间
     */
    @ApiModelProperty("取消时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date cancelTime;

    /**
     * 完成时间
     */
    @ApiModelProperty("完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date completeTime;

    /**
     * 审批状态0：待批准1：已同意2：已拒绝
     */
    @ApiModelProperty("审批状态0：待批准1：已同意2：已拒绝")
    private String approvalStatus;

    /**
     * 拒绝理由
     */
    @ApiModelProperty("拒绝理由")
    private String refuseReason;

    /**
     * 审批时间
     */
    @ApiModelProperty("审批时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date approvalTime;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remark;

    /**
     * 签约编号
     */
    @ApiModelProperty("签约编号")
    private String signNo;

    /**
     * 预约机构编号
     */
    @ApiModelProperty(value = "预约机构编号", required = true)
    private String orgNo;

    /**
     * 预约机构名称
     */
    @ApiModelProperty(value = "预约机构名称", required = true)
    private String orgName;

    /**
     * 预约团队编号
     */
    @ApiModelProperty(value = "预约团队编号", required = true)
    private String teamNo;

    /**
     * 预约团队名称
     */
    @ApiModelProperty(value = "预约团队名称", required = true)
    private String teamName;

    /**
     * 预约医生编号
     */
    @ApiModelProperty(value = "预约医生编号", required = true)
    private String userNo;

    /**
     * 预约医生姓名
     */
    @ApiModelProperty(value = "预约医生姓名", required = true)
    private String userName;
}
