Browse Source

Merge branch 'master' of http://git.shengws.com/csx/gdyb

csx 2 years ago
parent
commit
1970884adf
2 changed files with 80 additions and 108 deletions
  1. 18 18
      controllers/sg/his_api_controller.go
  2. 62 90
      service/fj_service.go

+ 18 - 18
controllers/sg/his_api_controller.go View File

1404
 			errmsg = Remove0000(errmsg)
1404
 			errmsg = Remove0000(errmsg)
1405
 
1405
 
1406
 			basStr := cardnum + "|" + cardCode + "|" + id_card_no + "|" + name
1406
 			basStr := cardnum + "|" + cardCode + "|" + id_card_no + "|" + name
1407
-			result, _ := service.FJyb1101(cardnum, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, id_card_type, cardCode, certificates, miConfig.Url, miConfig.Cainfo, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
1408
-			fmt.Println("result:")
1409
-			fmt.Println(result)
1407
+			result, requestLog, errMsgLog := service.FJyb1101(cardnum, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, id_card_type, cardCode, certificates, miConfig.Url, miConfig.Cainfo, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
1408
+			saveLog(result, requestLog, "1101", "获取人员信息")
1409
+			fmt.Println(errMsgLog)
1410
 
1410
 
1411
 			var dat map[string]interface{}
1411
 			var dat map[string]interface{}
1412
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1412
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1422
 				c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
1422
 				c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
1423
 				return
1423
 				return
1424
 			}
1424
 			}
1425
-
1425
+			res.ErrMsg = errMsgLog
1426
 			if res.Infcode == 0 {
1426
 			if res.Infcode == 0 {
1427
 				patient, err := service.GetPatientByNumber(id_card_no, c.GetAdminUserInfo().CurrentOrgId)
1427
 				patient, err := service.GetPatientByNumber(id_card_no, c.GetAdminUserInfo().CurrentOrgId)
1428
 				if err == gorm.ErrRecordNotFound {
1428
 				if err == gorm.ErrRecordNotFound {
5380
 					cert_no = strings.Split(psn_info.CardInfo, "|")[0]
5380
 					cert_no = strings.Split(psn_info.CardInfo, "|")[0]
5381
 				}
5381
 				}
5382
 				fmt.Println(cert_no)
5382
 				fmt.Println(cert_no)
5383
-				result, requestLog := service.FJyb2201(psn_info.PsnNo, insutype, IdCardNo, miConfig.OrgName, doctor_info.UserName, ipt_otp_no, department.Name, miConfig.Code, department.Number, doctor_id, insuplc_admdvs_temp, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, roles.UserName, doctor_info.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey, cert_no)
5383
+				result, requestLog, _ := service.FJyb2201(psn_info.PsnNo, insutype, IdCardNo, miConfig.OrgName, doctor_info.UserName, ipt_otp_no, department.Name, miConfig.Code, department.Number, doctor_id, insuplc_admdvs_temp, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, roles.UserName, doctor_info.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey, cert_no)
5384
 				saveLog(result, requestLog, "2201", "挂号")
5384
 				saveLog(result, requestLog, "2201", "挂号")
5385
 				if miConfig.Code == "H15049901371" {
5385
 				if miConfig.Code == "H15049901371" {
5386
 
5386
 
5767
 			res2.Infcode = infocode
5767
 			res2.Infcode = infocode
5768
 
5768
 
5769
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
5769
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
5770
-			result, requestLog = service.FJyb2203(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time, doctor_info.UserName, roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
5770
+			result, requestLog, _ = service.FJyb2203(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time, doctor_info.UserName, roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
5771
 			saveLog(result, requestLog, "2203", "上传就诊信息")
5771
 			saveLog(result, requestLog, "2203", "上传就诊信息")
5772
 			var respJSON2 map[string]interface{}
5772
 			var respJSON2 map[string]interface{}
5773
 			if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
5773
 			if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
6019
 
6019
 
6020
 				} else if miConfig.MdtrtareaAdmvs == "350500" {
6020
 				} else if miConfig.MdtrtareaAdmvs == "350500" {
6021
 
6021
 
6022
-					result, request_log := service.FJyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6022
+					result, request_log, _ := service.FJyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6023
 					var dat map[string]interface{}
6023
 					var dat map[string]interface{}
6024
 					if err := json.Unmarshal([]byte(result), &dat); err == nil {
6024
 					if err := json.Unmarshal([]byte(result), &dat); err == nil {
6025
 						fmt.Println(dat)
6025
 						fmt.Println(dat)
6430
 								cert_no = strings.Split(psn_info.CardInfo, "|")[0]
6430
 								cert_no = strings.Split(psn_info.CardInfo, "|")[0]
6431
 							}
6431
 							}
6432
 							fmt.Println(cert_no)
6432
 							fmt.Println(cert_no)
6433
-							result2, src_resquest = service.FJyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6433
+							result2, src_resquest, _ = service.FJyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6434
 
6434
 
6435
 							//result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, 0, 0, 0, 0, his.IdType, acct_used_flag)
6435
 							//result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, 0, 0, 0, 0, his.IdType, acct_used_flag)
6436
 							var dat map[string]interface{}
6436
 							var dat map[string]interface{}
6875
 				}
6875
 				}
6876
 				fmt.Println(cert_no)
6876
 				fmt.Println(cert_no)
6877
 
6877
 
6878
-				result2, src_resquest = service.FJyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6878
+				result2, src_resquest, _ = service.FJyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
6879
 				var dat map[string]interface{}
6879
 				var dat map[string]interface{}
6880
 				if err := json.Unmarshal([]byte(result2), &dat); err == nil {
6880
 				if err := json.Unmarshal([]byte(result2), &dat); err == nil {
6881
 					fmt.Println(dat)
6881
 					fmt.Println(dat)
7771
 		res2.Infcode = infocode
7771
 		res2.Infcode = infocode
7772
 
7772
 
7773
 	} else if miConfig.MdtrtareaAdmvs == "350500" {
7773
 	} else if miConfig.MdtrtareaAdmvs == "350500" {
7774
-		result, requestLog := service.FJyb2203(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time, doctor_info.UserName, roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
7774
+		result, requestLog, _ := service.FJyb2203(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time, doctor_info.UserName, roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
7775
 		saveLog(result, requestLog, "2203", "上传就诊信息")
7775
 		saveLog(result, requestLog, "2203", "上传就诊信息")
7776
 		var respJSON2 map[string]interface{}
7776
 		var respJSON2 map[string]interface{}
7777
 		if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
7777
 		if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
8013
 
8013
 
8014
 			} else if miConfig.MdtrtareaAdmvs == "350500" {
8014
 			} else if miConfig.MdtrtareaAdmvs == "350500" {
8015
 
8015
 
8016
-				result, request_log := service.FJyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8016
+				result, request_log, _ := service.FJyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), roles.UserName, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8017
 				var dat map[string]interface{}
8017
 				var dat map[string]interface{}
8018
 				if err := json.Unmarshal([]byte(result), &dat); err == nil {
8018
 				if err := json.Unmarshal([]byte(result), &dat); err == nil {
8019
 					fmt.Println(dat)
8019
 					fmt.Println(dat)
8384
 
8384
 
8385
 					} else if miConfig.MdtrtareaAdmvs == "350500" {
8385
 					} else if miConfig.MdtrtareaAdmvs == "350500" {
8386
 
8386
 
8387
-						result, request_log := service.FJyb2206(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, 0, 0, 0, 0, his.IdType, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8387
+						result, request_log, _ := service.FJyb2206(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, 0, 0, 0, 0, his.IdType, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8388
 						var dat map[string]interface{}
8388
 						var dat map[string]interface{}
8389
 						if err := json.Unmarshal([]byte(result), &dat); err == nil {
8389
 						if err := json.Unmarshal([]byte(result), &dat); err == nil {
8390
 							fmt.Println(dat)
8390
 							fmt.Println(dat)
8699
 			res.Infcode = infocode
8699
 			res.Infcode = infocode
8700
 
8700
 
8701
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
8701
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
8702
-			result, src_resquest = service.FJyb2208(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8702
+			result, src_resquest, _ = service.FJyb2208(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8703
 			var dat map[string]interface{}
8703
 			var dat map[string]interface{}
8704
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
8704
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
8705
 				fmt.Println(dat)
8705
 				fmt.Println(dat)
8854
 				res2.Infcode = infocode
8854
 				res2.Infcode = infocode
8855
 
8855
 
8856
 			} else if miConfig.MdtrtareaAdmvs == "350500" {
8856
 			} else if miConfig.MdtrtareaAdmvs == "350500" {
8857
-				result2, src_request := service.FJyb2205(order.PsnNo, order.MdtrtId, order.Number, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8857
+				result2, src_request, _ := service.FJyb2205(order.PsnNo, order.MdtrtId, order.Number, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
8858
 				var dat map[string]interface{}
8858
 				var dat map[string]interface{}
8859
 				if err := json.Unmarshal([]byte(result2), &dat); err == nil {
8859
 				if err := json.Unmarshal([]byte(result2), &dat); err == nil {
8860
 					fmt.Println(dat)
8860
 					fmt.Println(dat)
9072
 
9072
 
9073
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
9073
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
9074
 
9074
 
9075
-			result, request := service.FJyb2202(his.PsnNo, his.Number, his.IptOtpNo, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
9075
+			result, request, _ := service.FJyb2202(his.PsnNo, his.Number, his.IptOtpNo, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
9076
 			var dat map[string]interface{}
9076
 			var dat map[string]interface{}
9077
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
9077
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
9078
 				fmt.Println(dat)
9078
 				fmt.Println(dat)
9322
 				return
9322
 				return
9323
 			}
9323
 			}
9324
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
9324
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
9325
-			result2, src_request := service.FJyb2205(his.PsnNo, his.Number, order.Number, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
9325
+			result2, src_request, _ := service.FJyb2205(his.PsnNo, his.Number, order.Number, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
9326
 			var dat map[string]interface{}
9326
 			var dat map[string]interface{}
9327
 			if err := json.Unmarshal([]byte(result2), &dat); err == nil {
9327
 			if err := json.Unmarshal([]byte(result2), &dat); err == nil {
9328
 				fmt.Println(dat)
9328
 				fmt.Println(dat)
10230
 			res.Infcode = infocode
10230
 			res.Infcode = infocode
10231
 
10231
 
10232
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
10232
 		} else if miConfig.MdtrtareaAdmvs == "350500" {
10233
-			result := service.FJyb5203(baseParams, businessParams, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
10233
+			result, requestLog, _ := service.FJyb5203(baseParams, businessParams, miConfig.Url, miConfig.Code, miConfig.AppSecret, miConfig.SignKey, miConfig.EncKey)
10234
+			saveLog(result, requestLog, "5203", "结算单")
10234
 			var dat map[string]interface{}
10235
 			var dat map[string]interface{}
10235
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
10236
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
10236
 				fmt.Println(dat)
10237
 				fmt.Println(dat)
10244
 				return
10245
 				return
10245
 			}
10246
 			}
10246
 		} else if miConfig.MdtrtareaAdmvs == "150499" {
10247
 		} else if miConfig.MdtrtareaAdmvs == "150499" {
10247
-			fmt.Println("~~~~~~~")
10248
 
10248
 
10249
 			api := "http://172.16.13.254:9532/" + "nmyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
10249
 			api := "http://172.16.13.254:9532/" + "nmyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
10250
 				"&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +
10250
 				"&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +

+ 62 - 90
service/fj_service.go View File

8
 	"golang.org/x/text/encoding/simplifiedchinese"
8
 	"golang.org/x/text/encoding/simplifiedchinese"
9
 	"io/ioutil"
9
 	"io/ioutil"
10
 	"net/http"
10
 	"net/http"
11
+	"regexp"
11
 	"strconv"
12
 	"strconv"
12
 	"strings"
13
 	"strings"
13
 	"syscall"
14
 	"syscall"
28
 )
29
 )
29
 
30
 
30
 //
31
 //
31
-//// 人员基本信息
32
-func FJyb1101(certNo string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, id_card_type int64, card_sn string, certificates int64, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
32
+// 人员基本信息
33
+func FJyb1101(certNo string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, id_card_type int64, card_sn string, certificates int64, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
33
 	//生成签名
34
 	//生成签名
34
 	nonce := GetRandomString(32)
35
 	nonce := GetRandomString(32)
35
 	timestamp := time.Now().Unix()
36
 	timestamp := time.Now().Unix()
79
 	fmt.Println(string(bytesData))
80
 	fmt.Println(string(bytesData))
80
 	if err != nil {
81
 	if err != nil {
81
 		fmt.Println(err.Error())
82
 		fmt.Println(err.Error())
82
-		return err.Error(), ""
83
+		return err.Error(), "", ""
83
 	}
84
 	}
84
-	//fmt.Println("开始jdk")
85
-
86
 	enc := mahonia.NewEncoder("gbk")
85
 	enc := mahonia.NewEncoder("gbk")
87
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
86
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
88
-	fmt.Println("输出信息:")
89
-	fmt.Println(output)
90
-	fmt.Println("错误信息:")
91
-	fmt.Println(err_msg)
92
-	return output, inputLog
87
+	return output, inputLog, err_msg
93
 }
88
 }
94
 
89
 
95
 // 门诊挂号
90
 // 门诊挂号
96
-func FJyb2201(psnNo string, insutype string, certNo string, org_name string, doctor string, ipt_otp_no string, dept string, fixmedins_code string, dept_code string, doctor_id string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, id_card_type int64, opter string, doctor_name string, url string, app_id string, app_secret string, sign_key string, enc_key string, card_number string) (string, string) {
91
+func FJyb2201(psnNo string, insutype string, certNo string, org_name string, doctor string, ipt_otp_no string, dept string, fixmedins_code string, dept_code string, doctor_id string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, id_card_type int64, opter string, doctor_name string, url string, app_id string, app_secret string, sign_key string, enc_key string, card_number string) (string, string, string) {
97
 	// 生成签名
92
 	// 生成签名
98
 	nonce := GetRandomString(32)
93
 	nonce := GetRandomString(32)
99
 	timestamp := time.Now().Unix()
94
 	timestamp := time.Now().Unix()
137
 	fmt.Println(string(bytesData))
132
 	fmt.Println(string(bytesData))
138
 	if err != nil {
133
 	if err != nil {
139
 		fmt.Println(err.Error())
134
 		fmt.Println(err.Error())
140
-		return err.Error(), ""
135
+		return err.Error(), "", ""
141
 	}
136
 	}
142
 
137
 
143
 	enc := mahonia.NewEncoder("gbk")
138
 	enc := mahonia.NewEncoder("gbk")
144
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
139
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
145
-	fmt.Println("输出信息:")
146
-	fmt.Println(output)
147
-	fmt.Println("错误信息:")
148
-	fmt.Println(err_msg)
149
-	return ConvertToString(output, "gbk", "utf-8"), requestLog
140
+
141
+	return output, requestLog, err_msg
150
 }
142
 }
151
 
143
 
152
-// 门诊挂号撤销
153
-func FJyb2202(psnNo string, mdtrtId string, ipt_otp_no string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
144
+//门诊挂号撤销
145
+func FJyb2202(psnNo string, mdtrtId string, ipt_otp_no string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
154
 	// 生成签名
146
 	// 生成签名
155
 	nonce := GetRandomString(32)
147
 	nonce := GetRandomString(32)
156
 	timestamp := time.Now().Unix()
148
 	timestamp := time.Now().Unix()
176
 	requestLog = string(bytesData)
168
 	requestLog = string(bytesData)
177
 	if err != nil {
169
 	if err != nil {
178
 		fmt.Println(err.Error())
170
 		fmt.Println(err.Error())
179
-		return err.Error(), ""
171
+		return err.Error(), "", ""
180
 	}
172
 	}
181
 
173
 
182
 	enc := mahonia.NewEncoder("gbk")
174
 	enc := mahonia.NewEncoder("gbk")
183
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
175
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
184
-	fmt.Println("输出信息:")
185
-	fmt.Println(output)
186
-	fmt.Println("错误信息:")
187
-	fmt.Println(err_msg)
188
-	return ConvertToString(output, "gbk", "utf-8"), requestLog
176
+
177
+	return output, requestLog, err_msg
189
 }
178
 }
190
 
179
 
191
 // 门诊就诊信息上传
180
 // 门诊就诊信息上传
192
-func FJyb2203(psnNo string, mdtrtId string, doctor string, department string, org_name string, med_type string, doctor_id string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, sick_code string, sick_name string, dept string, config []*models.HisXtDiagnoseConfig, begin_time string, doctor_name string, opter string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
181
+func FJyb2203(psnNo string, mdtrtId string, doctor string, department string, org_name string, med_type string, doctor_id string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, sick_code string, sick_name string, dept string, config []*models.HisXtDiagnoseConfig, begin_time string, doctor_name string, opter string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
193
 	// 生成签名
182
 	// 生成签名
194
 	nonce := GetRandomString(32)
183
 	nonce := GetRandomString(32)
195
 	timestamp := time.Now().Unix()
184
 	timestamp := time.Now().Unix()
204
 	inputData := make(map[string]interface{})
193
 	inputData := make(map[string]interface{})
205
 	diseinfo := make([]map[string]interface{}, 0)
194
 	diseinfo := make([]map[string]interface{}, 0)
206
 
195
 
207
-	inputMessage["infno"] = "2203"  // 交易编码
196
+	inputMessage["infno"] = "2203A" // 交易编码
208
 	inputData["mdtrt_id"] = mdtrtId // 就诊 ID(来自2201接口返回)
197
 	inputData["mdtrt_id"] = mdtrtId // 就诊 ID(来自2201接口返回)
209
 	inputData["psn_no"] = psnNo     // 人员编号 (来自1101接口返回)
198
 	inputData["psn_no"] = psnNo     // 人员编号 (来自1101接口返回)
210
 	//inputData["med_type"] = med_type      // 医疗类别 16门诊特殊病
199
 	//inputData["med_type"] = med_type      // 医疗类别 16门诊特殊病
249
 	requestLog = string(bytesData)
238
 	requestLog = string(bytesData)
250
 	if err != nil {
239
 	if err != nil {
251
 		fmt.Println(err.Error())
240
 		fmt.Println(err.Error())
252
-		return err.Error(), ""
241
+		return err.Error(), "", ""
253
 	}
242
 	}
254
 
243
 
255
 	enc := mahonia.NewEncoder("gbk")
244
 	enc := mahonia.NewEncoder("gbk")
256
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
245
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
257
-	fmt.Println("输出信息:")
258
-	fmt.Println(output)
259
-	fmt.Println("错误信息:")
260
-	fmt.Println(err_msg)
261
-	return output, requestLog
246
+
247
+	return output, requestLog, err_msg
262
 }
248
 }
263
 
249
 
264
 //  门诊费用明细信息上传
250
 //  门诊费用明细信息上传
265
-func FJyb2204(psnNo string, mdtrtId string, hisPrescription []*models.HisPrescription, chrg_bchno string, org_name string, doctor string, dept string, fixmedins_code string, dept_code string, doctor_id string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, balance_accounts_type string, opter string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
251
+func FJyb2204(psnNo string, mdtrtId string, hisPrescription []*models.HisPrescription, chrg_bchno string, org_name string, doctor string, dept string, fixmedins_code string, dept_code string, doctor_id string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, balance_accounts_type string, opter string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
266
 	// 生成签名
252
 	// 生成签名
267
 	nonce := GetRandomString(32)
253
 	nonce := GetRandomString(32)
268
 	timestamp := time.Now().Unix()
254
 	timestamp := time.Now().Unix()
269
-	//tempTime := time.Unix(timestamp, 0)
270
-	//timeFormat := tempTime.Format("20060102150405")
271
-	//timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
272
-	//chrgBchno := rand.Intn(100000) + 10000
273
 
255
 
274
 	var customs []*Custom
256
 	var customs []*Custom
275
 
257
 
427
 	inputMessage["input"] = input //交易输入
409
 	inputMessage["input"] = input //交易输入
428
 	var requestLog string
410
 	var requestLog string
429
 	bytesData, err := json.Marshal(inputMessage)
411
 	bytesData, err := json.Marshal(inputMessage)
430
-	fmt.Println("----------")
431
-	fmt.Println(string(bytesData))
432
-	fmt.Println("----------")
433
 	requestLog = string(bytesData)
412
 	requestLog = string(bytesData)
434
 	if err != nil {
413
 	if err != nil {
435
 		fmt.Println(err.Error())
414
 		fmt.Println(err.Error())
436
-		return "", ""
415
+		return "", "", ""
437
 	}
416
 	}
438
 
417
 
439
 	enc := mahonia.NewEncoder("gbk")
418
 	enc := mahonia.NewEncoder("gbk")
440
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
419
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
441
-	fmt.Println("输出信息:")
442
-	fmt.Println(output)
443
-	fmt.Println("错误信息:")
444
-	fmt.Println(err_msg)
445
-	return output, requestLog
420
+
421
+	return output, requestLog, err_msg
446
 
422
 
447
 }
423
 }
448
 
424
 
449
 //  门诊费用明细信息撤销
425
 //  门诊费用明细信息撤销
450
-func FJyb2205(psnNo string, mdtrtId string, chrgBchno string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
426
+func FJyb2205(psnNo string, mdtrtId string, chrgBchno string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
451
 	// 生成签名
427
 	// 生成签名
452
 	nonce := GetRandomString(32)
428
 	nonce := GetRandomString(32)
453
 	timestamp := time.Now().Unix()
429
 	timestamp := time.Now().Unix()
472
 	requestLog = string(bytesData)
448
 	requestLog = string(bytesData)
473
 	if err != nil {
449
 	if err != nil {
474
 		fmt.Println(err.Error())
450
 		fmt.Println(err.Error())
475
-		return err.Error(), ""
451
+		return err.Error(), "", ""
476
 	}
452
 	}
477
 
453
 
478
 	enc := mahonia.NewEncoder("gbk")
454
 	enc := mahonia.NewEncoder("gbk")
479
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
455
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
480
-	fmt.Println("输出信息:")
481
-	fmt.Println(output)
482
-	fmt.Println("错误信息:")
483
-	fmt.Println(err_msg)
484
-	return output, requestLog
456
+
457
+	return output, requestLog, err_msg
485
 }
458
 }
486
 
459
 
487
 //  门诊预结算
460
 //  门诊预结算
488
-//func Hbyb2206(psnNo string, mdtrtId string, chrgBchno string, certNo string, insutype string, total string, org_name string, doctor string, secret_key string) string {
489
-func FJyb2206(psnNo string, mdtrtId string, chrgBchno string, certNo string, insutype string, total string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, med_type string, id_card_type int64, fulamt_ownpay_amt float64, overlmt_selfpay float64, preselfpay_amt float64, inscp_scp_amt float64, certificates int64, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
461
+func FJyb2206(psnNo string, mdtrtId string, chrgBchno string, certNo string, insutype string, total string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, med_type string, id_card_type int64, fulamt_ownpay_amt float64, overlmt_selfpay float64, preselfpay_amt float64, inscp_scp_amt float64, certificates int64, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
490
 
462
 
491
 	// 生成签名
463
 	// 生成签名
492
 	nonce := GetRandomString(32)
464
 	nonce := GetRandomString(32)
546
 	fmt.Println(string(bytesData))
518
 	fmt.Println(string(bytesData))
547
 	if err != nil {
519
 	if err != nil {
548
 		fmt.Println(err.Error())
520
 		fmt.Println(err.Error())
549
-		return err.Error(), ""
521
+		return err.Error(), "", ""
550
 	}
522
 	}
551
 
523
 
552
 	enc := mahonia.NewEncoder("gbk")
524
 	enc := mahonia.NewEncoder("gbk")
553
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
525
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
554
-	fmt.Println("输出信息:")
555
-	fmt.Println(output)
556
-	fmt.Println("错误信息:")
557
-	fmt.Println(err_msg)
558
-	return output, requestLog
526
+
527
+	return output, requestLog, err_msg
559
 }
528
 }
560
 
529
 
561
 //  门诊结算
530
 //  门诊结算
562
-func FJyb2207(psnNo string, mdtrtId string, chrgBchno string, certNo string, insutype string, total string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, med_type string, id_card_type int64, fulamt_ownpay_amt float64, overlmt_selfpay float64, preselfpay_amt float64, inscp_scp_amt float64, certificates int64, acct_used_flag string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
531
+func FJyb2207(psnNo string, mdtrtId string, chrgBchno string, certNo string, insutype string, total string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, med_type string, id_card_type int64, fulamt_ownpay_amt float64, overlmt_selfpay float64, preselfpay_amt float64, inscp_scp_amt float64, certificates int64, acct_used_flag string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
563
 	// 生成签名
532
 	// 生成签名
564
 	nonce := GetRandomString(32)
533
 	nonce := GetRandomString(32)
565
 	timestamp := time.Now().Unix()
534
 	timestamp := time.Now().Unix()
616
 	fmt.Println(string(bytesData))
585
 	fmt.Println(string(bytesData))
617
 	if err != nil {
586
 	if err != nil {
618
 		fmt.Println(err.Error())
587
 		fmt.Println(err.Error())
619
-		return err.Error(), ""
588
+		return err.Error(), "", ""
620
 	}
589
 	}
621
 
590
 
622
 	var requestLog string
591
 	var requestLog string
624
 
593
 
625
 	enc := mahonia.NewEncoder("gbk")
594
 	enc := mahonia.NewEncoder("gbk")
626
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
595
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
627
-	fmt.Println("输出信息:")
628
-	fmt.Println(output)
629
-	fmt.Println("错误信息:")
630
-	fmt.Println(err_msg)
631
-	return output, requestLog
596
+	return output, requestLog, err_msg
632
 }
597
 }
633
 
598
 
634
 //  门诊结算撤销
599
 //  门诊结算撤销
635
-func FJyb2208(psnNo string, mdtrtId string, setlId string, org_name string, doctor string, secret_key string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string) {
600
+func FJyb2208(psnNo string, mdtrtId string, setlId string, org_name string, doctor string, secret_key string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
636
 	// 生成签名
601
 	// 生成签名
637
 	nonce := GetRandomString(32)
602
 	nonce := GetRandomString(32)
638
 	timestamp := time.Now().Unix()
603
 	timestamp := time.Now().Unix()
656
 	fmt.Println(string(bytesData))
621
 	fmt.Println(string(bytesData))
657
 	if err != nil {
622
 	if err != nil {
658
 		fmt.Println(err.Error())
623
 		fmt.Println(err.Error())
659
-		return err.Error(), ""
624
+		return err.Error(), "", ""
660
 	}
625
 	}
661
-
662
 	var requestLog string
626
 	var requestLog string
663
 	requestLog = string(bytesData)
627
 	requestLog = string(bytesData)
664
-
665
 	enc := mahonia.NewEncoder("gbk")
628
 	enc := mahonia.NewEncoder("gbk")
666
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
629
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
667
-	fmt.Println("输出信息:")
668
-	fmt.Println(output)
669
-	fmt.Println("错误信息:")
670
-	fmt.Println(err_msg)
671
-	return output, requestLog
630
+	return output, requestLog, err_msg
672
 }
631
 }
673
 
632
 
674
-func FJyb5203(baseParams models.BaseParams, businessParams models.BusinessParams, url string, app_id string, app_secret string, sign_key string, enc_key string) string {
633
+func FJyb5203(baseParams models.BaseParams, businessParams models.BusinessParams, url string, app_id string, app_secret string, sign_key string, enc_key string) (string, string, string) {
675
 	// 生成签名
634
 	// 生成签名
676
 	nonce := GetRandomString(32)
635
 	nonce := GetRandomString(32)
677
 	timestamp := time.Now().Unix()
636
 	timestamp := time.Now().Unix()
678
 
637
 
679
 	// 生成输入报文
638
 	// 生成输入报文
680
-	//inputMessage := SetFjInputMessage(nonce, timestamp, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs,url,app_id,app_secret,sign_key,enc_key)
681
 
639
 
682
 	inputMessage := SetFjInputMessage(nonce, timestamp, baseParams.OrgName, baseParams.Doctor, baseParams.FixmedinsCode, baseParams.InsuplcAdmdvs, baseParams.MdtrtareaAdmvs, url, app_id, app_secret, sign_key, enc_key)
640
 	inputMessage := SetFjInputMessage(nonce, timestamp, baseParams.OrgName, baseParams.Doctor, baseParams.FixmedinsCode, baseParams.InsuplcAdmdvs, baseParams.MdtrtareaAdmvs, url, app_id, app_secret, sign_key, enc_key)
683
 	input := make(map[string]interface{})
641
 	input := make(map[string]interface{})
690
 	input["data"] = inputData
648
 	input["data"] = inputData
691
 	inputMessage["input"] = input //交易输入
649
 	inputMessage["input"] = input //交易输入
692
 	bytesData, err := json.Marshal(inputMessage)
650
 	bytesData, err := json.Marshal(inputMessage)
693
-	fmt.Println(string(bytesData))
651
+
694
 	if err != nil {
652
 	if err != nil {
695
 		fmt.Println(err.Error())
653
 		fmt.Println(err.Error())
696
-		return err.Error()
654
+		return err.Error(), "", ""
697
 	}
655
 	}
698
 
656
 
657
+	var requestLog string
658
+	requestLog = string(bytesData)
659
+
699
 	enc := mahonia.NewEncoder("gbk")
660
 	enc := mahonia.NewEncoder("gbk")
700
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
661
 	output, err_msg := GetFjBusinessHandleInfo([]byte(enc.ConvertString(string(bytesData))))
701
-	fmt.Println("输出信息:")
702
-	fmt.Println(output)
703
-	fmt.Println("错误信息:")
704
-	fmt.Println(err_msg)
705
-	return output
662
+	return output, requestLog, err_msg
706
 }
663
 }
707
 
664
 
708
 //确认订单
665
 //确认订单
2470
 	errMessageStr := make([]byte, 2048)
2427
 	errMessageStr := make([]byte, 2048)
2471
 	ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&inputStr[0])), uintptr(20000), (uintptr)(unsafe.Pointer(&outputStr[0])), (uintptr)(unsafe.Pointer(&errMessageStr[0])))
2428
 	ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&inputStr[0])), uintptr(20000), (uintptr)(unsafe.Pointer(&outputStr[0])), (uintptr)(unsafe.Pointer(&errMessageStr[0])))
2472
 
2429
 
2473
-	fmt.Println("错误信息1:", ConvertByte2String(errMessageStr, GB18030))
2474
-	fmt.Println("输出信息1:", ConvertByte2String(outputStr, GB18030))
2430
+	output_info := ConvertByte2String(outputStr, GB18030)
2431
+	error_info := ConvertByte2String(errMessageStr, GB18030)
2475
 
2432
 
2476
 	if ret2 != 0 {
2433
 	if ret2 != 0 {
2477
 		return "", ""
2434
 		return "", ""
2478
 	}
2435
 	}
2479
-	return ConvertByte2String([]byte(Remove0000(string(outputStr))), GB18030), ConvertByte2String([]byte(Remove0000(string(errMessageStr))), GB18030)
2436
+	return DeleteExtraSpace(output_info), DeleteExtraSpace(error_info)
2480
 }
2437
 }
2481
 
2438
 
2482
 func GetFjAuthorizationInfo(org_id string) {
2439
 func GetFjAuthorizationInfo(org_id string) {
2521
 
2478
 
2522
 	return str
2479
 	return str
2523
 }
2480
 }
2481
+
2482
+func DeleteExtraSpace(s string) string {
2483
+	//删除字符串中的多余空格,有多个空格时,仅保留一个空格
2484
+	s1 := strings.Replace(s, "  ", " ", -1)      //替换tab为空格
2485
+	regstr := "\\s{2,}"                          //两个及两个以上空格的正则表达式
2486
+	reg, _ := regexp.Compile(regstr)             //编译正则表达式
2487
+	s2 := make([]byte, len(s1))                  //定义字符数组切片
2488
+	copy(s2, s1)                                 //将字符串复制到切片
2489
+	spc_index := reg.FindStringIndex(string(s2)) //在字符串中搜索
2490
+	for len(spc_index) > 0 {                     //找到适配项
2491
+		s2 = append(s2[:spc_index[0]+1], s2[spc_index[1]:]...) //删除多余空格
2492
+		spc_index = reg.FindStringIndex(string(s2))            //继续在字符串中搜索
2493
+	}
2494
+	return string(s2)
2495
+}