package models

type BaseDrugLib struct {
	ID                          int64   `gorm:"column:id" json:"id" form:"id"`
	DrugName                    string  `gorm:"column:drug_name" json:"drug_name" form:"drug_name"`
	Pinyin                      string  `gorm:"column:pinyin" json:"pinyin" form:"pinyin"`
	Wubi                        string  `gorm:"column:wubi" json:"wubi" form:"wubi"`
	DrugAlias                   string  `gorm:"column:drug_alias" json:"drug_alias" form:"drug_alias"`
	DrugAliasPinyin             string  `gorm:"column:drug_alias_pinyin" json:"drug_alias_pinyin" form:"drug_alias_pinyin"`
	DrugAliasWubi               string  `gorm:"column:drug_alias_wubi" json:"drug_alias_wubi" form:"drug_alias_wubi"`
	DrugCategory                int64   `gorm:"column:drug_category" json:"drug_category" form:"drug_category"`
	DrugSpec                    string  `gorm:"column:drug_spec" json:"drug_spec" form:"drug_spec"`
	DrugType                    int64   `gorm:"column:drug_type" json:"drug_type" form:"drug_type"`
	DrugStockLimit              string  `gorm:"column:drug_stock_limit" json:"drug_stock_limit" form:"drug_stock_limit"`
	DrugOriginPlace             string  `gorm:"column:drug_origin_place" json:"drug_origin_place" form:"drug_origin_place"`
	DrugDosageForm              int64   `gorm:"column:drug_dosage_form" json:"drug_dosage_form" form:"drug_dosage_form"`
	MedicalInsuranceLevel       int64   `gorm:"column:medical_insurance_level" json:"medical_insurance_level" form:"medical_insurance_level"`
	MaxUnit                     string  `gorm:"column:max_unit" json:"max_unit" form:"max_unit"`
	MinNumber                   int64   `gorm:"column:min_number" json:"min_number" form:"min_number"`
	MinUnit                     string  `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
	Dose                        float64 `gorm:"column:dose" json:"dose" form:"dose"`
	DoseUnit                    string  `gorm:"column:dose_unit" json:"dose_unit" form:"dose_unit"`
	MinPrice                    float64 `gorm:"column:min_price" json:"min_price" form:"min_price"`
	UnitMatrixing               string  `gorm:"column:unit_matrixing" json:"unit_matrixing" form:"unit_matrixing"`
	RetailPrice                 float64 `gorm:"column:retail_price" json:"retail_price" form:"retail_price"`
	LastPrice                   float64 `gorm:"column:last_price" json:"last_price" form:"last_price"`
	DrugControl                 int64   `gorm:"column:drug_control" json:"drug_control" form:"drug_control"`
	Number                      string  `gorm:"column:number" json:"number" form:"number"`
	DrugClassify                string  `gorm:"column:drug_classify" json:"drug_classify" form:"drug_classify"`
	DrugDose                    float64 `gorm:"column:drug_dose" json:"drug_dose" form:"drug_dose"`
	DrugDoseUnit                int64   `gorm:"column:drug_dose_unit" json:"drug_dose_unit" form:"drug_dose_unit"`
	MedicalInsuranceNumber      string  `gorm:"column:medical_insurance_number" json:"medical_insurance_number" form:"medical_insurance_number"`
	Manufacturer                int64   `gorm:"column:manufacturer" json:"manufacturer" form:"manufacturer"`
	PharmacologyCategory        int64   `gorm:"column:pharmacology_category" json:"pharmacology_category" form:"pharmacology_category"`
	StatisticsCategory          int64   `gorm:"column:statistics_category" json:"statistics_category" form:"statistics_category"`
	Code                        string  `gorm:"column:code" json:"code" form:"code"`
	IsSpecialDiseases           int64   `gorm:"column:is_special_diseases" json:"is_special_diseases" form:"is_special_diseases"`
	IsRecord                    int64   `gorm:"column:is_record" json:"is_record" form:"is_record"`
	Agent                       string  `gorm:"column:agent" json:"agent" form:"agent"`
	DrugStatus                  string  `gorm:"column:drug_status" json:"drug_status" form:"drug_status"`
	LimitRemark                 string  `gorm:"column:limit_remark" json:"limit_remark" form:"limit_remark"`
	DeliveryWay                 string  `gorm:"column:delivery_way" json:"delivery_way" form:"delivery_way"`
	ExecutionFrequency          string  `gorm:"column:execution_frequency" json:"execution_frequency" form:"execution_frequency"`
	SingleDose                  float64 `gorm:"column:single_dose" json:"single_dose" form:"single_dose"`
	PrescribingNumber           float64 `gorm:"column:prescribing_number" json:"prescribing_number" form:"prescribing_number"`
	Label                       int64   `gorm:"column:label" json:"label" form:"label"`
	Sort                        int64   `gorm:"column:sort" json:"sort" form:"sort"`
	IsUseDoctorAdvice           int64   `gorm:"column:is_use_doctor_advice" json:"is_use_doctor_advice" form:"is_use_doctor_advice"`
	IsDefault                   int64   `gorm:"column:is_default" json:"is_default" form:"is_default"`
	IsChargePredict             int64   `gorm:"column:is_charge_predict" json:"is_charge_predict" form:"is_charge_predict"`
	IsStatisticsWork            int64   `gorm:"column:is_statistics_work" json:"is_statistics_work" form:"is_statistics_work"`
	IsChargeUse                 int64   `gorm:"column:is_charge_use" json:"is_charge_use" form:"is_charge_use"`
	Status                      int64   `gorm:"column:status" json:"status" form:"status"`
	Ctime                       int64   `gorm:"column:ctime" json:"ctime" form:"ctime"`
	Mtime                       int64   `gorm:"column:mtime" json:"mtime" form:"mtime"`
	OrgId                       int64   `gorm:"column:org_id" json:"org_id" form:"org_id"`
	DrugCode                    string  `gorm:"column:drug_code" json:"drug_code" form:"drug_code"`
	Dealer                      int64   `gorm:"column:dealer" json:"dealer" form:"dealer"`
	PrescriptionMark            int64   `gorm:"column:prescription_mark" json:"prescription_mark" form:"prescription_mark"`
	RecordDate                  int64   `gorm:"column:record_date" json:"record_date" form:"record_date"`
	DrugRemark                  string  `gorm:"column:drug_remark" json:"drug_remark" form:"drug_remark"`
	SocialSecurityDirectoryCode string  `gorm:"column:social_security_directory_code" json:"social_security_directory_code" form:"social_security_directory_code"`
	DoseCode                    string  `gorm:"column:dose_code" json:"dose_code" form:"dose_code"`
	IsMark                      int64   `gorm:"column:is_mark" json:"is_mark" form:"is_mark"`
	HospApprFlag                int64   `gorm:"column:hosp_appr_flag" json:"hosp_appr_flag" form:"hosp_appr_flag"`
	LmtUsedFlag                 int64   `gorm:"column:lmt_used_flag" json:"lmt_used_flag" form:"lmt_used_flag"`
	//MedicineInsurancePercentage []*MedicineInsurancePercentage `gorm:"ForeignKey:PatientId;AssociationForeignKey:PatientId" json:"monitoring_record"`
	DrugDay               string  `gorm:"column:drug_day" json:"drug_day" form:"drug_day"`
	Total                 float64 `gorm:"column:total" json:"total" form:"total"`
	PrescribingNumberUnit string  `gorm:"column:prescribing_number_unit" json:"prescribing_number_unit" form:"prescribing_number_unit"`
}

func (BaseDrugLib) TableName() string {
	return "xt_base_drug"
}

type DrugUnitSafeguard struct {
	ID               int64  `gorm:"column:id" json:"id" form:"id"`
	Unit             string `gorm:"column:unit" json:"unit" form:"unit"`
	ConversionFactor string `gorm:"column:conversion_factor" json:"conversion_factor" form:"conversion_factor"`
	IsStockUse       int64  `gorm:"column:is_stock_use" json:"is_stock_use" form:"is_stock_use"`
	UserOrgId        int64  `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
	Ctime            int64  `gorm:"column:ctime" json:"ctime" form:"ctime"`
	Mtime            int64  `gorm:"column:mtime" json:"mtime" form:"mtime"`
	Status           int64  `gorm:"column:status" json:"status" form:"status"`
	DrugId           int64  `gorm:"column:drug_id" json:"drug_id" form:"drug_id"`
}

func (DrugUnitSafeguard) TableName() string {
	return "xt_drug_unit_safeguard"
}

type MedicineInsurancePercentage struct {
	ID                    int64   `gorm:"column:id" json:"id" form:"id"`
	MedicineInsuranceType int64   `gorm:"column:medicine_insurance_type" json:"medicine_insurance_type" form:"medicine_insurance_type"`
	Percent               float64 `gorm:"column:percent" json:"percent" form:"percent"`
	UserOrgId             int64   `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
	Status                int64   `gorm:"column:status" json:"status" form:"status"`
	Ctime                 int64   `gorm:"column:ctime" json:"ctime" form:"ctime"`
	Mtime                 int64   `gorm:"column:mtime" json:"mtime" form:"mtime"`
	TypeId                int64   `gorm:"column:type_id" json:"drug_id" form:"type_id"`
	RecordTime            int64   `gorm:"column:record_time" json:"record_time" form:"record_time"`
	Module                int64   `gorm:"column:module" json:"module" form:"module"`
	GoodId                int64   `gorm:"column:good_id" json:"good_id" form:"good_id"`
}

func (MedicineInsurancePercentage) TableName() string {
	return "xt_medicine_insurance_percentage"
}
