using PTMIBase.Extensions.Attributes;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace PTMIBase.Entity.MIDatatable
{
class Settlement
{
///
/// 医院编号 指向医院表
///
[IrisColumn(Name = "HospitalDr", Desc = "医院编号", DbType = "Int", SqlFieldName = "Hospital_Dr", Order = 2, CanBeNull = false)]
[Required(ErrorMessage = "医院编号不能为空")]
public int HospitalDr { get; set; }
///
/// 病人ID 指向患者信息表
///
[IrisColumn(Name = "AdmDr", Desc = "病人ID", DbType = "VarChar(50)", SqlFieldName = "Adm_Dr", Order = 3, CanBeNull = false)]
[Required(ErrorMessage = "病人ID不能为空")]
[StringLength(50, ErrorMessage = "病人ID长度不能超过50个字符")]
public string AdmDr { get; set; }
///
/// 就诊ID
///
[IrisColumn(Name = "MdtrtID", Desc = "就诊ID", DbType = "VarChar(50)", SqlFieldName = "MdtrtID", Order = 4, CanBeNull = false)]
[Required(ErrorMessage = "就诊ID不能为空")]
[StringLength(50, ErrorMessage = "就诊ID长度不能超过50个字符")]
public string MdtrtID { get; set; }
///
/// 结算ID
///
[IrisColumn(Name = "SettlementID", Desc = "结算ID", DbType = "VarChar(50)", SqlFieldName = "SettlementID", Order = 5, CanBeNull = false)]
[Required(ErrorMessage = "结算ID不能为空")]
[StringLength(50, ErrorMessage = "结算ID长度不能超过50个字符")]
public string SettlementID { get; set; }
///
/// 人员编号
///
[IrisColumn(Name = "PersonnelNO", Desc = "人员编号", DbType = "VarChar(50)", SqlFieldName = "PersonnelNO", Order = 6, CanBeNull = false)]
[Required(ErrorMessage = "人员编号不能为空")]
[StringLength(50, ErrorMessage = "人员编号长度不能超过50个字符")]
public string PersonnelNO { get; set; }
///
/// 人员姓名
///
[IrisColumn(Name = "PatientName", Desc = "人员姓名", DbType = "VarChar(100)", SqlFieldName = "PatientName", Order = 7, CanBeNull = false)]
[Required(ErrorMessage = "人员姓名不能为空")]
[StringLength(100, ErrorMessage = "人员姓名长度不能超过100个字符")]
public string PatientName { get; set; }
///
/// 人员证件类型
///
[IrisColumn(Name = "CertificateType", Desc = "人员证件类型", DbType = "VarChar(50)", SqlFieldName = "CertificateType", Order = 8, CanBeNull = true)]
[StringLength(50, ErrorMessage = "人员证件类型长度不能超过50个字符")]
public string CertificateType { get; set; }
///
/// 证件号码
///
[IrisColumn(Name = "CertificateNO", Desc = "证件号码", DbType = "VarChar(50)", SqlFieldName = "CertificateNO", Order = 9, CanBeNull = true)]
[StringLength(50, ErrorMessage = "证件号码长度不能超过50个字符")]
public string CertificateNO { get; set; }
///
/// 性别
///
[IrisColumn(Name = "Gender", Desc = "性别", DbType = "VarChar(10)", SqlFieldName = "Gender", Order = 10, CanBeNull = true)]
[StringLength(10, ErrorMessage = "性别长度不能超过10个字符")]
public string Gender { get; set; }
///
/// 民族
///
[IrisColumn(Name = "Nation", Desc = "民族", DbType = "VarChar(50)", SqlFieldName = "Nation", Order = 11, CanBeNull = true)]
[StringLength(50, ErrorMessage = "民族长度不能超过50个字符")]
public string Nation { get; set; }
///
/// 出生日期
///
[IrisColumn(Name = "BirthDay", Desc = "出生日期", DbType = "DateTime", SqlFieldName = "BirthDay", Order = 12, CanBeNull = true)]
public DateTime? BirthDay { get; set; }
///
/// 年龄
///
[IrisColumn(Name = "Age", Desc = "年龄", DbType = "VarChar(10)", SqlFieldName = "Age", Order = 13, CanBeNull = true)]
[StringLength(10, ErrorMessage = "年龄长度不能超过10个字符")]
public string Age { get; set; }
///
/// 险种类型
///
[IrisColumn(Name = "InsuranceType", Desc = "险种类型", DbType = "VarChar(50)", SqlFieldName = "InsuranceType", Order = 14, CanBeNull = true)]
[StringLength(50, ErrorMessage = "险种类型长度不能超过50个字符")]
public string InsuranceType { get; set; }
///
/// 人员类别
///
[IrisColumn(Name = "PersonType", Desc = "人员类别", DbType = "VarChar(50)", SqlFieldName = "PersonType", Order = 15, CanBeNull = true)]
[StringLength(50, ErrorMessage = "人员类别长度不能超过50个字符")]
public string PersonType { get; set; }
///
/// 公务员标志
///
[IrisColumn(Name = "CivilserviceFlag", Desc = "公务员标志", DbType = "VarChar(10)", SqlFieldName = "CivilserviceFlag", Order = 16, CanBeNull = true)]
[StringLength(10, ErrorMessage = "公务员标志长度不能超过10个字符")]
public string CivilserviceFlag { get; set; }
///
/// 结算日期
///
[IrisColumn(Name = "SettlementDate", Desc = "结算日期", DbType = "Date", SqlFieldName = "SettlementDate", Order = 17, CanBeNull = true)]
public DateTime? SettlementDate { get; set; }
///
/// 结算日期时间
///
[IrisColumn(Name = "SettlementDateTime", Desc = "结算日期时间", DbType = "DateTime", SqlFieldName = "SettlementDateTime", Order = 18, CanBeNull = true)]
public DateTime? SettlementDateTime { get; set; }
///
/// 就诊凭证类型
///
[IrisColumn(Name = "MdtrtCertType", Desc = "就诊凭证类型", DbType = "VarChar(50)", SqlFieldName = "MdtrtCertType", Order = 19, CanBeNull = true)]
[StringLength(50, ErrorMessage = "就诊凭证类型长度不能超过50个字符")]
public string MdtrtCertType { get; set; }
///
/// 医疗类别
///
[IrisColumn(Name = "MedicalType", Desc = "医疗类别", DbType = "VarChar(50)", SqlFieldName = "MedicalType", Order = 20, CanBeNull = true)]
[StringLength(50, ErrorMessage = "医疗类别长度不能超过50个字符")]
public string MedicalType { get; set; }
///
/// 医疗费总额
///
[IrisColumn(Name = "Sumamt", Desc = "医疗费总额", DbType = "VarChar(20)", SqlFieldName = "Sumamt", Order = 21, CanBeNull = true)]
[StringLength(20, ErrorMessage = "医疗费总额长度不能超过20个字符")]
public string Sumamt { get; set; }
///
/// 全自费金额
///
[IrisColumn(Name = "OwnPayAmount", Desc = "全自费金额", DbType = "VarChar(20)", SqlFieldName = "OwnPayAmount", Order = 22, CanBeNull = true)]
[StringLength(20, ErrorMessage = "全自费金额长度不能超过20个字符")]
public string OwnPayAmount { get; set; }
///
/// 超限价自费费用
///
[IrisColumn(Name = "OverLimitAmount", Desc = "超限价自费费用", DbType = "VarChar(20)", SqlFieldName = "OverLimitAmount", Order = 23, CanBeNull = true)]
[StringLength(20, ErrorMessage = "超限价自费费用长度不能超过20个字符")]
public string OverLimitAmount { get; set; }
///
/// 先行自付金额
///
[IrisColumn(Name = "PreSelfPayAmount", Desc = "先行自付金额", DbType = "VarChar(20)", SqlFieldName = "PreSelfPayAmount", Order = 24, CanBeNull = true)]
[StringLength(20, ErrorMessage = "先行自付金额长度不能超过20个字符")]
public string PreSelfPayAmount { get; set; }
///
/// 符合政策范围金额
///
[IrisColumn(Name = "InPolicyRangeAmount", Desc = "符合政策范围金额", DbType = "VarChar(20)", SqlFieldName = "InPolicyRangeAmount", Order = 25, CanBeNull = true)]
[StringLength(20, ErrorMessage = "符合政策范围金额长度不能超过20个字符")]
public string InPolicyRangeAmount { get; set; }
///
/// 实际支付起付线
///
[IrisColumn(Name = "ActualPayDeductible", Desc = "实际支付起付线", DbType = "VarChar(20)", SqlFieldName = "ActualPayDeductible", Order = 26, CanBeNull = true)]
[StringLength(20, ErrorMessage = "实际支付起付线长度不能超过20个字符")]
public string ActualPayDeductible { get; set; }
///
/// 基本医疗保险统筹基金支出
///
[IrisColumn(Name = "HealthInsurancePay", Desc = "基本医疗保险统筹基金支出", DbType = "VarChar(20)", SqlFieldName = "HealthInsurancePay", Order = 27, CanBeNull = true)]
[StringLength(20, ErrorMessage = "基本医疗保险统筹基金支出长度不能超过20个字符")]
public string HealthInsurancePay { get; set; }
///
/// 基本医疗保险统筹基金支付比例
///
[IrisColumn(Name = "HealthInsuranceRatio", Desc = "基本医疗保险统筹基金支付比例", DbType = "VarChar(20)", SqlFieldName = "HealthInsuranceRatio", Order = 28, CanBeNull = true)]
[StringLength(20, ErrorMessage = "基本医疗保险统筹基金支付比例长度不能超过20个字符")]
public string HealthInsuranceRatio { get; set; }
///
/// 公务员医疗补助资金支出
///
[IrisColumn(Name = "CivilserviceAllowancePay", Desc = "公务员医疗补助资金支出", DbType = "VarChar(20)", SqlFieldName = "CivilserviceAllowancePay", Order = 29, CanBeNull = true)]
[StringLength(20, ErrorMessage = "公务员医疗补助资金支出长度不能超过20个字符")]
public string CivilserviceAllowancePay { get; set; }
///
/// 企业补充医疗保险基金支出
///
[IrisColumn(Name = "EnterpriseSupplementPay", Desc = "企业补充医疗保险基金支出", DbType = "VarChar(20)", SqlFieldName = "EnterpriseSupplementPay", Order = 30, CanBeNull = true)]
[StringLength(20, ErrorMessage = "企业补充医疗保险基金支出长度不能超过20个字符")]
public string EnterpriseSupplementPay { get; set; }
///
/// 居民大病保险资金支出
///
[IrisColumn(Name = "SeriousIllnessPay", Desc = "居民大病保险资金支出", DbType = "VarChar(20)", SqlFieldName = "SeriousIllnessPay", Order = 31, CanBeNull = true)]
[StringLength(20, ErrorMessage = "居民大病保险资金支出长度不能超过20个字符")]
public string SeriousIllnessPay { get; set; }
///
/// 职工大额医疗费用补助基金支出
///
[IrisColumn(Name = "LargeExpensesSupplementPay", Desc = "职工大额医疗费用补助基金支出", DbType = "VarChar(20)", SqlFieldName = "LargeExpensesSupplementPay", Order = 32, CanBeNull = true)]
[StringLength(20, ErrorMessage = "职工大额医疗费用补助基金支出长度不能超过20个字符")]
public string LargeExpensesSupplementPay { get; set; }
///
/// 医疗救助基金支出
///
[IrisColumn(Name = "MedicalAssistPay", Desc = "医疗救助基金支出", DbType = "VarChar(20)", SqlFieldName = "MedicalAssistPay", Order = 33, CanBeNull = true)]
[StringLength(20, ErrorMessage = "医疗救助基金支出长度不能超过20个字符")]
public string MedicalAssistPay { get; set; }
///
/// 医院负担金额
///
[IrisColumn(Name = "HospitalPartAmount", Desc = "医院负担金额", DbType = "VarChar(20)", SqlFieldName = "HospitalPartAmount", Order = 34, CanBeNull = true)]
[StringLength(20, ErrorMessage = "医院负担金额长度不能超过20个字符")]
public string HospitalPartAmount { get; set; }
///
/// 其他支出
///
[IrisColumn(Name = "OtherPay", Desc = "其他支出", DbType = "VarChar(20)", SqlFieldName = "OtherPay", Order = 35, CanBeNull = true)]
[StringLength(20, ErrorMessage = "其他支出长度不能超过20个字符")]
public string OtherPay { get; set; }
///
/// 基金支付总额
///
[IrisColumn(Name = "FundPaySumamt", Desc = "基金支付总额", DbType = "VarChar(20)", SqlFieldName = "FundPaySumamt", Order = 36, CanBeNull = true)]
[StringLength(20, ErrorMessage = "基金支付总额长度不能超过20个字符")]
public string FundPaySumamt { get; set; }
///
/// 个人负担总金额
///
[IrisColumn(Name = "PersonPaySumamt", Desc = "个人负担总金额", DbType = "VarChar(20)", SqlFieldName = "PersonPaySumamt", Order = 37, CanBeNull = true)]
[StringLength(20, ErrorMessage = "个人负担总金额长度不能超过20个字符")]
public string PersonPaySumamt { get; set; }
///
/// 个人账户支出
///
[IrisColumn(Name = "AccountPaySumamt", Desc = "个人账户支出", DbType = "VarChar(20)", SqlFieldName = "AccountPaySumamt", Order = 38, CanBeNull = true)]
[StringLength(20, ErrorMessage = "个人账户支出长度不能超过20个字符")]
public string AccountPaySumamt { get; set; }
///
/// 个人现金支出
///
[IrisColumn(Name = "PersonCashPay", Desc = "个人现金支出", DbType = "VarChar(20)", SqlFieldName = "PersonCashPay", Order = 39, CanBeNull = true)]
[StringLength(20, ErrorMessage = "个人现金支出长度不能超过20个字符")]
public string PersonCashPay { get; set; }
///
/// 余额
///
[IrisColumn(Name = "Balance", Desc = "余额", DbType = "VarChar(20)", SqlFieldName = "Balance", Order = 40, CanBeNull = true)]
[StringLength(20, ErrorMessage = "余额长度不能超过20个字符")]
public string Balance { get; set; }
///
/// 个人账户共济支付金额
///
[IrisColumn(Name = "AccountMutualAidAmount", Desc = "个人账户共济支付金额", DbType = "VarChar(20)", SqlFieldName = "AccountMutualAidAmount", Order = 41, CanBeNull = true)]
[StringLength(20, ErrorMessage = "个人账户共济支付金额长度不能超过20个字符")]
public string AccountMutualAidAmount { get; set; }
///
/// 医药机构结算ID
///
[IrisColumn(Name = "OrganSettlementID", Desc = "医药机构结算ID", DbType = "VarChar(50)", SqlFieldName = "OrganSettlementID", Order = 42, CanBeNull = true)]
[StringLength(50, ErrorMessage = "医药机构结算ID长度不能超过50个字符")]
public string OrganSettlementID { get; set; }
///
/// 清算经办机构
///
[IrisColumn(Name = "ClearingOrgan", Desc = "清算经办机构", DbType = "VarChar(50)", SqlFieldName = "ClearingOrgan", Order = 43, CanBeNull = true)]
[StringLength(50, ErrorMessage = "清算经办机构长度不能超过50个字符")]
public string ClearingOrgan { get; set; }
///
/// 清算方式
///
[IrisColumn(Name = "ClearingWay", Desc = "清算方式", DbType = "VarChar(50)", SqlFieldName = "ClearingWay", Order = 45, CanBeNull = true)]
[StringLength(50, ErrorMessage = "清算方式长度不能超过50个字符")]
public string ClearingWay { get; set; }
///
/// 清算类别
///
[IrisColumn(Name = "ClearingType", Desc = "清算类别", DbType = "VarChar(50)", SqlFieldName = "ClearingType", Order = 46, CanBeNull = true)]
[StringLength(50, ErrorMessage = "清算类别长度不能超过50个字符")]
public string ClearingType { get; set; }
///
/// 有效标志 0 无效 1 有效
///
[IrisColumn(Name = "ValidFlag", Desc = "有效标志", DbType = "Int", SqlFieldName = "ValidFlag", Order = 47, CanBeNull = false)]
public int ValidFlag { get; set; }
///
/// 单据类型 1 正票 -1 负票 9 异常票据
///
[IrisColumn(Name = "BillType", Desc = "单据类型", DbType = "Int", SqlFieldName = "BillType", Order = 48, CanBeNull = false)]
public int BillType { get; set; }
///
/// 账单ID
///
[IrisColumn(Name = "BillID", Desc = "账单ID", DbType = "Int", SqlFieldName = "BillID", Order = 49, CanBeNull = false)]
public int BillID { get; set; }
///
/// 接口编号 指向接口表
///
[IrisColumn(Name = "InterfaceDr", Desc = "接口编号", DbType = "Int", SqlFieldName = "Interface_Dr", Order = 50, CanBeNull = true)]
public int? InterfaceDr { get; set; }
///
/// 发生时间
///
[IrisColumn(Name = "OccurTime", Desc = "发生时间", DbType = "DateTime", SqlFieldName = "OccurTime", Order = 51, CanBeNull = false)]
[Required(ErrorMessage = "发生时间不能为空")]
public DateTime OccurTime { get; set; }
///
/// 报文ID (配合冲正)
///
[IrisColumn(Name = "MSGID", Desc = "报文ID", DbType = "VarChar(50)", SqlFieldName = "MSGID", Order = 52, CanBeNull = true)]
[StringLength(50, ErrorMessage = "报文ID长度不能超过50个字符")]
public string MSGID { get; set; }
///
/// 就诊类型 1.门诊 2.住院 3.线上支付门诊 4.线上支付住院
///
[IrisColumn(Name = "AdmType", Desc = "就诊类型", DbType = "Int", SqlFieldName = "AdmType", Order = 53, CanBeNull = false)]
public int AdmType { get; set; }
///
/// 付款记录ID
///
[IrisColumn(Name = "RecordID", Desc = "付款记录ID", DbType = "Int", SqlFieldName = "RecordID", Order = 54, CanBeNull = false)]
public int RecordID { get; set; }
///
/// 参保地医保区划(InsurancePlaceDivision)
///
[IrisColumn(Name = "InsuranceAreaCode", Desc = "参保地医保区划", DbType = "VarChar(50)", SqlFieldName = "InsuranceAreaCode", Order = 55, CanBeNull = false)]
[Required(ErrorMessage = "参保地医保区划不能为空")]
[StringLength(50, ErrorMessage = "参保地医保区划长度不能超过50个字符")]
public string InsuranceAreaCode { get; set; }
///
/// 住院次数
///
[IrisColumn(Name = "HospitalizationsTimes", Desc = "住院次数", DbType = "Int", SqlFieldName = "HospitalizationsTimes", Order = 56, CanBeNull = true)]
public int? HospitalizationsTimes { get; set; }
///
/// 住院天数
///
[IrisColumn(Name = "HospitalizationsDays", Desc = "住院天数", DbType = "Int", SqlFieldName = "HospitalizationsDays", Order = 57, CanBeNull = true)]
public int? HospitalizationsDays { get; set; }
///
/// HIS入院时间
///
[IrisColumn(Name = "HISAdmTime", Desc = "HIS入院时间", DbType = "DateTime", SqlFieldName = "HISAdmTime", Order = 58, CanBeNull = true)]
public DateTime? HISAdmTime { get; set; }
///
/// HIS出院时间
///
[IrisColumn(Name = "HISDischargeTime", Desc = "HIS出院时间", DbType = "DateTime", SqlFieldName = "HISDischargeTime", Order = 59, CanBeNull = true)]
public DateTime? HISDischargeTime { get; set; }
///
/// 共济账户主结算ID
///
[IrisColumn(Name = "MainSettlementIDOfMutualAid", Desc = "共济账户主结算ID", DbType = "VarChar(50)", SqlFieldName = "MainSettlementIDOfMutualAid", Order = 60, CanBeNull = true)]
[StringLength(50, ErrorMessage = "共济账户主结算ID长度不能超过50个字符")]
public string MainSettlementIDOfMutualAid { get; set; }
///
/// 共济标志 0或空 未启用共济 大于0 启用了共济账户
///
[IrisColumn(Name = "MutualAidFlag", Desc = "共济标志", DbType = "Int", SqlFieldName = "MutualAidFlag", Order = 61, CanBeNull = true)]
public int? MutualAidFlag { get; set; }
///
/// 扩展字段 基线版医保接口扩展字段
///
[IrisColumn(Name = "ExpContent", Desc = "扩展字段", DbType = "VarChar(500)", SqlFieldName = "ExpContent", Order = 62, CanBeNull = true)]
[StringLength(500, ErrorMessage = "扩展字段长度不能超过500个字符")]
public string ExpContent { get; set; }
///
/// 确认标志 0未确认 1 已确认
///
[IrisColumn(Name = "ConfirmFlag", Desc = "确认标志", DbType = "Int", SqlFieldName = "ConfirmFlag", Order = 63, CanBeNull = true)]
public int? ConfirmFlag { get; set; }
///
/// 订单ID,配合移动支付
///
[IrisColumn(Name = "PayOrdID", Desc = "订单ID", DbType = "VarChar(50)", SqlFieldName = "PayOrdID", Order = 64, CanBeNull = true)]
[StringLength(50, ErrorMessage = "订单ID长度不能超过50个字符")]
public string PayOrdID { get; set; }
///
/// 对账标志 0未确认 1 已账户支付 3 已确认 5 已对账
///
[IrisColumn(Name = "CheckMark", Desc = "对账标志", DbType = "Int", SqlFieldName = "CheckMark", Order = 65, CanBeNull = true)]
public int? CheckMark { get; set; }
///
/// 特病类别
///
[IrisColumn(Name = "SpecialType", Desc = "特病类别", DbType = "VarChar(50)", SqlFieldName = "SpecialType", Order = 66, CanBeNull = true)]
[StringLength(50, ErrorMessage = "特病类别长度不能超过50个字符")]
public string SpecialType { get; set; }
///
/// 特殊人员类别
///
[IrisColumn(Name = "SpecialPersonType", Desc = "特殊人员类别", DbType = "VarChar(50)", SqlFieldName = "SpecialPersonType", Order = 67, CanBeNull = true)]
[StringLength(50, ErrorMessage = "特殊人员类别长度不能超过50个字符")]
public string SpecialPersonType { get; set; }
///
/// 结算方式
///
[IrisColumn(Name = "SettlementWay", Desc = "结算方式", DbType = "VarChar(50)", SqlFieldName = "SettlementWay", Order = 68, CanBeNull = true)]
[StringLength(50, ErrorMessage = "结算方式长度不能超过50个字符")]
public string SettlementWay { get; set; }
///
/// 病种编码
///
[IrisColumn(Name = "DiseasecCode", Desc = "病种编码", DbType = "VarChar(50)", SqlFieldName = "DiseasecCode", Order = 69, CanBeNull = true)]
[StringLength(50, ErrorMessage = "病种编码长度不能超过50个字符")]
public string DiseasecCode { get; set; }
///
/// 病种名称
///
[IrisColumn(Name = "DiseasecName", Desc = "病种名称", DbType = "VarChar(100)", SqlFieldName = "DiseasecName", Order = 70, CanBeNull = true)]
[StringLength(100, ErrorMessage = "病种名称长度不能超过100个字符")]
public string DiseasecName { get; set; }
///
/// 商保支付标志 0-商保未缴费 1-商保正常报销 2-个人负担(不含超限价)超6万 3-商保计算服务调用异常、4-商保已支付
///
[IrisColumn(Name = "CommercialRenFlag", Desc = "商保支付标志", DbType = "VarChar(10)", SqlFieldName = "CommercialRenFlag", Order = 71, CanBeNull = true)]
[StringLength(10, ErrorMessage = "商保支付标志长度不能超过10个字符")]
public string CommercialRenFlag { get; set; }
///
/// 商保支付金额
///
[IrisColumn(Name = "CommercialReimamt", Desc = "商保支付金额", DbType = "VarChar(20)", SqlFieldName = "CommercialReimamt", Order = 72, CanBeNull = true)]
[StringLength(20, ErrorMessage = "商保支付金额长度不能超过20个字符")]
public string CommercialReimamt { get; set; }
///
/// 冲正标志 0 正常 1 已冲正
///
[IrisColumn(Name = "ReversalFlag", Desc = "冲正标志", DbType = "Int", SqlFieldName = "ReversalFlag", Order = 73, CanBeNull = false)]
public int ReversalFlag { get; set; }
}
}