Browse Source

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

csx 3 years ago
parent
commit
19f84bd818

+ 3 - 3
conf/app.conf View File

45
 
45
 
46
 
46
 
47
 [prod]
47
 [prod]
48
-org_id = 10106
48
+org_id = 9919
49
 mobile_token_expiration_second = 86400
49
 mobile_token_expiration_second = 86400
50
 httpdomain = https://api.xt.kuyicloud.com
50
 httpdomain = https://api.xt.kuyicloud.com
51
 sso_domain = https://sso.kuyicloud.com
51
 sso_domain = https://sso.kuyicloud.com
57
 # gdyb_url="http://igb.hsa.gdgov.cn/ebus/sz_prd/hsa/hgs/"
57
 # gdyb_url="http://igb.hsa.gdgov.cn/ebus/sz_prd/hsa/hgs/"
58
 #内蒙古
58
 #内蒙古
59
 # gdyb_url = "http://10.38.23.105:8090/uif-hsaf-med-api/api/medical/service/"
59
 # gdyb_url = "http://10.38.23.105:8090/uif-hsaf-med-api/api/medical/service/"
60
-# gdyb_paasid = "sg03_prd"
61
-gdyb_paasid = "jm_sc_yjyy"
60
+gdyb_paasid = "sg03_prd"
61
+# gdyb_paasid = "jm_sc_yjyy"
62
 #gdyb_paasid="zh_prd_yjyy"
62
 #gdyb_paasid="zh_prd_yjyy"
63
 #gdyb_paasid = "sz_prd_yjyy"
63
 #gdyb_paasid = "sz_prd_yjyy"
64
 #gdyb_paasid = "zq_prd_yjyy"
64
 #gdyb_paasid = "zq_prd_yjyy"

+ 5 - 0
controllers/sg/gdyb_controller.go View File

404
 	fmt.Println(stmtEnddate)
404
 	fmt.Println(stmtEnddate)
405
 	fmt.Println(medfeeSumamt)
405
 	fmt.Println(medfeeSumamt)
406
 
406
 
407
+	if len(clrType) == 0 {
408
+		clrType = "11"
409
+	} else {
410
+		clrType = "9903"
411
+	}
407
 	baseParams := models.BaseParams{
412
 	baseParams := models.BaseParams{
408
 		SecretKey:      secret_key,
413
 		SecretKey:      secret_key,
409
 		FixmedinsCode:  fixmedins_code,
414
 		FixmedinsCode:  fixmedins_code,

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

6402
 	loc, _ := time.LoadLocation("Local")
6402
 	loc, _ := time.LoadLocation("Local")
6403
 	startime, _ := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc)
6403
 	startime, _ := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc)
6404
 	endtime, _ := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc)
6404
 	endtime, _ := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc)
6405
-	orders, _ := service.GetOrderByTime(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId, insutype, clr_org)
6405
+	orders, _ := service.GetOrderByTime(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId, insutype, clr_org, clr_type)
6406
 	//orders_two, _ := service.GetOrderByTimeThree(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId, insutype, clr_type)
6406
 	//orders_two, _ := service.GetOrderByTimeThree(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId, insutype, clr_type)
6407
 	fixmedins_setl_cnt := int64(len(orders))
6407
 	fixmedins_setl_cnt := int64(len(orders))
6408
 	//
6408
 	//

+ 87 - 10
controllers/zh/zh_his_api_controller.go View File

10
 	"gdyb/service"
10
 	"gdyb/service"
11
 	"gdyb/utils"
11
 	"gdyb/utils"
12
 	"github.com/astaxie/beego"
12
 	"github.com/astaxie/beego"
13
+	"github.com/axgle/mahonia"
13
 	"io/ioutil"
14
 	"io/ioutil"
14
 	"math"
15
 	"math"
15
 	"math/rand"
16
 	"math/rand"
16
 	"net/http"
17
 	"net/http"
18
+	"os"
17
 	"strconv"
19
 	"strconv"
18
 	"strings"
20
 	"strings"
19
 	"time"
21
 	"time"
623
 	miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
625
 	miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
624
 	role, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
626
 	role, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
625
 	result, request_log, result_log := service.ZHGdyb1101(patient.IdCardNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, "", certificates, name)
627
 	result, request_log, result_log := service.ZHGdyb1101(patient.IdCardNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, "", certificates, name)
626
-	fmt.Println(request_log)
627
-	fmt.Println(result_log)
628
+	//fmt.Println(request_log)
629
+	//fmt.Println(result_log)
630
+	saveLog(result_log, request_log, "1101", "人员基本信息获取")
628
 
631
 
629
 	doctorInfo, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
632
 	doctorInfo, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
630
 
633
 
836
 			dises = append(dises, dise)
839
 			dises = append(dises, dise)
837
 		}
840
 		}
838
 		struct2401.Diseinfo = dises
841
 		struct2401.Diseinfo = dises
839
-		result := service.ZHGdyb2401(struct2401, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, insuplc_admdvs, miConfig.MdtrtareaAdmvs)
842
+		result, request_log := service.ZHGdyb2401(struct2401, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, insuplc_admdvs, miConfig.MdtrtareaAdmvs)
843
+		saveLog(result, request_log, "2401", "入医登记")
840
 
844
 
841
 		var dat map[string]interface{}
845
 		var dat map[string]interface{}
842
 		if err := json.Unmarshal([]byte(result), &dat); err == nil {
846
 		if err := json.Unmarshal([]byte(result), &dat); err == nil {
874
 		}
878
 		}
875
 
879
 
876
 		if res.Infcode == 0 {
880
 		if res.Infcode == 0 {
877
-			result2 := service.Gdyb5301Two(res2.Output.Baseinfo.PsnNo, miConfig.OrgName, role.UserName, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
878
-			fmt.Println(result2)
881
+			//result2 := service.Gdyb5301Two(res2.Output.Baseinfo.PsnNo, miConfig.OrgName, role.UserName, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
882
+			//fmt.Println(result2)
879
 			Iinfos, _ := json.Marshal(res2.Output.Iinfo)
883
 			Iinfos, _ := json.Marshal(res2.Output.Iinfo)
880
 			Idetinfos, _ := json.Marshal(res2.Output.Idetinfo)
884
 			Idetinfos, _ := json.Marshal(res2.Output.Idetinfo)
881
 			infoStr := string(Iinfos)
885
 			infoStr := string(Iinfos)
1023
 	struct2402.Diseinfo = dises
1027
 	struct2402.Diseinfo = dises
1024
 	struct2402.DiseName = sickConfig.ClassName
1028
 	struct2402.DiseName = sickConfig.ClassName
1025
 	struct2402.DiseCode = sickConfig.CountryCode
1029
 	struct2402.DiseCode = sickConfig.CountryCode
1026
-	result := service.ZHGdyb2402(struct2402, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
1030
+	result, request_log := service.ZHGdyb2402(struct2402, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
1031
+	//saveLog(result,request_log,"出院)
1032
+	saveLog(result, request_log, "2402", "出院")
1027
 
1033
 
1028
 	var dat map[string]interface{}
1034
 	var dat map[string]interface{}
1029
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1035
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1149
 	var result string
1155
 	var result string
1150
 	var src_resquest string
1156
 	var src_resquest string
1151
 	result, src_resquest = service.ZHGdyb2304(record.PsnNo, record.Number, chrg_bchno, cert_no, record.InsutypeType, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "0", record.IdCardType, 0, 0, 0, 0, record.Certificates)
1157
 	result, src_resquest = service.ZHGdyb2304(record.PsnNo, record.Number, chrg_bchno, cert_no, record.InsutypeType, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "0", record.IdCardType, 0, 0, 0, 0, record.Certificates)
1158
+	//saveLog()
1159
+	saveLog(result, src_resquest, "2304", "住院结算")
1160
+
1152
 	var dat map[string]interface{}
1161
 	var dat map[string]interface{}
1153
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1162
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1154
 		fmt.Println(dat)
1163
 		fmt.Println(dat)
1711
 	if config.IsOpen == 1 { //对接了医保,走医保流程
1720
 	if config.IsOpen == 1 { //对接了医保,走医保流程
1712
 
1721
 
1713
 		result, src_resquest := service.Gdyb2305(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
1722
 		result, src_resquest := service.Gdyb2305(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
1723
+		saveLog(result, src_resquest, "2305", "退费")
1714
 
1724
 
1715
 		var dat map[string]interface{}
1725
 		var dat map[string]interface{}
1716
 		if err := json.Unmarshal([]byte(result), &dat); err == nil {
1726
 		if err := json.Unmarshal([]byte(result), &dat); err == nil {
1812
 		var isSuccess bool = true
1822
 		var isSuccess bool = true
1813
 
1823
 
1814
 		for _, item := range infos {
1824
 		for _, item := range infos {
1815
-			result := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, item.FeedetlSn, 1)
1825
+			result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, item.FeedetlSn, 1)
1826
+			saveLog(result, requestLog, "2302", "日结退明细")
1816
 			var dat map[string]interface{}
1827
 			var dat map[string]interface{}
1817
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1828
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1818
 				fmt.Println(dat)
1829
 				fmt.Println(dat)
1874
 		config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
1885
 		config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
1875
 		if config.IsOpen == 1 { //对接了医保,走医保流程
1886
 		if config.IsOpen == 1 { //对接了医保,走医保流程
1876
 
1887
 
1877
-			result := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
1888
+			result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
1889
+			//saveLog(result,requestLog,)
1890
+			saveLog(result, requestLog, "2302", "月结退明细")
1891
+
1878
 			var dat map[string]interface{}
1892
 			var dat map[string]interface{}
1879
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1893
 			if err := json.Unmarshal([]byte(result), &dat); err == nil {
1880
 				fmt.Println(dat)
1894
 				fmt.Println(dat)
1940
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
1954
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
1941
 		return
1955
 		return
1942
 	}
1956
 	}
1943
-	result := service.ZHGdyb2405(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
1957
+	result, requestLog := service.ZHGdyb2405(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
1958
+	saveLog(result, requestLog, "2405", "出院登记撤销")
1959
+
1944
 	var dat map[string]interface{}
1960
 	var dat map[string]interface{}
1945
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1961
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
1946
 		fmt.Println(dat)
1962
 		fmt.Println(dat)
1999
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
2015
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
2000
 		return
2016
 		return
2001
 	}
2017
 	}
2002
-	result := service.ZHGdyb2404(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
2018
+	result, requestLog := service.ZHGdyb2404(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
2019
+	//saveLog()
2020
+	saveLog(result, requestLog, "2404", "入院登记撤销")
2021
+
2003
 	var dat map[string]interface{}
2022
 	var dat map[string]interface{}
2004
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
2023
 	if err := json.Unmarshal([]byte(result), &dat); err == nil {
2005
 		fmt.Println(dat)
2024
 		fmt.Println(dat)
2045
 	}
2064
 	}
2046
 
2065
 
2047
 }
2066
 }
2067
+
2068
+func saveLog(result string, request string, infno string, desc string) {
2069
+
2070
+	org_id, _ := beego.AppConfig.Int64("org_id")
2071
+	miConfig, _ := service.FindMedicalInsuranceInfo(org_id)
2072
+	dir := miConfig.OrgName + "日志"
2073
+	utils.Mkdir(dir)
2074
+	month := time.Unix(1557042972, 0).Format("1")
2075
+	year := time.Now().Format("2006")
2076
+	month = time.Now().Format("01")
2077
+	day := time.Now().Format("02")
2078
+	hour := time.Now().Format("15")
2079
+	min := time.Now().Format("04")
2080
+	sec := time.Now().Format("05")
2081
+
2082
+	result_time := year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sec
2083
+
2084
+	file := strconv.FormatInt(org_id, 10) + "_" + year + month + day + "_log"
2085
+	file_name := file + ".txt"
2086
+	file_path := miConfig.OrgName + "日志" + "/" + file_name
2087
+	exist, _ := utils.PathExists(file_path)
2088
+	if exist { //存在
2089
+		fmt.Println("存在")
2090
+		f, err := os.OpenFile(file_path, os.O_WRONLY, 0644)
2091
+		if err != nil {
2092
+			fmt.Println("read fail")
2093
+		}
2094
+		content := "\r\n" + "\r\n" + "\r\n" + result_time + " " + "【 " + desc + infno + "入参" + " 】:" + "\r\n" + request + "\r\n" + result_time + " " + "【 " + desc + infno + "出参" + " 】:" + "\r\n" + result
2095
+		n, _ := f.Seek(0, 2)
2096
+		_, err = f.WriteAt([]byte(content), n)
2097
+
2098
+	} else { //不存在
2099
+		fmt.Println("文件不存在,创建文件")
2100
+		f, err := os.Create(miConfig.OrgName + "日志" + "/" + file_name)
2101
+		defer f.Close()
2102
+		if err != nil {
2103
+		} else {
2104
+			_, err = f.Write([]byte("记录日志"))
2105
+		}
2106
+	}
2107
+
2108
+}
2109
+
2110
+type Charset string
2111
+
2112
+const (
2113
+	UTF8    = Charset("UTF-8")
2114
+	GB18030 = Charset("GB18030")
2115
+)
2116
+
2117
+func ConvertToString(src string, srcCode string, tagCode string) string {
2118
+	srcCoder := mahonia.NewDecoder(srcCode)
2119
+	srcResult := srcCoder.ConvertString(src)
2120
+	tagCoder := mahonia.NewDecoder(tagCode)
2121
+	_, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
2122
+	result := string(cdata)
2123
+	return result
2124
+}

+ 8 - 2
service/his_service.go View File

964
 	return
964
 	return
965
 }
965
 }
966
 
966
 
967
-func GetOrderByTime(start_time int64, end_time int64, org_id int64, insutype string, clr_org string) (orders []*models.HisOrder, err error) {
967
+func GetOrderByTime(start_time int64, end_time int64, org_id int64, insutype string, clr_org string, clr_type string) (orders []*models.HisOrder, err error) {
968
+
968
 	if len(clr_org) > 0 {
969
 	if len(clr_org) > 0 {
969
 		err = readDb.Model(&models.HisOrder{}).Where("user_org_id = ? AND status = 1 AND order_status = 2 AND is_medicine_insurance = 1 AND UNIX_TIMESTAMP(setl_time)  <= ? AND UNIX_TIMESTAMP(setl_time) >= ? AND insutype = ? AND clr_optins = ?", org_id, end_time, start_time, insutype, clr_org).Find(&orders).Error
970
 		err = readDb.Model(&models.HisOrder{}).Where("user_org_id = ? AND status = 1 AND order_status = 2 AND is_medicine_insurance = 1 AND UNIX_TIMESTAMP(setl_time)  <= ? AND UNIX_TIMESTAMP(setl_time) >= ? AND insutype = ? AND clr_optins = ?", org_id, end_time, start_time, insutype, clr_org).Find(&orders).Error
970
 	} else {
971
 	} else {
971
-		err = readDb.Model(&models.HisOrder{}).Where("user_org_id = ? AND status = 1 AND order_status = 2 AND is_medicine_insurance = 1 AND UNIX_TIMESTAMP(setl_time)  <= ? AND UNIX_TIMESTAMP(setl_time) >= ? AND insutype = ? ", org_id, end_time, start_time, insutype).Find(&orders).Error
972
+		if len(clr_type) > 0 {
973
+			err = readDb.Model(&models.HisOrder{}).Where("user_org_id = ? AND status = 1 AND order_status = 2 AND is_medicine_insurance = 1 AND UNIX_TIMESTAMP(setl_time)  <= ? AND UNIX_TIMESTAMP(setl_time) >= ? AND insutype = ? AND clr_type = ?", org_id, end_time, start_time, insutype, clr_type).Find(&orders).Error
974
+		} else {
975
+			err = readDb.Model(&models.HisOrder{}).Where("user_org_id = ? AND status = 1 AND order_status = 2 AND is_medicine_insurance = 1 AND UNIX_TIMESTAMP(setl_time)  <= ? AND UNIX_TIMESTAMP(setl_time) >= ? AND insutype = ? ", org_id, end_time, start_time, insutype).Find(&orders).Error
976
+
977
+		}
972
 	}
978
 	}
973
 	return
979
 	return
974
 }
980
 }

+ 39 - 30
service/zh_his_service.go View File

134
 }
134
 }
135
 
135
 
136
 // 住院登记
136
 // 住院登记
137
-func ZHGdyb2401(struct2401 Struct2401, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) string {
137
+func ZHGdyb2401(struct2401 Struct2401, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) (string, string) {
138
 	// 生成签名
138
 	// 生成签名
139
 	nonce := GetRandomString(32)
139
 	nonce := GetRandomString(32)
140
 	timestamp := time.Now().Unix()
140
 	timestamp := time.Now().Unix()
203
 
203
 
204
 	bytesData, err := json.Marshal(inputMessage)
204
 	bytesData, err := json.Marshal(inputMessage)
205
 	fmt.Println(string(bytesData))
205
 	fmt.Println(string(bytesData))
206
+	requestLog := string(bytesData)
207
+
206
 	if err != nil {
208
 	if err != nil {
207
 		fmt.Println(err.Error())
209
 		fmt.Println(err.Error())
208
-		return err.Error()
210
+		return err.Error(), ""
209
 	}
211
 	}
210
 	reader := bytes.NewReader(bytesData)
212
 	reader := bytes.NewReader(bytesData)
211
 	gdyb_url := beego.AppConfig.String("gdyb_url")
213
 	gdyb_url := beego.AppConfig.String("gdyb_url")
217
 	request, err := http.NewRequest("POST", url, reader)
219
 	request, err := http.NewRequest("POST", url, reader)
218
 	if err != nil {
220
 	if err != nil {
219
 		fmt.Println(err.Error())
221
 		fmt.Println(err.Error())
220
-		return err.Error()
222
+		return err.Error(), ""
223
+
221
 	}
224
 	}
222
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
225
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
223
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
226
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
229
 	resp, err := client.Do(request)
232
 	resp, err := client.Do(request)
230
 	if err != nil {
233
 	if err != nil {
231
 		fmt.Println(err.Error())
234
 		fmt.Println(err.Error())
232
-		return err.Error()
235
+		return err.Error(), ""
236
+
233
 	}
237
 	}
234
 	respBytes, err := ioutil.ReadAll(resp.Body)
238
 	respBytes, err := ioutil.ReadAll(resp.Body)
235
 	if err != nil {
239
 	if err != nil {
236
 		fmt.Println(err.Error())
240
 		fmt.Println(err.Error())
237
-		return err.Error()
241
+		return err.Error(), ""
242
+
238
 	}
243
 	}
239
 	str := string(respBytes)
244
 	str := string(respBytes)
240
 	fmt.Println(str)
245
 	fmt.Println(str)
241
-	return str
246
+	return str, requestLog
242
 }
247
 }
243
 
248
 
244
 //住院撤销
249
 //住院撤销
245
-func ZHGdyb2404(mdtrt_id string, psn_no string, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) string {
250
+func ZHGdyb2404(mdtrt_id string, psn_no string, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) (string, string) {
246
 	// 生成签名
251
 	// 生成签名
247
 	nonce := GetRandomString(32)
252
 	nonce := GetRandomString(32)
248
 	timestamp := time.Now().Unix()
253
 	timestamp := time.Now().Unix()
259
 	inputMessage["input"] = input //交易输入
264
 	inputMessage["input"] = input //交易输入
260
 	bytesData, err := json.Marshal(inputMessage)
265
 	bytesData, err := json.Marshal(inputMessage)
261
 	fmt.Println(string(bytesData))
266
 	fmt.Println(string(bytesData))
267
+	requestLog := string(bytesData)
262
 	if err != nil {
268
 	if err != nil {
263
 		fmt.Println(err.Error())
269
 		fmt.Println(err.Error())
264
-		return err.Error()
270
+		return err.Error(), ""
265
 	}
271
 	}
266
 	reader := bytes.NewReader(bytesData)
272
 	reader := bytes.NewReader(bytesData)
267
 	gdyb_url := beego.AppConfig.String("gdyb_url")
273
 	gdyb_url := beego.AppConfig.String("gdyb_url")
273
 	request, err := http.NewRequest("POST", url, reader)
279
 	request, err := http.NewRequest("POST", url, reader)
274
 	if err != nil {
280
 	if err != nil {
275
 		fmt.Println(err.Error())
281
 		fmt.Println(err.Error())
276
-		return err.Error()
282
+		return err.Error(), ""
277
 	}
283
 	}
278
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
284
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
279
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
285
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
285
 	resp, err := client.Do(request)
291
 	resp, err := client.Do(request)
286
 	if err != nil {
292
 	if err != nil {
287
 		fmt.Println(err.Error())
293
 		fmt.Println(err.Error())
288
-		return err.Error()
294
+		return err.Error(), ""
289
 	}
295
 	}
290
 	respBytes, err := ioutil.ReadAll(resp.Body)
296
 	respBytes, err := ioutil.ReadAll(resp.Body)
291
 	if err != nil {
297
 	if err != nil {
292
 		fmt.Println(err.Error())
298
 		fmt.Println(err.Error())
293
-		return err.Error()
299
+		return err.Error(), ""
294
 	}
300
 	}
295
 	str := string(respBytes)
301
 	str := string(respBytes)
296
 	fmt.Println(str)
302
 	fmt.Println(str)
297
-	return str
303
+	return str, requestLog
298
 }
304
 }
299
 
305
 
300
 //出院撤销
306
 //出院撤销
301
-func ZHGdyb2405(mdtrt_id string, psn_no string, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) string {
307
+func ZHGdyb2405(mdtrt_id string, psn_no string, secret_key string, org_name string, fixmedins_code string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string) (string, string) {
302
 	// 生成签名
308
 	// 生成签名
303
 	nonce := GetRandomString(32)
309
 	nonce := GetRandomString(32)
304
 	timestamp := time.Now().Unix()
310
 	timestamp := time.Now().Unix()
315
 	inputMessage["input"] = input //交易输入
321
 	inputMessage["input"] = input //交易输入
316
 	bytesData, err := json.Marshal(inputMessage)
322
 	bytesData, err := json.Marshal(inputMessage)
317
 	fmt.Println(string(bytesData))
323
 	fmt.Println(string(bytesData))
324
+	requestLog := string(bytesData)
318
 	if err != nil {
325
 	if err != nil {
319
 		fmt.Println(err.Error())
326
 		fmt.Println(err.Error())
320
-		return err.Error()
327
+		return err.Error(), ""
321
 	}
328
 	}
322
 	reader := bytes.NewReader(bytesData)
329
 	reader := bytes.NewReader(bytesData)
323
 	gdyb_url := beego.AppConfig.String("gdyb_url")
330
 	gdyb_url := beego.AppConfig.String("gdyb_url")
329
 	request, err := http.NewRequest("POST", url, reader)
336
 	request, err := http.NewRequest("POST", url, reader)
330
 	if err != nil {
337
 	if err != nil {
331
 		fmt.Println(err.Error())
338
 		fmt.Println(err.Error())
332
-		return err.Error()
339
+		return err.Error(), ""
333
 	}
340
 	}
334
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
341
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
335
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
342
 	request.Header.Set("x-tif-paasid", gdyb_paasid)
341
 	resp, err := client.Do(request)
348
 	resp, err := client.Do(request)
342
 	if err != nil {
349
 	if err != nil {
343
 		fmt.Println(err.Error())
350
 		fmt.Println(err.Error())
344
-		return err.Error()
351
+		return err.Error(), ""
345
 	}
352
 	}
346
 	respBytes, err := ioutil.ReadAll(resp.Body)
353
 	respBytes, err := ioutil.ReadAll(resp.Body)
347
 	if err != nil {
354
 	if err != nil {
348
 		fmt.Println(err.Error())
355
 		fmt.Println(err.Error())
349
-		return err.Error()
356
+		return err.Error(), ""
350
 	}
357
 	}
351
 	str := string(respBytes)
358
 	str := string(respBytes)
352
 	fmt.Println(str)
359
 	fmt.Println(str)
353
-	return str
360
+	return str, requestLog
354
 }
361
 }
355
 
362
 
356
 type Diseinfo2402Struct struct {
363
 type Diseinfo2402Struct struct {
380
 }
387
 }
381
 
388
 
382
 // 出院
389
 // 出院
383
-func ZHGdyb2402(struct2402 Struct2402, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string) string {
390
+func ZHGdyb2402(struct2402 Struct2402, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string) (string, string) {
384
 
391
 
385
 	// 生成签名
392
 	// 生成签名
386
 	nonce := GetRandomString(32)
393
 	nonce := GetRandomString(32)
445
 
452
 
446
 	bytesData, err := json.Marshal(inputMessage)
453
 	bytesData, err := json.Marshal(inputMessage)
447
 	fmt.Println(string(bytesData))
454
 	fmt.Println(string(bytesData))
455
+	request_log := string(bytesData)
448
 	if err != nil {
456
 	if err != nil {
449
 		fmt.Println(err.Error())
457
 		fmt.Println(err.Error())
450
-		return err.Error()
458
+		return err.Error(), ""
451
 	}
459
 	}
452
 	reader := bytes.NewReader(bytesData)
460
 	reader := bytes.NewReader(bytesData)
453
 
461
 
464
 	request, err := http.NewRequest("POST", url, reader)
472
 	request, err := http.NewRequest("POST", url, reader)
465
 	if err != nil {
473
 	if err != nil {
466
 		fmt.Println(err.Error())
474
 		fmt.Println(err.Error())
467
-		return err.Error()
475
+		return err.Error(), ""
468
 	}
476
 	}
469
 
477
 
470
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
478
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
479
 	resp, err := client.Do(request)
487
 	resp, err := client.Do(request)
480
 	if err != nil {
488
 	if err != nil {
481
 		fmt.Println(err.Error())
489
 		fmt.Println(err.Error())
482
-		return err.Error()
490
+		return err.Error(), ""
483
 	}
491
 	}
484
 	respBytes, err := ioutil.ReadAll(resp.Body)
492
 	respBytes, err := ioutil.ReadAll(resp.Body)
485
 	if err != nil {
493
 	if err != nil {
486
 		fmt.Println(err.Error())
494
 		fmt.Println(err.Error())
487
-		return err.Error()
495
+		return err.Error(), ""
488
 	}
496
 	}
489
 	str := string(respBytes)
497
 	str := string(respBytes)
490
 	fmt.Println(str)
498
 	fmt.Println(str)
491
-	return str
499
+	return str, request_log
492
 }
500
 }
493
 
501
 
494
 type ZHCustom struct {
502
 type ZHCustom struct {
665
 }
673
 }
666
 
674
 
667
 //  住院费用明细信息撤销
675
 //  住院费用明细信息撤销
668
-func Gdyb2302(psnNo string, mdtrtId string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, number string, refund_type int64) string {
676
+func Gdyb2302(psnNo string, mdtrtId string, org_name string, doctor string, insuplc_admdvs string, mdtrtarea_admvs string, secret_key string, fixmedins_code string, number string, refund_type int64) (string, string) {
669
 	// 生成签名
677
 	// 生成签名
670
 	nonce := GetRandomString(32)
678
 	nonce := GetRandomString(32)
671
 	timestamp := time.Now().Unix()
679
 	timestamp := time.Now().Unix()
691
 
699
 
692
 	bytesData, err := json.Marshal(inputMessage)
700
 	bytesData, err := json.Marshal(inputMessage)
693
 	fmt.Println(string(bytesData))
701
 	fmt.Println(string(bytesData))
702
+	requestLog := string(bytesData)
694
 	if err != nil {
703
 	if err != nil {
695
 		fmt.Println(err.Error())
704
 		fmt.Println(err.Error())
696
-		return err.Error()
705
+		return err.Error(), ""
697
 	}
706
 	}
698
 	reader := bytes.NewReader(bytesData)
707
 	reader := bytes.NewReader(bytesData)
699
 	gdyb_url := beego.AppConfig.String("gdyb_url")
708
 	gdyb_url := beego.AppConfig.String("gdyb_url")
714
 	fmt.Println(request)
723
 	fmt.Println(request)
715
 	if err != nil {
724
 	if err != nil {
716
 		fmt.Println(err.Error())
725
 		fmt.Println(err.Error())
717
-		return err.Error()
726
+		return err.Error(), ""
718
 	}
727
 	}
719
 
728
 
720
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
729
 	request.Header.Set("Content-Type", "application/json;charset=UTF-8")
727
 	resp, err := client.Do(request)
736
 	resp, err := client.Do(request)
728
 	if err != nil {
737
 	if err != nil {
729
 		fmt.Println(err.Error())
738
 		fmt.Println(err.Error())
730
-		return err.Error()
739
+		return err.Error(), ""
731
 	}
740
 	}
732
 	respBytes, err := ioutil.ReadAll(resp.Body)
741
 	respBytes, err := ioutil.ReadAll(resp.Body)
733
 	if err != nil {
742
 	if err != nil {
734
 		fmt.Println(err.Error())
743
 		fmt.Println(err.Error())
735
-		return err.Error()
744
+		return err.Error(), ""
736
 	}
745
 	}
737
 	str := string(respBytes)
746
 	str := string(respBytes)
738
 	fmt.Println(str)
747
 	fmt.Println(str)
739
-	return str
748
+	return str, requestLog
740
 }
749
 }
741
 
750
 
742
 //  住院结算
751
 //  住院结算