wx_token.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package wx_token
  2. import "hongze/hongze_yb/global"
  3. // WxToken [...]
  4. type WxToken struct {
  5. AccessToken string `gorm:"column:access_token;type:varchar(512);not null" json:"accessToken"` // 微信token
  6. ExpiresIn int64 `gorm:"column:expires_in;type:bigint(20);not null" json:"expiresIn"` // 过期时间
  7. ID int `gorm:"primaryKey;column:id;type:int(11);not null" json:"-"` // id
  8. }
  9. // TableName get sql table name.获取数据库表名
  10. func (m *WxToken) TableName() string {
  11. return "wx_token"
  12. }
  13. // WxTokenColumns get sql column name.获取数据库列名
  14. var WxTokenColumns = struct {
  15. AccessToken string
  16. ExpiresIn string
  17. ID string
  18. }{
  19. AccessToken: "access_token",
  20. ExpiresIn: "expires_in",
  21. ID: "id",
  22. }
  23. // GetAccessToken 获取accessToken
  24. func GetAccessToken() (accessToken string, err error) {
  25. err = global.DEFAULT_MYSQL.Table("wx_token").Select("access_token").Where("id = ?", 0).Scan(&accessToken).Error
  26. return
  27. }
  28. // GetById 根据id获取accessToken信息
  29. func GetById() (info WxToken, err error) {
  30. err = global.DEFAULT_MYSQL.Where("id = ?", 0).First(&info).Error
  31. return
  32. }
  33. // SetAccessToken 设置accessToken
  34. func SetAccessToken(accessToken string, expiresIn int64) (err error) {
  35. err = global.DEFAULT_MYSQL.Model(WxToken{}).Select("access_token,expires_in").Where("id = 0 ").Updates(WxToken{
  36. AccessToken: accessToken,
  37. ExpiresIn: expiresIn,
  38. }).Error
  39. return
  40. }
  41. // Update 更新对应字段数据
  42. func (wxToken *WxToken) Update(updateCols []string) (err error) {
  43. err = global.DEFAULT_MYSQL.Model(wxToken).Select(updateCols).Updates(*wxToken).Error
  44. return
  45. }