|
@@ -21,8 +21,8 @@ import (
|
21
|
21
|
"reflect"
|
22
|
22
|
"strconv"
|
23
|
23
|
"strings"
|
24
|
|
- "time"
|
25
|
24
|
"syscall"
|
|
25
|
+ "time"
|
26
|
26
|
"unsafe"
|
27
|
27
|
)
|
28
|
28
|
|
|
@@ -80,53 +80,52 @@ func HisManagerApiRegistRouters() {
|
80
|
80
|
|
81
|
81
|
func (c *HisApiController) Sscard() {
|
82
|
82
|
r := CardInit()
|
83
|
|
- if (r==0) {
|
|
83
|
+ if r == 0 {
|
84
|
84
|
GetBaseInfo()
|
85
|
85
|
}
|
86
|
86
|
c.ServeSuccessJSON(map[string]interface{}{
|
87
|
|
- "list": "11",
|
|
87
|
+ "list": "11",
|
88
|
88
|
})
|
89
|
89
|
|
90
|
90
|
}
|
91
|
91
|
|
92
|
|
-func GetBaseInfo() (error) {
|
93
|
|
- handle := syscall.MustLoadDLL("SSCard.dll")
|
94
|
|
- ReadCardBas := handle.MustFindProc("ReadCardBas")
|
95
|
|
-
|
96
|
|
- str := make([]byte,256)
|
97
|
|
- str1 := make([]byte,256)
|
98
|
|
- r,_,ferr := ReadCardBas.Call((uintptr)(unsafe.Pointer(&str[0])),IntPtr(1024),(uintptr)(unsafe.Pointer(&str1[0])),IntPtr(1024))
|
|
92
|
+func GetBaseInfo() error {
|
|
93
|
+ handle := syscall.MustLoadDLL("SSCard.dll")
|
|
94
|
+ ReadCardBas := handle.MustFindProc("ReadCardBas")
|
|
95
|
+
|
|
96
|
+ str := make([]byte, 256)
|
|
97
|
+ str1 := make([]byte, 256)
|
|
98
|
+ r, _, ferr := ReadCardBas.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
|
99
|
99
|
if ferr != nil {
|
100
|
|
- fmt.Println("ReadCardBas 报错", ferr.Error())
|
101
|
|
- return ferr
|
|
100
|
+ fmt.Println("ReadCardBas 报错", ferr.Error())
|
|
101
|
+ return ferr
|
102
|
102
|
}
|
103
|
|
-
|
|
103
|
+
|
104
|
104
|
fmt.Println(string(str))
|
105
|
105
|
|
106
|
106
|
fmt.Println(r)
|
107
|
|
- return nil
|
|
107
|
+ return nil
|
108
|
108
|
}
|
109
|
109
|
|
110
|
|
-func CardInit() int{
|
|
110
|
+func CardInit() int {
|
111
|
111
|
DllTestDef := syscall.MustLoadDLL("SSCard.dll")
|
112
|
|
- add := DllTestDef.MustFindProc("Init")
|
113
|
|
- ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"),StrPtr("440200"))
|
114
|
|
- if err != nil {
|
115
|
|
- fmt.Println("SSCard的运算结果为:", ret)
|
116
|
|
- }
|
|
112
|
+ add := DllTestDef.MustFindProc("Init")
|
|
113
|
+ ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"), StrPtr("440200"))
|
|
114
|
+ if err != nil {
|
|
115
|
+ fmt.Println("SSCard的运算结果为:", ret)
|
|
116
|
+ }
|
117
|
117
|
result := int(ret)
|
118
|
118
|
return result
|
119
|
119
|
}
|
120
|
120
|
|
121
|
121
|
func IntPtr(n int) uintptr {
|
122
|
|
- return uintptr(n)
|
|
122
|
+ return uintptr(n)
|
123
|
123
|
}
|
124
|
|
-
|
|
124
|
+
|
125
|
125
|
func StrPtr(s string) uintptr {
|
126
|
|
- return uintptr(unsafe.Pointer(syscall.StringBytePtr(s)))
|
|
126
|
+ return uintptr(unsafe.Pointer(syscall.StringBytePtr(s)))
|
127
|
127
|
}
|
128
|
128
|
|
129
|
|
-
|
130
|
129
|
func (c *HisApiController) GetHisPatientList() {
|
131
|
130
|
types, _ := c.GetInt64("type", 0)
|
132
|
131
|
record_date := c.GetString("record_date")
|
|
@@ -645,7 +644,7 @@ func (c *HisApiController) CreateHisPatientCaseHistory() {
|
645
|
644
|
|
646
|
645
|
blood_fat := c.GetString("blood_fat")
|
647
|
646
|
bloodfatfloat, _ := strconv.ParseFloat(blood_fat, 64)
|
648
|
|
- fmt.Println("33333333", bloodfatfloat)
|
|
647
|
+ //fmt.Println("33333333", bloodfatfloat)
|
649
|
648
|
blood_sugar := c.GetString("blood_sugar")
|
650
|
649
|
bloodsugarfloat, _ := strconv.ParseFloat(blood_sugar, 64)
|
651
|
650
|
fmt.Println(bloodsugarfloat)
|