|
@@ -10,10 +10,12 @@ import (
|
10
|
10
|
"gdyb/service"
|
11
|
11
|
"gdyb/utils"
|
12
|
12
|
"github.com/astaxie/beego"
|
|
13
|
+ "github.com/axgle/mahonia"
|
13
|
14
|
"io/ioutil"
|
14
|
15
|
"math"
|
15
|
16
|
"math/rand"
|
16
|
17
|
"net/http"
|
|
18
|
+ "os"
|
17
|
19
|
"strconv"
|
18
|
20
|
"strings"
|
19
|
21
|
"time"
|
|
@@ -623,8 +625,9 @@ func (c *ZHHisApiController) GetZHInHospitalCheck() {
|
623
|
625
|
miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
|
624
|
626
|
role, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
|
625
|
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
|
632
|
doctorInfo, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
|
630
|
633
|
|
|
@@ -836,7 +839,8 @@ func (c *ZHHisApiController) GetZHInHospitalCheck() {
|
836
|
839
|
dises = append(dises, dise)
|
837
|
840
|
}
|
838
|
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
|
845
|
var dat map[string]interface{}
|
842
|
846
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -874,8 +878,8 @@ func (c *ZHHisApiController) GetZHInHospitalCheck() {
|
874
|
878
|
}
|
875
|
879
|
|
876
|
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
|
883
|
Iinfos, _ := json.Marshal(res2.Output.Iinfo)
|
880
|
884
|
Idetinfos, _ := json.Marshal(res2.Output.Idetinfo)
|
881
|
885
|
infoStr := string(Iinfos)
|
|
@@ -1023,7 +1027,9 @@ func (this *ZHHisApiController) GetZHOutHospitalCheck() {
|
1023
|
1027
|
struct2402.Diseinfo = dises
|
1024
|
1028
|
struct2402.DiseName = sickConfig.ClassName
|
1025
|
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
|
1034
|
var dat map[string]interface{}
|
1029
|
1035
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -1149,6 +1155,9 @@ func (c *ZHHisApiController) GetSettleInfo() {
|
1149
|
1155
|
var result string
|
1150
|
1156
|
var src_resquest string
|
1151
|
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
|
1161
|
var dat map[string]interface{}
|
1153
|
1162
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1154
|
1163
|
fmt.Println(dat)
|
|
@@ -1711,6 +1720,7 @@ func (c *ZHHisApiController) ZHRefund() {
|
1711
|
1720
|
if config.IsOpen == 1 { //对接了医保,走医保流程
|
1712
|
1721
|
|
1713
|
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
|
1725
|
var dat map[string]interface{}
|
1716
|
1726
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -1812,7 +1822,8 @@ func (c *ZHHisApiController) ZHRefundDetail() {
|
1812
|
1822
|
var isSuccess bool = true
|
1813
|
1823
|
|
1814
|
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
|
1827
|
var dat map[string]interface{}
|
1817
|
1828
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1818
|
1829
|
fmt.Println(dat)
|
|
@@ -1874,7 +1885,10 @@ func (c *ZHHisApiController) ZHRefundDetail() {
|
1874
|
1885
|
config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
|
1875
|
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
|
1892
|
var dat map[string]interface{}
|
1879
|
1893
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1880
|
1894
|
fmt.Println(dat)
|
|
@@ -1940,7 +1954,9 @@ func (this *ZHHisApiController) GetZHOutHospitalUnCheck() {
|
1940
|
1954
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
|
1941
|
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
|
1960
|
var dat map[string]interface{}
|
1945
|
1961
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1946
|
1962
|
fmt.Println(dat)
|
|
@@ -1999,7 +2015,10 @@ func (this *ZHHisApiController) GetZHInHospitalUnCheck() {
|
1999
|
2015
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
|
2000
|
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
|
2022
|
var dat map[string]interface{}
|
2004
|
2023
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
2005
|
2024
|
fmt.Println(dat)
|
|
@@ -2045,3 +2064,61 @@ func (this *ZHHisApiController) GetZHInHospitalUnCheck() {
|
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
|
+}
|