test_user hace 7 meses
padre
commit
2829ea26e0
Se han modificado 3 ficheros con 103 adiciones y 28 borrados
  1. 27 11
      controllers/ah/ahyb_controller.go
  2. 75 16
      controllers/sg/his_api_controller.go
  3. 1 1
      service/ahyb_service.go

+ 27 - 11
controllers/ah/ahyb_controller.go Ver fichero

304
 	doctor_name := c.GetString("doctor_name")
304
 	doctor_name := c.GetString("doctor_name")
305
 	cainfo := c.GetString("cainfo")
305
 	cainfo := c.GetString("cainfo")
306
 	card_sn := c.GetString("card_sn")
306
 	card_sn := c.GetString("card_sn")
307
+	fmt.Println("Error decoding JSON:", verify_number)
308
+	fmt.Println("Error decoding JSON:", certNo)
309
+
310
+
307
 
311
 
308
 
312
 
309
 	result, inputLog := service.AHyb2201(psnNo, insutype, certNo, org_name, opera, ipt_otp_no, dept, fixmedins_code, dept_code, doctor_id, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type, doctor_name, url, ak, verify_number, cainfo,card_sn)
313
 	result, inputLog := service.AHyb2201(psnNo, insutype, certNo, org_name, opera, ipt_otp_no, dept, fixmedins_code, dept_code, doctor_id, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type, doctor_name, url, ak, verify_number, cainfo,card_sn)
562
 	result, inputLog := service.AHyb2204(respJSON["psn_no"].(string), respJSON["mdtrt_id"].(string), hp, respJSON["chrg_bchno"].(string), respJSON["org_name"].(string),
566
 	result, inputLog := service.AHyb2204(respJSON["psn_no"].(string), respJSON["mdtrt_id"].(string), hp, respJSON["chrg_bchno"].(string), respJSON["org_name"].(string),
563
 		respJSON["doctor"].(string), respJSON["dept"].(string), respJSON["fixmedins_code"].(string), respJSON["dept_code"].(string), respJSON["doctor_id"].(string), respJSON["insuplc_admdvs"].(string), respJSON["mdtrtarea_admvs"].(string), respJSON["secret_key"].(string), respJSON["balance_accounts_type"].(string), respJSON["diag_code"].(string), respJSON["url"].(string), respJSON["ak"].(string), respJSON["new_doctor_name"].(string), "", respJSON["cainfo"].(string), respJSON["opter"].(string))
567
 		respJSON["doctor"].(string), respJSON["dept"].(string), respJSON["fixmedins_code"].(string), respJSON["dept_code"].(string), respJSON["doctor_id"].(string), respJSON["insuplc_admdvs"].(string), respJSON["mdtrtarea_admvs"].(string), respJSON["secret_key"].(string), respJSON["balance_accounts_type"].(string), respJSON["diag_code"].(string), respJSON["url"].(string), respJSON["ak"].(string), respJSON["new_doctor_name"].(string), "", respJSON["cainfo"].(string), respJSON["opter"].(string))
564
 
568
 
569
+
565
 	saveJsLog(result, inputLog, "2204", "上传明细", respJSON["org_name"].(string))
570
 	saveJsLog(result, inputLog, "2204", "上传明细", respJSON["org_name"].(string))
566
 	var response Response
571
 	var response Response
567
 	if err := json.Unmarshal([]byte(result), &response); err != nil {
572
 	if err := json.Unmarshal([]byte(result), &response); err != nil {
1021
 
1026
 
1022
 		if len(pCardInfo) > 0 {
1027
 		if len(pCardInfo) > 0 {
1023
 			result, _ := service.AHyb1101A(basNumber, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type_int, card_sn, "1", url, ak, id_card_no, cainfo)
1028
 			result, _ := service.AHyb1101A(basNumber, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type_int, card_sn, "1", url, ak, id_card_no, cainfo)
1024
-			var dat map[string]interface{}
1025
-			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1026
-				fmt.Println(dat)
1027
-			} else {
1028
-				fmt.Println(err)
1029
+
1030
+
1031
+			var response Response
1032
+			if err := json.Unmarshal([]byte(result), &response); err != nil {
1033
+				fmt.Println("Error decoding JSON:", err)
1034
+				return
1029
 			}
1035
 			}
1030
-			c.ServeSuccessJSON(map[string]interface{}{
1031
-				"status":         "0",
1032
-				"card_info":      pCardInfo,
1033
-				"result":         dat,
1034
-				"type":           "1",
1035
-			})
1036
+			if  response.Code == 200{
1037
+				c.ServeSuccessJSON(map[string]interface{}{
1038
+					"status":         "0",
1039
+					"card_info":      pCardInfo,
1040
+					"result":         response.Body,
1041
+					"type":           "1",
1042
+				})
1043
+			}else{
1044
+
1045
+				c.ServeSuccessJSON(map[string]interface{}{
1046
+					"status":"0",
1047
+					"msg":response.Message,
1048
+				})
1049
+
1050
+			}
1051
+
1036
 		} else {
1052
 		} else {
1037
 			c.ServeSuccessJSON(map[string]interface{}{
1053
 			c.ServeSuccessJSON(map[string]interface{}{
1038
 				"status": "-1",
1054
 				"status": "-1",

+ 75 - 16
controllers/sg/his_api_controller.go Ver fichero

25851
 				his.PsnNo = psn_info.PsnNo
25851
 				his.PsnNo = psn_info.PsnNo
25852
 				psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
25852
 				psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
25853
 				var cert_no string
25853
 				var cert_no string
25854
+
25854
 				if id_card_type == 1 {
25855
 				if id_card_type == 1 {
25855
 					bas := strings.Split(psn_info.CardInfo, "|")
25856
 					bas := strings.Split(psn_info.CardInfo, "|")
25856
 					cert_no = bas[2]
25857
 					cert_no = bas[2]
25869
 				his.Insutype = insutype
25870
 				his.Insutype = insutype
25870
 				var api string
25871
 				var api string
25871
 				ipt_otp_no = timeFormat
25872
 				ipt_otp_no = timeFormat
25872
-				api = miConfig.SecretKey + "ahyb/2201?psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
25873
+				api = miConfig.SecretKey + "ahyb/2201?verify_number="+cert_no+"&cert_no="+IdCardNo+"&psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
25873
 					"&org_name=" + miConfig.OrgName + "&opera=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
25874
 					"&org_name=" + miConfig.OrgName + "&opera=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
25874
 					"&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_info.DoctorNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
25875
 					"&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_info.DoctorNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
25875
 
25876
 
25931
 				his.Insutype = insutype
25932
 				his.Insutype = insutype
25932
 				var api string
25933
 				var api string
25933
 				ipt_otp_no = timeFormat
25934
 				ipt_otp_no = timeFormat
25934
-				api = miConfig.SecretKey + "ahyb/2201?psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
25935
+				api = miConfig.SecretKey + "ahyb/2201?psn_no=" + PsnNo +"&verify_number="+cert_no+"&cert_no="+IdCardNo+ "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
25935
 					"&org_name=" + miConfig.OrgName + "&opera=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
25936
 					"&org_name=" + miConfig.OrgName + "&opera=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
25936
 					"&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_info.DoctorNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
25937
 					"&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_info.DoctorNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
25937
 
25938
 
29306
 					if reg_type == 140104 {
29307
 					if reg_type == 140104 {
29307
 						med_type = "140104"
29308
 						med_type = "140104"
29308
 					}
29309
 					}
29310
+
29311
+					if reg_type == 140201 {
29312
+						med_type = "140201"
29313
+					}
29309
 					if reg_type == 14 {
29314
 					if reg_type == 14 {
29310
 						med_type = "14"
29315
 						med_type = "14"
29311
 					}
29316
 					}
29313
 					if reg_type == 992102 {
29318
 					if reg_type == 992102 {
29314
 						med_type = "992102"
29319
 						med_type = "992102"
29315
 					}
29320
 					}
29321
+					if reg_type == 140104 {
29322
+						med_type = "140104"
29323
+					}
29324
+
29325
+					if reg_type == 140201 {
29326
+						med_type = "140201"
29327
+					}
29316
 					if reg_type == 14 {
29328
 					if reg_type == 14 {
29317
 						med_type = "14"
29329
 						med_type = "14"
29318
 					}
29330
 					}
30681
 				data["sick_code"] = sickConfig.CountryCode
30693
 				data["sick_code"] = sickConfig.CountryCode
30682
 				data["sick_name"] = sickConfig.ClassName
30694
 				data["sick_name"] = sickConfig.ClassName
30683
 			}
30695
 			}
30696
+			if reg_type == 140201 {
30697
+				med_type = "140201"
30698
+				data["sick_code"] = sickConfig.CountryCode
30699
+				data["sick_name"] = sickConfig.ClassName
30700
+			}
30684
 			if reg_type == 14 {
30701
 			if reg_type == 14 {
30685
-				med_type = "140104"
30702
+				med_type = "14"
30686
 				data["sick_code"] = sickConfig.CountryCode
30703
 				data["sick_code"] = sickConfig.CountryCode
30687
 				data["sick_name"] = sickConfig.ClassName
30704
 				data["sick_name"] = sickConfig.ClassName
30688
 			}
30705
 			}
30690
 			if reg_type == 992102 {
30707
 			if reg_type == 992102 {
30691
 				med_type = "992102"
30708
 				med_type = "992102"
30692
 				data["sick_code"] = sickConfig.CountryCode
30709
 				data["sick_code"] = sickConfig.CountryCode
30693
-				data["sick_name"] = sickConfig.CountryCode
30710
+				data["sick_name"] = sickConfig.ClassName
30711
+
30694
 			}
30712
 			}
30695
 			if reg_type == 140104 {
30713
 			if reg_type == 140104 {
30696
 				med_type = "140104"
30714
 				med_type = "140104"
30697
 				data["sick_code"] = sickConfig.CountryCode
30715
 				data["sick_code"] = sickConfig.CountryCode
30698
-				data["sick_name"] = sickConfig.CountryCode
30716
+				data["sick_name"] = sickConfig.ClassName
30717
+			}
30718
+			if reg_type == 140201 {
30719
+				med_type = "140201"
30720
+				data["sick_code"] = sickConfig.CountryCode
30721
+				data["sick_name"] = sickConfig.ClassName
30699
 			}
30722
 			}
30700
 			if reg_type == 14 {
30723
 			if reg_type == 14 {
30701
 				med_type = "14"
30724
 				med_type = "14"
30702
 				data["sick_code"] = sickConfig.CountryCode
30725
 				data["sick_code"] = sickConfig.CountryCode
30703
 				data["sick_name"] = sickConfig.ClassName
30726
 				data["sick_name"] = sickConfig.ClassName
30704
-
30705
 			}
30727
 			}
30706
 		}
30728
 		}
30707
 
30729
 
31002
 
31024
 
31003
 				data["diag_code"] = sickConfig.CountryCode
31025
 				data["diag_code"] = sickConfig.CountryCode
31004
 
31026
 
31027
+			}
31028
+			if reg_type == 140201 {
31029
+
31030
+				data["diag_code"] = sickConfig.CountryCode
31031
+
31005
 			}
31032
 			}
31006
 			if reg_type == 14 {
31033
 			if reg_type == 14 {
31007
 				data["diag_code"] = sickConfig.CountryCode
31034
 				data["diag_code"] = sickConfig.CountryCode
31008
 
31035
 
31009
 			}
31036
 			}
31010
 		} else if his.Insutype == "310" {
31037
 		} else if his.Insutype == "310" {
31011
-			if reg_type == 992102 {
31012
-				data["diag_code"] = "ZDZ940"
31038
+			if miConfig.MdtrtareaAdmvs == "341203"{
31039
+				if reg_type == 992102 {
31040
+					data["diag_code"] = "ZDZ940"
31041
+
31042
+				}
31043
+				if reg_type != 992102 {
31044
+					data["diag_code"] = sickConfig.CountryCode
31045
+
31046
+				}
31047
+
31048
+
31049
+			}else{
31050
+
31051
+
31052
+
31053
+					data["diag_code"] = sickConfig.CountryCode
31054
+
31013
 
31055
 
31014
-			}
31015
-			if reg_type == 14 {
31016
-				data["diag_code"] = sickConfig.CountryCode
31017
 
31056
 
31018
 			}
31057
 			}
31058
+
31019
 		}
31059
 		}
31020
 
31060
 
31021
 		data["cainfo"] = miConfig.Cainfo
31061
 		data["cainfo"] = miConfig.Cainfo
32475
 							if reg_type == 140104 {
32515
 							if reg_type == 140104 {
32476
 								med_type = "140104"
32516
 								med_type = "140104"
32477
 							}
32517
 							}
32518
+							if reg_type == 140201 {
32519
+								med_type = "140201"
32520
+							}
32478
 							if reg_type == 14 {
32521
 							if reg_type == 14 {
32479
 								med_type = "140104"
32522
 								med_type = "140104"
32480
 							}
32523
 							}
32483
 								med_type = "992102"
32526
 								med_type = "992102"
32484
 
32527
 
32485
 							}
32528
 							}
32529
+							if reg_type == 140104 {
32530
+								med_type = "140104"
32531
+							}
32532
+							if reg_type == 140201 {
32533
+								med_type = "140201"
32534
+							}
32486
 							if reg_type == 14 {
32535
 							if reg_type == 14 {
32487
-								med_type = "14"
32488
-
32536
+								med_type = "140104"
32489
 							}
32537
 							}
32490
 						}
32538
 						}
32491
 
32539
 
32631
 							if reg_type == 140104 {
32679
 							if reg_type == 140104 {
32632
 								med_type = "140104"
32680
 								med_type = "140104"
32633
 							}
32681
 							}
32682
+							if reg_type == 140201 {
32683
+								med_type = "140201"
32684
+							}
32634
 							if reg_type == 14 {
32685
 							if reg_type == 14 {
32635
-								med_type = "140104"
32686
+								med_type = "14"
32636
 							}
32687
 							}
32637
 						} else if his.Insutype == "310" {
32688
 						} else if his.Insutype == "310" {
32638
 							if reg_type == 992102 {
32689
 							if reg_type == 992102 {
32639
 								med_type = "992102"
32690
 								med_type = "992102"
32640
-
32691
+							}
32692
+							if reg_type == 140104 {
32693
+								med_type = "140104"
32694
+							}
32695
+							if reg_type == 140201 {
32696
+								med_type = "140201"
32641
 							}
32697
 							}
32642
 							if reg_type == 14 {
32698
 							if reg_type == 14 {
32643
 								med_type = "14"
32699
 								med_type = "14"
32644
-
32645
 							}
32700
 							}
32646
 						}
32701
 						}
32647
 
32702
 
33175
 						if res.Output.Setlinfo.MedType == "140104" {
33230
 						if res.Output.Setlinfo.MedType == "140104" {
33176
 							order.MedType = "140104"
33231
 							order.MedType = "140104"
33177
 
33232
 
33233
+						}
33234
+						if res.Output.Setlinfo.MedType == "140201" {
33235
+							order.MedType = "140201"
33236
+
33178
 						}
33237
 						}
33179
 						if res.Output.Setlinfo.MedType == "14" {
33238
 						if res.Output.Setlinfo.MedType == "14" {
33180
 							order.MedType = "14"
33239
 							order.MedType = "14"

+ 1 - 1
service/ahyb_service.go Ver fichero

1239
 
1239
 
1240
 	if id_card_type == 1 {
1240
 	if id_card_type == 1 {
1241
 		inputData["mdtrt_cert_type"] = "03"                       // 就诊凭证类型
1241
 		inputData["mdtrt_cert_type"] = "03"                       // 就诊凭证类型
1242
-		inputData["mdtrt_cert_no"] = certNo + "|" + verify_number // 就诊凭证编号
1242
+		inputData["mdtrt_cert_no"] = certNo  // 就诊凭证编号
1243
 	} else if id_card_type == 3 {
1243
 	} else if id_card_type == 3 {
1244
 		inputData["mdtrt_cert_type"] = "04"        // 就诊凭证类型
1244
 		inputData["mdtrt_cert_type"] = "04"        // 就诊凭证类型
1245
 		inputData["mdtrt_cert_no"] = verify_number // 就诊凭证编号
1245
 		inputData["mdtrt_cert_no"] = verify_number // 就诊凭证编号