|
@@ -82,13 +82,12 @@ func Gdyb1201(certNo string, org_name string, doctor string, fixmedins_code stri
|
82
|
82
|
}
|
83
|
83
|
|
84
|
84
|
// 人员基本信息
|
85
|
|
-func Gdyb1101(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, id_card_no string) string {
|
86
|
|
- // 生成签名
|
|
85
|
+func Gdyb1101(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) string {
|
|
86
|
+ //生成签名
|
87
|
87
|
nonce := GetRandomString(32)
|
88
|
88
|
timestamp := time.Now().Unix()
|
89
|
89
|
signature := setSignature(timestamp, nonce, secret_key)
|
90
|
|
-
|
91
|
|
- // 生成输入报文
|
|
90
|
+ //生成输入报文
|
92
|
91
|
inputMessage := SetInputMessage(nonce, timestamp, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs)
|
93
|
92
|
input := make(map[string]interface{})
|
94
|
93
|
inputData := make(map[string]interface{})
|
|
@@ -97,10 +96,7 @@ func Gdyb1101(certNo string, org_name string, doctor string, fixmedins_code stri
|
97
|
96
|
if id_card_type == 1 {
|
98
|
97
|
inputData["mdtrt_cert_type"] = "03" // 就诊凭证类型
|
99
|
98
|
inputData["card_sn"] = card_sn // 卡识别码
|
100
|
|
- inputData["certno"] = id_card_no // 证件号码
|
101
|
|
- //inputData["mdtrt_cert_type"] = "02" // 就诊凭证类型
|
102
|
|
- //inputData["card_sn"] = "" // 卡识别码
|
103
|
|
- //inputData["certno"] = certNo // 证件号码
|
|
99
|
+ inputData["certno"] = certNo // 证件号码
|
104
|
100
|
} else {
|
105
|
101
|
inputData["mdtrt_cert_type"] = "02" // 就诊凭证类型
|
106
|
102
|
inputData["card_sn"] = "" // 卡识别码
|
|
@@ -152,6 +148,65 @@ func Gdyb1101(certNo string, org_name string, doctor string, fixmedins_code stri
|
152
|
148
|
return str
|
153
|
149
|
}
|
154
|
150
|
|
|
151
|
+func Gdyb1101A(certNo string, org_name string, doctor string, fixmedins_code string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string) string {
|
|
152
|
+ //生成签名
|
|
153
|
+ nonce := GetRandomString(32)
|
|
154
|
+ timestamp := time.Now().Unix()
|
|
155
|
+ signature := setSignature(timestamp, nonce, secret_key)
|
|
156
|
+ //生成输入报文
|
|
157
|
+ inputMessage := SetInputMessage(nonce, timestamp, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs)
|
|
158
|
+ input := make(map[string]interface{})
|
|
159
|
+ inputData := make(map[string]interface{})
|
|
160
|
+ inputMessage["infno"] = "1101" // 交易编码
|
|
161
|
+ inputData["mdtrt_cert_type"] = "02" // 就诊凭证类型
|
|
162
|
+ inputData["card_sn"] = "" // 卡识别码
|
|
163
|
+ inputData["certno"] = certNo // 证件号码
|
|
164
|
+ inputData["psn_cert_type"] = "1" // 人员证件类型
|
|
165
|
+ inputData["mdtrt_cert_no"] = certNo // 就诊凭证编号
|
|
166
|
+ inputData["begntime"] = "" // 开始时间
|
|
167
|
+ inputData["psn_name"] = "" // 人员姓名
|
|
168
|
+ input["data"] = inputData
|
|
169
|
+ inputMessage["input"] = input //交易输入
|
|
170
|
+
|
|
171
|
+ bytesData, err := json.Marshal(inputMessage)
|
|
172
|
+ fmt.Println(string(bytesData))
|
|
173
|
+ if err != nil {
|
|
174
|
+ fmt.Println(err.Error())
|
|
175
|
+ return err.Error()
|
|
176
|
+ }
|
|
177
|
+ reader := bytes.NewReader(bytesData)
|
|
178
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_api/prd/hsa/hgs/1101"
|
|
179
|
+ url := "http://igb.hsa.gdgov.cn/ebus/gdyb_inf/poc/hsa/hgs/1101"
|
|
180
|
+
|
|
181
|
+ //url := "http://igb.hsa.gdgov.cn/ebus/gdyb_inf/poc/hsa/hgs/1101"
|
|
182
|
+ request, err := http.NewRequest("POST", url, reader)
|
|
183
|
+ if err != nil {
|
|
184
|
+ fmt.Println(err.Error())
|
|
185
|
+ return err.Error()
|
|
186
|
+ }
|
|
187
|
+
|
|
188
|
+ request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
|
189
|
+ request.Header.Set("x-tif-paasid", "test_hosp")
|
|
190
|
+ request.Header.Set("x-tif-signature", signature)
|
|
191
|
+ request.Header.Set("x-tif-timestamp", strconv.FormatInt(timestamp, 10))
|
|
192
|
+ request.Header.Set("x-tif-nonce", nonce)
|
|
193
|
+
|
|
194
|
+ client := http.Client{}
|
|
195
|
+ resp, err := client.Do(request)
|
|
196
|
+ if err != nil {
|
|
197
|
+ fmt.Println(err.Error())
|
|
198
|
+ return err.Error()
|
|
199
|
+ }
|
|
200
|
+ respBytes, err := ioutil.ReadAll(resp.Body)
|
|
201
|
+ if err != nil {
|
|
202
|
+ fmt.Println(err.Error())
|
|
203
|
+ return err.Error()
|
|
204
|
+ }
|
|
205
|
+ fmt.Println(string(respBytes))
|
|
206
|
+ str := string(respBytes)
|
|
207
|
+ return str
|
|
208
|
+}
|
|
209
|
+
|
155
|
210
|
// 门诊挂号
|
156
|
211
|
func Gdyb2201(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) string {
|
157
|
212
|
// 生成签名
|