gdyb_controller.go 9.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. package controllers
  2. import (
  3. "XT_New/models"
  4. "XT_New/service"
  5. "XT_New/utils"
  6. "encoding/json"
  7. "fmt"
  8. "github.com/astaxie/beego"
  9. "io/ioutil"
  10. )
  11. type GdybController struct {
  12. BaseAuthAPIController
  13. }
  14. func GdybRegistRouters() {
  15. beego.Router("/gdyb/one", &GdybController{}, "get:PostOne")
  16. beego.Router("/gdyb/two", &GdybController{}, "get:PostTwo")
  17. beego.Router("/gdyb/three", &GdybController{}, "get:PostThree")
  18. beego.Router("/gdyb/four", &GdybController{}, "get:PostFour")
  19. beego.Router("/gdyb/five", &GdybController{}, "post:PostFive")
  20. beego.Router("/gdyb/six", &GdybController{}, "get:PostSix")
  21. beego.Router("/gdyb/seven", &GdybController{}, "get:PostSeven")
  22. beego.Router("/gdyb/eight", &GdybController{}, "get:PostEight")
  23. beego.Router("/gdyb/nine", &GdybController{}, "get:PostNine")
  24. //beego.Router("/gdyb/tem", &GdybController{}, "get:PostTen")
  25. }
  26. //provinces, _ := service.GetDistrictsByUpid(0)21
  27. type Result struct {
  28. ErrMsg interface{} `json:"err_msg"`
  29. InfRefmsgid string `json:"inf_refmsgid"`
  30. Infcode int64 `json:"infcode"`
  31. Output struct {
  32. Baseinfo struct {
  33. Age float64 `json:"age"`
  34. Brdy string `json:"brdy"`
  35. Certno string `json:"certno"`
  36. Gend string `json:"gend"`
  37. Naty string `json:"naty"`
  38. PsnCertType string `json:"psn_cert_type"`
  39. PsnName string `json:"psn_name"`
  40. PsnNo string `json:"psn_no"`
  41. } `json:"baseinfo"`
  42. Idetinfo []interface{} `json:"idetinfo"`
  43. Iinfo []struct {
  44. Balc int64 `json:"balc"`
  45. CvlservFlag string `json:"cvlserv_flag"`
  46. EmpName string `json:"emp_name"`
  47. InsuplcAdmdvs string `json:"insuplc_admdvs"`
  48. Insutype string `json:"insutype"`
  49. PausInsuDansuplcAdmdvs string `json:"paus_insu_dansuplc_admdvs"`
  50. PausInsuDate interface{} `json:"paus_insu_date"`
  51. PsnInsuDate string `json:"psn_insu_date"`
  52. PsnInsuStas string `json:"psn_insu_stas"`
  53. PsnType string `json:"psn_type"`
  54. } `json:"iinfo"`
  55. } `json:"output"`
  56. RefmsgTime string `json:"refmsg_time"`
  57. RespondTime string `json:"respond_time"`
  58. Signtype interface{} `json:"signtype"`
  59. WarnInfo interface{} `json:"warn_info"`
  60. }
  61. func (c *GdybController) PostOne() {
  62. certNo := c.GetString("cert_no")
  63. org_name := c.GetString("org_name")
  64. doctor := c.GetString("doctor")
  65. fixmedins_code := c.GetString("fixmedins_code")
  66. result := service.Gdyb1101(certNo, org_name, doctor, fixmedins_code)
  67. var dat map[string]interface{}
  68. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  69. } else {
  70. }
  71. c.ServeSuccessJSON(map[string]interface{}{
  72. "pre": dat,
  73. })
  74. }
  75. func (c *GdybController) PostTwo() {
  76. psnNo := c.GetString("psn_no")
  77. insutype := c.GetString("insutype")
  78. certNo := c.GetString("cert_no")
  79. org_name := c.GetString("org_name")
  80. doctor := c.GetString("doctor")
  81. ipt_otp_no := c.GetString("ipt_otp_no")
  82. dept := c.GetString("dept")
  83. fixmedins_code := c.GetString("fixmedins_code")
  84. result := service.Gdyb2201(psnNo, insutype, certNo, org_name, doctor, ipt_otp_no, dept, fixmedins_code)
  85. var dat map[string]interface{}
  86. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  87. //fmt.Println(dat["status"])
  88. } else {
  89. }
  90. c.ServeSuccessJSON(map[string]interface{}{
  91. "pre": dat,
  92. })
  93. }
  94. func (c *GdybController) PostThree() {
  95. psnNo := c.GetString("psn_no")
  96. mdtrtId := c.GetString("mdtrt_id")
  97. iptOtpNo := c.GetString("ipt_otp_no")
  98. org_name := c.GetString("org_name")
  99. doctor := c.GetString("doctor")
  100. result := service.Gdyb2202(psnNo, mdtrtId, iptOtpNo, org_name, doctor)
  101. c.ServeSuccessJSON(map[string]interface{}{
  102. "pre": result,
  103. })
  104. }
  105. func (c *GdybController) PostFour() {
  106. psnNo := c.GetString("psn_no")
  107. mdtrtId := c.GetString("mdtrt_id")
  108. doctor := c.GetString("doctor")
  109. department := c.GetString("department")
  110. diag := c.GetString("diag")
  111. org_name := c.GetString("org_name")
  112. med_type := c.GetString("med_type")
  113. doctor_id, _ := c.GetInt64("doctor_id", 0)
  114. fixmedins_code := c.GetString("fixmedins_code")
  115. result := service.Gdyb2203(psnNo, mdtrtId, doctor, department, diag, org_name, med_type, doctor_id, fixmedins_code)
  116. var dat map[string]interface{}
  117. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  118. } else {
  119. }
  120. c.ServeSuccessJSON(map[string]interface{}{
  121. "pre": dat,
  122. })
  123. }
  124. type All struct {
  125. HisPrescription HisPrescription
  126. mdtrt_id string
  127. psn_no string
  128. }
  129. type HisPrescription struct {
  130. ID int64 `gorm:"column:id" json:"id" form:"id"`
  131. UserOrgId int64 `gorm:"column:user_org_id" json:"user_org_id" form:"user_org_id"`
  132. RecordDate int64 `gorm:"column:record_date" json:"record_date" form:"record_date"`
  133. PatientId int64 `gorm:"column:patient_id" json:"patient_id" form:"patient_id"`
  134. HisPatientId int64 `gorm:"column:his_patient_id" json:"his_patient_id" form:"his_patient_id"`
  135. Status int64 `gorm:"column:status" json:"status" form:"status"`
  136. Ctime int64 `gorm:"column:ctime" json:"ctime" form:"ctime"`
  137. Mtime int64 `gorm:"column:mtime" json:"mtime" form:"mtime"`
  138. Number string `gorm:"column:number" json:"number" form:"number"`
  139. Type int64 `gorm:"column:type" json:"type" form:"type"`
  140. Doctor int64 `gorm:"column:doctor" json:"doctor" form:"doctor"`
  141. Creator int64 `gorm:"column:creator" json:"creator" form:"creator"`
  142. Modifier int64 `gorm:"column:modifier" json:"modifier" form:"modifier"`
  143. HisDoctorAdviceInfo []*models.HisDoctorAdviceInfo `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"advices"`
  144. HisPrescriptionProject []*models.HisPrescriptionProject `gorm:"ForeignKey:PatientId,RecordDate,PrescriptionId;AssociationForeignKey:PatientId,RecordDate,ID" json:"project"`
  145. }
  146. func (c *GdybController) PostFive() {
  147. body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
  148. var respJSON map[string]interface{}
  149. if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  150. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  151. return
  152. }
  153. userJSONBytes, _ := json.Marshal(respJSON["pre"])
  154. var hp []*models.HisPrescription
  155. if err := json.Unmarshal(userJSONBytes, &hp); err != nil {
  156. utils.ErrorLog("解析失败:%v", err)
  157. return
  158. }
  159. result := service.Gdyb2204(respJSON["psn_no"].(string), respJSON["mdtrt_id"].(string), hp, respJSON["chrg_bchno"].(string), respJSON["org_name"].(string), respJSON["doctor"].(string), respJSON["dept"].(string), respJSON["fixmedins_code"].(string))
  160. var dat map[string]interface{}
  161. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  162. fmt.Println(dat)
  163. } else {
  164. fmt.Println(err)
  165. }
  166. c.ServeSuccessJSON(map[string]interface{}{
  167. "pre": dat,
  168. })
  169. }
  170. func (c *GdybController) PostSix() {
  171. psnNo := c.GetString("psn_no")
  172. mdtrtId := c.GetString("mdtrt_id")
  173. chrgBchno := c.GetString("chrg_bchno")
  174. org_name := c.GetString("org_name")
  175. doctor := c.GetString("doctor")
  176. result := service.Gdyb2205(psnNo, mdtrtId, chrgBchno, org_name, doctor)
  177. c.ServeSuccessJSON(map[string]interface{}{
  178. "pre": result,
  179. })
  180. }
  181. func (c *GdybController) PostSeven() {
  182. psnNo := c.GetString("psn_no")
  183. mdtrtId := c.GetString("mdtrt_id")
  184. chrgBchno := c.GetString("chrg_bchno")
  185. certNo := c.GetString("cert_no")
  186. insutype := c.GetString("insutype")
  187. total := c.GetString("total")
  188. org_name := c.GetString("org_name")
  189. doctor := c.GetString("doctor")
  190. result := service.Gdyb2206(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor)
  191. var dat map[string]interface{}
  192. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  193. fmt.Println(dat)
  194. } else {
  195. fmt.Println(err)
  196. }
  197. c.ServeSuccessJSON(map[string]interface{}{
  198. "pre": dat,
  199. })
  200. }
  201. func (c *GdybController) PostEight() {
  202. psnNo := c.GetString("psn_no")
  203. mdtrtId := c.GetString("mdtrt_id")
  204. chrgBchno := c.GetString("chrg_bchno")
  205. certNo := c.GetString("cert_no")
  206. insutype := c.GetString("insutype")
  207. total := c.GetString("total")
  208. org_name := c.GetString("org_name")
  209. doctor := c.GetString("doctor")
  210. fixmedins_code := c.GetString("fixmedins_code")
  211. result := service.Gdyb2207(psnNo, mdtrtId, chrgBchno, certNo, insutype, total, org_name, doctor, fixmedins_code)
  212. var dat map[string]interface{}
  213. if err := json.Unmarshal([]byte(result), &dat); err == nil {
  214. fmt.Println(dat)
  215. } else {
  216. fmt.Println(err)
  217. }
  218. c.ServeSuccessJSON(map[string]interface{}{
  219. "pre": dat,
  220. })
  221. }
  222. func (c *GdybController) PostNine() {
  223. psnNo := c.GetString("psn_no")
  224. mdtrtId := c.GetString("mdtrt_id")
  225. setlId := c.GetString("setl_id")
  226. org_name := c.GetString("org_name")
  227. doctor := c.GetString("doctor")
  228. result := service.Gdyb2208(psnNo, mdtrtId, setlId, org_name, doctor)
  229. c.ServeSuccessJSON(map[string]interface{}{
  230. "pre": result,
  231. })
  232. }
  233. //func (c *GdybController) PostTen() {
  234. // fixmedins_type := c.GetString("fixmedins_type")
  235. // //fixmedins_type := c.GetString("org_name")
  236. //
  237. // result := service.Gdyb1201(fixmedins_type)
  238. // c.ServeSuccessJSON(map[string]interface{}{
  239. // "pre": result,
  240. // })
  241. //}