SysPublicController.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package partial
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "git.qianqiusoft.com/qianqiusoft/light-apiengine/entitys"
  6. "git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
  7. "git.qianqiusoft.com/qianqiusoft/light-apiengine/third/alipay"
  8. "git.qianqiusoft.com/qianqiusoft/light-apiengine/third/wx"
  9. "github.com/silenceper/wechat/pay"
  10. "io/ioutil"
  11. //sysmodel "git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
  12. //sysutils "git.qianqiusoft.com/qianqiusoft/light-apiengine/utils"
  13. //"git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
  14. //__import_packages__
  15. )
  16. // _WxpayCallback
  17. // @Title _WxpayCallback
  18. // @Description 微信支付回调
  19. // @Success 200 {object} Account
  20. // @Failure 403 :id is empty
  21. func SysPublic_WxpayCallback(c *entitys.CtrlContext) {
  22. r := wx.CallWxPayCallbackHandler(c)
  23. if r.Code != 200{
  24. c.Ctx.JSON(500, r)
  25. }else{
  26. res := pay.NotifyResponse{}
  27. res.ReturnCode = "SUCCESS"
  28. res.ReturnMsg = "OK"
  29. c.Ctx.XML(200,&res)
  30. }
  31. }
  32. // _WxoauthParams
  33. // @Title _WxoauthParams
  34. // @Description 获取微信oauth配置
  35. // @Success 200 {object} Account
  36. // @Failure 403 :id is empty
  37. func SysPublic_WxoauthParams(c *entitys.CtrlContext) {
  38. contentBody, err := ioutil.ReadAll(c.Ctx.Request.Body)
  39. if err != nil{
  40. fmt.Println("读取body错误", err.Error())
  41. c.Ctx.JSON(500, models.SysReturn{500, err.Error(), ""})
  42. return
  43. }
  44. bmap := make(map[string]string)
  45. err = json.Unmarshal(contentBody, &bmap)
  46. if err != nil{
  47. fmt.Println("Unmarshal错误", err.Error())
  48. c.Ctx.JSON(500, models.SysReturn{500, err.Error(), ""})
  49. return
  50. }
  51. param, err := wx.GetOAuthParams(bmap)
  52. if err != nil{
  53. c.Ctx.JSON(500, models.SysReturn{500, "", ""})
  54. }else{
  55. c.Ctx.JSON(200, models.SysReturn{200, "", param})
  56. }
  57. }
  58. // _WxjssdkParams
  59. // @Title _WxjssdkParams
  60. // @Description 获取微信jssdk配置
  61. // @Success 200 {object} Account
  62. // @Failure 403 :id is empty
  63. func SysPublic_WxjssdkParams(c *entitys.CtrlContext) {
  64. url := c.Ctx.DefaultQuery("url", "")
  65. if url == ""{
  66. c.Ctx.JSON(200, models.SysReturn{500, "参数rul为空", ""})
  67. return
  68. }
  69. config, err := wx.GetJSSDKRarams(url)
  70. if err != nil{
  71. c.Ctx.JSON(200, models.SysReturn{500, err.Error(), ""})
  72. }else{
  73. c.Ctx.JSON(200, models.SysReturn{200, "", config})
  74. }
  75. }
  76. // _AlipayCallback
  77. // @Title _AlipayCallback
  78. // @Description 支付宝支付回调
  79. // @Success 200 {object} Account
  80. // @Failure 403 :id is empty
  81. func SysPublic_AlipayCallback(c *entitys.CtrlContext) {
  82. alipay.CallWxPayCallbackHandler(c)
  83. }
  84. func __none_func_sys_public__(params ... interface{}) bool{
  85. return true
  86. }