|
@@ -4591,6 +4591,7 @@ func GetMac() string {
|
4591
|
4591
|
// 人员基本信息
|
4592
|
4592
|
func Gdyb1101D(certNo string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, id_card_type int64, card_sn string, certificates string, psn_name string, record_date string) (string, string) {
|
4593
|
4593
|
//生成签名
|
|
4594
|
+ fmt.Println("DDDDD")
|
4594
|
4595
|
nonce := GetRandomString(32)
|
4595
|
4596
|
timestamp := time.Now().Unix()
|
4596
|
4597
|
signature := setSignature(timestamp, nonce, secret_key)
|
|
@@ -4619,7 +4620,7 @@ func Gdyb1101D(certNo string, org_name string, doctor string, fixmedins_code str
|
4619
|
4620
|
inputData["psn_cert_type"] = "01" // 人员证件类型
|
4620
|
4621
|
|
4621
|
4622
|
} else {
|
4622
|
|
- inputData["mdtrt_cert_type"] = "01" // 就诊凭证类型
|
|
4623
|
+ inputData["mdtrt_cert_type"] = "02" // 就诊凭证类型
|
4623
|
4624
|
inputData["card_sn"] = "" // 卡识别码
|
4624
|
4625
|
inputData["certno"] = certNo // 证件号码
|
4625
|
4626
|
inputData["psn_cert_type"] = "01" // 人员证件类型
|
|
@@ -4806,3 +4807,511 @@ func GetSignInInfo(code string) string {
|
4806
|
4807
|
err = readDb.Model(&models.HisSignIn{}).Where("fixmedins_code = ? AND status = 1", code).Last(&sign).Error
|
4807
|
4808
|
return sign.SignNo
|
4808
|
4809
|
}
|
|
4810
|
+
|
|
4811
|
+func Gdyb3501(struct3501 models.Struct3501, secret_key string) string {
|
|
4812
|
+ // 生成签名
|
|
4813
|
+ nonce := GetRandomString(32)
|
|
4814
|
+ timestamp := time.Now().Unix()
|
|
4815
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
4816
|
+
|
|
4817
|
+ // 生成输入报文
|
|
4818
|
+ inputMessage := SetJSInputMessage(timestamp, struct3501.OrgName, struct3501.Opter, struct3501.FixmedinsHilistId, struct3501.InsuplcAdmdvs, struct3501.MdtrtareaAdmvs, struct3501.Cainfo)
|
|
4819
|
+ input := make(map[string]interface{})
|
|
4820
|
+ inputData := make(map[string]interface{})
|
|
4821
|
+ inputMessage["infno"] = "3501" // 交易编码
|
|
4822
|
+ inputData["med_list_codg"] = struct3501.MedListCodg // 定点医药机构目录编号
|
|
4823
|
+ inputData["fixmedins_hilist_id"] = struct3501.FixmedinsHilistId // 定点医药机构目录编号
|
|
4824
|
+ inputData["fixmedins_hilist_name"] = struct3501.OrgName // 定点医药机构目录名称
|
|
4825
|
+ inputData["rx_flag"] = struct3501.RxFlag //
|
|
4826
|
+ inputData["invdate"] = struct3501.Invdate // 人员编号 (来自1101接口返回)
|
|
4827
|
+ inputData["inv_cnt"] = struct3501.InvCnt // 人员编号 (来自1101接口返回)
|
|
4828
|
+ inputData["manu_lotnum"] = struct3501.ManuLotnum // 人员编号 (来自1101接口返回)
|
|
4829
|
+ inputData["fixmedins_bchno"] = struct3501.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
4830
|
+ inputData["manu_date"] = struct3501.ManuDate // 人员编号 (来自1101接口返回)
|
|
4831
|
+ inputData["expy_end"] = struct3501.ExpyEnd // 人员编号 (来自1101接口返回)
|
|
4832
|
+ inputData["memo"] = "" // 人员编号 (来自1101接口返回)
|
|
4833
|
+ input["invinfo"] = inputData
|
|
4834
|
+ inputMessage["input"] = input //交易输入
|
|
4835
|
+
|
|
4836
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
4837
|
+ fmt.Println(string(bytesData))
|
|
4838
|
+ if err != nil {
|
|
4839
|
+ fmt.Println(err.Error())
|
|
4840
|
+ return err.Error()
|
|
4841
|
+ }
|
|
4842
|
+ reader := bytes.NewReader(bytesData)
|
|
4843
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
4844
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
4845
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
4846
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
4847
|
+ url := gdyb_url + "3501"
|
|
4848
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
4849
|
+ if err != nil {
|
|
4850
|
+ fmt.Println(err.Error())
|
|
4851
|
+ return err.Error()
|
|
4852
|
+ }
|
|
4853
|
+
|
|
4854
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
4855
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
4856
|
+ request.Header.Set("x-tif-signature", signature)
|
|
4857
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
4858
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
4859
|
+
|
|
4860
|
+ client := http.Client{}
|
|
4861
|
+ resp, err := client.Do(request)
|
|
4862
|
+ if err != nil {
|
|
4863
|
+ fmt.Println(err.Error())
|
|
4864
|
+ return err.Error()
|
|
4865
|
+ }
|
|
4866
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
4867
|
+ if err != nil {
|
|
4868
|
+ fmt.Println(err.Error())
|
|
4869
|
+ return err.Error()
|
|
4870
|
+ }
|
|
4871
|
+ str := string(respBytes)
|
|
4872
|
+ fmt.Println(str)
|
|
4873
|
+ return str
|
|
4874
|
+}
|
|
4875
|
+func Gdyb3502(struct3502 models.Struct3502, secret_key string) string {
|
|
4876
|
+ // 生成签名
|
|
4877
|
+ nonce := GetRandomString(32)
|
|
4878
|
+ timestamp := time.Now().Unix()
|
|
4879
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
4880
|
+
|
|
4881
|
+ // 生成输入报文
|
|
4882
|
+ inputMessage := SetJSInputMessage(timestamp, struct3502.OrgName, struct3502.Opter, struct3502.FixmedinsCode, struct3502.InsuplcAdmdvs, struct3502.MdtrtareaAdmvs, struct3502.Cainfo)
|
|
4883
|
+ input := make(map[string]interface{})
|
|
4884
|
+ inputData := make(map[string]interface{})
|
|
4885
|
+ inputMessage["infno"] = "3502" // 交易编码
|
|
4886
|
+ inputData["med_list_codg"] = struct3502.MedListCodg // 定点医药机构目录编号
|
|
4887
|
+ inputData["inv_chg_type"] = struct3502.InvChgType // 定点医药机构目录编号
|
|
4888
|
+
|
|
4889
|
+ inputData["fixmedins_hilist_id"] = struct3502.FixmedinsCode // 定点医药机构目录编号
|
|
4890
|
+ inputData["fixmedins_hilist_name"] = struct3502.OrgName // 定点医药机构目录名称
|
|
4891
|
+ inputData["fixmedins_bchno"] = struct3502.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
4892
|
+ inputData["pric"] = struct3502.Pric // 人员编号 (来自1101接口返回)
|
|
4893
|
+ inputData["cnt"] = struct3502.Cnt // 人员编号 (来自1101接口返回)
|
|
4894
|
+ inputData["rx_flag"] = struct3502.RxFlag //
|
|
4895
|
+
|
|
4896
|
+ inputData["inv_chg_time"] = struct3502.InvChgTime // 人员编号 (来自1101接口返回)
|
|
4897
|
+ inputData["inv_chg_opter_name"] = "" // 人员编号 (来自1101接口返回)
|
|
4898
|
+ inputData["memo"] = struct3502.Memo // 人员编号 (来自1101接口返回)
|
|
4899
|
+ inputData["trdn_flag"] = "" // 人员编号 (来自1101接口返回)
|
|
4900
|
+
|
|
4901
|
+ input["invinfo"] = inputData
|
|
4902
|
+ inputMessage["input"] = input //交易输入
|
|
4903
|
+
|
|
4904
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
4905
|
+ fmt.Println(string(bytesData))
|
|
4906
|
+ if err != nil {
|
|
4907
|
+ fmt.Println(err.Error())
|
|
4908
|
+ return err.Error()
|
|
4909
|
+ }
|
|
4910
|
+ reader := bytes.NewReader(bytesData)
|
|
4911
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
4912
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
4913
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
4914
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
4915
|
+ url := gdyb_url + "3502"
|
|
4916
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
4917
|
+ if err != nil {
|
|
4918
|
+ fmt.Println(err.Error())
|
|
4919
|
+ return err.Error()
|
|
4920
|
+ }
|
|
4921
|
+
|
|
4922
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
4923
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
4924
|
+ request.Header.Set("x-tif-signature", signature)
|
|
4925
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
4926
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
4927
|
+
|
|
4928
|
+ client := http.Client{}
|
|
4929
|
+ resp, err := client.Do(request)
|
|
4930
|
+ if err != nil {
|
|
4931
|
+ fmt.Println(err.Error())
|
|
4932
|
+ return err.Error()
|
|
4933
|
+ }
|
|
4934
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
4935
|
+ if err != nil {
|
|
4936
|
+ fmt.Println(err.Error())
|
|
4937
|
+ return err.Error()
|
|
4938
|
+ }
|
|
4939
|
+ str := string(respBytes)
|
|
4940
|
+ fmt.Println(str)
|
|
4941
|
+ return str
|
|
4942
|
+}
|
|
4943
|
+func Gdyb3503(struct3503 models.Struct3503, secret_key string) string {
|
|
4944
|
+ // 生成签名
|
|
4945
|
+ nonce := GetRandomString(32)
|
|
4946
|
+ timestamp := time.Now().Unix()
|
|
4947
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
4948
|
+
|
|
4949
|
+ // 生成输入报文
|
|
4950
|
+ inputMessage := SetJSInputMessage(timestamp, struct3503.OrgName, struct3503.Opter, struct3503.FixmedinsHilistId, struct3503.InsuplcAdmdvs, struct3503.MdtrtareaAdmvs, struct3503.Cainfo)
|
|
4951
|
+
|
|
4952
|
+ input := make(map[string]interface{})
|
|
4953
|
+
|
|
4954
|
+ inputMessage["infno"] = "3503"
|
|
4955
|
+
|
|
4956
|
+ item := struct3503
|
|
4957
|
+ feedetailInfo := make(map[string]interface{})
|
|
4958
|
+ feedetailInfo["med_list_codg"] = item.MedListCodg
|
|
4959
|
+ feedetailInfo["fixmedins_hilist_id"] = item.FixmedinsHilistId
|
|
4960
|
+ feedetailInfo["fixmedins_hilist_name"] = item.FixmedinsHilistName
|
|
4961
|
+ feedetailInfo["dynt_no"] = ""
|
|
4962
|
+ feedetailInfo["fixmedins_bchno"] = item.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
4963
|
+ feedetailInfo["spler_name"] = item.SplerName // 人员编号 (来自1101接口返回)
|
|
4964
|
+ feedetailInfo["spler_pmtno"] = "" // 人员编号 (来自1101接口返回)
|
|
4965
|
+ feedetailInfo["manu_lotnum"] = item.ManuLotnum // 人员编号 (来自1101接口返回)
|
|
4966
|
+ feedetailInfo["prodentp_name"] = item.ProdentpName // 人员编号 (来自1101接口返回)
|
|
4967
|
+ feedetailInfo["aprvno"] = item.Aprvno // 人员编号 (来自1101接口返回)
|
|
4968
|
+ feedetailInfo["manu_date"] = item.ManuDate // 人员编号 (来自1101接口返回)
|
|
4969
|
+ feedetailInfo["expy_end"] = item.ExpyEnd // 人员编号 (来自1101接口返回)
|
|
4970
|
+ feedetailInfo["finl_trns_pric"] = item.FinlTrnsPric // 人员编号 (来自1101接口返回)
|
|
4971
|
+ feedetailInfo["purc_retn_cnt"] = item.PurcRetnCnt // 人员编号 (来自1101接口返回)
|
|
4972
|
+ feedetailInfo["purc_invo_codg"] = item.PurcInvoCodg // 人员编号 (来自1101接口返回)
|
|
4973
|
+ feedetailInfo["purc_invo_no"] = item.PurcInvoNo // 人员编号 (来自1101接口返回)
|
|
4974
|
+ feedetailInfo["rx_flag"] = item.RxFlag // 人员编号 (来自1101接口返回)
|
|
4975
|
+ feedetailInfo["purc_retn_stoin_time"] = item.PurcRetnStoinTime // 人员编号 (来自1101接口返回)
|
|
4976
|
+ feedetailInfo["purc_retn_opter_name"] = item.PurcRetnOpterName // 人员编号 (来自1101接口返回)
|
|
4977
|
+ feedetailInfo["prod_geay_flag"] = "" // 人员编号 (来自1101接口返回)
|
|
4978
|
+ feedetailInfo["memo"] = "" // 人员编号 (来自1101接口返回)
|
|
4979
|
+ input["purcinfo"] = feedetailInfo
|
|
4980
|
+ inputMessage["input"] = input //交易输入
|
|
4981
|
+
|
|
4982
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
4983
|
+ fmt.Println(string(bytesData))
|
|
4984
|
+ if err != nil {
|
|
4985
|
+ fmt.Println(err.Error())
|
|
4986
|
+ return err.Error()
|
|
4987
|
+ }
|
|
4988
|
+ reader := bytes.NewReader(bytesData)
|
|
4989
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
4990
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
4991
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
4992
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
4993
|
+ url := gdyb_url + "3503"
|
|
4994
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
4995
|
+ if err != nil {
|
|
4996
|
+ fmt.Println(err.Error())
|
|
4997
|
+ return err.Error()
|
|
4998
|
+ }
|
|
4999
|
+
|
|
5000
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
5001
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
5002
|
+ request.Header.Set("x-tif-signature", signature)
|
|
5003
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
5004
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
5005
|
+
|
|
5006
|
+ client := http.Client{}
|
|
5007
|
+ resp, err := client.Do(request)
|
|
5008
|
+ if err != nil {
|
|
5009
|
+ fmt.Println(err.Error())
|
|
5010
|
+ return err.Error()
|
|
5011
|
+ }
|
|
5012
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
5013
|
+ if err != nil {
|
|
5014
|
+ fmt.Println(err.Error())
|
|
5015
|
+ return err.Error()
|
|
5016
|
+ }
|
|
5017
|
+ str := string(respBytes)
|
|
5018
|
+ fmt.Println(str)
|
|
5019
|
+ return str
|
|
5020
|
+}
|
|
5021
|
+func Gdyb3504(struct3504 models.Struct3504, secret_key string) string {
|
|
5022
|
+ // 生成签名
|
|
5023
|
+ nonce := GetRandomString(32)
|
|
5024
|
+ timestamp := time.Now().Unix()
|
|
5025
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
5026
|
+
|
|
5027
|
+ // 生成输入报文
|
|
5028
|
+ inputMessage := SetJSInputMessage(timestamp, struct3504.OrgName, struct3504.Opter, struct3504.FixmedinsCode, struct3504.InsuplcAdmdvs, struct3504.MdtrtareaAdmvs, struct3504.Cainfo)
|
|
5029
|
+ input := make(map[string]interface{})
|
|
5030
|
+ inputData := make(map[string]interface{})
|
|
5031
|
+ inputMessage["infno"] = "3504" // 交易编码
|
|
5032
|
+ inputData["med_list_codg"] = struct3504.MedListCodg // 定点医药机构目录编号
|
|
5033
|
+ inputData["fixmedins_hilist_id"] = struct3504.FixmedinsHilistId // 定点医药机构目录编号
|
|
5034
|
+ inputData["fixmedins_hilist_name"] = struct3504.FixmedinsHilistName // 定点医药机构目录名称
|
|
5035
|
+ inputData["fixmedins_bchno"] = struct3504.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
5036
|
+ inputData["spler_name"] = struct3504.SplerName // 人员编号 (来自1101接口返回)
|
|
5037
|
+ inputData["spler_pmtno"] = "" // 人员编号 (来自1101接口返回)
|
|
5038
|
+
|
|
5039
|
+ inputData["manu_date"] = struct3504.ManuDate // 人员编号 (来自1101接口返回)
|
|
5040
|
+ inputData["expy_end"] = struct3504.ExpyEnd // 人员编号 (来自1101接口返回)
|
|
5041
|
+ inputData["finl_trns_pric"] = struct3504.FinlTrnsPric // 人员编号 (来自1101接口返回)
|
|
5042
|
+ inputData["purc_retn_cnt"] = struct3504.PurcRetnCnt // 人员编号 (来自1101接口返回)
|
|
5043
|
+ inputData["purc_invo_codg"] = struct3504.PurcInvoCodg // 人员编号 (来自1101接口返回)
|
|
5044
|
+ inputData["purc_invo_no"] = struct3504.PurcInvoNo // 人员编号 (来自1101接口返回)
|
|
5045
|
+ inputData["rx_flag"] = struct3504.RxFlag
|
|
5046
|
+ inputData["purc_retn_stoin_time"] = struct3504.PurcRetnStoin
|
|
5047
|
+ inputData["purc_retn_opter_name"] = struct3504.PurcRetnStoin
|
|
5048
|
+ inputData["memo"] = "" // 人员编号 (来自1101接口返回)
|
|
5049
|
+ inputData["medins_prod_purc_no"] = "" // 人员编号 (来自1101接口返回)
|
|
5050
|
+ input["purcinfo"] = inputData
|
|
5051
|
+ inputMessage["input"] = input //交易输入
|
|
5052
|
+
|
|
5053
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
5054
|
+ fmt.Println(string(bytesData))
|
|
5055
|
+ if err != nil {
|
|
5056
|
+ fmt.Println(err.Error())
|
|
5057
|
+ return err.Error()
|
|
5058
|
+ }
|
|
5059
|
+ reader := bytes.NewReader(bytesData)
|
|
5060
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
5061
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
5062
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
5063
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
5064
|
+ url := gdyb_url + "3504"
|
|
5065
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
5066
|
+ if err != nil {
|
|
5067
|
+ fmt.Println(err.Error())
|
|
5068
|
+ return err.Error()
|
|
5069
|
+ }
|
|
5070
|
+
|
|
5071
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
5072
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
5073
|
+ request.Header.Set("x-tif-signature", signature)
|
|
5074
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
5075
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
5076
|
+
|
|
5077
|
+ client := http.Client{}
|
|
5078
|
+ resp, err := client.Do(request)
|
|
5079
|
+ if err != nil {
|
|
5080
|
+ fmt.Println(err.Error())
|
|
5081
|
+ return err.Error()
|
|
5082
|
+ }
|
|
5083
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
5084
|
+ if err != nil {
|
|
5085
|
+ fmt.Println(err.Error())
|
|
5086
|
+ return err.Error()
|
|
5087
|
+ }
|
|
5088
|
+ str := string(respBytes)
|
|
5089
|
+ fmt.Println(str)
|
|
5090
|
+ return str
|
|
5091
|
+}
|
|
5092
|
+func Gdyb3505(struct3505 models.Struct3505, secret_key string) string {
|
|
5093
|
+ // 生成签名
|
|
5094
|
+ nonce := GetRandomString(32)
|
|
5095
|
+ timestamp := time.Now().Unix()
|
|
5096
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
5097
|
+
|
|
5098
|
+ // 生成输入报文
|
|
5099
|
+ inputMessage := SetJSInputMessage(timestamp, struct3505.OrgName, struct3505.Opter, struct3505.FixmedinsHilistId, struct3505.InsuplcAdmdvs, struct3505.MdtrtareaAdmvs, struct3505.Cainfo)
|
|
5100
|
+ input := make(map[string]interface{})
|
|
5101
|
+ inputData := make(map[string]interface{})
|
|
5102
|
+ inputMessage["infno"] = "3505" // 交易编码
|
|
5103
|
+ inputData["med_list_codg"] = struct3505.MedListCodg // 定点医药机构目录编号
|
|
5104
|
+ inputData["fixmedins_hilist_id"] = struct3505.FixmedinsHilistId // 定点医药机构目录编号
|
|
5105
|
+ inputData["fixmedins_hilist_name"] = struct3505.OrgName // 定点医药机构目录名称
|
|
5106
|
+ inputData["fixmedins_bchno"] = struct3505.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
5107
|
+
|
|
5108
|
+ inputData["prsc_dr_cert_type"] = struct3505.PrscDrCertType // 人员编号 (来自1101接口返回)
|
|
5109
|
+ inputData["prsc_dr_certno"] = struct3505.PrscDrCertno // 人员编号 (来自1101接口返回)
|
|
5110
|
+ inputData["prsc_dr_name"] = struct3505.PrscDrName // 人员编号 (来自1101接口返回)
|
|
5111
|
+ inputData["phar_cert_type"] = struct3505.PharCertType // 人员编号 (来自1101接口返回)
|
|
5112
|
+ inputData["phar_certno"] = struct3505.PharCertno // 人员编号 (来自1101接口返回)
|
|
5113
|
+
|
|
5114
|
+ inputData["phar_name"] = struct3505.PharName // 人员编号 (来自1101接口返回)
|
|
5115
|
+ inputData["phar_prac_cert_no"] = struct3505.PharPracCertNo // 人员编号 (来自1101接口返回)
|
|
5116
|
+ inputData["hi_feesetl_type"] = struct3505.HiFeesetlType // 人员编号 (来自1101接口返回)
|
|
5117
|
+ inputData["setl_id"] = struct3505.SetlId // 人员编号 (来自1101接口返回)
|
|
5118
|
+ inputData["mdtrt_sn"] = struct3505.MdtrtSn // 人员编号 (来自1101接口返回)
|
|
5119
|
+ inputData["psn_no"] = struct3505.PsnNo // 人员编号 (来自1101接口返回)
|
|
5120
|
+ inputData["psn_cert_type"] = struct3505.PsnCertType // 人员编号 (来自1101接口返回)
|
|
5121
|
+ inputData["certno"] = struct3505.CertNo // 人员编号 (来自1101接口返回)
|
|
5122
|
+ inputData["psn_name"] = struct3505.PsnName // 人员编号 (来自1101接口返回)
|
|
5123
|
+ inputData["manu_lotnum"] = struct3505.ManuLotnum // 人员编号 (来自1101接口返回)
|
|
5124
|
+ inputData["manu_date"] = struct3505.ManuDate // 人员编号 (来自1101接口返回)
|
|
5125
|
+ inputData["expy_end"] = struct3505.ExpyEnd // 人员编号 (来自1101接口返回)
|
|
5126
|
+
|
|
5127
|
+ inputData["rx_flag"] = struct3505.RxFlag // 人员编号 (来自1101接口返回)
|
|
5128
|
+ inputData["trdn_flag"] = struct3505.TrdnFlag // 人员编号 (来自1101接口返回)
|
|
5129
|
+
|
|
5130
|
+ inputData["finl_trns_pric"] = struct3505.FinlTrnsPric // 人员编号 (来自1101接口返回)
|
|
5131
|
+ inputData["rxno"] = struct3505.Rxno // 人员编号 (来自1101接口返回)
|
|
5132
|
+ inputData["rx_circ_flag"] = struct3505.RxCircFlag // 人员编号 (来自1101接口返回)
|
|
5133
|
+
|
|
5134
|
+ inputData["rtal_docno"] = struct3505.RtalDocno // 人员编号 (来自1101接口返回)
|
|
5135
|
+ inputData["stoout_no"] = struct3505.StooutNo // 人员编号 (来自1101接口返回)
|
|
5136
|
+
|
|
5137
|
+ inputData["bchno"] = struct3505.Bchno // 人员编号 (来自1101接口返回)
|
|
5138
|
+ inputData["drug_trac_codg"] = struct3505.DrugTracCodg // 人员编号 (来自1101接口返回)
|
|
5139
|
+ inputData["drug_prod_barc"] = struct3505.DrugProdBarc // 人员编号 (来自1101接口返回)
|
|
5140
|
+ inputData["shelf_posi"] = struct3505.ShelfPosi // 人员编号 (来自1101接口返回)
|
|
5141
|
+ inputData["sel_retn_cnt"] = struct3505.SelRetnCnt // 人员编号 (来自1101接口返回)
|
|
5142
|
+ inputData["sel_retn_time"] = struct3505.SelRetnTime // 人员编号 (来自1101接口返回)
|
|
5143
|
+ inputData["sel_retn_opter_name"] = struct3505.SelRetnOpterName // 人员编号 (来自1101接口返回)
|
|
5144
|
+ inputData["memo"] = struct3505.Memo // 人员编号 (来自1101接口返回)
|
|
5145
|
+ input["selinfo"] = inputData
|
|
5146
|
+ inputMessage["input"] = input //交易输入
|
|
5147
|
+
|
|
5148
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
5149
|
+ fmt.Println(string(bytesData))
|
|
5150
|
+ if err != nil {
|
|
5151
|
+ fmt.Println(err.Error())
|
|
5152
|
+ return err.Error()
|
|
5153
|
+ }
|
|
5154
|
+ reader := bytes.NewReader(bytesData)
|
|
5155
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
5156
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
5157
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
5158
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
5159
|
+ url := gdyb_url + "3505"
|
|
5160
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
5161
|
+ if err != nil {
|
|
5162
|
+ fmt.Println(err.Error())
|
|
5163
|
+ return err.Error()
|
|
5164
|
+ }
|
|
5165
|
+
|
|
5166
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
5167
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
5168
|
+ request.Header.Set("x-tif-signature", signature)
|
|
5169
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
5170
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
5171
|
+
|
|
5172
|
+ client := http.Client{}
|
|
5173
|
+ resp, err := client.Do(request)
|
|
5174
|
+ if err != nil {
|
|
5175
|
+ fmt.Println(err.Error())
|
|
5176
|
+ return err.Error()
|
|
5177
|
+ }
|
|
5178
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
5179
|
+ if err != nil {
|
|
5180
|
+ fmt.Println(err.Error())
|
|
5181
|
+ return err.Error()
|
|
5182
|
+ }
|
|
5183
|
+ str := string(respBytes)
|
|
5184
|
+ fmt.Println(str)
|
|
5185
|
+ return str
|
|
5186
|
+}
|
|
5187
|
+func Gdyb3506(struct3506 models.Struct3506, secret_key string) string {
|
|
5188
|
+ // 生成签名
|
|
5189
|
+ nonce := GetRandomString(32)
|
|
5190
|
+ timestamp := time.Now().Unix()
|
|
5191
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
5192
|
+
|
|
5193
|
+ // 生成输入报文
|
|
5194
|
+ inputMessage := SetJSInputMessage(timestamp, struct3506.OrgName, struct3506.Opter, struct3506.FixmedinsCode, struct3506.InsuplcAdmdvs, struct3506.MdtrtareaAdmvs, struct3506.Cainfo)
|
|
5195
|
+ input := make(map[string]interface{})
|
|
5196
|
+ inputData := make(map[string]interface{})
|
|
5197
|
+ inputMessage["infno"] = "3506" // 交易编码
|
|
5198
|
+ inputData["med_list_codg"] = struct3506.MedListCodg // 定点医药机构目录编号
|
|
5199
|
+ inputData["fixmedins_hilist_id"] = struct3506.FixmedinsHilistId // 定点医药机构目录编号
|
|
5200
|
+ inputData["fixmedins_hilist_name"] = struct3506.OrgName // 定点医药机构目录名称
|
|
5201
|
+ inputData["fixmedins_bchno"] = struct3506.FixmedinsBchno // 人员编号 (来自1101接口返回)
|
|
5202
|
+
|
|
5203
|
+ inputData["setl_id"] = struct3506.SetlId // 人员编号 (来自1101接口返回)
|
|
5204
|
+ inputData["psn_no"] = struct3506.PsnNo // 人员编号 (来自1101接口返回)
|
|
5205
|
+ inputData["psn_cert_type"] = struct3506.PsnCertType // 人员编号 (来自1101接口返回)
|
|
5206
|
+ inputData["certno"] = struct3506.Certno // 人员编号 (来自1101接口返回)
|
|
5207
|
+ inputData["psn_name"] = struct3506.PsnName // 人员编号 (来自1101接口返回)
|
|
5208
|
+ inputData["manu_lotnum"] = struct3506.ManuLotnum // 人员编号 (来自1101接口返回)
|
|
5209
|
+ inputData["manu_date"] = struct3506.ManuDate // 人员编号 (来自1101接口返回)
|
|
5210
|
+ inputData["expy_end"] = struct3506.ExpyEnd // 人员编号 (来自1101接口返回)
|
|
5211
|
+ inputData["rx_flag"] = struct3506.RxFlag // 人员编号 (来自1101接口返回)
|
|
5212
|
+ inputData["trdn_flag"] = struct3506.TrdnFlag // 人员编号 (来自1101接口返回)
|
|
5213
|
+ inputData["finl_trns_pric"] = struct3506.FinlTrnsPric // 人员编号 (来自1101接口返回)
|
|
5214
|
+ inputData["sel_retn_cnt"] = struct3506.SelRetnCnt // 人员编号 (来自1101接口返回)
|
|
5215
|
+ inputData["sel_retn_time"] = struct3506.SelRetnTime // 人员编号 (来自1101接口返回)
|
|
5216
|
+ inputData["sel_retn_opter_name"] = struct3506.SelRetnOpterName // 人员编号 (来自1101接口返回)
|
|
5217
|
+ inputData["memo"] = "" // 人员编号 (来自1101接口返回)
|
|
5218
|
+ inputData["medins_prod_sel_no"] = "" // 人员编号 (来自1101接口返回)
|
|
5219
|
+
|
|
5220
|
+ input["selinfo"] = inputData
|
|
5221
|
+ inputMessage["input"] = input //交易输入
|
|
5222
|
+
|
|
5223
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
5224
|
+ fmt.Println(string(bytesData))
|
|
5225
|
+ if err != nil {
|
|
5226
|
+ fmt.Println(err.Error())
|
|
5227
|
+ return err.Error()
|
|
5228
|
+ }
|
|
5229
|
+ reader := bytes.NewReader(bytesData)
|
|
5230
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
5231
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
5232
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
5233
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
5234
|
+ url := gdyb_url + "3506"
|
|
5235
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
5236
|
+ if err != nil {
|
|
5237
|
+ fmt.Println(err.Error())
|
|
5238
|
+ return err.Error()
|
|
5239
|
+ }
|
|
5240
|
+
|
|
5241
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
5242
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
5243
|
+ request.Header.Set("x-tif-signature", signature)
|
|
5244
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
5245
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
5246
|
+
|
|
5247
|
+ client := http.Client{}
|
|
5248
|
+ resp, err := client.Do(request)
|
|
5249
|
+ if err != nil {
|
|
5250
|
+ fmt.Println(err.Error())
|
|
5251
|
+ return err.Error()
|
|
5252
|
+ }
|
|
5253
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
5254
|
+ if err != nil {
|
|
5255
|
+ fmt.Println(err.Error())
|
|
5256
|
+ return err.Error()
|
|
5257
|
+ }
|
|
5258
|
+ str := string(respBytes)
|
|
5259
|
+ fmt.Println(str)
|
|
5260
|
+ return str
|
|
5261
|
+}
|
|
5262
|
+func Gdyb3507(struct3507 models.Struct3507, secret_key string) string {
|
|
5263
|
+ // 生成签名
|
|
5264
|
+ nonce := GetRandomString(32)
|
|
5265
|
+ timestamp := time.Now().Unix()
|
|
5266
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
5267
|
+
|
|
5268
|
+ // 生成输入报文
|
|
5269
|
+ inputMessage := SetJSInputMessage(timestamp, struct3507.OrgName, struct3507.Opter, struct3507.FixmedinsCode, struct3507.InsuplcAdmdvs, struct3507.MdtrtareaAdmvs, struct3507.Cainfo)
|
|
5270
|
+ input := make(map[string]interface{})
|
|
5271
|
+ inputData := make(map[string]interface{})
|
|
5272
|
+ inputMessage["infno"] = "3507" // 交易编码
|
|
5273
|
+ inputData["fixmedins_bchno"] = struct3507.FixmedinsCode // 人员编号 (来自1101接口返回)
|
|
5274
|
+ inputData["inv_data_type"] = struct3507.InvDataType // 人员编号 (来自1101接口返回)
|
|
5275
|
+
|
|
5276
|
+ input["data"] = inputData
|
|
5277
|
+ inputMessage["input"] = input //交易输入
|
|
5278
|
+
|
|
5279
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
5280
|
+ fmt.Println(string(bytesData))
|
|
5281
|
+ if err != nil {
|
|
5282
|
+ fmt.Println(err.Error())
|
|
5283
|
+ return err.Error()
|
|
5284
|
+ }
|
|
5285
|
+ reader := bytes.NewReader(bytesData)
|
|
5286
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/5301"
|
|
5287
|
+ gdyb_url := beego.AppConfig.String("gdyb_url")
|
|
5288
|
+ gdyb_paasid := beego.AppConfig.String("gdyb_paasid")
|
|
5289
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
5290
|
+ url := gdyb_url + "3507"
|
|
5291
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
5292
|
+ if err != nil {
|
|
5293
|
+ fmt.Println(err.Error())
|
|
5294
|
+ return err.Error()
|
|
5295
|
+ }
|
|
5296
|
+
|
|
5297
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
5298
|
+ request.Header.Set("x-tif-paasid", gdyb_paasid)
|
|
5299
|
+ request.Header.Set("x-tif-signature", signature)
|
|
5300
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
5301
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
5302
|
+
|
|
5303
|
+ client := http.Client{}
|
|
5304
|
+ resp, err := client.Do(request)
|
|
5305
|
+ if err != nil {
|
|
5306
|
+ fmt.Println(err.Error())
|
|
5307
|
+ return err.Error()
|
|
5308
|
+ }
|
|
5309
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
5310
|
+ if err != nil {
|
|
5311
|
+ fmt.Println(err.Error())
|
|
5312
|
+ return err.Error()
|
|
5313
|
+ }
|
|
5314
|
+ str := string(respBytes)
|
|
5315
|
+ fmt.Println(str)
|
|
5316
|
+ return str
|
|
5317
|
+}
|