auths.gen.go 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378
  1. // Code generated by gorm.io/gen. DO NOT EDIT.
  2. // Code generated by gorm.io/gen. DO NOT EDIT.
  3. // Code generated by gorm.io/gen. DO NOT EDIT.
  4. package query
  5. import (
  6. "context"
  7. "strings"
  8. "gorm.io/gorm"
  9. "gorm.io/gorm/clause"
  10. "gorm.io/gorm/schema"
  11. "gorm.io/gen"
  12. "gorm.io/gen/field"
  13. "gorm.io/plugin/dbresolver"
  14. "github.com/0xJacky/Nginx-UI/model"
  15. )
  16. func newUser(db *gorm.DB, opts ...gen.DOOption) user {
  17. _user := user{}
  18. _user.userDo.UseDB(db, opts...)
  19. _user.userDo.UseModel(&model.User{})
  20. tableName := _user.userDo.TableName()
  21. _user.ALL = field.NewAsterisk(tableName)
  22. _user.ID = field.NewUint64(tableName, "id")
  23. _user.CreatedAt = field.NewTime(tableName, "created_at")
  24. _user.UpdatedAt = field.NewTime(tableName, "updated_at")
  25. _user.DeletedAt = field.NewField(tableName, "deleted_at")
  26. _user.Name = field.NewString(tableName, "name")
  27. _user.Password = field.NewString(tableName, "password")
  28. _user.Status = field.NewBool(tableName, "status")
  29. _user.OTPSecret = field.NewBytes(tableName, "otp_secret")
  30. _user.fillFieldMap()
  31. return _user
  32. }
  33. type user struct {
  34. userDo
  35. ALL field.Asterisk
  36. ID field.Uint64
  37. CreatedAt field.Time
  38. UpdatedAt field.Time
  39. DeletedAt field.Field
  40. Name field.String
  41. Password field.String
  42. Status field.Bool
  43. OTPSecret field.Bytes
  44. fieldMap map[string]field.Expr
  45. }
  46. func (u user) Table(newTableName string) *user {
  47. u.userDo.UseTable(newTableName)
  48. return u.updateTableName(newTableName)
  49. }
  50. func (u user) As(alias string) *user {
  51. u.userDo.DO = *(u.userDo.As(alias).(*gen.DO))
  52. return u.updateTableName(alias)
  53. }
  54. func (u *user) updateTableName(table string) *user {
  55. u.ALL = field.NewAsterisk(table)
  56. u.ID = field.NewUint64(table, "id")
  57. u.CreatedAt = field.NewTime(table, "created_at")
  58. u.UpdatedAt = field.NewTime(table, "updated_at")
  59. u.DeletedAt = field.NewField(table, "deleted_at")
  60. u.Name = field.NewString(table, "name")
  61. u.Password = field.NewString(table, "password")
  62. u.Status = field.NewBool(table, "status")
  63. u.OTPSecret = field.NewBytes(table, "otp_secret")
  64. u.fillFieldMap()
  65. return u
  66. }
  67. func (u *user) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
  68. _f, ok := u.fieldMap[fieldName]
  69. if !ok || _f == nil {
  70. return nil, false
  71. }
  72. _oe, ok := _f.(field.OrderExpr)
  73. return _oe, ok
  74. }
  75. func (u *user) fillFieldMap() {
  76. u.fieldMap = make(map[string]field.Expr, 8)
  77. u.fieldMap["id"] = u.ID
  78. u.fieldMap["created_at"] = u.CreatedAt
  79. u.fieldMap["updated_at"] = u.UpdatedAt
  80. u.fieldMap["deleted_at"] = u.DeletedAt
  81. u.fieldMap["name"] = u.Name
  82. u.fieldMap["password"] = u.Password
  83. u.fieldMap["status"] = u.Status
  84. u.fieldMap["otp_secret"] = u.OTPSecret
  85. }
  86. func (u user) clone(db *gorm.DB) user {
  87. u.userDo.ReplaceConnPool(db.Statement.ConnPool)
  88. return u
  89. }
  90. func (u user) replaceDB(db *gorm.DB) user {
  91. u.userDo.ReplaceDB(db)
  92. return u
  93. }
  94. type userDo struct{ gen.DO }
  95. // FirstByID Where("id=@id")
  96. func (u userDo) FirstByID(id uint64) (result *model.User, err error) {
  97. var params []interface{}
  98. var generateSQL strings.Builder
  99. params = append(params, id)
  100. generateSQL.WriteString("id=? ")
  101. var executeSQL *gorm.DB
  102. executeSQL = u.UnderlyingDB().Where(generateSQL.String(), params...).Take(&result) // ignore_security_alert
  103. err = executeSQL.Error
  104. return
  105. }
  106. // DeleteByID update @@table set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=@id
  107. func (u userDo) DeleteByID(id uint64) (err error) {
  108. var params []interface{}
  109. var generateSQL strings.Builder
  110. params = append(params, id)
  111. generateSQL.WriteString("update auths set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=? ")
  112. var executeSQL *gorm.DB
  113. executeSQL = u.UnderlyingDB().Exec(generateSQL.String(), params...) // ignore_security_alert
  114. err = executeSQL.Error
  115. return
  116. }
  117. func (u userDo) Debug() *userDo {
  118. return u.withDO(u.DO.Debug())
  119. }
  120. func (u userDo) WithContext(ctx context.Context) *userDo {
  121. return u.withDO(u.DO.WithContext(ctx))
  122. }
  123. func (u userDo) ReadDB() *userDo {
  124. return u.Clauses(dbresolver.Read)
  125. }
  126. func (u userDo) WriteDB() *userDo {
  127. return u.Clauses(dbresolver.Write)
  128. }
  129. func (u userDo) Session(config *gorm.Session) *userDo {
  130. return u.withDO(u.DO.Session(config))
  131. }
  132. func (u userDo) Clauses(conds ...clause.Expression) *userDo {
  133. return u.withDO(u.DO.Clauses(conds...))
  134. }
  135. func (u userDo) Returning(value interface{}, columns ...string) *userDo {
  136. return u.withDO(u.DO.Returning(value, columns...))
  137. }
  138. func (u userDo) Not(conds ...gen.Condition) *userDo {
  139. return u.withDO(u.DO.Not(conds...))
  140. }
  141. func (u userDo) Or(conds ...gen.Condition) *userDo {
  142. return u.withDO(u.DO.Or(conds...))
  143. }
  144. func (u userDo) Select(conds ...field.Expr) *userDo {
  145. return u.withDO(u.DO.Select(conds...))
  146. }
  147. func (u userDo) Where(conds ...gen.Condition) *userDo {
  148. return u.withDO(u.DO.Where(conds...))
  149. }
  150. func (u userDo) Order(conds ...field.Expr) *userDo {
  151. return u.withDO(u.DO.Order(conds...))
  152. }
  153. func (u userDo) Distinct(cols ...field.Expr) *userDo {
  154. return u.withDO(u.DO.Distinct(cols...))
  155. }
  156. func (u userDo) Omit(cols ...field.Expr) *userDo {
  157. return u.withDO(u.DO.Omit(cols...))
  158. }
  159. func (u userDo) Join(table schema.Tabler, on ...field.Expr) *userDo {
  160. return u.withDO(u.DO.Join(table, on...))
  161. }
  162. func (u userDo) LeftJoin(table schema.Tabler, on ...field.Expr) *userDo {
  163. return u.withDO(u.DO.LeftJoin(table, on...))
  164. }
  165. func (u userDo) RightJoin(table schema.Tabler, on ...field.Expr) *userDo {
  166. return u.withDO(u.DO.RightJoin(table, on...))
  167. }
  168. func (u userDo) Group(cols ...field.Expr) *userDo {
  169. return u.withDO(u.DO.Group(cols...))
  170. }
  171. func (u userDo) Having(conds ...gen.Condition) *userDo {
  172. return u.withDO(u.DO.Having(conds...))
  173. }
  174. func (u userDo) Limit(limit int) *userDo {
  175. return u.withDO(u.DO.Limit(limit))
  176. }
  177. func (u userDo) Offset(offset int) *userDo {
  178. return u.withDO(u.DO.Offset(offset))
  179. }
  180. func (u userDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *userDo {
  181. return u.withDO(u.DO.Scopes(funcs...))
  182. }
  183. func (u userDo) Unscoped() *userDo {
  184. return u.withDO(u.DO.Unscoped())
  185. }
  186. func (u userDo) Create(values ...*model.User) error {
  187. if len(values) == 0 {
  188. return nil
  189. }
  190. return u.DO.Create(values)
  191. }
  192. func (u userDo) CreateInBatches(values []*model.User, batchSize int) error {
  193. return u.DO.CreateInBatches(values, batchSize)
  194. }
  195. // Save : !!! underlying implementation is different with GORM
  196. // The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
  197. func (u userDo) Save(values ...*model.User) error {
  198. if len(values) == 0 {
  199. return nil
  200. }
  201. return u.DO.Save(values)
  202. }
  203. func (u userDo) First() (*model.User, error) {
  204. if result, err := u.DO.First(); err != nil {
  205. return nil, err
  206. } else {
  207. return result.(*model.User), nil
  208. }
  209. }
  210. func (u userDo) Take() (*model.User, error) {
  211. if result, err := u.DO.Take(); err != nil {
  212. return nil, err
  213. } else {
  214. return result.(*model.User), nil
  215. }
  216. }
  217. func (u userDo) Last() (*model.User, error) {
  218. if result, err := u.DO.Last(); err != nil {
  219. return nil, err
  220. } else {
  221. return result.(*model.User), nil
  222. }
  223. }
  224. func (u userDo) Find() ([]*model.User, error) {
  225. result, err := u.DO.Find()
  226. return result.([]*model.User), err
  227. }
  228. func (u userDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.User, err error) {
  229. buf := make([]*model.User, 0, batchSize)
  230. err = u.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
  231. defer func() { results = append(results, buf...) }()
  232. return fc(tx, batch)
  233. })
  234. return results, err
  235. }
  236. func (u userDo) FindInBatches(result *[]*model.User, batchSize int, fc func(tx gen.Dao, batch int) error) error {
  237. return u.DO.FindInBatches(result, batchSize, fc)
  238. }
  239. func (u userDo) Attrs(attrs ...field.AssignExpr) *userDo {
  240. return u.withDO(u.DO.Attrs(attrs...))
  241. }
  242. func (u userDo) Assign(attrs ...field.AssignExpr) *userDo {
  243. return u.withDO(u.DO.Assign(attrs...))
  244. }
  245. func (u userDo) Joins(fields ...field.RelationField) *userDo {
  246. for _, _f := range fields {
  247. u = *u.withDO(u.DO.Joins(_f))
  248. }
  249. return &u
  250. }
  251. func (u userDo) Preload(fields ...field.RelationField) *userDo {
  252. for _, _f := range fields {
  253. u = *u.withDO(u.DO.Preload(_f))
  254. }
  255. return &u
  256. }
  257. func (u userDo) FirstOrInit() (*model.User, error) {
  258. if result, err := u.DO.FirstOrInit(); err != nil {
  259. return nil, err
  260. } else {
  261. return result.(*model.User), nil
  262. }
  263. }
  264. func (u userDo) FirstOrCreate() (*model.User, error) {
  265. if result, err := u.DO.FirstOrCreate(); err != nil {
  266. return nil, err
  267. } else {
  268. return result.(*model.User), nil
  269. }
  270. }
  271. func (u userDo) FindByPage(offset int, limit int) (result []*model.User, count int64, err error) {
  272. result, err = u.Offset(offset).Limit(limit).Find()
  273. if err != nil {
  274. return
  275. }
  276. if size := len(result); 0 < limit && 0 < size && size < limit {
  277. count = int64(size + offset)
  278. return
  279. }
  280. count, err = u.Offset(-1).Limit(-1).Count()
  281. return
  282. }
  283. func (u userDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
  284. count, err = u.Count()
  285. if err != nil {
  286. return
  287. }
  288. err = u.Offset(offset).Limit(limit).Scan(result)
  289. return
  290. }
  291. func (u userDo) Scan(result interface{}) (err error) {
  292. return u.DO.Scan(result)
  293. }
  294. func (u userDo) Delete(models ...*model.User) (result gen.ResultInfo, err error) {
  295. return u.DO.Delete(models)
  296. }
  297. func (u *userDo) withDO(do gen.Dao) *userDo {
  298. u.DO = *do.(*gen.DO)
  299. return u
  300. }