VerifyTemplateTime.go 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package VerifyTemplate
  2. import (
  3. "ColdVerify_server/lib"
  4. "ColdVerify_server/logs"
  5. "fmt"
  6. "github.com/beego/beego/v2/adapter/orm"
  7. orm2 "github.com/beego/beego/v2/client/orm"
  8. _ "github.com/go-sql-driver/mysql"
  9. "time"
  10. )
  11. // 模板
  12. type VerifyTemplateTime struct {
  13. Id int `orm:"column(ID);size(11);auto;pk"`
  14. T_id string `orm:"size(256);null"`
  15. T_VerifyTemplateMap_id string `orm:"size(256);null"` // 标题
  16. T_tag string `orm:"size(256);null"` // 对应标签
  17. T_step_name string `orm:"size(256);null"` // 步骤名称
  18. T_min_time int `orm:"size(256);"` // 最小时间
  19. T_max_time int `orm:"size(256);"` // 最大时间
  20. T_text string `orm:"type(text);null"` // 描述
  21. T_sort int `orm:"size(2);default(1)"` // 排序
  22. CreateTime time.Time `orm:"column(create_time);type(timestamp);null;auto_now_add"` //auto_now_add 第一次保存时才设置时间
  23. UpdateTime time.Time `orm:"column(update_time);type(timestamp);null;auto_now"` //auto_now 每次 model 保存时都会对时间自动更新
  24. }
  25. type VerifyTemplateTime_R struct {
  26. T_id string // 标签id
  27. T_VerifyTemplateMap_id string // 标签id
  28. T_VerifyTemplateMap_Name string // 标签名称
  29. T_tag string // 步骤名称
  30. T_step_name string // 步骤名称
  31. T_min_time int // 最小时间
  32. T_max_time int // 最大时间
  33. T_text string // 描述
  34. T_sort int // 排序
  35. }
  36. func (t *VerifyTemplateTime) TableName() string {
  37. return "verify_template_time" // 数据库名称 // ************** 替换 FormulaList **************
  38. }
  39. func init() {
  40. //注册模型
  41. orm.RegisterModel(new(VerifyTemplateTime))
  42. }
  43. // -------------------------------------------------------------
  44. func VerifyTemplateTimeToVerifyTemplateTime_R(T VerifyTemplateTime, Map VerifyTemplateMap) (T_r VerifyTemplateTime_R) {
  45. T_r.T_id = T.T_id
  46. T_r.T_VerifyTemplateMap_id = T.T_VerifyTemplateMap_id
  47. T_r.T_VerifyTemplateMap_Name = Map.T_name
  48. T_r.T_tag = T.T_tag
  49. T_r.T_step_name = T.T_step_name
  50. T_r.T_min_time = T.T_min_time
  51. T_r.T_max_time = T.T_max_time
  52. T_r.T_text = T.T_text
  53. T_r.T_sort = T.T_sort
  54. return T_r
  55. }
  56. // ---------------- 特殊方法 -------------------
  57. // 获取 ById
  58. func Read_VerifyTemplateTime_ById(id int) (r VerifyTemplateTime, is bool) {
  59. o := orm.NewOrm()
  60. r = VerifyTemplateTime{Id: id}
  61. err := o.Read(&r) // o.Read(&r,"Tokey") 如果不是 主键 就得指定字段名
  62. if err != nil {
  63. logs.Println(err)
  64. return r, false
  65. }
  66. return r, true
  67. }
  68. // 获取 By
  69. func Read_VerifyTemplateTime(T_id string) (r VerifyTemplateTime, is bool) {
  70. o := orm.NewOrm()
  71. qs := o.QueryTable(new(VerifyTemplateTime))
  72. err := qs.Filter("T_id", T_id).One(&r)
  73. if err != nil {
  74. return r, false
  75. }
  76. return r, true
  77. }
  78. // 添加
  79. func Add_VerifyTemplateTime(r VerifyTemplateTime) (id int64, is bool) {
  80. o := orm.NewOrm()
  81. // 生成编号
  82. rand_x := 0
  83. for true {
  84. r.T_id = lib.GetRandstring(4, "", int64(rand_x)) // 1,336,336
  85. err := o.Read(&r, "T_id") // o.Read(&r,"Tokey") 如果不是 主键 就得指定字段名
  86. if err != nil {
  87. break
  88. }
  89. rand_x += 1
  90. }
  91. id, err := o.Insert(&r)
  92. if err != nil {
  93. logs.Println(err)
  94. return 0, false
  95. }
  96. return id, true
  97. }
  98. // 删除
  99. func Delete_VerifyTemplateTime(v VerifyTemplateTime) bool {
  100. o := orm.NewOrm()
  101. if num, err := o.Delete(&v); err == nil {
  102. logs.Println("Number of records deleted in database:", num)
  103. } else {
  104. return false
  105. }
  106. return true
  107. }
  108. // 修改
  109. func Update_VerifyTemplateTime(m VerifyTemplateTime, cols ...string) bool {
  110. o := orm.NewOrm()
  111. if num, err := o.Update(&m, cols...); err == nil {
  112. fmt.Println("Number of records updated in database:", num)
  113. return true
  114. }
  115. return false
  116. }
  117. // 获取列表
  118. func Read_VerifyTemplateTime_List(T_VerifyTemplateMap_id string, Map VerifyTemplateMap, page int, page_z int) ([]VerifyTemplateTime_R, int64) {
  119. o := orm.NewOrm()
  120. // 也可以直接使用 Model 结构体作为表名
  121. var r []VerifyTemplateTime
  122. qs := o.QueryTable(new(VerifyTemplateTime))
  123. var offset int64
  124. if page <= 1 {
  125. offset = 0
  126. } else {
  127. offset = int64((page - 1) * page_z)
  128. }
  129. cond := orm.NewCondition()
  130. cond1 := cond.And("T_VerifyTemplateMap_id", T_VerifyTemplateMap_id)
  131. qs.Limit(page_z, offset).SetCond((*orm2.Condition)(cond1)).OrderBy("-T_sort").All(&r)
  132. cnt, _ := qs.SetCond((*orm2.Condition)(cond1)).Count()
  133. // 转换
  134. var VerifyTemplateTime_r []VerifyTemplateTime_R
  135. for _, v := range r {
  136. VerifyTemplateTime_r = append(VerifyTemplateTime_r, VerifyTemplateTimeToVerifyTemplateTime_R(v, Map))
  137. }
  138. return VerifyTemplateTime_r, cnt
  139. }