hbyb_controller.go 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437
  1. package hb
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "gdyb/controllers"
  6. "gdyb/models"
  7. "gdyb/service"
  8. "gdyb/utils"
  9. "github.com/astaxie/beego"
  10. "io/ioutil"
  11. )
  12. type HBybController struct {
  13. controllers.BaseAuthAPIController
  14. }
  15. func HbybRegistRouters() {
  16. beego.Router("/hbyb/1101", &HBybController{}, "get:PostOne")
  17. beego.Router("/hbyb/2201", &HBybController{}, "get:PostTwo")
  18. beego.Router("/hbyb/2202", &HBybController{}, "get:PostThree")
  19. beego.Router("/hbyb/2203", &HBybController{}, "post:PostFour")
  20. beego.Router("/hbyb/2204", &HBybController{}, "post:PostFive")
  21. beego.Router("/hbyb/2205", &HBybController{}, "get:PostSix")
  22. beego.Router("/hbyb/2206", &HBybController{}, "get:PostSeven")
  23. beego.Router("/hbyb/2207", &HBybController{}, "get:PostEight")
  24. beego.Router("/hbyb/2208", &HBybController{}, "get:PostNine")
  25. beego.Router("/hbyb/5203", &HBybController{}, "get:PostTen")
  26. beego.Router("/hbyb/2001", &HBybController{}, "get:Post2001")
  27. }
  28. func (c *HBybController) Post2001() {
  29. org_name := c.GetString("org_name")
  30. doctor := c.GetString("doctor")
  31. fixmedins_code := c.GetString("fixmedins_code")
  32. insuplc_admdvs := c.GetString("insuplc_admdvs")
  33. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  34. secret_key := c.GetString("secret_key")
  35. psn_no := c.GetString("psn_no")
  36. insutype := c.GetString("insutype")
  37. med_type := c.GetString("med_type")
  38. result, inputLog := service.Hbyb2001(secret_key, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, psn_no, insutype, med_type)
  39. fmt.Println(result)
  40. fmt.Println(inputLog)
  41. var dat map[string]interface{}
  42. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  43. } else {
  44. }
  45. var dat2 map[string]interface{}
  46. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  47. } else {
  48. }
  49. c.ServeSuccessJSON(map[string]interface{}{
  50. "pre": dat,
  51. "log": dat2,
  52. })
  53. }
  54. func (c *HBybController) PostOne() {
  55. certNo := c.GetString("cert_no")
  56. org_name := c.GetString("org_name")
  57. doctor := c.GetString("doctor")
  58. fixmedins_code := c.GetString("fixmedins_code")
  59. insuplc_admdvs := c.GetString("insuplc_admdvs")
  60. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  61. secret_key := c.GetString("secret_key")
  62. id_card_type, _ := c.GetInt64("id_card_type")
  63. card_sn := c.GetString("card_sn")
  64. certificates := c.GetString("certificates")
  65. result, inputLog := service.Hbyb1101(certNo, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type, card_sn, certificates)
  66. fmt.Println(result)
  67. fmt.Println(inputLog)
  68. var dat map[string]interface{}
  69. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  70. } else {
  71. }
  72. var dat2 map[string]interface{}
  73. if err := json.Unmarshal([]byte(inputLog), &dat2); err == nil {
  74. } else {
  75. }
  76. c.ServeSuccessJSON(map[string]interface{}{
  77. "pre": dat,
  78. "log": dat2,
  79. })
  80. }
  81. func (c *HBybController) PostTwo() {
  82. psnNo := c.GetString("psn_no")
  83. insutype := c.GetString("insutype")
  84. certNo := c.GetString("cert_no")
  85. org_name := c.GetString("org_name")
  86. doctor := c.GetString("doctor")
  87. ipt_otp_no := c.GetString("ipt_otp_no")
  88. dept := c.GetString("dept")
  89. fixmedins_code := c.GetString("fixmedins_code")
  90. opter := c.GetString("opter")
  91. dept_code := c.GetString("dept_code")
  92. doctor_id := c.GetString("doctor_id")
  93. doctor_name := c.GetString("doctor_name")
  94. insuplc_admdvs := c.GetString("insuplc_admdvs")
  95. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  96. secret_key := c.GetString("secret_key")
  97. id_card_type, _ := c.GetInt64("id_card_type")
  98. result, _ := service.Hbyb2201(psnNo, insutype, certNo, org_name, doctor, ipt_otp_no, dept, fixmedins_code, dept_code, doctor_id, insuplc_admdvs, mdtrtarea_admvs, secret_key, id_card_type, opter, doctor_name)
  99. var dat map[string]interface{}
  100. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  101. //fmt.Println(dat["status"])
  102. } else {
  103. }
  104. c.ServeSuccessJSON(map[string]interface{}{
  105. "pre": dat,
  106. })
  107. }
  108. func (c *HBybController) PostThree() {
  109. psnNo := c.GetString("psn_no")
  110. mdtrtId := c.GetString("mdtrt_id")
  111. iptOtpNo := c.GetString("ipt_otp_no")
  112. org_name := c.GetString("org_name")
  113. doctor := c.GetString("doctor")
  114. insuplc_admdvs := c.GetString("insuplc_admdvs")
  115. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  116. secret_key := c.GetString("secret_key")
  117. fixmedins_code := c.GetString("fixmedins_code")
  118. result, requestLog := service.Hbyb2202(psnNo, mdtrtId, iptOtpNo, org_name, doctor, insuplc_admdvs, mdtrtarea_admvs, secret_key, fixmedins_code)
  119. var dat map[string]interface{}
  120. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  121. } else {
  122. }
  123. c.ServeSuccessJSON(map[string]interface{}{
  124. "pre": dat,
  125. "request_log": requestLog,
  126. })
  127. }
  128. func (c *HBybController) PostFour() {
  129. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  130. var respJSON map[string]interface{}
  131. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  132. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  133. return
  134. }
  135. userJSONBytes, _ := json.Marshal(respJSON["config"])
  136. var config []*models.HisXtDiagnoseConfig
  137. if err := json.Unmarshal(userJSONBytes, &config); err != nil {
  138. utils.ErrorLog("解析失败:%v", err)
  139. return
  140. }
  141. psnNo := respJSON["psn_no"].(string)
  142. mdtrtId := respJSON["mdtrt_id"].(string)
  143. opter := respJSON["opter"].(string)
  144. org_name := respJSON["org_name"].(string)
  145. med_type := respJSON["med_type"].(string)
  146. doctor_id := respJSON["doctor_id"].(string)
  147. doctor_name := respJSON["doctor_name"].(string)
  148. department := respJSON["department"].(string)
  149. fixmedins_code := respJSON["fixmedins_code"].(string)
  150. insuplc_admdvs := respJSON["insuplc_admdvs"].(string)
  151. mdtrtarea_admvs := respJSON["mdtrtarea_admvs"].(string)
  152. secret_key := respJSON["secret_key"].(string)
  153. sick_code := respJSON["sick_code"].(string)
  154. sick_name := respJSON["sick_name"].(string)
  155. dept := respJSON["dept"].(string)
  156. begin_time := respJSON["begin_time"].(string)
  157. result, request_log := service.Hbyb2203(psnNo, mdtrtId, dept, department, org_name, med_type, doctor_id, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, sick_code, sick_name, dept, config, begin_time, doctor_name, opter)
  158. fmt.Println(request_log)
  159. var dat map[string]interface{}
  160. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  161. } else {
  162. }
  163. c.ServeSuccessJSON(map[string]interface{}{
  164. "pre": dat,
  165. })
  166. }
  167. type All struct {
  168. HisPrescription HisPrescription
  169. mdtrt_id string
  170. psn_no string
  171. }
  172. type HisPrescription struct {
  173. ID int64 `gorm:"column:id" json:"id" form:"id"`
  174. UserOrgId int64 `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
  175. RecordDate int64 `gorm:"column:record_date" json:"record_date" form:"record_date"`
  176. PatientId int64 `gorm:"column:patient_id" json:"patient_id" form:"patient_id"`
  177. HisPatientId int64 `gorm:"column:his_patient_id" json:"his_patient_id" form:"his_patient_id"`
  178. Status int64 `gorm:"column:status" json:"status" form:"status"`
  179. Ctime int64 `gorm:"column:ctime" json:"ctime" form:"ctime"`
  180. Mtime int64 `gorm:"column:mtime" json:"mtime" form:"mtime"`
  181. Number string `gorm:"column:number" json:"number" form:"number"`
  182. Type int64 `gorm:"column:type" json:"type" form:"type"`
  183. Doctor int64 `gorm:"column:doctor" json:"doctor" form:"doctor"`
  184. Creator int64 `gorm:"column:creator" json:"creator" form:"creator"`
  185. Modifier int64 `gorm:"column:modifier" json:"modifier" form:"modifier"`
  186. HisDoctorAdviceInfo []*models.HisDoctorAdviceInfo `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"advices"`
  187. HisPrescriptionProject []*models.HisPrescriptionProject `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"project"`
  188. }
  189. func (c *HBybController) PostFive() {
  190. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  191. var respJSON map[string]interface{}
  192. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  193. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  194. return
  195. }
  196. userJSONBytes, _ := json.Marshal(respJSON["pre"])
  197. var hp []*models.HisPrescription
  198. if err := json.Unmarshal(userJSONBytes, &hp); err != nil {
  199. utils.ErrorLog("解析失败:%v", err)
  200. return
  201. }
  202. fmt.Println(respJSON["psn_no"].(string))
  203. fmt.Println(respJSON["mdtrt_id"].(string))
  204. fmt.Println(respJSON["chrg_bchno"].(string))
  205. fmt.Println(respJSON["org_name"].(string))
  206. fmt.Println(respJSON["doctor"].(string))
  207. fmt.Println(respJSON["doctor_id"].(string))
  208. fmt.Println(respJSON["dept"].(string))
  209. fmt.Println(respJSON["fixmedins_code"].(string))
  210. fmt.Println(respJSON["dept_code"].(string))
  211. fmt.Println(respJSON["insuplc_admdvs"].(string))
  212. fmt.Println(respJSON["mdtrtarea_admvs"].(string))
  213. fmt.Println(respJSON["secret_key"].(string))
  214. result, requestLog := service.Hbyb2204(respJSON["psn_no"].(string), respJSON["mdtrt_id"].(string), hp, respJSON["chrg_bchno"].(string), respJSON["org_name"].(string),
  215. 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["opter"].(string))
  216. var dat map[string]interface{}
  217. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  218. fmt.Println(dat)
  219. } else {
  220. fmt.Println(err)
  221. }
  222. var dat2 map[string]interface{}
  223. if err := json.Unmarshal([]byte(requestLog), &dat2); err == nil {
  224. fmt.Println(dat2)
  225. } else {
  226. fmt.Println(err)
  227. }
  228. c.ServeSuccessJSON(map[string]interface{}{
  229. "pre": dat,
  230. "request_log": requestLog,
  231. })
  232. }
  233. func (c *HBybController) PostSix() {
  234. psnNo := c.GetString("psn_no")
  235. mdtrtId := c.GetString("mdtrt_id")
  236. chrgBchno := c.GetString("chrg_bchno")
  237. org_name := c.GetString("org_name")
  238. doctor := c.GetString("doctor")
  239. insuplc_admdvs := c.GetString("insuplc_admdvs")
  240. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  241. secret_key := c.GetString("secret_key")
  242. fixmedins_code := c.GetString("fixmedins_code")
  243. result, requestlog := service.Hbyb2205(psnNo, mdtrtId, chrgBchno, org_name, doctor, insuplc_admdvs, mdtrtarea_admvs, secret_key, fixmedins_code)
  244. fmt.Println(requestlog)
  245. var dat map[string]interface{}
  246. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  247. fmt.Println(dat)
  248. } else {
  249. fmt.Println(err)
  250. }
  251. c.ServeSuccessJSON(map[string]interface{}{
  252. "pre": dat,
  253. })
  254. }
  255. func (c *HBybController) PostSeven() {
  256. psnNo := c.GetString("psn_no")
  257. mdtrtId := c.GetString("mdtrt_id")
  258. chrgBchno := c.GetString("chrg_bchno")
  259. certNo := c.GetString("cert_no")
  260. insutype := c.GetString("insutype")
  261. total := c.GetString("total")
  262. org_name := c.GetString("org_name")
  263. doctor := c.GetString("doctor")
  264. fixmedins_code := c.GetString("fixmedins_code")
  265. insuplc_admdvs := c.GetString("insuplc_admdvs")
  266. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  267. secret_key := c.GetString("secret_key")
  268. med_type := c.GetString("med_type")
  269. id_card_type, _ := c.GetInt64("id_card_type")
  270. certificates, _ := c.GetInt64("certificates")
  271. result, requestlog := service.Hbyb2206(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, med_type, id_card_type, 0, 0, 0, 0, certificates)
  272. fmt.Println(requestlog)
  273. var dat map[string]interface{}
  274. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  275. fmt.Println(dat)
  276. } else {
  277. fmt.Println(err)
  278. }
  279. c.ServeSuccessJSON(map[string]interface{}{
  280. "pre": dat,
  281. })
  282. }
  283. func (c *HBybController) PostEight() {
  284. psnNo := c.GetString("psn_no")
  285. mdtrtId := c.GetString("mdtrt_id")
  286. chrgBchno := c.GetString("chrg_bchno")
  287. certNo := c.GetString("cert_no")
  288. insutype := c.GetString("insutype")
  289. total := c.GetString("total")
  290. org_name := c.GetString("org_name")
  291. doctor := c.GetString("doctor")
  292. fixmedins_code := c.GetString("fixmedins_code")
  293. insuplc_admdvs := c.GetString("insuplc_admdvs")
  294. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  295. secret_key := c.GetString("secret_key")
  296. med_type := c.GetString("med_type")
  297. id_card_type, _ := c.GetInt64("id_card_type")
  298. certificates, _ := c.GetInt64("certificates")
  299. fulamt_ownpay_amt, _ := c.GetFloat("fulamt_ownpay_amt")
  300. overlmt_selfpay, _ := c.GetFloat("overlmt_selfpay")
  301. preselfpay_amt, _ := c.GetFloat("preselfpay_amt")
  302. inscp_scp_amt, _ := c.GetFloat("inscp_scp_amt")
  303. acct_used_flag, _ := c.GetInt64("acct_used_flag")
  304. result, srcRequest := service.Hbyb2207(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs, secret_key, med_type, id_card_type, fulamt_ownpay_amt, overlmt_selfpay, preselfpay_amt, inscp_scp_amt, certificates, acct_used_flag)
  305. var dat map[string]interface{}
  306. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  307. fmt.Println(dat)
  308. } else {
  309. fmt.Println(err)
  310. }
  311. var dat2 map[string]interface{}
  312. if err := json.Unmarshal([]byte(srcRequest), &dat2); err == nil {
  313. fmt.Println(dat2)
  314. } else {
  315. fmt.Println(err)
  316. }
  317. c.ServeSuccessJSON(map[string]interface{}{
  318. "pre": dat,
  319. "pre2": dat2,
  320. })
  321. }
  322. func (c *HBybController) PostNine() {
  323. psnNo := c.GetString("psn_no")
  324. mdtrtId := c.GetString("mdtrt_id")
  325. setlId := c.GetString("setl_id")
  326. org_name := c.GetString("org_name")
  327. doctor := c.GetString("doctor")
  328. secret_key := c.GetString("secret_key")
  329. fixmedins_code := c.GetString("fixmedins_code")
  330. insuplc_admdvs := c.GetString("insuplc_admdvs")
  331. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  332. result, src_request := service.Hbyb2208(psnNo, mdtrtId, setlId, org_name, doctor, secret_key, fixmedins_code, insuplc_admdvs, mdtrtarea_admvs)
  333. fmt.Println(src_request)
  334. var dat map[string]interface{}
  335. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  336. fmt.Println(dat)
  337. } else {
  338. fmt.Println(err)
  339. }
  340. c.ServeSuccessJSON(map[string]interface{}{
  341. "pre": dat,
  342. })
  343. }
  344. func (c *HBybController) PostTen() {
  345. psnNo := c.GetString("psn_no")
  346. mdtrtId := c.GetString("mdtrt_id")
  347. setlId := c.GetString("setl_id")
  348. org_name := c.GetString("org_name")
  349. doctor := c.GetString("doctor")
  350. med_type := c.GetString("med_type")
  351. secret_key := c.GetString("secret_key")
  352. fixmedins_code := c.GetString("fixmedins_code")
  353. insuplc_admdvs := c.GetString("insuplc_admdvs")
  354. mdtrtarea_admvs := c.GetString("mdtrtarea_admvs")
  355. baseParams := models.BaseParams{
  356. SecretKey: secret_key,
  357. FixmedinsCode: fixmedins_code,
  358. InsuplcAdmdvs: insuplc_admdvs,
  359. MdtrtareaAdmvs: mdtrtarea_admvs,
  360. OrgName: org_name,
  361. Doctor: doctor,
  362. }
  363. businessParams := models.BusinessParams{
  364. PsnNo: psnNo,
  365. MdtrtId: mdtrtId,
  366. SetlId: setlId,
  367. }
  368. result := service.Hbyb5203(baseParams, businessParams, med_type)
  369. var dat map[string]interface{}
  370. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  371. fmt.Println(dat)
  372. } else {
  373. fmt.Println(err)
  374. }
  375. c.ServeSuccessJSON(map[string]interface{}{
  376. "pre": dat,
  377. })
  378. }