|
@@ -16,6 +16,7 @@ type HospitalPatient struct {
|
16
|
16
|
Schedule Schedule `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"schedule"`
|
17
|
17
|
HisHospitalCheckRecord models.HisHospitalCheckRecord `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"his_patient"`
|
18
|
18
|
VMHisPrescriptionInfo VMHisPrescriptionInfo `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"info"`
|
|
19
|
+ HisPrescription []models.HisPrescription `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"ps"`
|
19
|
20
|
HisHospitalOrder models.HisHospitalOrder `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"order"`
|
20
|
21
|
FirstLetter string `gorm:"column:first_letter" json:"first_letter" form:"first_letter"`
|
21
|
22
|
}
|
|
@@ -81,6 +82,20 @@ func GetAllHisHospitalPatientList(org_id int64, record_date int64, sch_type int6
|
81
|
82
|
db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
82
|
83
|
return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
83
|
84
|
})
|
|
85
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
86
|
+ err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
|
87
|
+ return
|
|
88
|
+}
|
|
89
|
+
|
|
90
|
+func GetAllHisHospitalPatientListBySource(org_id int64, record_date int64, sch_type int64) (patients []*HospitalPatient, err error) {
|
|
91
|
+ db := readDb.Model(&HospitalPatient{}).Where("xt_patients.user_org_id = ? AND xt_patients.status = 1 and xt_patients.source = 2", org_id)
|
|
92
|
+ db = db.Joins("join his_hospital_check_record as record ON record.patient_id = xt_patients.id AND record.status = 1 AND record.user_org_id = ? AND record.in_hospital_status = 1", org_id)
|
|
93
|
+ //db = db.Joins("join xt_schedule as sch ON sch.patient_id = xt_patients.id AND sch.status = 1 AND sch.user_org_id = ? AND sch.schedule_date = ? AND sch.schedule_type = ? ", org_id, record_date, sch_type)
|
|
94
|
+ db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
|
95
|
+ return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
|
96
|
+ })
|
|
97
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
98
|
+
|
84
|
99
|
err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
85
|
100
|
return
|
86
|
101
|
}
|
|
@@ -92,6 +107,8 @@ func GetHisHospitalPatientList(org_id int64, record_date int64, sch_type int64)
|
92
|
107
|
db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
93
|
108
|
return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
94
|
109
|
})
|
|
110
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
111
|
+
|
95
|
112
|
err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
96
|
113
|
return
|
97
|
114
|
}
|
|
@@ -103,6 +120,7 @@ func GetHisHospitalSchPatientList(org_id int64, record_date int64, sch_type int6
|
103
|
120
|
db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
104
|
121
|
return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
105
|
122
|
})
|
|
123
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
106
|
124
|
err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
107
|
125
|
return
|
108
|
126
|
|
|
@@ -112,6 +130,44 @@ func GetHisHospitalSchPatientList(org_id int64, record_date int64, sch_type int6
|
112
|
130
|
db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
113
|
131
|
return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
114
|
132
|
})
|
|
133
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
134
|
+ err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
|
135
|
+ return
|
|
136
|
+
|
|
137
|
+ }
|
|
138
|
+
|
|
139
|
+}
|
|
140
|
+
|
|
141
|
+func GetHisHospitalPatientListBySource(org_id int64, record_date int64, sch_type int64) (patients []*HospitalPatient, err error) {
|
|
142
|
+ db := readDb.Model(&HospitalPatient{}).Where("xt_patients.user_org_id = ? AND xt_patients.status = 1 and xt_patients.source = 2", org_id)
|
|
143
|
+ db = db.Joins("join his_hospital_check_record as record ON record.patient_id = xt_patients.id AND record.status = 1 AND record.user_org_id = ? AND record.in_hospital_status = 1 AND record.record_date = ? ", org_id, record_date)
|
|
144
|
+ db = db.Joins("join xt_schedule as sch ON sch.patient_id = xt_patients.id AND sch.status = 1 AND sch.user_org_id = ? AND sch.schedule_date = ? AND sch.schedule_type = ? ", org_id, record_date, sch_type)
|
|
145
|
+ db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
|
146
|
+ return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
|
147
|
+ })
|
|
148
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
149
|
+ err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
|
150
|
+ return
|
|
151
|
+}
|
|
152
|
+
|
|
153
|
+func GetHisHospitalSchPatientListBySource(org_id int64, record_date int64, sch_type int64) (patients []*HospitalPatient, err error) {
|
|
154
|
+ if sch_type > 0 {
|
|
155
|
+ db := readDb.Model(&HospitalPatient{}).Where("xt_patients.user_org_id = ? AND xt_patients.status = 1 and xt_patients.source = 2", org_id)
|
|
156
|
+ db = db.Joins("join xt_schedule as sch ON sch.patient_id = xt_patients.id AND sch.status = 1 AND sch.user_org_id = ? AND sch.schedule_date = ? AND sch.schedule_type = ? ", org_id, record_date, sch_type)
|
|
157
|
+ db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
|
158
|
+ return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
|
159
|
+ })
|
|
160
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
|
161
|
+ err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
|
162
|
+ return
|
|
163
|
+
|
|
164
|
+ } else {
|
|
165
|
+ db := readDb.Model(&HospitalPatient{}).Where("xt_patients.user_org_id = ? AND xt_patients.status = 1 and xt_patients.source = 2", org_id)
|
|
166
|
+ db = db.Joins("join xt_schedule as sch ON sch.patient_id = xt_patients.id AND sch.status = 1 AND sch.user_org_id = ? AND sch.schedule_date = ? ", org_id, record_date)
|
|
167
|
+ db = db.Preload("HisHospitalCheckRecord", func(db *gorm.DB) *gorm.DB {
|
|
168
|
+ return db.Where("user_org_id = ? AND status = 1 AND in_hospital_status = 1 AND out_hospital_status = 0", org_id).Order("id desc")
|
|
169
|
+ })
|
|
170
|
+ db = db.Preload("HisPrescription", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date)
|
115
|
171
|
err = db.Preload("VMHisPrescriptionInfo", "user_org_id = ? AND status = 1 AND record_date = ? AND p_type = 1", org_id, record_date).Group("id").Find(&patients).Error
|
116
|
172
|
return
|
117
|
173
|
|