admin.go 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. package admin
  2. import "time"
  3. // Admin [...]
  4. type Admin struct {
  5. AdminID int64 `gorm:"primaryKey;column:admin_id;type:bigint(20);not null" json:"-"`
  6. AdminName string `gorm:"uniqueIndex:un;index:name;index:admin_pass;column:admin_name;type:varchar(60);not null" json:"adminName"`
  7. AdminAvatar string `gorm:"column:admin_avatar;type:varchar(255)" json:"adminAvatar"`
  8. RealName string `gorm:"column:real_name;type:varchar(60)" json:"realName"`
  9. Password string `gorm:"index:password;index:admin_pass;column:password;type:varchar(60);not null" json:"password"`
  10. LastUpdatedPasswordTime time.Time `gorm:"column:last_updated_password_time;type:datetime" json:"lastUpdatedPasswordTime"`
  11. Enabled int8 `gorm:"uniqueIndex:un;column:enabled;type:tinyint(1);not null;default:1" json:"enabled"` // 1:有效,0:禁用
  12. Email string `gorm:"column:email;type:varchar(60)" json:"email"`
  13. LastLoginTime time.Time `gorm:"column:last_login_time;type:datetime" json:"lastLoginTime"` // 最近登陆时间
  14. CreatedTime time.Time `gorm:"index:created_time;column:created_time;type:datetime;default:CURRENT_TIMESTAMP" json:"createdTime"` // 创建时间
  15. LastUpdatedTime time.Time `gorm:"index:last_updated_time;column:last_updated_time;type:timestamp;not null;default:CURRENT_TIMESTAMP" json:"lastUpdatedTime"`
  16. Role string `gorm:"column:role;type:varchar(30);default:saller" json:"role"` // 用户角色
  17. Mobile string `gorm:"column:mobile;type:varchar(20)" json:"mobile"` // 手机号
  18. RoleType int8 `gorm:"column:role_type;type:tinyint(4);default:0" json:"roleType"` // 角色类型:1需要录入指标,0:不需要
  19. RoleID int `gorm:"column:role_id;type:int(11);default:0" json:"roleId"` // 角色id
  20. RoleName string `gorm:"column:role_name;type:varchar(100)" json:"roleName"` // 角色名称
  21. RoleTypeCode string `gorm:"column:role_type_code;type:varchar(20);default:''" json:"roleTypeCode"` // 角色编码
  22. DepartmentID int `gorm:"column:department_id;type:int(11);default:0" json:"departmentId"` // 部门id
  23. DepartmentName string `gorm:"column:department_name;type:varchar(100)" json:"departmentName"` // 部门名称
  24. GroupID int `gorm:"column:group_id;type:int(11);default:0" json:"groupId"` // 分组id
  25. GroupName string `gorm:"column:group_name;type:varchar(100)" json:"groupName"` // 分组名称
  26. Authority int8 `gorm:"column:authority;type:tinyint(4);default:0" json:"authority"` // 管理权限,0:无,1:部门负责人,2:小组负责人,3:超级管理员
  27. Position string `gorm:"column:position;type:varchar(100)" json:"position"` // 职位
  28. }
  29. // TableName get sql table name.获取数据库表名
  30. func (m *Admin) TableName() string {
  31. return "admin"
  32. }
  33. // AdminColumns get sql column name.获取数据库列名
  34. var AdminColumns = struct {
  35. AdminID string
  36. AdminName string
  37. RealName string
  38. Password string
  39. LastUpdatedPasswordTime string
  40. Enabled string
  41. Email string
  42. LastLoginTime string
  43. CreatedTime string
  44. LastUpdatedTime string
  45. Role string
  46. Mobile string
  47. RoleType string
  48. RoleID string
  49. RoleName string
  50. RoleTypeCode string
  51. DepartmentID string
  52. DepartmentName string
  53. GroupID string
  54. GroupName string
  55. Authority string
  56. Position string
  57. }{
  58. AdminID: "admin_id",
  59. AdminName: "admin_name",
  60. RealName: "real_name",
  61. Password: "password",
  62. LastUpdatedPasswordTime: "last_updated_password_time",
  63. Enabled: "enabled",
  64. Email: "email",
  65. LastLoginTime: "last_login_time",
  66. CreatedTime: "created_time",
  67. LastUpdatedTime: "last_updated_time",
  68. Role: "role",
  69. Mobile: "mobile",
  70. RoleType: "role_type",
  71. RoleID: "role_id",
  72. RoleName: "role_name",
  73. RoleTypeCode: "role_type_code",
  74. DepartmentID: "department_id",
  75. DepartmentName: "department_name",
  76. GroupID: "group_id",
  77. GroupName: "group_name",
  78. Authority: "authority",
  79. Position: "position",
  80. }