User.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package Account
  2. import (
  3. "Yunlot/logs"
  4. "Yunlot/models"
  5. "fmt"
  6. "github.com/astaxie/beego/cache"
  7. "github.com/beego/beego/v2/adapter/orm"
  8. "time"
  9. )
  10. type User struct {
  11. T_uuid string `orm:"size(8);pk" json:"uuid"`
  12. T_user string `orm:"size(256);index" json:"user"` // 用户名 手机
  13. T_tokey string `orm:"-" json:"tokey"` // TOKEY
  14. T_State int `orm:"size(200);1" json:"-"` // 1 正常 2 删除\禁用
  15. CreateTime models.Time `orm:"column(create_time);type(timestamp);null;auto_now_add" json:"-"` //auto_now 每次 model 保存时都会对时间自动更新
  16. UpdateTime models.Time `orm:"column(update_time);type(timestamp);null;auto_now" json:"-"` //auto_now_add 第一次保存时才设置时间
  17. }
  18. type VCode struct {
  19. T_Code string
  20. }
  21. func (t *User) TableName() string {
  22. return "User" // 数据库名称 // ************** 替换 FormulaList **************
  23. }
  24. var redis_Verify cache.Cache
  25. func init() {
  26. //注册模型
  27. orm.RegisterModel(new(User))
  28. var err error
  29. redis_Verify, err = cache.NewCache("memory", `{"interval":60}`)
  30. if err != nil || redis_Verify == nil {
  31. panic(any(err))
  32. }
  33. }
  34. // ---------------- Redis -------------------
  35. // Redis_Set(m.T_sn,m) // Redis 更新缓存
  36. func Redis_Verify_Set(key string, r string) (err error) {
  37. err = redis_Verify.Put(key, r, 5*time.Minute)
  38. if err != nil {
  39. logs.Println("set key:", key, ",value:", r, err)
  40. }
  41. return
  42. }
  43. // if r,is :=Redis_Get(T_sn);is{
  44. // return r,nil
  45. // }
  46. func Redis_Verify_Get(key string) (string, bool) {
  47. if redis_Verify.IsExist(key) {
  48. //println("找到key:",key)
  49. v := redis_Verify.Get(key)
  50. return v.(string), true
  51. }
  52. //println("没有 找到key:",key)
  53. return "", false
  54. }
  55. func Redis_Verify_DelK(key string) (err error) {
  56. err = redis_Verify.Delete(key)
  57. return
  58. }
  59. // ---------------- 方法 -------------------
  60. // 获取 ById
  61. func (t *User) Read() bool {
  62. o := orm.NewOrm()
  63. err := o.Read(t, "T_uuid") // o.Read(&r,"Tokey") 如果不是 主键 就得指定字段名
  64. if err != nil {
  65. return false
  66. }
  67. return true
  68. }
  69. // 添加
  70. func (t *User) Add() (id int64, is bool) {
  71. o := orm.NewOrm()
  72. id, err := o.Insert(t)
  73. if err != nil {
  74. return 0, false
  75. }
  76. return id, true
  77. }
  78. // 修改
  79. func (t *User) Update(cols ...string) bool {
  80. o := orm.NewOrm()
  81. if num, err := o.Update(&t, cols...); err == nil {
  82. fmt.Println("Number of records updated in database:", num)
  83. return true
  84. }
  85. return false
  86. }