ahyb_controller.go 69KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315
  1. package ah
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "gdyb/controllers"
  6. "gdyb/enums"
  7. "gdyb/models"
  8. "gdyb/service"
  9. "gdyb/utils"
  10. "github.com/astaxie/beego"
  11. "github.com/axgle/mahonia"
  12. "github.com/gorilla/websocket"
  13. "golang.org/x/text/encoding/simplifiedchinese"
  14. "io/ioutil"
  15. "log"
  16. "net/url"
  17. "os"
  18. "regexp"
  19. "strconv"
  20. "strings"
  21. "syscall"
  22. "time"
  23. "unsafe"
  24. )
  25. type AHybController struct {
  26. controllers.BaseAuthAPIController
  27. }
  28. type Body struct {
  29. ErrMsg string `json:"err_msg"`
  30. InfRefMsgID string `json:"inf_refmsgid"`
  31. InfCode int `json:"infcode"`
  32. Output map[string]interface{} `json:"output"`
  33. }
  34. type Response struct {
  35. Body Body `json:"body"`
  36. Code int `json:"code"`
  37. CSBCode int `json:"csbCode"`
  38. Message string `json:"message"`
  39. RequestID string `json:"requestId"`
  40. State struct{} `json:"state"`
  41. }
  42. type Body3513 struct {
  43. ErrMsg string `json:"err_msg"`
  44. InfRefMsgID string `json:"inf_refmsgid"`
  45. InfCode int `json:"infcode"`
  46. Output []map[string]interface{} `json:"output"`
  47. }
  48. type Response1513 struct {
  49. Body3513 Body3513 `json:"body"`
  50. Code int `json:"code"`
  51. CSBCode int `json:"csbCode"`
  52. Message string `json:"message"`
  53. RequestID string `json:"requestId"`
  54. State struct{} `json:"state"`
  55. }
  56. func AHybRegistRouters() {
  57. beego.Router("/ahyb/1101", &AHybController{}, "get:PostOne")
  58. beego.Router("/ahyb/2201", &AHybController{}, "get:PostTwo")
  59. beego.Router("/ahyb/2202", &AHybController{}, "get:PostThree")
  60. beego.Router("/ahyb/2203", &AHybController{}, "post:PostFour")
  61. beego.Router("/ahyb/2204", &AHybController{}, "post:PostFive")
  62. beego.Router("/ahyb/2205", &AHybController{}, "get:PostSix")
  63. beego.Router("/ahyb/2206", &AHybController{}, "get:PostSeven")
  64. beego.Router("/ahyb/2207", &AHybController{}, "get:PostEight")
  65. beego.Router("/ahyb/2208", &AHybController{}, "get:PostNine")
  66. beego.Router("/ahyb/5203", &AHybController{}, "get:PostTen")
  67. beego.Router("/ahyb/5301", &AHybController{}, "get:Get5301")
  68. beego.Router("/ahyb/3201", &AHybController{}, "get:Get3201")
  69. beego.Router("/ahyb/9001", &AHybController{}, "get:Get9001")
  70. beego.Router("/ahyb/4101", &AHybController{}, "post:Get4101")
  71. beego.Router("/ahyb/readcard", &AHybController{}, "get:ReadCard")
  72. beego.Router("/ahyb/2503", &AHybController{}, "get:Get2503")
  73. beego.Router("/ahyb/2406", &AHybController{}, "post:Get2406")
  74. beego.Router("/ahyb/readcardcharge", &AHybController{}, "get:Readcardcharge")
  75. beego.Router("/ahyb/3501", &AHybController{}, "post:Get3501")
  76. beego.Router("/ahyb/3502", &AHybController{}, "post:Get3502")
  77. beego.Router("/ahyb/3503", &AHybController{}, "post:Get3503")
  78. beego.Router("/ahyb/3504", &AHybController{}, "post:Get3504")
  79. beego.Router("/ahyb/3505", &AHybController{}, "post:Get3505")
  80. beego.Router("/ahyb/3506", &AHybController{}, "post:Get3506")
  81. beego.Router("/ahyb/3507", &AHybController{}, "post:Get3507")
  82. beego.Router("/ahyb/3508", &AHybController{}, "post:Get3508")
  83. beego.Router("/ahyb/3509", &AHybController{}, "post:Get3509")
  84. beego.Router("/ahyb/3510", &AHybController{}, "post:Get3510")
  85. beego.Router("/ahyb/3511", &AHybController{}, "post:Get3511")
  86. beego.Router("/ahyb/3512", &AHybController{}, "post:Get3512")
  87. beego.Router("/ahyb/3513", &AHybController{}, "post:Get3513")
  88. beego.Router("/ahyb/2406", &AHybController{}, "post:Get2406")
  89. beego.Router("/ahyb/2406", &AHybController{}, "post:Get2406")
  90. beego.Router("/ahyb/5101", &AHybController{}, "get:Get5101")
  91. beego.Router("/ahyb/5102", &AHybController{}, "get:Get5102")
  92. beego.Router("/ahyb/02", &AHybController{}, "post:Get02")
  93. beego.Router("/ahyb/03", &AHybController{}, "post:Get03")
  94. }
  95. func (c *AHybController) Get02() {
  96. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  97. var respJSON map[string]interface{}
  98. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  99. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  100. return
  101. }
  102. result, request := service.GetAHCFYLJG012(respJSON["code"].(string), respJSON["url"].(string), respJSON["encoded"].(string), respJSON["rx_encoded"].(string), "")
  103. saveJsLog(result, request, "GetCFYLJG002", "GetCFYLJG002", "1111")
  104. }
  105. func (c *AHybController) Get03() {
  106. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  107. var respJSON map[string]interface{}
  108. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  109. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  110. return
  111. }
  112. userJSONBytes, _ := json.Marshal(respJSON["13"])
  113. var struct3501 models.CFYLJG003
  114. if err := json.Unmarshal(userJSONBytes, &struct3501); err != nil {
  115. utils.ErrorLog("解析失败:%v", err)
  116. return
  117. }
  118. result, request := service.GetAHCFYLJG013(respJSON["url"].(string), struct3501)
  119. saveJsLog(result, request, "GetCFYLJG013", "GetCFYLJG013", "1111")
  120. }
  121. func (c *AHybController) Get3501() {
  122. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  123. var respJSON map[string]interface{}
  124. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  125. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  126. return
  127. }
  128. userJSONBytes, _ := json.Marshal(respJSON["struct_3501s"])
  129. var struct3501 models.Struct3501
  130. if err := json.Unmarshal(userJSONBytes, &struct3501); err != nil {
  131. utils.ErrorLog("解析失败:%v", err)
  132. return
  133. }
  134. result, request_log := service.Jsyb3501(struct3501)
  135. saveJsLog(result, request_log, "3501", "库存盘点", struct3501.OrgName)
  136. var dat2 map[string]interface{}
  137. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  138. } else {
  139. }
  140. var dat map[string]interface{}
  141. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  142. } else {
  143. }
  144. c.ServeSuccessJSON(map[string]interface{}{
  145. "pre": dat,
  146. "request_log": dat2,
  147. })
  148. }
  149. func (c *AHybController) Get3502() {
  150. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  151. var respJSON map[string]interface{}
  152. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  153. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  154. return
  155. }
  156. userJSONBytes, _ := json.Marshal(respJSON["struct_3502s"])
  157. var struct3502s models.Struct3502
  158. if err := json.Unmarshal(userJSONBytes, &struct3502s); err != nil {
  159. utils.ErrorLog("解析失败:%v", err)
  160. return
  161. }
  162. result, request_log := service.Jsyb3502(struct3502s)
  163. saveJsLog(result, request_log, "3502", "库存变更", struct3502s.OrgName)
  164. var dat2 map[string]interface{}
  165. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  166. } else {
  167. }
  168. var dat map[string]interface{}
  169. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  170. } else {
  171. }
  172. c.ServeSuccessJSON(map[string]interface{}{
  173. "pre": dat,
  174. "request_log": dat2,
  175. })
  176. }
  177. func (c *AHybController) Get3503() {
  178. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  179. var respJSON map[string]interface{}
  180. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  181. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  182. return
  183. }
  184. userJSONBytes, _ := json.Marshal(respJSON["struct_3503s"])
  185. var struct3503 models.Struct3503
  186. if err := json.Unmarshal(userJSONBytes, &struct3503); err != nil {
  187. utils.ErrorLog("解析失败:%v", err)
  188. return
  189. }
  190. fmt.Println(struct3503)
  191. result, request_log := service.Jsyb3503(struct3503)
  192. saveJsLog(result, request_log, "3503", "库存采购", struct3503.OrgName)
  193. var dat2 map[string]interface{}
  194. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  195. } else {
  196. }
  197. var dat map[string]interface{}
  198. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  199. } else {
  200. }
  201. c.ServeSuccessJSON(map[string]interface{}{
  202. "pre": dat,
  203. "request_log": dat2,
  204. })
  205. }
  206. func (c *AHybController) Get3504() {
  207. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  208. var respJSON map[string]interface{}
  209. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  210. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  211. return
  212. }
  213. userJSONBytes, _ := json.Marshal(respJSON["struct_3504s"])
  214. var struct3504 []models.Struct3504
  215. if err := json.Unmarshal(userJSONBytes, &struct3504); err != nil {
  216. utils.ErrorLog("解析失败:%v", err)
  217. return
  218. }
  219. result, request_log := service.Jsyb3504(struct3504[0])
  220. saveJsLog(result, request_log, "3504", "库存盘点", struct3504[0].OrgName)
  221. var dat2 map[string]interface{}
  222. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  223. } else {
  224. }
  225. var dat map[string]interface{}
  226. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  227. } else {
  228. }
  229. c.ServeSuccessJSON(map[string]interface{}{
  230. "pre": dat,
  231. "request_log": dat2,
  232. })
  233. }
  234. func (c *AHybController) Get3505() {
  235. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  236. var respJSON map[string]interface{}
  237. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  238. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  239. return
  240. }
  241. userJSONBytes, _ := json.Marshal(respJSON["struct_3505s"])
  242. var struct3505 models.Struct3505
  243. if err := json.Unmarshal(userJSONBytes, &struct3505); err != nil {
  244. utils.ErrorLog("解析失败:%v", err)
  245. return
  246. }
  247. result, inputLog := service.AHyb3505(struct3505, struct3505.SecretKey, struct3505.RequestUrl)
  248. saveJsLog(result, inputLog, "3505", "销售上传", struct3505.OrgName)
  249. var response Response
  250. if err := json.Unmarshal([]byte(result), &response); err != nil {
  251. fmt.Println("Error decoding JSON:", err)
  252. return
  253. }
  254. if response.Code == 200 {
  255. var dat2 map[string]interface{}
  256. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  257. } else {
  258. }
  259. c.ServeSuccessJSON(map[string]interface{}{
  260. "pre": response.Body,
  261. "log": dat2,
  262. "status": "1",
  263. "msg": "",
  264. })
  265. } else {
  266. c.ServeSuccessJSON(map[string]interface{}{
  267. "status": "0",
  268. "msg": response.Message,
  269. })
  270. }
  271. }
  272. func (c *AHybController) Get3506() {
  273. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  274. var respJSON map[string]interface{}
  275. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  276. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  277. return
  278. }
  279. userJSONBytes, _ := json.Marshal(respJSON["struct_3506s"])
  280. var struct3506 models.Struct3506
  281. if err := json.Unmarshal(userJSONBytes, &struct3506); err != nil {
  282. utils.ErrorLog("解析失败:%v", err)
  283. return
  284. }
  285. result, request_log := service.Jsyb3506(struct3506)
  286. saveJsLog(result, request_log, "3506", "销售退库", struct3506.OrgName)
  287. var dat2 map[string]interface{}
  288. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  289. } else {
  290. }
  291. var dat map[string]interface{}
  292. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  293. } else {
  294. }
  295. c.ServeSuccessJSON(map[string]interface{}{
  296. "pre": dat,
  297. "request_log": dat2,
  298. })
  299. }
  300. func (c *AHybController) Get3507() {
  301. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  302. var respJSON map[string]interface{}
  303. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  304. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  305. return
  306. }
  307. userJSONBytes, _ := json.Marshal(respJSON["struct_3507s"])
  308. var struct3507 models.Struct3507
  309. if err := json.Unmarshal(userJSONBytes, &struct3507); err != nil {
  310. utils.ErrorLog("解析失败:%v", err)
  311. return
  312. }
  313. result, request_log := service.Jsyb3507(struct3507)
  314. saveJsLog(result, request_log, "3507", "库存盘点", struct3507.OrgName)
  315. var dat2 map[string]interface{}
  316. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  317. } else {
  318. }
  319. var dat map[string]interface{}
  320. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  321. } else {
  322. }
  323. c.ServeSuccessJSON(map[string]interface{}{
  324. "pre": dat,
  325. "request_log": dat2,
  326. })
  327. }
  328. func (c *AHybController) Get3508() {
  329. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  330. var respJSON map[string]interface{}
  331. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  332. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  333. return
  334. }
  335. userJSONBytes, _ := json.Marshal(respJSON["struct_3508s"])
  336. var struct3508 models.Struct3508
  337. if err := json.Unmarshal(userJSONBytes, &struct3508); err != nil {
  338. utils.ErrorLog("解析失败:%v", err)
  339. return
  340. }
  341. result, request_log := service.Jsyb3508(struct3508)
  342. saveJsLog(result, request_log, "3508", "库存查询", struct3508.OrgName)
  343. var dat2 map[string]interface{}
  344. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  345. } else {
  346. }
  347. var dat map[string]interface{}
  348. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  349. } else {
  350. }
  351. c.ServeSuccessJSON(map[string]interface{}{
  352. "pre": dat,
  353. "request_log": dat2,
  354. })
  355. }
  356. func (c *AHybController) Get3509() {
  357. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  358. var respJSON map[string]interface{}
  359. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  360. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  361. return
  362. }
  363. userJSONBytes, _ := json.Marshal(respJSON["struct_3509s"])
  364. var struct3509 models.Struct3509
  365. if err := json.Unmarshal(userJSONBytes, &struct3509); err != nil {
  366. utils.ErrorLog("解析失败:%v", err)
  367. return
  368. }
  369. result, request_log := service.Jsyb3509(struct3509)
  370. saveJsLog(result, request_log, "3509", "库存查询", struct3509.OrgName)
  371. var dat2 map[string]interface{}
  372. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  373. } else {
  374. }
  375. var dat map[string]interface{}
  376. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  377. } else {
  378. }
  379. c.ServeSuccessJSON(map[string]interface{}{
  380. "pre": dat,
  381. "request_log": dat2,
  382. })
  383. }
  384. func (c *AHybController) Get3510() {
  385. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  386. var respJSON map[string]interface{}
  387. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  388. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  389. return
  390. }
  391. userJSONBytes, _ := json.Marshal(respJSON["struct_3510s"])
  392. var struct3510 models.Struct3510
  393. if err := json.Unmarshal(userJSONBytes, &struct3510); err != nil {
  394. utils.ErrorLog("解析失败:%v", err)
  395. return
  396. }
  397. result, request_log := service.Jsyb3510(struct3510)
  398. saveJsLog(result, request_log, "3510", "库存盘点", struct3510.OrgName)
  399. var dat2 map[string]interface{}
  400. if err := json.Unmarshal([]byte(request_log), &dat2); err == nil {
  401. } else {
  402. }
  403. var dat map[string]interface{}
  404. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  405. } else {
  406. }
  407. c.ServeSuccessJSON(map[string]interface{}{
  408. "pre": dat,
  409. "request_log": dat2,
  410. })
  411. }
  412. func (c *AHybController) Get3511() {
  413. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  414. var respJSON map[string]interface{}
  415. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  416. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  417. return
  418. }
  419. userJSONBytes, _ := json.Marshal(respJSON["struct_3511s"])
  420. var struct3511 models.Struct3511
  421. if err := json.Unmarshal(userJSONBytes, &struct3511); err != nil {
  422. utils.ErrorLog("解析失败:%v", err)
  423. return
  424. }
  425. result, inputLog := service.AHyb3511(struct3511, struct3511.RequestUrl)
  426. saveJsLog(result, inputLog, "3511", "3511-查询", struct3511.OrgName)
  427. var response Response1513
  428. if err := json.Unmarshal([]byte(result), &response); err != nil {
  429. fmt.Println("Error decoding JSON:", err)
  430. return
  431. }
  432. if response.Code == 200 {
  433. var dat2 map[string]interface{}
  434. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  435. } else {
  436. }
  437. c.ServeSuccessJSON(map[string]interface{}{
  438. "pre": response.Body3513,
  439. "log": dat2,
  440. "status": "1",
  441. "msg": "",
  442. })
  443. } else {
  444. c.ServeSuccessJSON(map[string]interface{}{
  445. "status": "0",
  446. "msg": response.Message,
  447. })
  448. }
  449. }
  450. func (c *AHybController) Get3512() {
  451. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  452. var respJSON map[string]interface{}
  453. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  454. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  455. return
  456. }
  457. userJSONBytes, _ := json.Marshal(respJSON["struct_3512s"])
  458. var struct3512 models.Struct3512
  459. if err := json.Unmarshal(userJSONBytes, &struct3512); err != nil {
  460. utils.ErrorLog("解析失败:%v", err)
  461. return
  462. }
  463. result, inputLog := service.AHyb3512(struct3512, struct3512.RequestUrl)
  464. saveJsLog(result, inputLog, "3512", "3512-查询", struct3512.OrgName)
  465. var response Response1513
  466. if err := json.Unmarshal([]byte(result), &response); err != nil {
  467. fmt.Println("Error decoding JSON:", err)
  468. return
  469. }
  470. if response.Code == 200 {
  471. var dat2 map[string]interface{}
  472. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  473. } else {
  474. }
  475. c.ServeSuccessJSON(map[string]interface{}{
  476. "pre": response.Body3513,
  477. "log": dat2,
  478. "status": "1",
  479. "msg": "",
  480. })
  481. } else {
  482. c.ServeSuccessJSON(map[string]interface{}{
  483. "status": "0",
  484. "msg": response.Message,
  485. })
  486. }
  487. }
  488. func (c *AHybController) Get3513() {
  489. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  490. utils.ErrorLog("解析失败:%v", body)
  491. utils.ErrorLog("解析失败:%v", string(body))
  492. var respJSON map[string]interface{}
  493. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  494. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  495. return
  496. }
  497. utils.ErrorLog("解析失败:%v", "3333333")
  498. userJSONBytes, _ := json.Marshal(respJSON["struct_3513s"])
  499. var struct3513 models.Struct3513
  500. if err := json.Unmarshal(userJSONBytes, &struct3513); err != nil {
  501. utils.ErrorLog("解析失败:%v", err)
  502. return
  503. }
  504. utils.ErrorLog("解析失败:%v", "1111122222")
  505. result, inputLog := service.AHyb3513(struct3513, struct3513.RequestUrl)
  506. saveJsLog(result, inputLog, "3513", "3513-查询", struct3513.OrgName)
  507. var response Response1513
  508. if err := json.Unmarshal([]byte(result), &response); err != nil {
  509. fmt.Println("Error decoding JSON:", err)
  510. return
  511. }
  512. if response.Code == 200 {
  513. var dat2 map[string]interface{}
  514. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  515. } else {
  516. }
  517. c.ServeSuccessJSON(map[string]interface{}{
  518. "pre": response.Body3513.Output,
  519. "log": dat2,
  520. "status": "1",
  521. "msg": "",
  522. })
  523. } else {
  524. c.ServeSuccessJSON(map[string]interface{}{
  525. "status": "0",
  526. "msg": response.Message,
  527. })
  528. }
  529. }
  530. func (c *AHybController) Readcardcharge() {
  531. fixmedins_code := c.GetString("fixmedins_code")
  532. secret_key := c.GetString("secret_key")
  533. ak := c.GetString("ak")
  534. org_name := c.GetString("org_name")
  535. doctor := c.GetString("doctor")
  536. //insuplc_admdvs := c.GetString("insuplc_admdvs")
  537. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  538. url := c.GetString("url")
  539. cainfo := c.GetString("cainfo")
  540. operator_id := c.GetString("operator_id")
  541. operator := c.GetString("operator")
  542. _, pBusiCardInfo := c.GetELeCertInfoThree(fixmedins_code, operator_id, operator)
  543. fmt.Println(pBusiCardInfo)
  544. pBusiCardInfo = Remove0000(pBusiCardInfo)
  545. var ele ELeCertData
  546. err := json.Unmarshal([]byte(pBusiCardInfo), &ele)
  547. if err != nil {
  548. utils.ErrorLog("解析失败:%v", err)
  549. }
  550. token := ele.Data.EcToken
  551. fmt.Println(token)
  552. if len(token) > 0 {
  553. userName := ele.Data.UserName
  554. fmt.Println(userName)
  555. userName = Remove0000(userName)
  556. userName = DeleteExtraSpace(userName)
  557. fmt.Println(userName)
  558. enc := mahonia.NewEncoder("gbk")
  559. fmt.Println(enc.ConvertString(userName))
  560. result, _ := service.AHyb1101ForEleCert(org_name, doctor, fixmedins_code, ele.Data.InsuOrg, mdtrtarea_admvs, secret_key, url, ak, token, cainfo, ele.Data.IDNo, userName)
  561. var response Response
  562. if err := json.Unmarshal([]byte(result), &response); err != nil {
  563. fmt.Println("Error decoding JSON:", err)
  564. return
  565. }
  566. if response.Code == 200 {
  567. c.ServeSuccessJSON(map[string]interface{}{
  568. "status": "1",
  569. "card_info": "",
  570. "busi_card_info": pBusiCardInfo,
  571. "token": token,
  572. "result": response.Body,
  573. })
  574. } else {
  575. c.ServeSuccessJSON(map[string]interface{}{
  576. "status": "0",
  577. "msg": response.Message,
  578. })
  579. }
  580. } else {
  581. c.ServeSuccessJSON(map[string]interface{}{
  582. "status": "-1",
  583. })
  584. }
  585. }
  586. func (c *AHybController) Get9001() {
  587. url := c.GetString("url")
  588. org_name := c.GetString("org_name")
  589. opera_name := c.GetString("opera_name")
  590. opera_id := c.GetString("opera_id")
  591. fixmedins_code := c.GetString("fixmedins_code")
  592. insuplc_admdvs := c.GetString("insuplc_admdvs")
  593. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  594. secret_key := c.GetString("secret_key")
  595. cainfo := c.GetString("cainfo")
  596. result, inputLog := service.AHyb9001(org_name, opera_name, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, opera_id, url, cainfo, "")
  597. fmt.Println(result)
  598. fmt.Println(inputLog)
  599. saveJsLog(result, inputLog, "9001", "签到", org_name)
  600. var response Response
  601. if err := json.Unmarshal([]byte(result), &response); err != nil {
  602. fmt.Println("Error decoding JSON:", err)
  603. return
  604. }
  605. if response.Code == 200 {
  606. var dat2 map[string]interface{}
  607. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  608. } else {
  609. }
  610. c.ServeSuccessJSON(map[string]interface{}{
  611. "pre": response.Body,
  612. "log": dat2,
  613. "status": "1",
  614. "msg": "",
  615. })
  616. } else {
  617. c.ServeSuccessJSON(map[string]interface{}{
  618. "status": "0",
  619. "msg": response.Message,
  620. })
  621. }
  622. }
  623. func (c *AHybController) Get5101() {
  624. url := c.GetString("url")
  625. org_name := c.GetString("org_name")
  626. opera_name := c.GetString("opera_name")
  627. fixmedins_code := c.GetString("fixmedins_code")
  628. insuplc_admdvs := c.GetString("insuplc_admdvs")
  629. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  630. cainfo := c.GetString("cainfo")
  631. fmt.Println("Error decoding JSON:", cainfo)
  632. fmt.Println("Error decoding JSON:", org_name)
  633. fmt.Println("Error decoding JSON:", opera_name)
  634. result, inputLog := service.AHyb5101(org_name, opera_name, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, url, cainfo)
  635. saveJsLog(result, inputLog, "5101", "科室", org_name)
  636. var response Response
  637. if err := json.Unmarshal([]byte(result), &response); err != nil {
  638. fmt.Println("Error decoding JSON:", err)
  639. return
  640. }
  641. if response.Code == 200 {
  642. var dat2 map[string]interface{}
  643. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  644. } else {
  645. }
  646. c.ServeSuccessJSON(map[string]interface{}{
  647. "pre": response.Body,
  648. "log": dat2,
  649. "status": "1",
  650. "msg": "",
  651. })
  652. } else {
  653. c.ServeSuccessJSON(map[string]interface{}{
  654. "status": "0",
  655. "msg": response.Message,
  656. })
  657. }
  658. }
  659. func (c *AHybController) Get5102() {
  660. url := c.GetString("url")
  661. org_name := c.GetString("org_name")
  662. opera_name := c.GetString("opera_name")
  663. fixmedins_code := c.GetString("fixmedins_code")
  664. insuplc_admdvs := c.GetString("insuplc_admdvs")
  665. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  666. cainfo := c.GetString("cainfo")
  667. result, inputLog := service.AHyb5102(org_name, opera_name, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, url, cainfo)
  668. saveJsLog(result, inputLog, "5102", "科室", org_name)
  669. var response Response
  670. if err := json.Unmarshal([]byte(result), &response); err != nil {
  671. fmt.Println("Error decoding JSON:", err)
  672. return
  673. }
  674. if response.Code == 200 {
  675. var dat2 map[string]interface{}
  676. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  677. } else {
  678. }
  679. c.ServeSuccessJSON(map[string]interface{}{
  680. "pre": response.Body,
  681. "log": dat2,
  682. "status": "1",
  683. "msg": "",
  684. })
  685. } else {
  686. c.ServeSuccessJSON(map[string]interface{}{
  687. "status": "0",
  688. "msg": response.Message,
  689. })
  690. }
  691. }
  692. func (c *AHybController) Get5301() {
  693. psn_no := c.GetString("psn_no")
  694. org_name := c.GetString("org_name")
  695. doctor := c.GetString("doctor")
  696. fixmedins_code := c.GetString("fixmedins_code")
  697. insuplc_admdvs := c.GetString("insuplc_admdvs")
  698. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  699. secret_key := c.GetString("secret_key")
  700. url := c.GetString("url")
  701. ak := c.GetString("ak")
  702. cainfo := c.GetString("cainfo")
  703. result, inputLog := service.AHyb5301(psn_no, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, url, ak, cainfo)
  704. //saveJsLog()
  705. saveJsLog(result, inputLog, "5301", "查询备案", org_name)
  706. var response Response
  707. if err := json.Unmarshal([]byte(result), &response); err != nil {
  708. fmt.Println("Error decoding JSON:", err)
  709. return
  710. }
  711. if response.Code == 200 {
  712. var dat2 map[string]interface{}
  713. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  714. } else {
  715. }
  716. c.ServeSuccessJSON(map[string]interface{}{
  717. "pre": response.Body,
  718. "log": dat2,
  719. "status": "1",
  720. "msg": "",
  721. })
  722. } else {
  723. c.ServeSuccessJSON(map[string]interface{}{
  724. "status": "0",
  725. "msg": response.Message,
  726. })
  727. }
  728. }
  729. func (c *AHybController) PostOne() {
  730. certNo := c.GetString("cert_no")
  731. org_name := c.GetString("org_name")
  732. doctor := c.GetString("doctor")
  733. fixmedins_code := c.GetString("fixmedins_code")
  734. insuplc_admdvs := c.GetString("insuplc_admdvs")
  735. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  736. id_card_type, _ := c.GetInt64("id_card_type")
  737. card_sn := c.GetString("card_sn")
  738. certificates := c.GetString("certificates")
  739. url := c.GetString("url")
  740. token := c.GetString("token")
  741. name := c.GetString("name")
  742. result, inputLog := service.AHyb1101(certNo, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, id_card_type, card_sn, certificates, url, name, token)
  743. fmt.Println(result)
  744. fmt.Println(inputLog)
  745. saveJsLog(result, inputLog, "1101", "查询个人信息", org_name)
  746. var response Response
  747. if err := json.Unmarshal([]byte(result), &response); err != nil {
  748. fmt.Println("Error decoding JSON:", err)
  749. return
  750. }
  751. if response.Code == 200 {
  752. var dat2 map[string]interface{}
  753. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  754. } else {
  755. }
  756. c.ServeSuccessJSON(map[string]interface{}{
  757. "pre": response.Body,
  758. "log": dat2,
  759. "status": "1",
  760. "msg": "",
  761. })
  762. } else {
  763. c.ServeSuccessJSON(map[string]interface{}{
  764. "status": "0",
  765. "msg": response.Message,
  766. })
  767. }
  768. }
  769. func (c *AHybController) PostTwo() {
  770. psnNo := c.GetString("psn_no")
  771. insutype := c.GetString("insutype")
  772. certNo := c.GetString("cert_no")
  773. org_name := c.GetString("org_name")
  774. opera := c.GetString("opera")
  775. ipt_otp_no := c.GetString("ipt_otp_no")
  776. dept := c.GetString("dept")
  777. verify_number := c.GetString("verify_number")
  778. fixmedins_code := c.GetString("fixmedins_code")
  779. dept_code := c.GetString("dept_code")
  780. doctor_id := c.GetString("doctor_id")
  781. insuplc_admdvs := c.GetString("insuplc_admdvs")
  782. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  783. secret_key := c.GetString("secret_key")
  784. id_card_type, _ := c.GetInt64("id_card_type")
  785. url := c.GetString("url")
  786. ak := c.GetString("ak")
  787. doctor_name := c.GetString("doctor_name")
  788. cainfo := c.GetString("cainfo")
  789. card_sn := c.GetString("card_sn")
  790. result, inputLog := service.AHyb2201(psnNo, insutype, certNo, org_name, opera, ipt_otp_no, dept, fixmedins_code, dept_code, doctor_id, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type, doctor_name, url, ak, verify_number, cainfo, card_sn)
  791. var response Response
  792. if err := json.Unmarshal([]byte(result), &response); err != nil {
  793. fmt.Println("Error decoding JSON:", err)
  794. return
  795. }
  796. if response.Code == 200 {
  797. var dat2 map[string]interface{}
  798. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  799. } else {
  800. }
  801. c.ServeSuccessJSON(map[string]interface{}{
  802. "pre": response.Body,
  803. "log": dat2,
  804. "status": "1",
  805. "msg": "",
  806. })
  807. } else {
  808. c.ServeSuccessJSON(map[string]interface{}{
  809. "status": "0",
  810. "msg": response.Message,
  811. })
  812. }
  813. }
  814. func (c *AHybController) PostThree() {
  815. psnNo := c.GetString("psn_no")
  816. mdtrtId := c.GetString("mdtrt_id")
  817. iptOtpNo := c.GetString("ipt_otp_no")
  818. org_name := c.GetString("org_name")
  819. doctor := c.GetString("doctor")
  820. insuplc_admdvs := c.GetString("insuplc_admdvs")
  821. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  822. secret_key := c.GetString("secret_key")
  823. fixmedins_code := c.GetString("fixmedins_code")
  824. url := c.GetString("url")
  825. ak := c.GetString("ak")
  826. cainfo := c.GetString("cainfo")
  827. result, inputLog := service.AHyb2202(psnNo, mdtrtId, iptOtpNo, org_name, doctor, insuplc_admdvs, mdtrtarea_admvs, secret_key, fixmedins_code, url, ak, cainfo)
  828. saveJsLog(result, inputLog, "2202", "退号", org_name)
  829. var response Response
  830. if err := json.Unmarshal([]byte(result), &response); err != nil {
  831. fmt.Println("Error decoding JSON:", err)
  832. return
  833. }
  834. if response.Code == 200 {
  835. var dat2 map[string]interface{}
  836. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  837. } else {
  838. }
  839. c.ServeSuccessJSON(map[string]interface{}{
  840. "pre": response.Body,
  841. "log": dat2,
  842. "status": "1",
  843. "msg": "",
  844. })
  845. } else {
  846. c.ServeSuccessJSON(map[string]interface{}{
  847. "status": "0",
  848. "msg": response.Message,
  849. })
  850. }
  851. }
  852. func (c *AHybController) PostFour() {
  853. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  854. var respJSON map[string]interface{}
  855. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  856. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  857. return
  858. }
  859. userJSONBytes, _ := json.Marshal(respJSON["config"])
  860. var config []*models.HisXtDiagnoseConfig
  861. if err := json.Unmarshal(userJSONBytes, &config); err != nil {
  862. utils.ErrorLog("解析失败:%v", err)
  863. return
  864. }
  865. fmt.Println(respJSON["psn_no"].(string))
  866. fmt.Println(respJSON["mdtrt_id"].(string))
  867. psnNo := respJSON["psn_no"].(string)
  868. mdtrtId := respJSON["mdtrt_id"].(string)
  869. operator := respJSON["operator"].(string)
  870. department := respJSON["department"].(string)
  871. org_name := respJSON["org_name"].(string)
  872. med_type := respJSON["med_type"].(string)
  873. fixmedins_code := respJSON["fixmedins_code"].(string)
  874. sick_code := respJSON["sick_code"].(string)
  875. sick_name := respJSON["sick_name"].(string)
  876. insuplc_admdvs := respJSON["insuplc_admdvs"].(string)
  877. mdtrtarea_admvs := respJSON["mdtrtarea_admvs"].(string)
  878. url := respJSON["url"].(string)
  879. begin_time := respJSON["begin_time"].(string)
  880. cainfo := respJSON["cainfo"].(string)
  881. doctor_name := respJSON["doctor_name"].(string)
  882. doctor_number := respJSON["doctor_number"].(string)
  883. //cainfo := c.GetString("cainfo")
  884. result, inputLog := service.AHyb2203(psnNo, mdtrtId, operator, department, org_name, med_type, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, sick_code, sick_name, config, url, begin_time, cainfo, doctor_name, doctor_number)
  885. saveJsLog(result, inputLog, "2203", "上传就诊信息", org_name)
  886. var response Response
  887. if err := json.Unmarshal([]byte(result), &response); err != nil {
  888. fmt.Println("Error decoding JSON:", err)
  889. return
  890. }
  891. if response.Code == 200 {
  892. var dat2 map[string]interface{}
  893. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  894. } else {
  895. }
  896. c.ServeSuccessJSON(map[string]interface{}{
  897. "pre": response.Body,
  898. "log": dat2,
  899. "status": "1",
  900. "msg": "",
  901. })
  902. } else {
  903. c.ServeSuccessJSON(map[string]interface{}{
  904. "status": "0",
  905. "msg": response.Message,
  906. })
  907. }
  908. }
  909. func (c *AHybController) Get2406() {
  910. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  911. var respJSON map[string]interface{}
  912. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  913. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  914. return
  915. }
  916. psnNo := respJSON["psn_no"].(string)
  917. mdtrtId := respJSON["mdtrt_id"].(string)
  918. operator := respJSON["operator"].(string)
  919. cert_no := respJSON["cert_no"].(string)
  920. org_name := respJSON["org_name"].(string)
  921. psn_name := respJSON["psn_name"].(string)
  922. ipt_otp_no := respJSON["ipt_otp_no"].(string)
  923. ipt_psn_sp_flag_type := respJSON["ipt_psn_sp_flag_type"].(string)
  924. ipt_psn_sp_flag := respJSON["ipt_psn_sp_flag"].(string)
  925. fixmedins_code := respJSON["fixmedins_code"].(string)
  926. insuplc_admdvs := respJSON["insuplc_admdvs"].(string)
  927. mdtrtarea_admvs := respJSON["mdtrtarea_admvs"].(string)
  928. url := respJSON["url"].(string)
  929. result, inputLog := service.AHyb2406(psnNo, mdtrtId, cert_no, psn_name, operator, ipt_otp_no, ipt_psn_sp_flag_type, ipt_psn_sp_flag, org_name, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, url)
  930. saveJsLog(result, inputLog, "2406", "上传2406信息", org_name)
  931. var response Response
  932. if err := json.Unmarshal([]byte(result), &response); err != nil {
  933. fmt.Println("Error decoding JSON:", err)
  934. return
  935. }
  936. if response.Code == 200 {
  937. var dat2 map[string]interface{}
  938. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  939. } else {
  940. }
  941. c.ServeSuccessJSON(map[string]interface{}{
  942. "pre": response.Body,
  943. "log": dat2,
  944. "status": "1",
  945. "msg": "",
  946. })
  947. } else {
  948. c.ServeSuccessJSON(map[string]interface{}{
  949. "status": "0",
  950. "msg": response.Message,
  951. })
  952. }
  953. }
  954. type All struct {
  955. HisPrescription HisPrescription
  956. mdtrt_id string
  957. psn_no string
  958. }
  959. type HisPrescription struct {
  960. ID int64 `gorm:"column:id" json:"id" form:"id"`
  961. UserOrgId int64 `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
  962. RecordDate int64 `gorm:"column:record_date" json:"record_date" form:"record_date"`
  963. PatientId int64 `gorm:"column:patient_id" json:"patient_id" form:"patient_id"`
  964. HisPatientId int64 `gorm:"column:his_patient_id" json:"his_patient_id" form:"his_patient_id"`
  965. Status int64 `gorm:"column:status" json:"status" form:"status"`
  966. Ctime int64 `gorm:"column:ctime" json:"ctime" form:"ctime"`
  967. Mtime int64 `gorm:"column:mtime" json:"mtime" form:"mtime"`
  968. Number string `gorm:"column:number" json:"number" form:"number"`
  969. Type int64 `gorm:"column:type" json:"type" form:"type"`
  970. Doctor int64 `gorm:"column:doctor" json:"doctor" form:"doctor"`
  971. Creator int64 `gorm:"column:creator" json:"creator" form:"creator"`
  972. Modifier int64 `gorm:"column:modifier" json:"modifier" form:"modifier"`
  973. HisDoctorAdviceInfo []*models.HisDoctorAdviceInfo `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"advices"`
  974. HisPrescriptionProject []*models.HisPrescriptionProject `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"project"`
  975. }
  976. func (c *AHybController) PostFive() {
  977. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  978. var respJSON map[string]interface{}
  979. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  980. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  981. return
  982. }
  983. userJSONBytes, _ := json.Marshal(respJSON["pre"])
  984. var hp []*models.HisPrescription
  985. if err := json.Unmarshal(userJSONBytes, &hp); err != nil {
  986. utils.ErrorLog("解析失败:%v", err)
  987. return
  988. }
  989. //fmt.Println("2203A的time_stamp=" + respJSON["time_stamp"].(string))
  990. result, inputLog := service.AHyb2204(respJSON["psn_no"].(string), respJSON["mdtrt_id"].(string), hp, respJSON["chrg_bchno"].(string), respJSON["org_name"].(string),
  991. respJSON["doctor"].(string), respJSON["dept"].(string), respJSON["fixmedins_code"].(string), respJSON["dept_code"].(string), respJSON["doctor_id"].(string), respJSON["insuplc_admdvs"].(string), respJSON["mdtrtarea_admvs"].(string), respJSON["secret_key"].(string), respJSON["balance_accounts_type"].(string), respJSON["diag_code"].(string), respJSON["url"].(string), respJSON["ak"].(string), respJSON["new_doctor_name"].(string), "", respJSON["cainfo"].(string), respJSON["opter"].(string))
  992. saveJsLog(result, inputLog, "2204", "上传明细", respJSON["org_name"].(string))
  993. var response Response
  994. if err := json.Unmarshal([]byte(result), &response); err != nil {
  995. fmt.Println("Error decoding JSON:", err)
  996. return
  997. }
  998. if response.Code == 200 {
  999. var dat2 map[string]interface{}
  1000. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1001. } else {
  1002. }
  1003. c.ServeSuccessJSON(map[string]interface{}{
  1004. "pre": response.Body,
  1005. "log": dat2,
  1006. "status": "1",
  1007. "msg": "",
  1008. })
  1009. } else {
  1010. c.ServeSuccessJSON(map[string]interface{}{
  1011. "status": "0",
  1012. "msg": response.Message,
  1013. })
  1014. }
  1015. }
  1016. func (c *AHybController) PostSix() {
  1017. psnNo := c.GetString("psn_no")
  1018. mdtrtId := c.GetString("mdtrt_id")
  1019. chrgBchno := c.GetString("chrg_bchno")
  1020. org_name := c.GetString("org_name")
  1021. doctor := c.GetString("doctor")
  1022. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1023. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1024. secret_key := c.GetString("secret_key")
  1025. fixmedins_code := c.GetString("fixmedins_code")
  1026. url := c.GetString("url")
  1027. ak := c.GetString("ak")
  1028. cainfo := c.GetString("cainfo")
  1029. result, inputLog := service.AHyb2205(psnNo, mdtrtId, chrgBchno, org_name, doctor, insuplc_admdvs, mdtrtarea_admvs, secret_key, fixmedins_code, url, ak, cainfo)
  1030. fmt.Println(inputLog)
  1031. saveJsLog(result, inputLog, "2205", "撤销明细", org_name)
  1032. var response Response
  1033. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1034. fmt.Println("Error decoding JSON:", err)
  1035. return
  1036. }
  1037. if response.Code == 200 {
  1038. var dat2 map[string]interface{}
  1039. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1040. } else {
  1041. }
  1042. c.ServeSuccessJSON(map[string]interface{}{
  1043. "pre": response.Body,
  1044. "log": dat2,
  1045. "status": "1",
  1046. "msg": "",
  1047. })
  1048. } else {
  1049. c.ServeSuccessJSON(map[string]interface{}{
  1050. "status": "0",
  1051. "msg": response.Message,
  1052. })
  1053. }
  1054. }
  1055. func (c *AHybController) PostSeven() {
  1056. psnNo := c.GetString("psn_no")
  1057. mdtrtId := c.GetString("mdtrt_id")
  1058. chrgBchno := c.GetString("chrg_bchno")
  1059. certNo := c.GetString("cert_no")
  1060. insutype := c.GetString("insutype")
  1061. total := c.GetString("total")
  1062. org_name := c.GetString("org_name")
  1063. doctor := c.GetString("doctor")
  1064. fixmedins_code := c.GetString("fixmedins_code")
  1065. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1066. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1067. secret_key := c.GetString("secret_key")
  1068. med_type := c.GetString("med_type")
  1069. id_card_type, _ := c.GetInt64("id_card_type")
  1070. certificates, _ := c.GetInt64("certificates")
  1071. verify_number := c.GetString("verify_number")
  1072. cainfo := c.GetString("cainfo")
  1073. mdtrt_grp_type := c.GetString("mdtrt_grp_type")
  1074. url := c.GetString("url")
  1075. ak := c.GetString("ak")
  1076. var result string
  1077. var inputLog string
  1078. result, inputLog = service.AHyb2206(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, med_type, id_card_type, certificates, url, ak, verify_number, cainfo, mdtrt_grp_type)
  1079. saveJsLog(result, inputLog, "2206", "预结算", org_name)
  1080. var response Response
  1081. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1082. fmt.Println("Error decoding JSON:", err)
  1083. return
  1084. }
  1085. if response.Code == 200 {
  1086. var dat2 map[string]interface{}
  1087. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1088. } else {
  1089. }
  1090. c.ServeSuccessJSON(map[string]interface{}{
  1091. "pre": response.Body,
  1092. "log": dat2,
  1093. "status": "1",
  1094. "msg": "",
  1095. })
  1096. } else {
  1097. c.ServeSuccessJSON(map[string]interface{}{
  1098. "status": "0",
  1099. "msg": response.Message,
  1100. })
  1101. }
  1102. }
  1103. func (c *AHybController) PostEight() {
  1104. psnNo := c.GetString("psn_no")
  1105. mdtrtId := c.GetString("mdtrt_id")
  1106. chrgBchno := c.GetString("chrg_bchno")
  1107. certNo := c.GetString("cert_no")
  1108. insutype := c.GetString("insutype")
  1109. total := c.GetString("total")
  1110. org_name := c.GetString("org_name")
  1111. doctor := c.GetString("doctor")
  1112. fixmedins_code := c.GetString("fixmedins_code")
  1113. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1114. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1115. secret_key := c.GetString("secret_key")
  1116. med_type := c.GetString("med_type")
  1117. id_card_type, _ := c.GetInt64("id_card_type")
  1118. acct_used_flag := c.GetString("acct_used_flag")
  1119. url := c.GetString("url")
  1120. ak := c.GetString("ak")
  1121. verify_number := c.GetString("verify_number")
  1122. cainfo := c.GetString("cainfo")
  1123. mdtrt_grp_type := c.GetString("mdtrt_grp_type")
  1124. pack_num := c.GetString("pack_num")
  1125. good_pack_num := c.GetString("good_pack_num")
  1126. var result string
  1127. var inputLog string
  1128. result, inputLog = service.AHyb2207(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, med_type, id_card_type, acct_used_flag, url, ak, verify_number, cainfo, mdtrt_grp_type, pack_num, good_pack_num)
  1129. saveJsLog(result, inputLog, "2207", "结算", org_name)
  1130. var response Response
  1131. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1132. fmt.Println("Error decoding JSON:", err)
  1133. return
  1134. }
  1135. if response.Code == 200 {
  1136. var dat2 map[string]interface{}
  1137. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1138. } else {
  1139. }
  1140. c.ServeSuccessJSON(map[string]interface{}{
  1141. "pre": response.Body,
  1142. "log": dat2,
  1143. "status": "1",
  1144. "msg": "",
  1145. })
  1146. } else {
  1147. c.ServeSuccessJSON(map[string]interface{}{
  1148. "status": "0",
  1149. "msg": response.Message,
  1150. })
  1151. }
  1152. }
  1153. func (c *AHybController) PostNine() {
  1154. psnNo := c.GetString("psn_no")
  1155. mdtrtId := c.GetString("mdtrt_id")
  1156. setlId := c.GetString("setl_id")
  1157. org_name := c.GetString("org_name")
  1158. doctor := c.GetString("doctor")
  1159. secret_key := c.GetString("secret_key")
  1160. fixmedins_code := c.GetString("fixmedins_code")
  1161. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1162. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1163. url := c.GetString("url")
  1164. ak := c.GetString("ak")
  1165. cainfo := c.GetString("cainfo")
  1166. result, inputLog := service.AHyb2208(psnNo, mdtrtId, setlId, org_name, doctor, secret_key, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, url, ak, cainfo)
  1167. saveJsLog(result, inputLog, "2208", "退费", org_name)
  1168. var response Response
  1169. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1170. fmt.Println("Error decoding JSON:", err)
  1171. return
  1172. }
  1173. if response.Code == 200 {
  1174. var dat2 map[string]interface{}
  1175. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1176. } else {
  1177. }
  1178. c.ServeSuccessJSON(map[string]interface{}{
  1179. "pre": response.Body,
  1180. "log": dat2,
  1181. "status": "1",
  1182. "msg": "",
  1183. })
  1184. } else {
  1185. c.ServeSuccessJSON(map[string]interface{}{
  1186. "status": "0",
  1187. "msg": response.Message,
  1188. })
  1189. }
  1190. }
  1191. func (c *AHybController) PostTen() {
  1192. psnNo := c.GetString("psn_no")
  1193. mdtrtId := c.GetString("mdtrt_id")
  1194. setlId := c.GetString("setl_id")
  1195. org_name := c.GetString("org_name")
  1196. doctor := c.GetString("doctor")
  1197. secret_key := c.GetString("secret_key")
  1198. fixmedins_code := c.GetString("fixmedins_code")
  1199. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1200. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1201. url := c.GetString("url")
  1202. ak := c.GetString("ak")
  1203. cainfo := c.GetString("cainfo")
  1204. baseParams := models.BaseParams{
  1205. SecretKey: secret_key,
  1206. FixmedinsCode: fixmedins_code,
  1207. InsuplcAdmdvs: insuplc_admdvs,
  1208. MdtrtareaAdmvs: mdtrtarea_admvs,
  1209. OrgName: org_name,
  1210. Doctor: doctor,
  1211. RequestUrl: url,
  1212. AccessKey: ak,
  1213. Cainfo: cainfo,
  1214. }
  1215. businessParams := models.BusinessParams{
  1216. PsnNo: psnNo,
  1217. MdtrtId: mdtrtId,
  1218. SetlId: setlId,
  1219. }
  1220. result, inputLog := service.AHyb5203(baseParams, businessParams)
  1221. saveJsLog(result, inputLog, "5203", "结算单", org_name)
  1222. var response Response
  1223. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1224. fmt.Println("Error decoding JSON:", err)
  1225. return
  1226. }
  1227. if response.Code == 200 {
  1228. var dat2 map[string]interface{}
  1229. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1230. } else {
  1231. }
  1232. c.ServeSuccessJSON(map[string]interface{}{
  1233. "pre": response.Body,
  1234. "log": dat2,
  1235. "status": "1",
  1236. "msg": "",
  1237. })
  1238. } else {
  1239. c.ServeSuccessJSON(map[string]interface{}{
  1240. "status": "0",
  1241. "msg": response.Message,
  1242. })
  1243. }
  1244. }
  1245. func (c *AHybController) Get2503() {
  1246. psnNo := c.GetString("psn_no")
  1247. insutype := c.GetString("insutype")
  1248. sick_code := c.GetString("sick_code")
  1249. sick_name := c.GetString("sick_name")
  1250. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1251. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1252. secret_key := c.GetString("secret_key")
  1253. access_key := c.GetString("access_key")
  1254. fixmedins_code := c.GetString("fixmedins_code")
  1255. org_name := c.GetString("org_name")
  1256. check_time := c.GetString("check_time")
  1257. doctor_id := c.GetString("doctor_id")
  1258. doctor := c.GetString("doctor")
  1259. start_time := c.GetString("start_time")
  1260. end_time := c.GetString("end_time")
  1261. url := c.GetString("url")
  1262. cainfo := c.GetString("cainfo")
  1263. service.AHyb2503(psnNo, insutype, org_name, doctor, fixmedins_code, doctor_id, insuplc_admdvs, mdtrtarea_admvs, secret_key, sick_name, sick_code, start_time, end_time, check_time, url, access_key, cainfo)
  1264. }
  1265. func (c *AHybController) Get3201() {
  1266. insutype := c.GetString("insutype")
  1267. clrType := c.GetString("clr_type")
  1268. setlOptins := c.GetString("setl_optins")
  1269. stmtBegndate := c.GetString("stmt_begndate")
  1270. stmtEnddate := c.GetString("stm_enddate")
  1271. medfeeSumamt, _ := c.GetFloat("medfee_sumamt", 0)
  1272. fundPaySumamt, _ := c.GetFloat("fund_pay_sumamt", 0)
  1273. acctPay, _ := c.GetFloat("acct_pay", 0)
  1274. fixmedinsSetlCnt, _ := c.GetInt64("fixmedins_setl_cnt", 0)
  1275. fixmedins_code := c.GetString("fixmedins_code")
  1276. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1277. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1278. secret_key := c.GetString("secret_key")
  1279. org_name := c.GetString("org_name")
  1280. doctor := c.GetString("doctor")
  1281. url := c.GetString("url")
  1282. ak := c.GetString("ak")
  1283. cainfo := c.GetString("cainfo")
  1284. result, inputLog := service.AHyb3201(fixmedinsSetlCnt, acctPay, fundPaySumamt, medfeeSumamt, stmtBegndate, stmtEnddate, setlOptins, clrType, insutype, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, url, ak, secret_key, cainfo)
  1285. saveJsLog(result, inputLog, "3201", "对总账", org_name)
  1286. var response Response
  1287. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1288. fmt.Println("Error decoding JSON:", err)
  1289. return
  1290. }
  1291. if response.Code == 200 {
  1292. var dat2 map[string]interface{}
  1293. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1294. } else {
  1295. }
  1296. c.ServeSuccessJSON(map[string]interface{}{
  1297. "pre": response.Body,
  1298. "log": dat2,
  1299. "status": "1",
  1300. "msg": "",
  1301. })
  1302. } else {
  1303. c.ServeSuccessJSON(map[string]interface{}{
  1304. "status": "0",
  1305. "msg": response.Message,
  1306. })
  1307. }
  1308. }
  1309. type ELeData struct {
  1310. Data struct {
  1311. SiNo string `json:"si_no"`
  1312. SiCardNo string `json:"si_card_no"`
  1313. SiCardIssueArea string `json:"si_card_issue_area"`
  1314. Name string `json:"name"`
  1315. Gender string `json:"gender"`
  1316. IdType string `json:"id_type"`
  1317. IdNo string `json:"id_no"`
  1318. EcCardToken string `json:"ecCardToken"`
  1319. } `json:"data"`
  1320. Code int `json:"code"`
  1321. Message string `json:"message"`
  1322. }
  1323. type ELeCertData struct {
  1324. Data struct {
  1325. Extra string `json:"extra"`
  1326. IDNo string `json:"idNo"`
  1327. IDType string `json:"idType"`
  1328. EcToken string `json:"ecToken"`
  1329. InsuOrg string `json:"insuOrg"`
  1330. UserName string `json:"userName"`
  1331. EcIndexNo string `json:"ecIndexNo"`
  1332. Gender string `json:"gender"`
  1333. Birthday string `json:"birthday"`
  1334. Nationality string `json:"nationality"`
  1335. Email string `json:"email"`
  1336. } `json:"data"`
  1337. Code int `json:"code"`
  1338. Message string `json:"message"`
  1339. }
  1340. func (c *AHybController) ReadCard() {
  1341. fixmedins_code := c.GetString("fixmedins_code")
  1342. secret_key := c.GetString("secret_key")
  1343. ak := c.GetString("ak")
  1344. org_name := c.GetString("org_name")
  1345. doctor := c.GetString("doctor")
  1346. insuplc_admdvs := c.GetString("insuplc_admdvs")
  1347. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  1348. url := c.GetString("url")
  1349. cainfo := c.GetString("cainfo")
  1350. id_card_type := c.GetString("id_card_type")
  1351. operator_id := c.GetString("operator_id")
  1352. operator := c.GetString("operator")
  1353. //result, request := service.AHyb9001(org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, 1, url, cainfo, ak)
  1354. //fmt.Println(request)
  1355. //fmt.Println(result)
  1356. //c.TestGetBasBaseInit(fixmedins_code, secret_key, ak)
  1357. switch id_card_type {
  1358. case "1":
  1359. pCardInfo := c.GetBasBaseInfo()
  1360. pCardInfo = Remove0000(pCardInfo)
  1361. fmt.Println(":", ConvertToString(pCardInfo, "gbk", "utf-8"))
  1362. fmt.Println(pCardInfo)
  1363. bas := strings.Split(pCardInfo, "|")
  1364. basNumber := bas[2]
  1365. id_card_no := bas[1]
  1366. card_sn := bas[3]
  1367. id_card_type_int, _ := strconv.ParseInt(id_card_type, 10, 64)
  1368. if len(pCardInfo) > 0 {
  1369. result, _ := service.AHyb1101A(basNumber, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type_int, card_sn, "1", url, ak, id_card_no, cainfo)
  1370. var response Response
  1371. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1372. fmt.Println("Error decoding JSON:", err)
  1373. return
  1374. }
  1375. if response.Code == 200 {
  1376. c.ServeSuccessJSON(map[string]interface{}{
  1377. "status": "0",
  1378. "card_info": pCardInfo,
  1379. "result": response.Body,
  1380. "type": "1",
  1381. })
  1382. } else {
  1383. c.ServeSuccessJSON(map[string]interface{}{
  1384. "status": "0",
  1385. "msg": response.Message,
  1386. })
  1387. }
  1388. } else {
  1389. c.ServeSuccessJSON(map[string]interface{}{
  1390. "status": "-1",
  1391. })
  1392. }
  1393. break
  1394. case "3": //电子社保卡
  1395. _, pBusiCardInfo := c.GetELeInfo(fixmedins_code, operator_id, operator)
  1396. //fmt.Println(pCardInfo)
  1397. fmt.Println(pBusiCardInfo)
  1398. pBusiCardInfo = Remove0000(pBusiCardInfo)
  1399. //pCardInfo = Remove0000(pCardInfo)
  1400. var ele ELeData
  1401. err := json.Unmarshal([]byte(pBusiCardInfo), &ele)
  1402. if err != nil {
  1403. utils.ErrorLog("解析失败:%v", err)
  1404. }
  1405. token := ele.Data.EcCardToken
  1406. if len(token) > 0 {
  1407. result, _ := service.AHyb1101B(org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, url, ak, token, cainfo, ele.Data.IdNo)
  1408. var dat map[string]interface{}
  1409. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1410. fmt.Println(dat)
  1411. } else {
  1412. fmt.Println(err)
  1413. }
  1414. c.ServeSuccessJSON(map[string]interface{}{
  1415. "status": "0",
  1416. //"card_info": pCardInfo,
  1417. "busi_card_info": pBusiCardInfo,
  1418. "token": token,
  1419. "result": dat,
  1420. "type": "2",
  1421. })
  1422. } else {
  1423. c.ServeSuccessJSON(map[string]interface{}{
  1424. "status": "-1",
  1425. })
  1426. }
  1427. break
  1428. case "4": //电子凭证
  1429. fmt.Println(operator_id)
  1430. fmt.Println(operator)
  1431. _, pBusiCardInfo := c.GetELeCertInfoTwo(fixmedins_code, operator_id, operator)
  1432. fmt.Println(pBusiCardInfo)
  1433. pBusiCardInfo = Remove0000(pBusiCardInfo)
  1434. var ele ELeCertData
  1435. err := json.Unmarshal([]byte(pBusiCardInfo), &ele)
  1436. if err != nil {
  1437. utils.ErrorLog("解析失败:%v", err)
  1438. }
  1439. token := ele.Data.EcToken
  1440. fmt.Println(token)
  1441. if len(token) > 0 {
  1442. userName := ele.Data.UserName
  1443. fmt.Println(userName)
  1444. userName = Remove0000(userName)
  1445. userName = DeleteExtraSpace(userName)
  1446. fmt.Println(userName)
  1447. enc := mahonia.NewEncoder("gbk")
  1448. fmt.Println(enc.ConvertString(userName))
  1449. result, _ := service.AHyb1101ForEleCert(org_name, doctor, fixmedins_code, ele.Data.InsuOrg, mdtrtarea_admvs, secret_key, url, ak, token, cainfo, ele.Data.IDNo, userName)
  1450. var response Response
  1451. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1452. fmt.Println("Error decoding JSON:", err)
  1453. return
  1454. }
  1455. if response.Code == 200 {
  1456. c.ServeSuccessJSON(map[string]interface{}{
  1457. "status": "1",
  1458. "card_info": "",
  1459. "busi_card_info": pBusiCardInfo,
  1460. "token": token,
  1461. "result": response.Body,
  1462. })
  1463. } else {
  1464. c.ServeSuccessJSON(map[string]interface{}{
  1465. "status": "0",
  1466. "msg": response.Message,
  1467. })
  1468. }
  1469. } else {
  1470. c.ServeSuccessJSON(map[string]interface{}{
  1471. "status": "-1",
  1472. })
  1473. }
  1474. break
  1475. }
  1476. }
  1477. func (c *AHybController) TestGetBasBaseInit(code string, secret_key string, ak string) {
  1478. DllDef := syscall.MustLoadDLL("HeaSecReadInfo.dll")
  1479. Iinit := DllDef.MustFindProc("Init")
  1480. //miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  1481. str := make([]byte, 2048)
  1482. inputData := make(map[string]interface{})
  1483. inputData["IP"] = "10.58.65.240"
  1484. inputData["PORT"] = "8086"
  1485. inputData["TIMEOUT"] = "180"
  1486. inputData["LOG_PATH"] = "C:\\log\\"
  1487. //inputData["EC_URL"] = "http://10.58.33.207:10086/localcfc/api/hsecfc/localQrCodeQuery"
  1488. inputData["EC_URL"] = "http://10.58.33.207:10086/localcfc/api/hsecfc/localQrCodeQuery"
  1489. inputData["CARD_PASSTYPE"] = "1"
  1490. inputData["API_NAME"] = "hssServives"
  1491. inputData["API_VERSION"] = "1.0.0"
  1492. inputData["ACCESS_KEY"] = ak
  1493. inputData["SECRETKEY"] = secret_key
  1494. inputData["ORG_ID"] = code
  1495. inputData["EXT"] = ""
  1496. bytesData, _ := json.Marshal(inputData)
  1497. fmt.Println(inputData)
  1498. fmt.Println(bytesData)
  1499. ret, _, err := Iinit.Call((uintptr)(unsafe.Pointer(&bytesData[0])), (uintptr)(unsafe.Pointer(&str[0])))
  1500. if ret != 0 {
  1501. fmt.Println("SSCard的报错原因:", err)
  1502. fmt.Println("SSCard的运算结果为:", ret)
  1503. fmt.Println("SSCard的返回结果为:", string(str))
  1504. c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeReadCardException)
  1505. return
  1506. }
  1507. fmt.Println("SSCard的返回结果为:", string(str))
  1508. result := int(ret)
  1509. fmt.Println("SSCard的运算结果为1:", result)
  1510. //initFlag = 1
  1511. return
  1512. }
  1513. func (c *AHybController) GetBasBaseInfo() string {
  1514. DllDef := syscall.MustLoadDLL("SSCardDriver.dll")
  1515. readCard := DllDef.MustFindProc("iReadCardBas")
  1516. fmt.Println(readCard)
  1517. fmt.Println("!!!!!")
  1518. pCardInfo := make([]byte, 2048)
  1519. ret2, _, _ := readCard.Call(uintptr(3), (uintptr)(unsafe.Pointer(&pCardInfo[0])))
  1520. fmt.Println(ret2)
  1521. fmt.Println(DeleteExtraSpace(string(pCardInfo)))
  1522. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(pCardInfo)), "gbk", "utf-8"))
  1523. if ret2 != 0 {
  1524. return ""
  1525. }
  1526. return DeleteExtraSpace(string(pCardInfo))
  1527. }
  1528. func (c *AHybController) GetELeInfo(code string, operator_id string, operator_name string) (string, string) {
  1529. DllDef := syscall.MustLoadDLL("HeaSecReadInfo.dll")
  1530. readCard := DllDef.MustFindProc("EcCardQuery")
  1531. fmt.Println(readCard)
  1532. fmt.Println("!!!!!")
  1533. //pCardInfo := make([]byte, 8192)
  1534. pBusiCardInfo := make([]byte, 8192)
  1535. //data := make(map[string]interface{})
  1536. //pData := make(map[string]interface{})
  1537. //inputData := make(map[string]interface{})
  1538. //inputData["orgId"] = code
  1539. //inputData["businessType"] = "01101"
  1540. //inputData["operatorId"] = operator_id
  1541. //inputData["operatorName"] = operator_name
  1542. //inputData["officeId"] = "001"
  1543. //inputData["officeName"] = "血透室"
  1544. //data["data"] = inputData
  1545. //data["transType"] = "ec.query"
  1546. //data["orgId"] = code
  1547. //bytesData, _ := json.Marshal(data)
  1548. //pCardInfo = bytesData
  1549. ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&pBusiCardInfo[0])))
  1550. fmt.Println(ret2)
  1551. //fmt.Println(DeleteExtraSpace(string(bytesData)))
  1552. fmt.Println(DeleteExtraSpace(string(pBusiCardInfo)))
  1553. //fmt.Println(":", ConvertToString(DeleteExtraSpace(string(bytesData)), "gbk", "utf-8"))
  1554. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(pBusiCardInfo)), "gbk", "utf-8"))
  1555. if ret2 != 0 {
  1556. return "", ""
  1557. }
  1558. return DeleteExtraSpace(""), DeleteExtraSpace(string(pBusiCardInfo))
  1559. }
  1560. func (c *AHybController) GetELeCertInfoFour1(code string, operator_id string, operator_name string) (string, string) {
  1561. DllDef := syscall.MustLoadDLL("NationEcCode.dll")
  1562. readCard := DllDef.MustFindProc("EcQuery")
  1563. pCardInfo := make([]byte, 8192)
  1564. pBusiCardInfo := make([]byte, 8192)
  1565. data := make(map[string]interface{})
  1566. inputData := make(map[string]interface{})
  1567. inputData["orgId"] = code
  1568. inputData["businessType"] = "01301"
  1569. inputData["operatorId"] = operator_id
  1570. inputData["operatorName"] = operator_name
  1571. inputData["officeId"] = "001"
  1572. inputData["officeName"] = "xuetou"
  1573. data["data"] = inputData
  1574. data["transType"] = "ec.query"
  1575. data["orgId"] = code
  1576. bytesData, _ := json.Marshal(data)
  1577. pCardInfo = bytesData
  1578. pCardInfo = []byte(ConvertByte2String(pCardInfo, GB18030))
  1579. ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&pCardInfo[0])), (uintptr)(unsafe.Pointer(&pBusiCardInfo[0])))
  1580. fmt.Println(ret2)
  1581. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(bytesData)), "gbk", "utf-8"))
  1582. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(pBusiCardInfo)), "gbk", "utf-8"))
  1583. if ret2 != 0 {
  1584. return "", ""
  1585. }
  1586. return ConvertByte2String([]byte(DeleteExtraSpace(string(bytesData))), GB18030), ConvertByte2String([]byte(DeleteExtraSpace(string(pBusiCardInfo))), GB18030)
  1587. }
  1588. func (c *AHybController) GetELeCertInfoFour(code string, operator_id string, operator_name string) (string, string) {
  1589. DllDef := syscall.MustLoadDLL("HeaSecReadInfo.dll")
  1590. readCard := DllDef.MustFindProc("GetPersonInfo")
  1591. pCardInfo := make([]byte, 8192)
  1592. pBusiCardInfo := make([]byte, 8192)
  1593. data := make(map[string]interface{})
  1594. inputData := make(map[string]interface{})
  1595. inputData["orgId"] = code
  1596. inputData["businessType"] = "01301"
  1597. inputData["operatorId"] = operator_id
  1598. inputData["operatorName"] = operator_name
  1599. inputData["officeId"] = "001"
  1600. inputData["officeName"] = "xuetou"
  1601. data["data"] = inputData
  1602. data["transType"] = "ec.query"
  1603. data["orgId"] = code
  1604. bytesData, _ := json.Marshal(data)
  1605. pCardInfo = bytesData
  1606. pCardInfo = []byte(ConvertByte2String(pCardInfo, GB18030))
  1607. ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&pCardInfo[0])), (uintptr)(unsafe.Pointer(&pBusiCardInfo[0])))
  1608. fmt.Println(ret2)
  1609. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(bytesData)), "gbk", "utf-8"))
  1610. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(pBusiCardInfo)), "gbk", "utf-8"))
  1611. if ret2 != 0 {
  1612. return "", ""
  1613. }
  1614. return ConvertByte2String([]byte(DeleteExtraSpace(string(bytesData))), GB18030), ConvertByte2String([]byte(DeleteExtraSpace(string(pBusiCardInfo))), GB18030)
  1615. }
  1616. func (c *AHybController) GetELeCertInfoFour2223(code string, operator_id string, operator_name string) (string, string) {
  1617. DllDef := syscall.MustLoadDLL("HeaSecReadInfo.dll")
  1618. readCard := DllDef.MustFindProc("GetPersonInfo")
  1619. pCardInfo := make([]byte, 8192)
  1620. pBusiCardInfo := make([]byte, 8192)
  1621. data := make(map[string]interface{})
  1622. inputData := make(map[string]interface{})
  1623. inputData["orgId"] = code
  1624. inputData["businessType"] = "01101"
  1625. inputData["operatorId"] = operator_id
  1626. inputData["operatorName"] = operator_name
  1627. inputData["officeId"] = "001"
  1628. inputData["officeName"] = "xuetou"
  1629. data["data"] = inputData
  1630. data["transType"] = "ec.query"
  1631. data["orgId"] = code
  1632. bytesData, _ := json.Marshal(data)
  1633. pCardInfo = bytesData
  1634. pCardInfo = []byte(ConvertByte2String(pCardInfo, GB18030))
  1635. ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&pCardInfo[0])), (uintptr)(unsafe.Pointer(&pBusiCardInfo[0])))
  1636. fmt.Println(ret2)
  1637. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(bytesData)), "gbk", "utf-8"))
  1638. fmt.Println(":", ConvertToString(DeleteExtraSpace(string(pBusiCardInfo)), "gbk", "utf-8"))
  1639. if ret2 != 0 {
  1640. return "", ""
  1641. }
  1642. return ConvertByte2String([]byte(DeleteExtraSpace(string(bytesData))), GB18030), ConvertByte2String([]byte(DeleteExtraSpace(string(pBusiCardInfo))), GB18030)
  1643. }
  1644. func (c *AHybController) GetELeCertInfoTwo(code string, operator_id string, operator_name string) (string, string) {
  1645. // WebSocket服务器地址
  1646. serverURL := "ws://127.0.0.1:8899"
  1647. // 解析WebSocket服务器地址
  1648. u, err := url.Parse(serverURL)
  1649. if err != nil {
  1650. log.Fatal(err)
  1651. }
  1652. // 建立WebSocket连接
  1653. conn, _, err := websocket.DefaultDialer.Dial(u.String(), nil)
  1654. if err != nil {
  1655. log.Fatal(err)
  1656. }
  1657. defer conn.Close()
  1658. input2 := make(map[string]interface{})
  1659. input := make(map[string]interface{})
  1660. inputData := make(map[string]interface{})
  1661. inputData["orgId"] = code
  1662. inputData["businessType"] = "01101"
  1663. inputData["operatorId"] = operator_id
  1664. inputData["operatorName"] = operator_name
  1665. inputData["officeId"] = "001"
  1666. inputData["officeName"] = "血透室"
  1667. inputData["deviceType"] = ""
  1668. input["data"] = inputData
  1669. input["orgId"] = code
  1670. input["transType"] = "ec.query"
  1671. input2["url"] = "http://10.66.159.55:8080/localcfc/api/hsecfc/localQrCodeQuery"
  1672. input2["indata"] = input
  1673. bytesData, _ := json.Marshal(input2)
  1674. err = conn.WriteMessage(websocket.TextMessage, bytesData)
  1675. if err != nil {
  1676. fmt.Println(err)
  1677. }
  1678. // 接收消息
  1679. _, receivedMessage, err := conn.ReadMessage()
  1680. if err != nil {
  1681. fmt.Println(err)
  1682. }
  1683. return "", string(receivedMessage)
  1684. }
  1685. func (c *AHybController) GetELeCertInfoThree(code string, operator_id string, operator_name string) (string, string) {
  1686. // WebSocket服务器地址
  1687. serverURL := "ws://127.0.0.1:8899"
  1688. // 解析WebSocket服务器地址
  1689. u, err := url.Parse(serverURL)
  1690. if err != nil {
  1691. log.Fatal(err)
  1692. }
  1693. // 建立WebSocket连接
  1694. conn, _, err := websocket.DefaultDialer.Dial(u.String(), nil)
  1695. if err != nil {
  1696. log.Fatal(err)
  1697. }
  1698. defer conn.Close()
  1699. input2 := make(map[string]interface{})
  1700. input := make(map[string]interface{})
  1701. inputData := make(map[string]interface{})
  1702. inputData["orgId"] = code
  1703. inputData["businessType"] = "01301"
  1704. inputData["operatorId"] = operator_id
  1705. inputData["operatorName"] = operator_name
  1706. inputData["officeId"] = "001"
  1707. inputData["officeName"] = "血透室"
  1708. inputData["deviceType"] = ""
  1709. input["data"] = inputData
  1710. input["orgId"] = code
  1711. input["transType"] = "ec.query"
  1712. input2["url"] = "http://10.66.159.55:8080/localcfc/api/hsecfc/localQrCodeQuery"
  1713. input2["indata"] = input
  1714. bytesData, _ := json.Marshal(input2)
  1715. err = conn.WriteMessage(websocket.TextMessage, bytesData)
  1716. if err != nil {
  1717. fmt.Println(err)
  1718. }
  1719. // 接收消息
  1720. _, receivedMessage, err := conn.ReadMessage()
  1721. if err != nil {
  1722. fmt.Println(err)
  1723. }
  1724. return "", string(receivedMessage)
  1725. }
  1726. func IntPtr(n int) uintptr {
  1727. return uintptr(n)
  1728. }
  1729. func StrPtr(s string) uintptr {
  1730. return uintptr(unsafe.Pointer(syscall.StringBytePtr(s)))
  1731. }
  1732. type Charset string
  1733. const (
  1734. UTF8 = Charset("UTF-8")
  1735. GB18030 = Charset("GB18030")
  1736. )
  1737. func ConvertToString(src string, srcCode string, tagCode string) string {
  1738. srcCoder := mahonia.NewDecoder(srcCode)
  1739. srcResult := srcCoder.ConvertString(src)
  1740. tagCoder := mahonia.NewDecoder(tagCode)
  1741. _, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
  1742. result := string(cdata)
  1743. return result
  1744. }
  1745. func DeleteExtraSpace(s string) string {
  1746. //删除字符串中的多余空格,有多个空格时,仅保留一个空格
  1747. s1 := strings.Replace(s, " ", " ", -1) //替换tab为空格
  1748. regstr := "\\s{2,}" //两个及两个以上空格的正则表达式
  1749. reg, _ := regexp.Compile(regstr) //编译正则表达式
  1750. s2 := make([]byte, len(s1)) //定义字符数组切片
  1751. copy(s2, s1) //将字符串复制到切片
  1752. spc_index := reg.FindStringIndex(string(s2)) //在字符串中搜索
  1753. for len(spc_index) > 0 { //找到适配项
  1754. s2 = append(s2[:spc_index[0]+1], s2[spc_index[1]:]...) //删除多余空格
  1755. spc_index = reg.FindStringIndex(string(s2)) //继续在字符串中搜索
  1756. }
  1757. return string(s2)
  1758. }
  1759. func Remove0000(s string) string {
  1760. str := make([]rune, 0, len(s))
  1761. for _, v := range []rune(s) {
  1762. if v == 0 {
  1763. continue
  1764. }
  1765. str = append(str, v)
  1766. }
  1767. return string(str)
  1768. }
  1769. func saveJsLog(result string, request string, infno string, desc string, org_name string) {
  1770. //org_id, _ := beego.AppConfig.Int64("org_id")
  1771. //miConfig, _ := service.FindMedicalInsuranceInfo(org_id)
  1772. dir := org_name + "日志"
  1773. utils.Mkdir(dir)
  1774. month := time.Unix(1557042972, 0).Format("1")
  1775. year := time.Now().Format("2006")
  1776. month = time.Now().Format("01")
  1777. day := time.Now().Format("02")
  1778. hour := time.Now().Format("15")
  1779. min := time.Now().Format("04")
  1780. sec := time.Now().Format("05")
  1781. result_time := year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sec
  1782. file := org_name + "_" + year + month + day + "_log"
  1783. file_name := file + ".txt"
  1784. file_path := org_name + "日志" + "/" + file_name
  1785. exist, _ := utils.PathExists(file_path)
  1786. if exist { //存在
  1787. fmt.Println("存在")
  1788. f, err := os.OpenFile(file_path, os.O_WRONLY, 0644)
  1789. if err != nil {
  1790. fmt.Println("read fail")
  1791. }
  1792. content := "\r\n" + "\r\n" + "\r\n" + result_time + " " + "【 " + desc + infno + "入参" + " 】:" + "\r\n" + request + "\r\n" + result_time + " " + "【 " + desc + infno + "出参" + " 】:" + "\r\n" + result
  1793. n, _ := f.Seek(0, 2)
  1794. _, err = f.WriteAt([]byte(content), n)
  1795. } else { //不存在
  1796. fmt.Println("文件不存在,创建文件")
  1797. f, err := os.Create(org_name + "日志" + "/" + file_name)
  1798. defer f.Close()
  1799. if err != nil {
  1800. } else {
  1801. _, err = f.Write([]byte("记录日志"))
  1802. }
  1803. }
  1804. }
  1805. func (c *AHybController) Get3101() {
  1806. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  1807. var respJSON map[string]interface{}
  1808. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1809. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1810. return
  1811. }
  1812. pdUserJSONBytes, _ := json.Marshal(respJSON["pd"])
  1813. var pd models.PatientDtos
  1814. if err := json.Unmarshal(pdUserJSONBytes, &pd); err != nil {
  1815. utils.ErrorLog("解析失败:%v", err)
  1816. return
  1817. }
  1818. fedUserJSONBytes, _ := json.Marshal(respJSON["fed"])
  1819. var fed models.FsiEncounterDtos
  1820. if err := json.Unmarshal(fedUserJSONBytes, &fed); err != nil {
  1821. utils.ErrorLog("解析失败:%v", err)
  1822. return
  1823. }
  1824. fddUserJSONBytes, _ := json.Marshal(respJSON["fdd"])
  1825. var fdd []*models.FsiDiagnoseDtos
  1826. if err := json.Unmarshal(fddUserJSONBytes, &fdd); err != nil {
  1827. utils.ErrorLog("解析失败:%v", err)
  1828. return
  1829. }
  1830. fodUserJSONBytes, _ := json.Marshal(respJSON["fod"])
  1831. var fod []*models.FsiOrderDtos
  1832. if err := json.Unmarshal(fodUserJSONBytes, &fod); err != nil {
  1833. utils.ErrorLog("解析失败:%v", err)
  1834. return
  1835. }
  1836. fopdUserJSONBytes, _ := json.Marshal(respJSON["fopd"])
  1837. var fopd []*models.FsiOperationDtosData
  1838. if err := json.Unmarshal(fopdUserJSONBytes, &fopd); err != nil {
  1839. utils.ErrorLog("解析失败:%v", err)
  1840. return
  1841. }
  1842. ppUserJSONBytes, _ := json.Marshal(respJSON["pp"])
  1843. var pp models.PublicParams
  1844. if err := json.Unmarshal(ppUserJSONBytes, &pp); err != nil {
  1845. utils.ErrorLog("解析失败:%v", err)
  1846. return
  1847. }
  1848. inputLog, result := service.AHyb3101(pd, fed, fdd, fod, fopd, pp, respJSON["trig_scen"].(string))
  1849. var response Response
  1850. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1851. fmt.Println("Error decoding JSON:", err)
  1852. return
  1853. }
  1854. if response.Code == 200 {
  1855. var dat2 map[string]interface{}
  1856. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1857. } else {
  1858. }
  1859. c.ServeSuccessJSON(map[string]interface{}{
  1860. "pre": response.Body,
  1861. "log": dat2,
  1862. "status": 1,
  1863. "msg": "",
  1864. })
  1865. } else {
  1866. c.ServeSuccessJSON(map[string]interface{}{
  1867. "status": 0,
  1868. "msg": response.Message,
  1869. })
  1870. }
  1871. }
  1872. func (c *AHybController) Get3102() {
  1873. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  1874. var respJSON map[string]interface{}
  1875. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1876. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1877. return
  1878. }
  1879. pdUserJSONBytes, _ := json.Marshal(respJSON["pd"])
  1880. var pd models.PatientDtos
  1881. if err := json.Unmarshal(pdUserJSONBytes, &pd); err != nil {
  1882. utils.ErrorLog("解析失败:%v", err)
  1883. return
  1884. }
  1885. fedUserJSONBytes, _ := json.Marshal(respJSON["fed"])
  1886. var fed models.FsiEncounterDtos
  1887. if err := json.Unmarshal(fedUserJSONBytes, &fed); err != nil {
  1888. utils.ErrorLog("解析失败:%v", err)
  1889. return
  1890. }
  1891. fddUserJSONBytes, _ := json.Marshal(respJSON["fdd"])
  1892. var fdd []*models.FsiDiagnoseDtos
  1893. if err := json.Unmarshal(fddUserJSONBytes, &fdd); err != nil {
  1894. utils.ErrorLog("解析失败:%v", err)
  1895. return
  1896. }
  1897. fodUserJSONBytes, _ := json.Marshal(respJSON["fod"])
  1898. var fod []*models.FsiOrderDtos
  1899. if err := json.Unmarshal(fodUserJSONBytes, &fod); err != nil {
  1900. utils.ErrorLog("解析失败:%v", err)
  1901. return
  1902. }
  1903. fopdUserJSONBytes, _ := json.Marshal(respJSON["fopd"])
  1904. var fopd []*models.FsiOperationDtosData
  1905. if err := json.Unmarshal(fopdUserJSONBytes, &fopd); err != nil {
  1906. utils.ErrorLog("解析失败:%v", err)
  1907. return
  1908. }
  1909. ppUserJSONBytes, _ := json.Marshal(respJSON["pp"])
  1910. var pp models.PublicParams
  1911. if err := json.Unmarshal(ppUserJSONBytes, &pp); err != nil {
  1912. utils.ErrorLog("解析失败:%v", err)
  1913. return
  1914. }
  1915. _, result := service.AHyb3102(pd, fed, fdd, fod, fopd, pp, respJSON["trig_scen"].(string))
  1916. var response Response
  1917. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1918. fmt.Println("Error decoding JSON:", err)
  1919. return
  1920. }
  1921. if response.Code == 200 {
  1922. c.ServeSuccessJSON(map[string]interface{}{
  1923. "pre": response.Body,
  1924. "status": 1,
  1925. "msg": "",
  1926. })
  1927. } else {
  1928. c.ServeSuccessJSON(map[string]interface{}{
  1929. "status": 0,
  1930. "msg": response.Message,
  1931. })
  1932. }
  1933. }
  1934. func (c *AHybController) Get4101() {
  1935. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  1936. var respJSON map[string]interface{}
  1937. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1938. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1939. return
  1940. }
  1941. struct4101UserJSONBytes, _ := json.Marshal(respJSON["struct4101"])
  1942. var struct4101 service.Struct4101
  1943. if err := json.Unmarshal(struct4101UserJSONBytes, &struct4101); err != nil {
  1944. utils.ErrorLog("解析失败:%v", err)
  1945. return
  1946. }
  1947. ppUserJSONBytes, _ := json.Marshal(respJSON["pp"])
  1948. var pp models.PublicParams
  1949. if err := json.Unmarshal(ppUserJSONBytes, &pp); err != nil {
  1950. utils.ErrorLog("解析失败:%v", err)
  1951. return
  1952. }
  1953. inputLog, result := service.AHyb4101(struct4101, pp)
  1954. saveJsLog(result, inputLog, "4101", "上传明细清单", pp.FixmedinsName)
  1955. var response Response
  1956. if err := json.Unmarshal([]byte(result), &response); err != nil {
  1957. fmt.Println("Error decoding JSON:", err)
  1958. return
  1959. }
  1960. if response.Code == 200 {
  1961. var dat2 map[string]interface{}
  1962. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  1963. } else {
  1964. }
  1965. c.ServeSuccessJSON(map[string]interface{}{
  1966. "pre": response.Body,
  1967. "log": dat2,
  1968. "status": 1,
  1969. "msg": "",
  1970. })
  1971. } else {
  1972. c.ServeSuccessJSON(map[string]interface{}{
  1973. "status": 0,
  1974. "msg": response.Message,
  1975. })
  1976. }
  1977. }
  1978. func ConvertByte2String(byte []byte, charset Charset) string {
  1979. var str string
  1980. switch charset {
  1981. case GB18030:
  1982. decodeBytes, _ := simplifiedchinese.GB18030.NewDecoder().Bytes(byte)
  1983. str = string(decodeBytes)
  1984. case UTF8:
  1985. fallthrough
  1986. default:
  1987. str = string(byte)
  1988. }
  1989. return str
  1990. }