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

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @Author mengkuiliang
 * @Description 履约明细展示类
 * @Date 2023-10-09 009 15:16
 * @Param
 * @return
 **/
@ApiModel("履约明细展示类")
@Data
public class PerformanceDetailVo {

    /**
     * 履约明细业务主键
     */
    @ApiModelProperty(value = "履约明细业务主键")
    private String performanceDetailNo;
    /**
     * 签约编号
     */
    @ApiModelProperty(value = "签约编号")
    private String signNo;

    /**
     * 居民用户业务主键
     */
    @ApiModelProperty(value = "居民用户业务主键")
    private String residentNo;

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    private String residentName;

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

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

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

    /**
     * 服务包明细编号
     */
    @ApiModelProperty(value = "服务包明细编号")
    private String packageDetailNo;

    /**
     * 服务项表单编号
     */
    @ApiModelProperty(value = "服务项表单编号")
    private String formNo;

    /**
     * 服务项表单名称
     */
    @ApiModelProperty(value = "服务项表单名称")
    private String formName;

    /**
     * 价格（单位：元，#0.00）
     */
    @ApiModelProperty(value = "价格（单位：元，#0.00）")
    private BigDecimal packCost;

    /**
     * 优惠价格（单位：元，#0.00）
     */
    @ApiModelProperty(value = "优惠价格（单位：元，#0.00）")
    private BigDecimal packCostCheap;

    /**
     * 签约价格（单位：元，#0.00）
     */
    @ApiModelProperty(value = "签约价格（单位：元，#0.00）")
    private BigDecimal packSignCost;

    /**
     * 服务包类型（0：基本公共卫生服务包 1：家医服务包 2：精细化服务包）
     */
    @ApiModelProperty(value = "服务包类型（0：基本公共卫生服务包 1：家医服务包 2：精细化服务包）")
    private String packType;

    /**
     * 服务包类别（0：基础服务包 1：个性化服务包）
     * */
    @ApiModelProperty(value = "服务包类别（0：基础服务包 1：个性化服务包）")
    private String packCategory;

    /**
     * 是否精细化表单
     */
    @ApiModelProperty("是否精细化表单")
    private Boolean refineForm;

    /**
     * 是否公卫表单0：否，1：是
     */
    @ApiModelProperty(value = "是否公卫表单0：否，1：是")
    private Boolean phForm;

    /**
     * 公卫类型，是公卫表单时不能为空（12：孕产妇产后访视 14：新生儿随访 28：高血压 29：糖尿病 30：高血压高危人群 32：精神障碍）
     */
    @ApiModelProperty(value = "公卫类型，是公卫表单时不能为空（12：孕产妇产后访视 14：新生儿随访 28：高血压 29：糖尿病 30：高血压高危人群 32：精神障碍）")
    private String phType;

    /**
     * PC端路径
     */
    @ApiModelProperty(value = "PC端路径")
    private String pcFormPath;

    /**
     * APP端路径
     */
    @ApiModelProperty(value = "APP端路径")
    private String appFormPath;

    /**
     * 应服务次数
     */
    @ApiModelProperty(value = "应服务次数")
    private Integer serviceFreq;

    /**
     * 已履约次数
     */
    @ApiModelProperty(value = "已履约次数")
    private Integer performanceCount;

    /**
     * 机构业务编号
     */
    @ApiModelProperty(value = "机构业务编号")
    private String orgNo;

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

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

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

    /**
     * 是否已完成（0：否 1：是）
     */
    @ApiModelProperty(value = "是否已完成（0：否 1：是）")
    private Boolean complete;

    /**
     * 履约医生编号
     */
    @ApiModelProperty(value = "履约医生编号")
    private String userNo;

    /**
     * 履约医生姓名
     */
    @ApiModelProperty(value = "履约医生姓名")
    private String userName;

    /**
     * 最后履约时间
     */
    @ApiModelProperty(value = "最后履约时间")
    private Date lastDate;

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

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    private String createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createDate;

    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人")
    private String updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updateDate;

    /**
     * 删除标识（ 0：正常，1：已删除）
     */
    @ApiModelProperty(value = "删除标识（ 0：正常，1：已删除）")
    private Boolean delete;

}
