csx vor 3 Jahren
Ursprung
Commit
a14fa1410f

+ 5 - 2
controllers/his_api_controller.go Datei anzeigen

@@ -337,8 +337,11 @@ func (c *HisApiController) CreateHisPrescription() {
337 337
 							if advice.(map[string]interface{})["id"] != nil || reflect.TypeOf(advice.(map[string]interface{})["id"]).String() == "float64" {
338 338
 								drug_id = int64(advice.(map[string]interface{})["id"].(float64))
339 339
 							}
340
-							if advice.(map[string]interface{})["prescribing_number"] != nil || reflect.TypeOf(advice.(map[string]interface{})["prescribing_number"]).String() == "float64" {
341
-								prescribing_number = advice.(map[string]interface{})["prescribing_number"].(float64)
340
+							if advice.(map[string]interface{})["prescribing_number"] != nil || reflect.TypeOf(advice.(map[string]interface{})["prescribing_number"]).String() == "string" {
341
+								//prescribing_number = advice.(map[string]interface{})["prescribing_number"].(string)
342
+								prescribing_number_str := advice.(map[string]interface{})["prescribing_number"].(string)
343
+								prescribing_number, _ = strconv.ParseFloat(prescribing_number_str, 64)
344
+
342 345
 							}
343 346
 
344 347
 							if advice.(map[string]interface{})["prescribing_number_unit"] != nil && reflect.TypeOf(advice.(map[string]interface{})["prescribing_number_unit"]).String() == "string" {

+ 4 - 1
controllers/new_mobile_api_controllers/mobile_his_api_controller.go Datei anzeigen

@@ -275,7 +275,10 @@ func (c *MobileHisApiController) CreateHisPrescription() {
275 275
 								drug_id = int64(advice.(map[string]interface{})["id"].(float64))
276 276
 							}
277 277
 							if advice.(map[string]interface{})["prescribing_number"] != nil || reflect.TypeOf(advice.(map[string]interface{})["prescribing_number"]).String() == "float64" {
278
-								prescribing_number = advice.(map[string]interface{})["prescribing_number"].(float64)
278
+								//presc ribing_number = advice.(map[string]interface{})["prescribing_number"].(float64)
279
+								prescribing_number_str := advice.(map[string]interface{})["prescribing_number"].(string)
280
+								prescribing_number, _ = strconv.ParseFloat(prescribing_number_str, 64)
281
+
279 282
 							}
280 283
 
281 284
 							if advice.(map[string]interface{})["prescribing_number_unit"] != nil && reflect.TypeOf(advice.(map[string]interface{})["prescribing_number_unit"]).String() == "string" {

+ 1 - 0
models/his_models.go Datei anzeigen

@@ -1260,6 +1260,7 @@ type HisPrescriptionAdviceTemplate struct {
1260 1260
 	Diagnosis             int64   `gorm:"column:diagnosis" json:"diagnosis" form:"diagnosis"`
1261 1261
 	HospApprFlag          int64   `gorm:"column:hosp_appr_flag" json:"hosp_appr_flag" form:"hosp_appr_flag"`
1262 1262
 	LmtUsedFlag           int64   `gorm:"column:lmt_used_flag" json:"lmt_used_flag" form:"lmt_used_flag"`
1263
+	Drug                  Drug    `gorm:"ForeignKey:ID;AssociationForeignKey:DrugId" json:"drug"`
1263 1264
 }
1264 1265
 
1265 1266
 func (HisPrescriptionAdviceTemplate) TableName() string {

+ 1 - 1
service/his_service.go Datei anzeigen

@@ -1831,7 +1831,7 @@ func GetHisPrescriptionBySchMode(mode_id int64, patient_id int64, org_id int64)
1831 1831
 func GetHisPrescriptionTemplate(template_id int64, org_id int64) (prescription []*models.HisPrescriptionInfoTemplate, err error) {
1832 1832
 	err = readDb.Model(&models.HisPrescriptionInfoTemplate{}).
1833 1833
 		Preload("HisPrescriptionAdviceTemplate", func(db *gorm.DB) *gorm.DB {
1834
-			return db.Where("status = 1 AND user_org_id = ?", org_id)
1834
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
1835 1835
 		}).
1836 1836
 		Preload("HisPrescriptionProjectTemplate", func(db *gorm.DB) *gorm.DB {
1837 1837
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("XtHisProject").Preload("GoodInfo", "status=1")