package thyyxxk.webserver.entity.medicalinsurance.query;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import thyyxxk.webserver.entity.medicalinsurance.setlinfo.SiSetldetail;

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

/**
 * @description: 结算信息查询结果
 * @author: DingJie
 * @create: 2021/7/308:46
 */
@Data
public class SetlInfo {
    /**
     * 就诊ID
     */
    private String mdtrtId;

    /**
     * 结算ID
     */
    private String setlId;

    /**
     * 人员编号
     */
    private String psnNo;

    /**
     * 人员姓名
     */
    private String psnName;

    /**
     * 人员证件类型
     */
    private String psnCertType;

    /**
     * 证件号码
     */
    private String certno;

    /**
     * 性别
     */
    private String gend;

    /**
     * 民族
     */
    private String naty;

    /**
     * 出生日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date brdy;

    /**
     * 年龄
     */
    private Double age;

    /**
     * 险种类型
     */
    private String insutype;

    /**
     * 人员类别
     */
    private String psnType;

    /**
     * 公务员标志
     */
    private String cvlservFlag;

    /**
     * 灵活就业标志
     * */
    private String flxempeFlag;

    /**
     * 新生儿标志
     * */
    private String nwbFlag;

    /**
     * 参保机构医保区划
     * */
    private String insuOptins;

    /**
     * 单位名称
     * */
    private String empName;

    /**
     * 支付地点类别
     * */
    private String payLoc;

    /**
     * 定点医药机构编号
     * */
    private String fixmedinsCode;

    /**
     * 定点医药机构名称
     * */
    private String fixmedinsName;

    /**
     * 医院等级
     * */
    private String hospLv;

    /**
     * 定点归属机构
     * */
    private String fixmedinsPoolarea;

    /**
     * 限价医院等级
     * */
    private String lmtpricHospLv;

    /**
     * 起付线医院等级
     * */
    private String dedcHospLv;

    /**
     * 开始日期
     * */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date begndate;

    /**
     * 结束日期
     * */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date enddate;

    /**
     * 结算时间
     */
    private Date setlTime;

    /**
     * 就诊凭证类型
     */
    private String mdtrtCertType;

    /**
     * 医疗类别
     */
    private String medType;

    /**
     * 清算类别
     * */
    private String clrType;

    /**
     * 清算方式
     * */
    private String clrWay;

    /**
     * 清算经办机构
     * */
    private String clrOptins;

    /**
     * 医疗费总额
     */
    private Double medfeeSumamt;

    /**
     * 全自费金额
     */
    private Double fulamtOwnpayAmt;

    /**
     * 超限价自费费用
     */
    private Double overlmtSelfpay;

    /**
     * 先行自付金额
     */
    private Double preselfpayAmt;

    /**
     * 符合政策范围金额
     */
    private Double inscpScpAmt;

    /**
     * 实际支付起付线
     */
    private Double actPayDedc;

    /**
     * 基本医疗保险统筹基金支出
     */
    private Double hifpPay;

    /**
     * 基本医疗保险统筹基金支付比例
     */
    private Double poolPropSelfpay;

    /**
     * 公务员医疗补助资金支出
     */
    private Double cvlservPay;

    /**
     * 企业补充医疗保险基金支出
     */
    private Double hifesPay;

    /**
     * 居民大病保险资金支出
     */
    private Double hifmiPay;

    /**
     * 职工大额医疗费用补助基金支出
     */
    private Double hifobPay;

    /**
     * 医疗救助基金支出
     */
    private Double mafPay;

    /**
     * 其他支出
     */
    private Double othPay;

    /**
     * 基金支付总额
     */
    private Double fundPaySumamt;

    /**
     * 个人支付金额
     * */
    private Double psnPay;

    /**
     * 个人账户支出
     */
    private Double acctPay;

    /**
     * 现金支付金额
     * */
    private Double cashPayamt;

    /**
     * 余额
     */
    private Double balc;

    /**
     * 个人账户共济支付金额
     */
    private Double acctMulaidPay;

    /**
     * 医药机构结算ID
     */
    private String medinsSetlId;

    /**
     * 退费结算标志
     * */
    private String refdSetlFlag;

    /**
     * 年度
     * */
    private String year;

    /**
     * 病种编码
     * */
    private String diseCodg;

    /**
     * 病种名称
     * */
    private String diseName;

    /**
     * 发票号
     * */
    private String invono;

    /**
     * 经办人ID
     * */
    private String opterId;

    /**
     * 经办人姓名
     * */
    private String opterName;

    /**
     * 经办时间
     * */
    private Date optTime;

    private String clrTypeName;

    private String medTypeName;

    private String insutypeName;

    private String psnTypeName;

    private List<SiSetldetail> setldetail;
}
