user.go 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. package v1
  2. import (
  3. "designs/app/common/request"
  4. "designs/app/common/response"
  5. "designs/common"
  6. "designs/config"
  7. "designs/global"
  8. "errors"
  9. "fmt"
  10. "time"
  11. "github.com/gin-gonic/gin"
  12. )
  13. type GameConfig struct {
  14. Gid string `form:"gid" json:"gid" binding:"required"` //游戏id
  15. GameName string `form:"gameName" json:"gameName" binding:"required"` //游戏名称
  16. WxAppid string `form:"wxAppid" json:"wxAppid" binding:"required"` //微信appid
  17. WxSecret string `form:"wxSecret" json:"wxSecret" binding:"required"` //微信secret
  18. TtAppid string `form:"ttAppid" json:"ttAppid" binding:"required"` //抖音appid
  19. TtSecret string `form:"ttSecret" json:"ttSecret" binding:"required"` //抖音secret
  20. AppSecret string `form:"appSecret" json:"appSecret" binding:"required"` //游戏配置密钥
  21. }
  22. type GetGameCfg struct {
  23. AppSecret string `form:"appSecret" json:"appSecret" binding:"required"` //游戏配置密钥
  24. }
  25. /* code 结构体 */
  26. type CodeData struct {
  27. Code string `form:"code" json:"code" binding:"required"`
  28. Gid string `form:"gid" json:"gid" binding:"required"`
  29. Pf string `form:"pf" json:"pf" binding:"required"`
  30. }
  31. /* 保存数据结构体 */
  32. type SaveData struct {
  33. Extend string `form:"extend" json:"extend" binding:"required"`
  34. Data string `form:"data" json:"data" binding:"required"`
  35. Secret string `form:"secret" json:"secret" binding:""`
  36. }
  37. /* 获取结构体 */
  38. type GetSaveData struct {
  39. Extend string `form:"extend" json:"extend" binding:"required"`
  40. }
  41. /*
  42. *登陆
  43. */
  44. func Login(c *gin.Context) {
  45. //http://127.0.0.1:8787/v1/user/login
  46. // 使用 ShouldBind 方法自动绑定:
  47. form := request.Check(c, &struct {
  48. UserName string `form:"userName" json:"userName" binding:"required"`
  49. Password string `form:"password" json:"password" binding:"required"`
  50. }{})
  51. //验证
  52. adminUser := config.Get("app.admin_user")
  53. adminSecret := config.Get("app.admin_secret")
  54. if form.UserName != adminUser || form.Password != adminSecret {
  55. response.Fail(c, 1000, errors.New("账号密码错误"))
  56. }
  57. //获取token
  58. token, err := common.GetJwtToken(form.UserName, 0)
  59. //刷新refreshtoken
  60. refresh, _ := common.GetJwtToken(form.UserName, 1)
  61. if err != nil {
  62. response.Fail(c, 1003, err.Error())
  63. return
  64. }
  65. //回传
  66. response.Success(c, gin.H{
  67. "token": token,
  68. "refreshToken": refresh,
  69. "loginTime": time.Now().Unix(),
  70. "ip": c.ClientIP(),
  71. })
  72. }
  73. /* 刷新token */
  74. func RefreshToken(c *gin.Context) {
  75. userName := c.GetString("userName")
  76. //获取token
  77. token, err0 := common.GetJwtToken(userName, 0)
  78. if err0 != nil {
  79. global.App.Log.Info("RefreshToken err")
  80. common.RetJson(1003, "RefreshToken err", "", c)
  81. return
  82. }
  83. data := map[string]interface{}{
  84. "token": token,
  85. }
  86. //返回数据
  87. common.RetJson(0, "success", data, c)
  88. }
  89. /* 获取时间 */
  90. func GetSysTime(c *gin.Context) {
  91. time := time.Now().Unix()
  92. common.RetJson(0, "获取系统时间", time, c)
  93. }
  94. func UserList(c *gin.Context) {
  95. form := request.Check(c, &struct {
  96. Offset int `form:"offset" json:"offset" binding:""`
  97. Limit int `form:"limit" json:"limit" binding:"required"`
  98. }{})
  99. fmt.Print(form)
  100. }