user_yanxuan_permission.go 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package models
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "hongze/hongze_cygx/utils"
  5. "time"
  6. )
  7. type CygxUserYanxuanPermission struct {
  8. UserYanxuanPermissionId int64 `orm:"column(user_yanxuan_permission_id);pk"`
  9. UserId int `description:"用户ID"`
  10. CompanyId int `description:"权限开始日期"`
  11. StartDate string `description:"权限开始日期"`
  12. EndDate string `description:"权限结束日期"`
  13. Status string `description:"'试用','未开通'"`
  14. Mobile string `description:"手机号"`
  15. Email string `description:"邮箱"`
  16. RealName string `description:"用户实际名称"`
  17. CompanyName string `description:"公司名称"`
  18. AdminId int `description:"后台添加人员ID"`
  19. AdminRealName string `description:"后台添加人员姓名"`
  20. CreatedTime time.Time `description:"创建时间"`
  21. LastUpdatedTime time.Time `description:"修改时间根据时间戳自动更新"`
  22. ModifyTime time.Time `description:"修改时间"`
  23. }
  24. type CygxUserYanxuanPermissionLog struct {
  25. UserYanxuanPermissionId int64 `orm:"column(user_yanxuan_permission_log_id);pk"`
  26. UserId int `description:"用户ID"`
  27. CompanyId int `description:"权限开始日期"`
  28. StartDate string `description:"权限开始日期"`
  29. EndDate string `description:"权限结束日期"`
  30. Status string `description:"'试用','未开通'"`
  31. Mobile string `description:"手机号"`
  32. Email string `description:"邮箱"`
  33. RealName string `description:"用户实际名称"`
  34. CompanyName string `description:"公司名称"`
  35. AdminId int `description:"后台添加人员ID"`
  36. AdminRealName string `description:"后台添加人员姓名"`
  37. CreatedTime time.Time `description:"创建时间"`
  38. LastUpdatedTime time.Time `description:"修改时间根据时间戳自动更新"`
  39. ModifyTime time.Time `description:"修改时间"`
  40. }
  41. // 添加
  42. func AddCygxUserYanxuanPermission(item *CygxUserYanxuanPermission) (lastId int64, err error) {
  43. o := orm.NewOrm()
  44. lastId, err = o.Insert(item)
  45. return
  46. }
  47. // 添加日志记录
  48. func AddCygxUserYanxuanPermissionLog(item *CygxUserYanxuanPermissionLog) (lastId int64, err error) {
  49. o := orm.NewOrm()
  50. lastId, err = o.Insert(item)
  51. return
  52. }
  53. // 根据用户ID获取是否开通过研选权限
  54. func GetCygxUserYanxuanPermissionCountByUserId(userId int) (count int, err error) {
  55. o := orm.NewOrm()
  56. sql := ` SELECT COUNT(1) FROM cygx_user_yanxuan_permission WHERE status = '试用' AND user_id = ? `
  57. err = o.Raw(sql, userId).QueryRow(&count)
  58. return
  59. }
  60. // 将研选权限状态改为未开通
  61. func UpdateCygxUserYanxuanPermissionClose(userId int) (err error) {
  62. o := orm.NewOrm()
  63. sql := ` UPDATE cygx_user_yanxuan_permission
  64. SET
  65. status ='未开通',
  66. modify_time = ?
  67. WHERE user_id = ? `
  68. _, err = o.Raw(sql, time.Now(), userId).Exec()
  69. return
  70. }
  71. // 列表
  72. func GetCygxUserYanxuanPermissionList(condition string, pars []interface{}, startSize, pageSize int) (items []*CygxUserYanxuanPermission, err error) {
  73. o := orm.NewOrm()
  74. sql := `SELECT * FROM cygx_user_yanxuan_permission WHERE 1= 1 `
  75. if condition != "" {
  76. sql += condition
  77. }
  78. sql += ` LIMIT ?,? `
  79. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  80. return
  81. }
  82. // 根据用户ID获取研选开通详情
  83. func GetCygxUserYanxuanPermissionDetailByUserId(userId int) (item *CygxUserYanxuanPermission, err error) {
  84. o := orm.NewOrm()
  85. sql := `SELECT * FROM cygx_user_yanxuan_permission WHERE status = '试用' AND user_id = ? `
  86. err = o.Raw(sql, userId).QueryRow(&item)
  87. return
  88. }
  89. // UpdateCygxUserYanxuanPermissionToClose 把权限到期的状态进行更新
  90. func UpdateCygxUserYanxuanPermissionToClose() (err error) {
  91. o := orm.NewOrm()
  92. sql := `UPDATE cygx_user_yanxuan_permission SET status = '未开通' WHERE status = '试用' AND end_date < ? `
  93. _, err = o.Raw(sql, time.Now().Format(utils.FormatDate)).Exec()
  94. return
  95. }