handler.go 923 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package RouterManchong
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "manchong/utils"
  5. )
  6. func Handler(ctx *gin.Context) {
  7. req := &reqBody{}
  8. resp := &respBody{
  9. RESP: struct {
  10. RCODE string `json:"RCODE "`
  11. RMSG string `json:"RMSG"`
  12. }{},
  13. CONTENT: nil,
  14. }
  15. header := &head{}
  16. temp := template{
  17. HEADER: header,
  18. MSGBODY: req,
  19. }
  20. err := ctx.BindJSON(&temp)
  21. defer func() {
  22. utils.DefaultLogger().Infof("Header:%#v Requests:%#v Response:%#v", header, req, resp)
  23. }()
  24. temp.MSGBODY = resp
  25. if err != nil {
  26. resp.RESP.RCODE = "306"
  27. resp.RESP.RMSG = err.Error()
  28. ctx.JSON(200, temp)
  29. return
  30. }
  31. code, err := header.check()
  32. if err != nil {
  33. resp.RESP.RCODE = code
  34. resp.RESP.RMSG = err.Error()
  35. ctx.JSON(200, temp)
  36. return
  37. }
  38. code, err = req.check(header.APPID)
  39. if err != nil {
  40. resp.RESP.RCODE = code
  41. resp.RESP.RMSG = err.Error()
  42. ctx.JSON(200, temp)
  43. return
  44. }
  45. resp.getData()
  46. ctx.JSON(200, temp)
  47. }