package thyyxxk.webserver.entity.medicalinsurance.setlinfo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

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

@Data
@TableName(value = "t_si_setlinfo")
public class SiSetlinfo implements Serializable {

	private static final long serialVersionUID =  6876991080910479303L;

	/**
	 * 住院号/门诊号
	 */
	private String patNo;

	/**
	 * 住院次数/门诊次数
	 */
	private Integer times;

	/**
	 * 账页号（门诊为receiptNo）
	 */
	private Integer ledgerSn;

	/**
	 * 就诊ID
	 */
	private String mdtrtId;

	private String insuplcAdmdvs;
	private String insuplcAdmdvsName;

	/**
	 * 结算ID
	 */
	@TableId(type = IdType.ASSIGN_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 Date setlTime;

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

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

	/**
	 * 医疗费总额
	 */
	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 hospPartAmt;

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

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

	/**
	 * 个人负担总金额
	 */
	private Double psnPartAmt;

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

	/**
	 * 个人现金支出
	 */
	private Double psnCashPay;

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

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

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

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

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

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

	/**
	 * 结算操作员
	 * */
	private String staffId;

	/**
	 * 是否已撤销
	 * */
	private Integer revoked;

	/**
	 * 结算类别：21-住院，11-门诊
	 * */
	private String setlType;

	/**
	 * 上传流水号
	 * */
	private String setlListId;

	/**
	 * 业务开始时间
	 * */
	private Date begntime;

	/**
	 * 业务结束时间
	 * */
	private Date endtime;

	/**
	 * 医保支付方式
	 * */
	private Integer hiPaymtd;

	/**
	 * 西药费
	 */
	private BigDecimal chargeWesternMedicine;

	/**
	 * 中成药费
	 */
	private BigDecimal chargePatentMedicine;

	/**
	 * 中药饮片费
	 */
	private BigDecimal chargeHerbal;

	/**
	 * 诊查费
	 */
	private BigDecimal chargeExamination;

	/**
	 * 治疗费
	 */
	private BigDecimal chargeTreatment;

	/**
	 * 手术费
	 */
	private BigDecimal chargeOperation;

	/**
	 * 护理费
	 */
	private BigDecimal chargeNursing;

	/**
	 * 卫生材料费
	 */
	private BigDecimal chargeSanitaryMaterial;

	/**
	 * 化验费
	 */
	private BigDecimal chargeAssay;

	/**
	 * 一般诊疗费
	 */
	private BigDecimal chargeGeneralDiagnosis;

	/**
	 * 检查费
	 */
	private BigDecimal chargeInspection;

	/**
	 * 挂号费
	 */
	private BigDecimal chargeRegistration;

	/**
	 * 床位费
	 */
	private BigDecimal chargeBed;

	/**
	 * 其他费
	 */
	private BigDecimal chargeOthers;

	/**
	 * 是否已分析过收费类别：0-否，1-是
	 * */
	private Integer chargesAnalyzed;

	/**
	 * 参保信息
	 * */
	private String medinsType;

	/**
	 * 主要诊断
	 * */
	@TableField(exist = false)
	private String mainDiagnosis;

	/**
	 * 主要手术
	 * */
	@TableField(exist = false)
	private String mainOperation;

	/**
	 * 医惠保基金(商保)
	 * */
	@TableField(exist = false)
	private String sbjjPay;

	@TableField(exist = false)
	private String gendName;
	@TableField(exist = false)
	private String insutypeName;
	@TableField(exist = false)
	private String psnTypeName;
	@TableField(exist = false)
	private String medTypeName;
	@TableField(exist = false)
	private String clrOptinsName;

	@TableField(exist = false)
	private String dept;
	@TableField(exist = false)
	private String doctor;
	/**
	 * 伙食费
	 * */
	@TableField(exist = false)
	private String mealsFee;

	/**
	 * 出院诊断
	 * */
	@TableField(exist = false)
	private String cyzd;

	@TableField(exist = false)
	private String aae036;
}
