|
@@ -1,6 +1,7 @@
|
1
|
1
|
package zh
|
2
|
2
|
|
3
|
3
|
import (
|
|
4
|
+ "bytes"
|
4
|
5
|
"encoding/json"
|
5
|
6
|
"fmt"
|
6
|
7
|
"gdyb/controllers"
|
|
@@ -11,8 +12,10 @@ import (
|
11
|
12
|
"github.com/astaxie/beego"
|
12
|
13
|
"github.com/axgle/mahonia"
|
13
|
14
|
"github.com/jinzhu/gorm"
|
|
15
|
+ "io/ioutil"
|
14
|
16
|
"math"
|
15
|
17
|
"math/rand"
|
|
18
|
+ "net/http"
|
16
|
19
|
"os"
|
17
|
20
|
"regexp"
|
18
|
21
|
"strconv"
|
|
@@ -494,7 +497,50 @@ func (c *ZHHisApiController) GetZHPatientInfo() {
|
494
|
497
|
config, _ := service.GetMedicalInsuranceConfig(c.GetAdminUserInfo().CurrentOrgId)
|
495
|
498
|
if config.IsOpen == 1 {
|
496
|
499
|
|
497
|
|
- result := service.Gdyb1101A(id_card_no, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, patient.Name)
|
|
500
|
+ var result string
|
|
501
|
+ var request_log string
|
|
502
|
+ var result_log string
|
|
503
|
+
|
|
504
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
505
|
+ //请求内网数据
|
|
506
|
+ api := "http://172.16.13.254:9532/" + "nmyb/1101?cert_no=" + patient.IdCardNo +
|
|
507
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
508
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(certificates, 10) + "&name=" + patient.Name
|
|
509
|
+
|
|
510
|
+ resp, requestErr := http.Get(api)
|
|
511
|
+ if requestErr != nil {
|
|
512
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
513
|
+ return
|
|
514
|
+ }
|
|
515
|
+
|
|
516
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
517
|
+
|
|
518
|
+ if ioErr != nil {
|
|
519
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
520
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
521
|
+ return
|
|
522
|
+ }
|
|
523
|
+
|
|
524
|
+ var respJSON map[string]interface{}
|
|
525
|
+
|
|
526
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
527
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
528
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
529
|
+ return
|
|
530
|
+ }
|
|
531
|
+
|
|
532
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
533
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
534
|
+ result = string(result_byte)
|
|
535
|
+ saveLog(result_log, request_log, "1101", "人员基本信息获取")
|
|
536
|
+
|
|
537
|
+ } else {
|
|
538
|
+ 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)
|
|
539
|
+ saveLog(result_log, request_log, "1101", "人员基本信息获取")
|
|
540
|
+
|
|
541
|
+ }
|
|
542
|
+
|
|
543
|
+ //result := service.Gdyb1101A(id_card_no, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, patient.Name)
|
498
|
544
|
var dat map[string]interface{}
|
499
|
545
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
500
|
546
|
fmt.Println(dat)
|
|
@@ -625,71 +671,109 @@ func (c *ZHHisApiController) GetZHInHospitalCheck() {
|
625
|
671
|
diagnosisConfig, _ := service.FindDiagnoseByIds(diagnosis_ids_arr)
|
626
|
672
|
sickConfig, _ := service.FindSickById(sick_type)
|
627
|
673
|
departmentInfo, _ := service.GetDepartMentDetail(department)
|
628
|
|
-
|
629
|
674
|
miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
|
630
|
675
|
role, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
|
631
|
|
- 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)
|
632
|
|
- //fmt.Println(request_log)
|
633
|
|
- //fmt.Println(result_log)
|
634
|
|
- saveLog(result_log, request_log, "1101", "人员基本信息获取")
|
635
|
676
|
|
636
|
|
- doctorInfo, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
|
|
677
|
+ var result string
|
|
678
|
+ var request_log string
|
|
679
|
+ var result_log string
|
|
680
|
+ var res2 ResultTwo
|
|
681
|
+ var resTwo10265 ResultTwo10265
|
|
682
|
+ psn_info, _ := service.GetPsnByPatientId(patient.ID)
|
637
|
683
|
|
638
|
|
- deviceNumber, _ := service.GetDeviceNumberByID(adm_bed, adminInfo.CurrentOrgId)
|
|
684
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
685
|
+ if id_card_type == 1 {
|
|
686
|
+ //请求内网数据
|
|
687
|
+ api := "http://172.16.13.254:9532/" + "nmyb/1101?cert_no=" + patient.IdCardNo +
|
|
688
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
689
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(certificates, 10) + "&name=" + patient.Name
|
639
|
690
|
|
640
|
|
- var dat map[string]interface{}
|
641
|
|
- if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
642
|
|
- fmt.Println(dat)
|
643
|
|
- } else {
|
644
|
|
- fmt.Println(err)
|
645
|
|
- }
|
646
|
|
- userJSONBytes, _ := json.Marshal(dat)
|
647
|
|
- //
|
648
|
|
- //var res2 ResultTwo
|
649
|
|
- //if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
|
650
|
|
- // utils.ErrorLog("解析失败:%v", err)
|
651
|
|
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
652
|
|
- // return
|
653
|
|
- //}
|
|
691
|
+ resp, requestErr := http.Get(api)
|
|
692
|
+ if requestErr != nil {
|
|
693
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
694
|
+ return
|
|
695
|
+ }
|
654
|
696
|
|
655
|
|
- var res2 ResultTwo
|
656
|
|
- var resTwo10265 ResultTwo10265
|
|
697
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
657
|
698
|
|
658
|
|
- if miConfig.Code == "H15049901371" {
|
659
|
|
- if err := json.Unmarshal(userJSONBytes, &resTwo10265); err != nil {
|
660
|
|
- utils.ErrorLog("解析失败:%v", err)
|
661
|
|
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
662
|
|
- return
|
663
|
|
- }
|
|
699
|
+ if ioErr != nil {
|
|
700
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
701
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
702
|
+ return
|
|
703
|
+ }
|
664
|
704
|
|
665
|
|
- Infcode, _ := strconv.ParseInt(resTwo10265.Infcode, 10, 64)
|
666
|
|
- res2.Infcode = Infcode
|
667
|
|
- res2.ErrMsg = resTwo10265.ErrMsg
|
668
|
|
- res2.Output = resTwo10265.Output
|
669
|
|
- res2.InfRefmsgid = resTwo10265.InfRefmsgid
|
670
|
|
- res2.RespondTime = resTwo10265.RespondTime
|
671
|
|
- res2.WarnInfo = resTwo10265.WarnInfo
|
|
705
|
+ var respJSON map[string]interface{}
|
|
706
|
+
|
|
707
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
708
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
709
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
710
|
+ return
|
|
711
|
+ }
|
672
|
712
|
|
|
713
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
714
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
715
|
+ result = string(result_byte)
|
|
716
|
+
|
|
717
|
+ var dat map[string]interface{}
|
|
718
|
+ if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
719
|
+ fmt.Println(dat)
|
|
720
|
+ } else {
|
|
721
|
+ fmt.Println(err)
|
|
722
|
+ }
|
|
723
|
+ userJSONBytes, _ := json.Marshal(dat)
|
|
724
|
+ if err := json.Unmarshal(userJSONBytes, &resTwo10265); err != nil {
|
|
725
|
+ utils.ErrorLog("解析失败:%v", err)
|
|
726
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
727
|
+ return
|
|
728
|
+ }
|
|
729
|
+ Infcode, _ := strconv.ParseInt(resTwo10265.Infcode, 10, 64)
|
|
730
|
+ res2.Infcode = Infcode
|
|
731
|
+ res2.ErrMsg = resTwo10265.ErrMsg
|
|
732
|
+ res2.Output = resTwo10265.Output
|
|
733
|
+ res2.InfRefmsgid = resTwo10265.InfRefmsgid
|
|
734
|
+ res2.RespondTime = resTwo10265.RespondTime
|
|
735
|
+ res2.WarnInfo = resTwo10265.WarnInfo
|
|
736
|
+ } else {
|
|
737
|
+ res2.Infcode = 0
|
|
738
|
+ res2.Output.Baseinfo.PsnNo = psn_info.PsnNo
|
|
739
|
+ res2.Output.Baseinfo.Certno = patient.IdCardNo
|
|
740
|
+ }
|
673
|
741
|
} else {
|
|
742
|
+ 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)
|
|
743
|
+ saveLog(result_log, request_log, "1101", "人员基本信息获取")
|
|
744
|
+ }
|
|
745
|
+
|
|
746
|
+ doctorInfo, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
|
|
747
|
+ deviceNumber, _ := service.GetDeviceNumberByID(adm_bed, adminInfo.CurrentOrgId)
|
|
748
|
+
|
|
749
|
+ if miConfig.MdtrtareaAdmvs != "150499" {
|
|
750
|
+ var dat map[string]interface{}
|
|
751
|
+ if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
752
|
+ fmt.Println(dat)
|
|
753
|
+ } else {
|
|
754
|
+ fmt.Println(err)
|
|
755
|
+ }
|
|
756
|
+ userJSONBytes, _ := json.Marshal(dat)
|
674
|
757
|
if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
|
675
|
758
|
utils.ErrorLog("解析失败:%v", err)
|
676
|
759
|
c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
677
|
760
|
return
|
678
|
761
|
}
|
679
|
|
-
|
680
|
762
|
}
|
681
|
763
|
|
682
|
|
- //InsuplcAdmdvs = res2.Output.
|
683
|
|
-
|
684
|
|
- if social_type != 0 {
|
685
|
|
-
|
|
764
|
+ var infoStr string
|
|
765
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
766
|
+ if id_card_type == 1 {
|
|
767
|
+ Iinfos, _ := json.Marshal(res2.Output.Iinfo)
|
|
768
|
+ infoStr = string(Iinfos)
|
|
769
|
+ } else {
|
|
770
|
+ infoStr = psn_info.Insuinfo
|
|
771
|
+ }
|
686
|
772
|
} else {
|
687
|
|
-
|
|
773
|
+ Iinfos, _ := json.Marshal(res2.Output.Iinfo)
|
|
774
|
+ infoStr = string(Iinfos)
|
688
|
775
|
}
|
689
|
776
|
|
690
|
|
- Iinfos, _ := json.Marshal(res2.Output.Iinfo)
|
691
|
|
- infoStr := string(Iinfos)
|
692
|
|
-
|
693
|
777
|
var rf []*ResultFive
|
694
|
778
|
json.Unmarshal([]byte(infoStr), &rf)
|
695
|
779
|
var insutypes []*ResultFive
|
|
@@ -846,9 +930,43 @@ func (c *ZHHisApiController) GetZHInHospitalCheck() {
|
846
|
930
|
dises = append(dises, dise)
|
847
|
931
|
}
|
848
|
932
|
struct2401.Diseinfo = dises
|
849
|
|
- result, request_log := service.ZHGdyb2401(struct2401, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, insuplc_admdvs, miConfig.MdtrtareaAdmvs)
|
850
|
|
- saveLog(result, request_log, "2401", "入医登记")
|
851
|
933
|
|
|
934
|
+ var result string
|
|
935
|
+ var request_log string
|
|
936
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
937
|
+ data := make(map[string]interface{})
|
|
938
|
+ data["org_name"] = miConfig.OrgName
|
|
939
|
+ data["doctor"] = role.UserName
|
|
940
|
+ data["fixmedins_code"] = miConfig.Code
|
|
941
|
+ data["insuplc_admdvs"] = miConfig.InsuplcAdmdvs
|
|
942
|
+ data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
|
|
943
|
+ data["secret_key"] = miConfig.SecretKey
|
|
944
|
+ data["struct_2401"] = struct2401
|
|
945
|
+ var req *http.Request
|
|
946
|
+ bytesData, _ := json.Marshal(data)
|
|
947
|
+ req, _ = http.NewRequest("POST", "http://172.16.13.254:9532/"+"jsyb/2401", bytes.NewReader(bytesData))
|
|
948
|
+ client := &http.Client{}
|
|
949
|
+ resp, _ := client.Do(req)
|
|
950
|
+ defer resp.Body.Close()
|
|
951
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
952
|
+ if ioErr != nil {
|
|
953
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
954
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
955
|
+ return
|
|
956
|
+ }
|
|
957
|
+ var respJSON map[string]interface{}
|
|
958
|
+ if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
|
|
959
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
960
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
961
|
+ return
|
|
962
|
+ }
|
|
963
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
964
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
965
|
+ result = string(result_byte)
|
|
966
|
+ } else {
|
|
967
|
+ result, request_log = service.ZHGdyb2401(struct2401, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, insuplc_admdvs, miConfig.MdtrtareaAdmvs)
|
|
968
|
+ saveLog(result, request_log, "2401", "入院登记")
|
|
969
|
+ }
|
852
|
970
|
var dat map[string]interface{}
|
853
|
971
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
854
|
972
|
fmt.Println(dat)
|
|
@@ -1035,9 +1153,43 @@ func (this *ZHHisApiController) GetZHOutHospitalCheck() {
|
1035
|
1153
|
struct2402.Diseinfo = dises
|
1036
|
1154
|
struct2402.DiseName = sickConfig.ClassName
|
1037
|
1155
|
struct2402.DiseCode = sickConfig.CountryCode
|
1038
|
|
- result, request_log := service.ZHGdyb2402(struct2402, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
|
1039
|
|
- //saveLog(result,request_log,"出院)
|
1040
|
|
- saveLog(result, request_log, "2402", "出院")
|
|
1156
|
+
|
|
1157
|
+ var result string
|
|
1158
|
+ var request_log string
|
|
1159
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
1160
|
+ data := make(map[string]interface{})
|
|
1161
|
+ data["org_name"] = miConfig.OrgName
|
|
1162
|
+ data["doctor"] = role.UserName
|
|
1163
|
+ data["fixmedins_code"] = miConfig.Code
|
|
1164
|
+ data["insuplc_admdvs"] = miConfig.InsuplcAdmdvs
|
|
1165
|
+ data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
|
|
1166
|
+ data["secret_key"] = miConfig.SecretKey
|
|
1167
|
+ data["struct_2402"] = struct2402
|
|
1168
|
+ var req *http.Request
|
|
1169
|
+ bytesData, _ := json.Marshal(data)
|
|
1170
|
+ req, _ = http.NewRequest("POST", "http://172.16.13.254:9532/"+"nmyb/2402", bytes.NewReader(bytesData))
|
|
1171
|
+ client := &http.Client{}
|
|
1172
|
+ resp, _ := client.Do(req)
|
|
1173
|
+ defer resp.Body.Close()
|
|
1174
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
1175
|
+ if ioErr != nil {
|
|
1176
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
1177
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1178
|
+ return
|
|
1179
|
+ }
|
|
1180
|
+ var respJSON map[string]interface{}
|
|
1181
|
+ if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
|
|
1182
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
1183
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1184
|
+ return
|
|
1185
|
+ }
|
|
1186
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
1187
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
1188
|
+ result = string(result_byte)
|
|
1189
|
+ } else {
|
|
1190
|
+ result, request_log = service.ZHGdyb2402(struct2402, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
|
|
1191
|
+ saveLog(result, request_log, "2402", "出院")
|
|
1192
|
+ }
|
1041
|
1193
|
|
1042
|
1194
|
var dat map[string]interface{}
|
1043
|
1195
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -1211,9 +1363,43 @@ func (c *ZHHisApiController) GetSettleInfo() {
|
1211
|
1363
|
allTotal = fmt.Sprintf("%.4f", order.MedfeeSumamt)
|
1212
|
1364
|
|
1213
|
1365
|
}
|
1214
|
|
- 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)
|
1215
|
|
- //saveLog()
|
1216
|
|
- saveLog(result, src_resquest, "2304", "住院结算")
|
|
1366
|
+
|
|
1367
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
1368
|
+ //请求内网数据
|
|
1369
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2304?psn_no=" + record.PsnNo + "&mdtrt_id=" + record.Number + "&chrg_bchno=" + chrg_bchno +
|
|
1370
|
+ "&insutype_type=" + record.InsutypeType + "&total=" + allTotal +
|
|
1371
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
1372
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(record.IdCardType, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(record.Certificates, 10) + "&name=" + record.Name + "&cert_no=" + record.IdCardNo
|
|
1373
|
+ resp, requestErr := http.Get(api)
|
|
1374
|
+ if requestErr != nil {
|
|
1375
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1376
|
+ return
|
|
1377
|
+ }
|
|
1378
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
1379
|
+ if ioErr != nil {
|
|
1380
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
1381
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1382
|
+ return
|
|
1383
|
+ }
|
|
1384
|
+
|
|
1385
|
+ var respJSON map[string]interface{}
|
|
1386
|
+
|
|
1387
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
1388
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
1389
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1390
|
+ return
|
|
1391
|
+ }
|
|
1392
|
+
|
|
1393
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
1394
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
1395
|
+ result = string(result_byte)
|
|
1396
|
+
|
|
1397
|
+ } else {
|
|
1398
|
+ 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)
|
|
1399
|
+ //saveLog()
|
|
1400
|
+ saveLog(result, src_resquest, "2304", "住院结算")
|
|
1401
|
+
|
|
1402
|
+ }
|
1217
|
1403
|
|
1218
|
1404
|
var dat map[string]interface{}
|
1219
|
1405
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -1390,8 +1576,43 @@ func (c *ZHHisApiController) GetPreSettleInfo() {
|
1390
|
1576
|
}
|
1391
|
1577
|
var result string
|
1392
|
1578
|
var src_resquest string
|
1393
|
|
- result, src_resquest = service.ZHGdyb2303(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)
|
1394
|
|
- saveLog(result, src_resquest, "2303", "住院预结算")
|
|
1579
|
+
|
|
1580
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
1581
|
+ //请求内网数据
|
|
1582
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2303?psn_no=" + record.PsnNo + "&mdtrt_id=" + record.Number + "&chrg_bchno=" + chrg_bchno +
|
|
1583
|
+ "&insutype_type=" + record.InsutypeType + "&total=" + allTotal +
|
|
1584
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
1585
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(record.IdCardType, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(record.Certificates, 10) + "&name=" + record.Name + "&cert_no=" + record.IdCardNo
|
|
1586
|
+ resp, requestErr := http.Get(api)
|
|
1587
|
+ if requestErr != nil {
|
|
1588
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1589
|
+ return
|
|
1590
|
+ }
|
|
1591
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
1592
|
+ if ioErr != nil {
|
|
1593
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
1594
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1595
|
+ return
|
|
1596
|
+ }
|
|
1597
|
+
|
|
1598
|
+ var respJSON map[string]interface{}
|
|
1599
|
+
|
|
1600
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
1601
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
1602
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1603
|
+ return
|
|
1604
|
+ }
|
|
1605
|
+
|
|
1606
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
1607
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
1608
|
+ result = string(result_byte)
|
|
1609
|
+
|
|
1610
|
+ } else {
|
|
1611
|
+ result, src_resquest = service.ZHGdyb2303(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)
|
|
1612
|
+ saveLog(result, src_resquest, "2303", "住院预结算")
|
|
1613
|
+
|
|
1614
|
+ }
|
|
1615
|
+
|
1395
|
1616
|
var dat map[string]interface{}
|
1396
|
1617
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1397
|
1618
|
fmt.Println(dat)
|
|
@@ -1538,9 +1759,7 @@ func (c *ZHHisApiController) GetUploadInfo() {
|
1538
|
1759
|
}
|
1539
|
1760
|
recordDateTime := theTime.Unix()
|
1540
|
1761
|
adminUser := c.GetAdminUserInfo()
|
1541
|
|
-
|
1542
|
1762
|
var prescriptions []*models.HisPrescription
|
1543
|
|
-
|
1544
|
1763
|
data := make(map[string]interface{})
|
1545
|
1764
|
if settle_accounts_type == 1 { //日结
|
1546
|
1765
|
prescriptions, _ = service.GetZHHisPrescription(adminUser.CurrentOrgId, id, recordDateTime)
|
|
@@ -1565,20 +1784,13 @@ func (c *ZHHisApiController) GetUploadInfo() {
|
1565
|
1784
|
prescriptions, _ = service.GetZHMonthHisPrescription(adminUser.CurrentOrgId, id, recordStartTime, recordEndTime)
|
1566
|
1785
|
|
1567
|
1786
|
}
|
1568
|
|
-
|
1569
|
1787
|
roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
|
1570
|
1788
|
record, _ := service.GetInHospitalRecord(in_hospital_id)
|
1571
|
|
-
|
1572
|
1789
|
if record.ID == 0 {
|
1573
|
1790
|
c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
|
1574
|
1791
|
return
|
1575
|
1792
|
}
|
1576
|
1793
|
|
1577
|
|
- //if record.InHospitalStatus == 1 && record.OutHospitalStatus == 0 {
|
1578
|
|
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHospitalNoExistDataException)
|
1579
|
|
- // return
|
1580
|
|
- //}
|
1581
|
|
-
|
1582
|
1794
|
timestamp := time.Now().Unix()
|
1583
|
1795
|
tempTime := time.Unix(timestamp, 0)
|
1584
|
1796
|
timeFormat := tempTime.Format("20060102150405")
|
|
@@ -1589,6 +1801,8 @@ func (c *ZHHisApiController) GetUploadInfo() {
|
1589
|
1801
|
department, _ := service.GetDepartMentDetail(record.Departments)
|
1590
|
1802
|
strconv.FormatInt(record.PatientId, 10)
|
1591
|
1803
|
|
|
1804
|
+ doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, record.Doctor)
|
|
1805
|
+
|
1592
|
1806
|
//client := &http.Client{}
|
1593
|
1807
|
data["psn_no"] = record.PsnNo
|
1594
|
1808
|
data["mdtrt_id"] = record.Number
|
|
@@ -1710,20 +1924,6 @@ func (c *ZHHisApiController) GetUploadInfo() {
|
1710
|
1924
|
}
|
1711
|
1925
|
}
|
1712
|
1926
|
|
1713
|
|
- //for _, subItem := range item.HisAdditionalCharge {
|
1714
|
|
- // if len(subItem.XtHisAddtionConfig.Code) > 0 {
|
1715
|
|
- // cus := &models.NewCustom{
|
1716
|
|
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*float64(subItem.Count)),
|
1717
|
|
- // Cut: fmt.Sprintf("%.4f", float64(subItem.Count)),
|
1718
|
|
- // FeedetlSn: subItem.FeedetlSn,
|
1719
|
|
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
|
1720
|
|
- // MedListCodg: subItem.XtHisAddtionConfig.Code,
|
1721
|
|
- // HospApprFlag: -1,
|
1722
|
|
- //
|
1723
|
|
- // }
|
1724
|
|
- // customs = append(customs, cus)
|
1725
|
|
- // }
|
1726
|
|
- //}
|
1727
|
1927
|
}
|
1728
|
1928
|
|
1729
|
1929
|
//总页数,向上取整,注意除之前要先转换类型为float64
|
|
@@ -1740,22 +1940,53 @@ func (c *ZHHisApiController) GetUploadInfo() {
|
1740
|
1940
|
stop = len(customs)
|
1741
|
1941
|
}
|
1742
|
1942
|
|
1743
|
|
- //data["pre"] = customs[start-1 : stop]
|
1744
|
|
- //bytesData, _ := json.Marshal(data)
|
1745
|
|
- //req, _ := http.NewRequest("POST", "http://127.0.0.1:9532/"+"gdyb/zh/five", bytes.NewReader(bytesData))
|
1746
|
|
- //resp, _ := client.Do(req)
|
1747
|
|
- //defer resp.Body.Close()
|
1748
|
|
- //body, ioErr := ioutil.ReadAll(resp.Body)
|
1749
|
|
- //if ioErr != nil {
|
1750
|
|
- // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
1751
|
|
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
1752
|
|
- // return
|
1753
|
|
- //}
|
1754
|
|
- resultLog, requestLog := service.ZHGdyb2301(record.PsnNo, record.Number, customs[start-1:stop], chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(department.ID, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, data["med_type"].(string))
|
1755
|
|
- saveLog(resultLog, requestLog, "2301", "上传明细")
|
|
1943
|
+ var result string
|
|
1944
|
+ var requestLog string
|
|
1945
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
1946
|
+ data := make(map[string]interface{})
|
|
1947
|
+ data["psn_no"] = record.PsnNo
|
|
1948
|
+ data["number"] = record.Number
|
|
1949
|
+ data["customs"] = customs[start-1 : stop]
|
|
1950
|
+ data["chrg_bchno"] = chrg_bchno
|
|
1951
|
+ data["dept"] = strconv.FormatInt(department.ID, 10)
|
|
1952
|
+ data["dept_code"] = department.Number
|
|
1953
|
+ data["doctor_code"] = doctor_info.ID
|
|
1954
|
+ data["doctor_name"] = doctor_info.UserName
|
|
1955
|
+ data["org_name"] = miConfig.OrgName
|
|
1956
|
+ data["opertor"] = roles.UserName
|
|
1957
|
+ data["fixmedins_code"] = miConfig.Code
|
|
1958
|
+ data["insuplc_admdvs"] = miConfig.InsuplcAdmdvs
|
|
1959
|
+ data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
|
|
1960
|
+ data["secret_key"] = miConfig.SecretKey
|
|
1961
|
+
|
|
1962
|
+ var req *http.Request
|
|
1963
|
+ bytesData, _ := json.Marshal(data)
|
|
1964
|
+ req, _ = http.NewRequest("POST", "http://172.16.13.254:9532/"+"nmyb/2301", bytes.NewReader(bytesData))
|
|
1965
|
+ client := &http.Client{}
|
|
1966
|
+ resp, _ := client.Do(req)
|
|
1967
|
+ defer resp.Body.Close()
|
|
1968
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
1969
|
+ if ioErr != nil {
|
|
1970
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
1971
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1972
|
+ return
|
|
1973
|
+ }
|
|
1974
|
+ var respJSON map[string]interface{}
|
|
1975
|
+ if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
|
|
1976
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
1977
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
1978
|
+ return
|
|
1979
|
+ }
|
|
1980
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
1981
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
1982
|
+ result = string(result_byte)
|
|
1983
|
+ } else {
|
|
1984
|
+ result, requestLog = service.ZHGdyb2301(record.PsnNo, record.Number, customs[start-1:stop], chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(department.ID, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, data["med_type"].(string))
|
|
1985
|
+ saveLog(result, requestLog, "2301", "上传明细")
|
|
1986
|
+ }
|
1756
|
1987
|
|
1757
|
1988
|
var dat map[string]interface{}
|
1758
|
|
- if err := json.Unmarshal([]byte(resultLog), &dat); err == nil {
|
|
1989
|
+ if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
1759
|
1990
|
fmt.Println(dat)
|
1760
|
1991
|
} else {
|
1761
|
1992
|
fmt.Println(err)
|
|
@@ -1959,8 +2190,46 @@ func (c *ZHHisApiController) ZHRefund() {
|
1959
|
2190
|
config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
|
1960
|
2191
|
if config.IsOpen == 1 { //对接了医保,走医保流程
|
1961
|
2192
|
|
1962
|
|
- result, src_resquest := service.Gdyb2305(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
1963
|
|
- saveLog(result, src_resquest, "2305", "退费")
|
|
2193
|
+ var result string
|
|
2194
|
+ var requestLog string
|
|
2195
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2196
|
+ //请求内网数据
|
|
2197
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2305?mdtrt_id=" + record.Number + "&psn_no=" + record.PsnNo + "&setl_id=" + order.SetlId +
|
|
2198
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2199
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
|
|
2200
|
+ resp, requestErr := http.Get(api)
|
|
2201
|
+ if requestErr != nil {
|
|
2202
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2203
|
+ return
|
|
2204
|
+ }
|
|
2205
|
+
|
|
2206
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2207
|
+
|
|
2208
|
+ if ioErr != nil {
|
|
2209
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2210
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2211
|
+ return
|
|
2212
|
+ }
|
|
2213
|
+
|
|
2214
|
+ var respJSON map[string]interface{}
|
|
2215
|
+
|
|
2216
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2217
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2218
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2219
|
+ return
|
|
2220
|
+ }
|
|
2221
|
+
|
|
2222
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2223
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2224
|
+ result = string(result_byte)
|
|
2225
|
+ //saveLog(result, requestLog, "2404", "入院登记撤销")
|
|
2226
|
+ saveLog(result, requestLog, "2305", "退费")
|
|
2227
|
+
|
|
2228
|
+ } else {
|
|
2229
|
+ result, requestLog := service.Gdyb2305(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
|
2230
|
+ saveLog(result, requestLog, "2305", "退费")
|
|
2231
|
+
|
|
2232
|
+ }
|
1964
|
2233
|
|
1965
|
2234
|
var dat map[string]interface{}
|
1966
|
2235
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -2068,8 +2337,41 @@ func (c *ZHHisApiController) ZHRefundDetail() {
|
2068
|
2337
|
var isSuccess bool = true
|
2069
|
2338
|
|
2070
|
2339
|
for _, item := range infos {
|
2071
|
|
- result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, item.FeedetlSn, 1)
|
2072
|
|
- saveLog(result, requestLog, "2302", "日结退明细")
|
|
2340
|
+ var result string
|
|
2341
|
+ var requestLog string
|
|
2342
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2343
|
+ //请求内网数据
|
|
2344
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2302?psn_no=" + record.PsnNo + "&mdtrtId=" + record.Number + "&feedetl_sn=" + item.FeedetlSn +
|
|
2345
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2346
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&refund_type=" + "1"
|
|
2347
|
+ resp, requestErr := http.Get(api)
|
|
2348
|
+ if requestErr != nil {
|
|
2349
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2350
|
+ return
|
|
2351
|
+ }
|
|
2352
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2353
|
+ if ioErr != nil {
|
|
2354
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2355
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2356
|
+ return
|
|
2357
|
+ }
|
|
2358
|
+ var respJSON map[string]interface{}
|
|
2359
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2360
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2361
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2362
|
+ return
|
|
2363
|
+ }
|
|
2364
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2365
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2366
|
+ result = string(result_byte)
|
|
2367
|
+ saveLog(result, requestLog, "2302", "日结退明细")
|
|
2368
|
+
|
|
2369
|
+ } else {
|
|
2370
|
+ result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, item.FeedetlSn, 1)
|
|
2371
|
+ saveLog(result, requestLog, "2302", "日结退明细")
|
|
2372
|
+
|
|
2373
|
+ }
|
|
2374
|
+
|
2073
|
2375
|
var dat map[string]interface{}
|
2074
|
2376
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
2075
|
2377
|
fmt.Println(dat)
|
|
@@ -2127,13 +2429,43 @@ func (c *ZHHisApiController) ZHRefundDetail() {
|
2127
|
2429
|
//var order models.HisOrder
|
2128
|
2430
|
//order, _ = service.GetHisOrderByID(order_id)
|
2129
|
2431
|
//record, _ := service.GetInHospitalRecordByNumber(order.MdtrtId)
|
|
2432
|
+ var result string
|
|
2433
|
+ var requestLog string
|
2130
|
2434
|
record, _ := service.GetInHospitalRecord(his_patient_id)
|
2131
|
2435
|
config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
|
2132
|
2436
|
if config.IsOpen == 1 { //对接了医保,走医保流程
|
2133
|
2437
|
|
2134
|
|
- result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
|
2135
|
|
- //saveLog(result,requestLog,)
|
2136
|
|
- saveLog(result, requestLog, "2302", "月结退明细")
|
|
2438
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2439
|
+ //请求内网数据
|
|
2440
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2302?psn_no=" + record.PsnNo + "&mdtrtId=" + record.Number + "&number=0000" +
|
|
2441
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2442
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&refund_type=" + "1"
|
|
2443
|
+ resp, requestErr := http.Get(api)
|
|
2444
|
+ if requestErr != nil {
|
|
2445
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2446
|
+ return
|
|
2447
|
+ }
|
|
2448
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2449
|
+ if ioErr != nil {
|
|
2450
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2451
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2452
|
+ return
|
|
2453
|
+ }
|
|
2454
|
+ var respJSON map[string]interface{}
|
|
2455
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2456
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2457
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2458
|
+ return
|
|
2459
|
+ }
|
|
2460
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2461
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2462
|
+ result = string(result_byte)
|
|
2463
|
+ //saveLog(result, requestLog, "2302", "日结退明细")
|
|
2464
|
+
|
|
2465
|
+ } else {
|
|
2466
|
+ result, requestLog = service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, roles.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
|
|
2467
|
+ saveLog(result, requestLog, "2302", "月结退明细")
|
|
2468
|
+ }
|
2137
|
2469
|
|
2138
|
2470
|
var dat map[string]interface{}
|
2139
|
2471
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -2200,8 +2532,45 @@ func (this *ZHHisApiController) GetZHOutHospitalUnCheck() {
|
2200
|
2532
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
|
2201
|
2533
|
return
|
2202
|
2534
|
}
|
2203
|
|
- result, requestLog := service.ZHGdyb2405(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
2204
|
|
- saveLog(result, requestLog, "2405", "出院登记撤销")
|
|
2535
|
+
|
|
2536
|
+ var result string
|
|
2537
|
+ var requestLog string
|
|
2538
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2539
|
+ //请求内网数据
|
|
2540
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2405?mdtrt_id=" + record.Number + "&psn_no=" + record.PsnNo +
|
|
2541
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2542
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
|
|
2543
|
+ resp, requestErr := http.Get(api)
|
|
2544
|
+ if requestErr != nil {
|
|
2545
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2546
|
+ return
|
|
2547
|
+ }
|
|
2548
|
+
|
|
2549
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2550
|
+
|
|
2551
|
+ if ioErr != nil {
|
|
2552
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2553
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2554
|
+ return
|
|
2555
|
+ }
|
|
2556
|
+
|
|
2557
|
+ var respJSON map[string]interface{}
|
|
2558
|
+
|
|
2559
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2560
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2561
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2562
|
+ return
|
|
2563
|
+ }
|
|
2564
|
+
|
|
2565
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2566
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2567
|
+ result = string(result_byte)
|
|
2568
|
+
|
|
2569
|
+ } else {
|
|
2570
|
+ result, requestLog = service.ZHGdyb2405(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
|
2571
|
+ saveLog(result, requestLog, "2405", "出院登记撤销")
|
|
2572
|
+
|
|
2573
|
+ }
|
2205
|
2574
|
|
2206
|
2575
|
var dat map[string]interface{}
|
2207
|
2576
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -2251,20 +2620,56 @@ func (this *ZHHisApiController) GetZHOutHospitalUnCheck() {
|
2251
|
2620
|
func (this *ZHHisApiController) GetZHInHospitalUnCheck() {
|
2252
|
2621
|
id, _ := this.GetInt64("id")
|
2253
|
2622
|
admin_user_id, _ := this.GetInt64("admin_user_id")
|
2254
|
|
-
|
2255
|
2623
|
adminInfo := this.GetAdminUserInfo()
|
2256
|
2624
|
miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
|
2257
|
2625
|
role, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
|
2258
|
|
-
|
2259
|
2626
|
record, _ := service.GetInHospitalRecord(id)
|
|
2627
|
+
|
2260
|
2628
|
if record.ID == 0 {
|
2261
|
2629
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeInHospitalNoExistDataException)
|
2262
|
2630
|
return
|
2263
|
2631
|
}
|
2264
|
2632
|
|
2265
|
|
- result, requestLog := service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
|
2266
|
|
- //saveLog(result,requestLog,)
|
2267
|
|
- saveLog(result, requestLog, "2302", "月结退明细")
|
|
2633
|
+ var result string
|
|
2634
|
+ var requestLog string
|
|
2635
|
+
|
|
2636
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2637
|
+ //请求内网数据
|
|
2638
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2302?psn_no=" + record.PsnNo + "&mdtrtId=" + record.Number + "&number=" + "0000" +
|
|
2639
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2640
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&refund_type=0"
|
|
2641
|
+ resp, requestErr := http.Get(api)
|
|
2642
|
+ if requestErr != nil {
|
|
2643
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2644
|
+ return
|
|
2645
|
+ }
|
|
2646
|
+
|
|
2647
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2648
|
+
|
|
2649
|
+ if ioErr != nil {
|
|
2650
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2651
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2652
|
+ return
|
|
2653
|
+ }
|
|
2654
|
+
|
|
2655
|
+ var respJSON map[string]interface{}
|
|
2656
|
+
|
|
2657
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2658
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2659
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2660
|
+ return
|
|
2661
|
+ }
|
|
2662
|
+
|
|
2663
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2664
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2665
|
+ result = string(result_byte)
|
|
2666
|
+ saveLog(result, requestLog, "2302", "月结退明细")
|
|
2667
|
+
|
|
2668
|
+ } else {
|
|
2669
|
+ result, requestLog = service.Gdyb2302(record.PsnNo, record.Number, miConfig.OrgName, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code, "0000", 0)
|
|
2670
|
+ saveLog(result, requestLog, "2302", "月结退明细")
|
|
2671
|
+
|
|
2672
|
+ }
|
2268
|
2673
|
|
2269
|
2674
|
var dat map[string]interface{}
|
2270
|
2675
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|
|
@@ -2298,10 +2703,47 @@ func (this *ZHHisApiController) GetZHInHospitalUnCheck() {
|
2298
|
2703
|
}
|
2299
|
2704
|
|
2300
|
2705
|
if res2.Infcode == 0 {
|
|
2706
|
+
|
2301
|
2707
|
service.UpdataHospitalOrderStatus(record.Number, adminInfo.CurrentOrgId)
|
2302
|
|
- result, requestLog := service.ZHGdyb2404(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
2303
|
|
- //saveLog()
|
2304
|
|
- saveLog(result, requestLog, "2404", "入院登记撤销")
|
|
2708
|
+
|
|
2709
|
+ var result string
|
|
2710
|
+ var requestLog string
|
|
2711
|
+ if miConfig.MdtrtareaAdmvs == "150499" {
|
|
2712
|
+ //请求内网数据
|
|
2713
|
+ api := "http://172.16.13.254:9532/" + "nmyb/2404?mdtrt_id=" + record.Number + "&psn_no=" + record.PsnNo +
|
|
2714
|
+ "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
|
|
2715
|
+ "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
|
|
2716
|
+ resp, requestErr := http.Get(api)
|
|
2717
|
+ if requestErr != nil {
|
|
2718
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2719
|
+ return
|
|
2720
|
+ }
|
|
2721
|
+
|
|
2722
|
+ body, ioErr := ioutil.ReadAll(resp.Body)
|
|
2723
|
+
|
|
2724
|
+ if ioErr != nil {
|
|
2725
|
+ utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
|
|
2726
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2727
|
+ return
|
|
2728
|
+ }
|
|
2729
|
+
|
|
2730
|
+ var respJSON map[string]interface{}
|
|
2731
|
+
|
|
2732
|
+ if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
|
|
2733
|
+ utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
|
|
2734
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
2735
|
+ return
|
|
2736
|
+ }
|
|
2737
|
+
|
|
2738
|
+ respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
|
|
2739
|
+ result_byte, _ := json.Marshal(respJSON)
|
|
2740
|
+ result = string(result_byte)
|
|
2741
|
+
|
|
2742
|
+ } else {
|
|
2743
|
+ result, requestLog = service.ZHGdyb2404(record.Number, record.PsnNo, miConfig.SecretKey, miConfig.OrgName, miConfig.Code, role.UserName, record.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
|
|
2744
|
+ saveLog(result, requestLog, "2404", "入院登记撤销")
|
|
2745
|
+
|
|
2746
|
+ }
|
2305
|
2747
|
|
2306
|
2748
|
var dat map[string]interface{}
|
2307
|
2749
|
if err := json.Unmarshal([]byte(result), &dat); err == nil {
|