Browse Source

医保对接

csx 3 years ago
parent
commit
a14fa1410f

+ 5 - 2
controllers/his_api_controller.go View File

337
 							if advice.(map[string]interface{})["id"] != nil || reflect.TypeOf(advice.(map[string]interface{})["id"]).String() == "float64" {
337
 							if advice.(map[string]interface{})["id"] != nil || reflect.TypeOf(advice.(map[string]interface{})["id"]).String() == "float64" {
338
 								drug_id = int64(advice.(map[string]interface{})["id"].(float64))
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
 							if advice.(map[string]interface{})["prescribing_number_unit"] != nil && reflect.TypeOf(advice.(map[string]interface{})["prescribing_number_unit"]).String() == "string" {
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 View File

275
 								drug_id = int64(advice.(map[string]interface{})["id"].(float64))
275
 								drug_id = int64(advice.(map[string]interface{})["id"].(float64))
276
 							}
276
 							}
277
 							if advice.(map[string]interface{})["prescribing_number"] != nil || reflect.TypeOf(advice.(map[string]interface{})["prescribing_number"]).String() == "float64" {
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
 							if advice.(map[string]interface{})["prescribing_number_unit"] != nil && reflect.TypeOf(advice.(map[string]interface{})["prescribing_number_unit"]).String() == "string" {
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 View File

1260
 	Diagnosis             int64   `gorm:"column:diagnosis" json:"diagnosis" form:"diagnosis"`
1260
 	Diagnosis             int64   `gorm:"column:diagnosis" json:"diagnosis" form:"diagnosis"`
1261
 	HospApprFlag          int64   `gorm:"column:hosp_appr_flag" json:"hosp_appr_flag" form:"hosp_appr_flag"`
1261
 	HospApprFlag          int64   `gorm:"column:hosp_appr_flag" json:"hosp_appr_flag" form:"hosp_appr_flag"`
1262
 	LmtUsedFlag           int64   `gorm:"column:lmt_used_flag" json:"lmt_used_flag" form:"lmt_used_flag"`
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
 func (HisPrescriptionAdviceTemplate) TableName() string {
1266
 func (HisPrescriptionAdviceTemplate) TableName() string {

+ 1 - 1
service/his_service.go View File

1831
 func GetHisPrescriptionTemplate(template_id int64, org_id int64) (prescription []*models.HisPrescriptionInfoTemplate, err error) {
1831
 func GetHisPrescriptionTemplate(template_id int64, org_id int64) (prescription []*models.HisPrescriptionInfoTemplate, err error) {
1832
 	err = readDb.Model(&models.HisPrescriptionInfoTemplate{}).
1832
 	err = readDb.Model(&models.HisPrescriptionInfoTemplate{}).
1833
 		Preload("HisPrescriptionAdviceTemplate", func(db *gorm.DB) *gorm.DB {
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
 		Preload("HisPrescriptionProjectTemplate", func(db *gorm.DB) *gorm.DB {
1836
 		Preload("HisPrescriptionProjectTemplate", func(db *gorm.DB) *gorm.DB {
1837
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("XtHisProject").Preload("GoodInfo", "status=1")
1837
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("XtHisProject").Preload("GoodInfo", "status=1")