certs.gen.go 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579
  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 newCert(db *gorm.DB, opts ...gen.DOOption) cert {
  17. _cert := cert{}
  18. _cert.certDo.UseDB(db, opts...)
  19. _cert.certDo.UseModel(&model.Cert{})
  20. tableName := _cert.certDo.TableName()
  21. _cert.ALL = field.NewAsterisk(tableName)
  22. _cert.ID = field.NewUint64(tableName, "id")
  23. _cert.CreatedAt = field.NewTime(tableName, "created_at")
  24. _cert.UpdatedAt = field.NewTime(tableName, "updated_at")
  25. _cert.DeletedAt = field.NewField(tableName, "deleted_at")
  26. _cert.Name = field.NewString(tableName, "name")
  27. _cert.Domains = field.NewField(tableName, "domains")
  28. _cert.Filename = field.NewString(tableName, "filename")
  29. _cert.SSLCertificatePath = field.NewString(tableName, "ssl_certificate_path")
  30. _cert.SSLCertificateKeyPath = field.NewString(tableName, "ssl_certificate_key_path")
  31. _cert.AutoCert = field.NewInt(tableName, "auto_cert")
  32. _cert.ChallengeMethod = field.NewString(tableName, "challenge_method")
  33. _cert.DnsCredentialID = field.NewUint64(tableName, "dns_credential_id")
  34. _cert.ACMEUserID = field.NewUint64(tableName, "acme_user_id")
  35. _cert.KeyType = field.NewString(tableName, "key_type")
  36. _cert.Log = field.NewString(tableName, "log")
  37. _cert.Resource = field.NewField(tableName, "resource")
  38. _cert.SyncNodeIds = field.NewField(tableName, "sync_node_ids")
  39. _cert.MustStaple = field.NewBool(tableName, "must_staple")
  40. _cert.LegoDisableCNAMESupport = field.NewBool(tableName, "lego_disable_cname_support")
  41. _cert.DnsCredential = certBelongsToDnsCredential{
  42. db: db.Session(&gorm.Session{}),
  43. RelationField: field.NewRelation("DnsCredential", "model.DnsCredential"),
  44. }
  45. _cert.ACMEUser = certBelongsToACMEUser{
  46. db: db.Session(&gorm.Session{}),
  47. RelationField: field.NewRelation("ACMEUser", "model.AcmeUser"),
  48. }
  49. _cert.fillFieldMap()
  50. return _cert
  51. }
  52. type cert struct {
  53. certDo
  54. ALL field.Asterisk
  55. ID field.Uint64
  56. CreatedAt field.Time
  57. UpdatedAt field.Time
  58. DeletedAt field.Field
  59. Name field.String
  60. Domains field.Field
  61. Filename field.String
  62. SSLCertificatePath field.String
  63. SSLCertificateKeyPath field.String
  64. AutoCert field.Int
  65. ChallengeMethod field.String
  66. DnsCredentialID field.Uint64
  67. ACMEUserID field.Uint64
  68. KeyType field.String
  69. Log field.String
  70. Resource field.Field
  71. SyncNodeIds field.Field
  72. MustStaple field.Bool
  73. LegoDisableCNAMESupport field.Bool
  74. DnsCredential certBelongsToDnsCredential
  75. ACMEUser certBelongsToACMEUser
  76. fieldMap map[string]field.Expr
  77. }
  78. func (c cert) Table(newTableName string) *cert {
  79. c.certDo.UseTable(newTableName)
  80. return c.updateTableName(newTableName)
  81. }
  82. func (c cert) As(alias string) *cert {
  83. c.certDo.DO = *(c.certDo.As(alias).(*gen.DO))
  84. return c.updateTableName(alias)
  85. }
  86. func (c *cert) updateTableName(table string) *cert {
  87. c.ALL = field.NewAsterisk(table)
  88. c.ID = field.NewUint64(table, "id")
  89. c.CreatedAt = field.NewTime(table, "created_at")
  90. c.UpdatedAt = field.NewTime(table, "updated_at")
  91. c.DeletedAt = field.NewField(table, "deleted_at")
  92. c.Name = field.NewString(table, "name")
  93. c.Domains = field.NewField(table, "domains")
  94. c.Filename = field.NewString(table, "filename")
  95. c.SSLCertificatePath = field.NewString(table, "ssl_certificate_path")
  96. c.SSLCertificateKeyPath = field.NewString(table, "ssl_certificate_key_path")
  97. c.AutoCert = field.NewInt(table, "auto_cert")
  98. c.ChallengeMethod = field.NewString(table, "challenge_method")
  99. c.DnsCredentialID = field.NewUint64(table, "dns_credential_id")
  100. c.ACMEUserID = field.NewUint64(table, "acme_user_id")
  101. c.KeyType = field.NewString(table, "key_type")
  102. c.Log = field.NewString(table, "log")
  103. c.Resource = field.NewField(table, "resource")
  104. c.SyncNodeIds = field.NewField(table, "sync_node_ids")
  105. c.MustStaple = field.NewBool(table, "must_staple")
  106. c.LegoDisableCNAMESupport = field.NewBool(table, "lego_disable_cname_support")
  107. c.fillFieldMap()
  108. return c
  109. }
  110. func (c *cert) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
  111. _f, ok := c.fieldMap[fieldName]
  112. if !ok || _f == nil {
  113. return nil, false
  114. }
  115. _oe, ok := _f.(field.OrderExpr)
  116. return _oe, ok
  117. }
  118. func (c *cert) fillFieldMap() {
  119. c.fieldMap = make(map[string]field.Expr, 21)
  120. c.fieldMap["id"] = c.ID
  121. c.fieldMap["created_at"] = c.CreatedAt
  122. c.fieldMap["updated_at"] = c.UpdatedAt
  123. c.fieldMap["deleted_at"] = c.DeletedAt
  124. c.fieldMap["name"] = c.Name
  125. c.fieldMap["domains"] = c.Domains
  126. c.fieldMap["filename"] = c.Filename
  127. c.fieldMap["ssl_certificate_path"] = c.SSLCertificatePath
  128. c.fieldMap["ssl_certificate_key_path"] = c.SSLCertificateKeyPath
  129. c.fieldMap["auto_cert"] = c.AutoCert
  130. c.fieldMap["challenge_method"] = c.ChallengeMethod
  131. c.fieldMap["dns_credential_id"] = c.DnsCredentialID
  132. c.fieldMap["acme_user_id"] = c.ACMEUserID
  133. c.fieldMap["key_type"] = c.KeyType
  134. c.fieldMap["log"] = c.Log
  135. c.fieldMap["resource"] = c.Resource
  136. c.fieldMap["sync_node_ids"] = c.SyncNodeIds
  137. c.fieldMap["must_staple"] = c.MustStaple
  138. c.fieldMap["lego_disable_cname_support"] = c.LegoDisableCNAMESupport
  139. }
  140. func (c cert) clone(db *gorm.DB) cert {
  141. c.certDo.ReplaceConnPool(db.Statement.ConnPool)
  142. return c
  143. }
  144. func (c cert) replaceDB(db *gorm.DB) cert {
  145. c.certDo.ReplaceDB(db)
  146. return c
  147. }
  148. type certBelongsToDnsCredential struct {
  149. db *gorm.DB
  150. field.RelationField
  151. }
  152. func (a certBelongsToDnsCredential) Where(conds ...field.Expr) *certBelongsToDnsCredential {
  153. if len(conds) == 0 {
  154. return &a
  155. }
  156. exprs := make([]clause.Expression, 0, len(conds))
  157. for _, cond := range conds {
  158. exprs = append(exprs, cond.BeCond().(clause.Expression))
  159. }
  160. a.db = a.db.Clauses(clause.Where{Exprs: exprs})
  161. return &a
  162. }
  163. func (a certBelongsToDnsCredential) WithContext(ctx context.Context) *certBelongsToDnsCredential {
  164. a.db = a.db.WithContext(ctx)
  165. return &a
  166. }
  167. func (a certBelongsToDnsCredential) Session(session *gorm.Session) *certBelongsToDnsCredential {
  168. a.db = a.db.Session(session)
  169. return &a
  170. }
  171. func (a certBelongsToDnsCredential) Model(m *model.Cert) *certBelongsToDnsCredentialTx {
  172. return &certBelongsToDnsCredentialTx{a.db.Model(m).Association(a.Name())}
  173. }
  174. type certBelongsToDnsCredentialTx struct{ tx *gorm.Association }
  175. func (a certBelongsToDnsCredentialTx) Find() (result *model.DnsCredential, err error) {
  176. return result, a.tx.Find(&result)
  177. }
  178. func (a certBelongsToDnsCredentialTx) Append(values ...*model.DnsCredential) (err error) {
  179. targetValues := make([]interface{}, len(values))
  180. for i, v := range values {
  181. targetValues[i] = v
  182. }
  183. return a.tx.Append(targetValues...)
  184. }
  185. func (a certBelongsToDnsCredentialTx) Replace(values ...*model.DnsCredential) (err error) {
  186. targetValues := make([]interface{}, len(values))
  187. for i, v := range values {
  188. targetValues[i] = v
  189. }
  190. return a.tx.Replace(targetValues...)
  191. }
  192. func (a certBelongsToDnsCredentialTx) Delete(values ...*model.DnsCredential) (err error) {
  193. targetValues := make([]interface{}, len(values))
  194. for i, v := range values {
  195. targetValues[i] = v
  196. }
  197. return a.tx.Delete(targetValues...)
  198. }
  199. func (a certBelongsToDnsCredentialTx) Clear() error {
  200. return a.tx.Clear()
  201. }
  202. func (a certBelongsToDnsCredentialTx) Count() int64 {
  203. return a.tx.Count()
  204. }
  205. type certBelongsToACMEUser struct {
  206. db *gorm.DB
  207. field.RelationField
  208. }
  209. func (a certBelongsToACMEUser) Where(conds ...field.Expr) *certBelongsToACMEUser {
  210. if len(conds) == 0 {
  211. return &a
  212. }
  213. exprs := make([]clause.Expression, 0, len(conds))
  214. for _, cond := range conds {
  215. exprs = append(exprs, cond.BeCond().(clause.Expression))
  216. }
  217. a.db = a.db.Clauses(clause.Where{Exprs: exprs})
  218. return &a
  219. }
  220. func (a certBelongsToACMEUser) WithContext(ctx context.Context) *certBelongsToACMEUser {
  221. a.db = a.db.WithContext(ctx)
  222. return &a
  223. }
  224. func (a certBelongsToACMEUser) Session(session *gorm.Session) *certBelongsToACMEUser {
  225. a.db = a.db.Session(session)
  226. return &a
  227. }
  228. func (a certBelongsToACMEUser) Model(m *model.Cert) *certBelongsToACMEUserTx {
  229. return &certBelongsToACMEUserTx{a.db.Model(m).Association(a.Name())}
  230. }
  231. type certBelongsToACMEUserTx struct{ tx *gorm.Association }
  232. func (a certBelongsToACMEUserTx) Find() (result *model.AcmeUser, err error) {
  233. return result, a.tx.Find(&result)
  234. }
  235. func (a certBelongsToACMEUserTx) Append(values ...*model.AcmeUser) (err error) {
  236. targetValues := make([]interface{}, len(values))
  237. for i, v := range values {
  238. targetValues[i] = v
  239. }
  240. return a.tx.Append(targetValues...)
  241. }
  242. func (a certBelongsToACMEUserTx) Replace(values ...*model.AcmeUser) (err error) {
  243. targetValues := make([]interface{}, len(values))
  244. for i, v := range values {
  245. targetValues[i] = v
  246. }
  247. return a.tx.Replace(targetValues...)
  248. }
  249. func (a certBelongsToACMEUserTx) Delete(values ...*model.AcmeUser) (err error) {
  250. targetValues := make([]interface{}, len(values))
  251. for i, v := range values {
  252. targetValues[i] = v
  253. }
  254. return a.tx.Delete(targetValues...)
  255. }
  256. func (a certBelongsToACMEUserTx) Clear() error {
  257. return a.tx.Clear()
  258. }
  259. func (a certBelongsToACMEUserTx) Count() int64 {
  260. return a.tx.Count()
  261. }
  262. type certDo struct{ gen.DO }
  263. // FirstByID Where("id=@id")
  264. func (c certDo) FirstByID(id uint64) (result *model.Cert, err error) {
  265. var params []interface{}
  266. var generateSQL strings.Builder
  267. params = append(params, id)
  268. generateSQL.WriteString("id=? ")
  269. var executeSQL *gorm.DB
  270. executeSQL = c.UnderlyingDB().Where(generateSQL.String(), params...).Take(&result) // ignore_security_alert
  271. err = executeSQL.Error
  272. return
  273. }
  274. // DeleteByID update @@table set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=@id
  275. func (c certDo) DeleteByID(id uint64) (err error) {
  276. var params []interface{}
  277. var generateSQL strings.Builder
  278. params = append(params, id)
  279. generateSQL.WriteString("update certs set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=? ")
  280. var executeSQL *gorm.DB
  281. executeSQL = c.UnderlyingDB().Exec(generateSQL.String(), params...) // ignore_security_alert
  282. err = executeSQL.Error
  283. return
  284. }
  285. func (c certDo) Debug() *certDo {
  286. return c.withDO(c.DO.Debug())
  287. }
  288. func (c certDo) WithContext(ctx context.Context) *certDo {
  289. return c.withDO(c.DO.WithContext(ctx))
  290. }
  291. func (c certDo) ReadDB() *certDo {
  292. return c.Clauses(dbresolver.Read)
  293. }
  294. func (c certDo) WriteDB() *certDo {
  295. return c.Clauses(dbresolver.Write)
  296. }
  297. func (c certDo) Session(config *gorm.Session) *certDo {
  298. return c.withDO(c.DO.Session(config))
  299. }
  300. func (c certDo) Clauses(conds ...clause.Expression) *certDo {
  301. return c.withDO(c.DO.Clauses(conds...))
  302. }
  303. func (c certDo) Returning(value interface{}, columns ...string) *certDo {
  304. return c.withDO(c.DO.Returning(value, columns...))
  305. }
  306. func (c certDo) Not(conds ...gen.Condition) *certDo {
  307. return c.withDO(c.DO.Not(conds...))
  308. }
  309. func (c certDo) Or(conds ...gen.Condition) *certDo {
  310. return c.withDO(c.DO.Or(conds...))
  311. }
  312. func (c certDo) Select(conds ...field.Expr) *certDo {
  313. return c.withDO(c.DO.Select(conds...))
  314. }
  315. func (c certDo) Where(conds ...gen.Condition) *certDo {
  316. return c.withDO(c.DO.Where(conds...))
  317. }
  318. func (c certDo) Order(conds ...field.Expr) *certDo {
  319. return c.withDO(c.DO.Order(conds...))
  320. }
  321. func (c certDo) Distinct(cols ...field.Expr) *certDo {
  322. return c.withDO(c.DO.Distinct(cols...))
  323. }
  324. func (c certDo) Omit(cols ...field.Expr) *certDo {
  325. return c.withDO(c.DO.Omit(cols...))
  326. }
  327. func (c certDo) Join(table schema.Tabler, on ...field.Expr) *certDo {
  328. return c.withDO(c.DO.Join(table, on...))
  329. }
  330. func (c certDo) LeftJoin(table schema.Tabler, on ...field.Expr) *certDo {
  331. return c.withDO(c.DO.LeftJoin(table, on...))
  332. }
  333. func (c certDo) RightJoin(table schema.Tabler, on ...field.Expr) *certDo {
  334. return c.withDO(c.DO.RightJoin(table, on...))
  335. }
  336. func (c certDo) Group(cols ...field.Expr) *certDo {
  337. return c.withDO(c.DO.Group(cols...))
  338. }
  339. func (c certDo) Having(conds ...gen.Condition) *certDo {
  340. return c.withDO(c.DO.Having(conds...))
  341. }
  342. func (c certDo) Limit(limit int) *certDo {
  343. return c.withDO(c.DO.Limit(limit))
  344. }
  345. func (c certDo) Offset(offset int) *certDo {
  346. return c.withDO(c.DO.Offset(offset))
  347. }
  348. func (c certDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *certDo {
  349. return c.withDO(c.DO.Scopes(funcs...))
  350. }
  351. func (c certDo) Unscoped() *certDo {
  352. return c.withDO(c.DO.Unscoped())
  353. }
  354. func (c certDo) Create(values ...*model.Cert) error {
  355. if len(values) == 0 {
  356. return nil
  357. }
  358. return c.DO.Create(values)
  359. }
  360. func (c certDo) CreateInBatches(values []*model.Cert, batchSize int) error {
  361. return c.DO.CreateInBatches(values, batchSize)
  362. }
  363. // Save : !!! underlying implementation is different with GORM
  364. // The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
  365. func (c certDo) Save(values ...*model.Cert) error {
  366. if len(values) == 0 {
  367. return nil
  368. }
  369. return c.DO.Save(values)
  370. }
  371. func (c certDo) First() (*model.Cert, error) {
  372. if result, err := c.DO.First(); err != nil {
  373. return nil, err
  374. } else {
  375. return result.(*model.Cert), nil
  376. }
  377. }
  378. func (c certDo) Take() (*model.Cert, error) {
  379. if result, err := c.DO.Take(); err != nil {
  380. return nil, err
  381. } else {
  382. return result.(*model.Cert), nil
  383. }
  384. }
  385. func (c certDo) Last() (*model.Cert, error) {
  386. if result, err := c.DO.Last(); err != nil {
  387. return nil, err
  388. } else {
  389. return result.(*model.Cert), nil
  390. }
  391. }
  392. func (c certDo) Find() ([]*model.Cert, error) {
  393. result, err := c.DO.Find()
  394. return result.([]*model.Cert), err
  395. }
  396. func (c certDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Cert, err error) {
  397. buf := make([]*model.Cert, 0, batchSize)
  398. err = c.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
  399. defer func() { results = append(results, buf...) }()
  400. return fc(tx, batch)
  401. })
  402. return results, err
  403. }
  404. func (c certDo) FindInBatches(result *[]*model.Cert, batchSize int, fc func(tx gen.Dao, batch int) error) error {
  405. return c.DO.FindInBatches(result, batchSize, fc)
  406. }
  407. func (c certDo) Attrs(attrs ...field.AssignExpr) *certDo {
  408. return c.withDO(c.DO.Attrs(attrs...))
  409. }
  410. func (c certDo) Assign(attrs ...field.AssignExpr) *certDo {
  411. return c.withDO(c.DO.Assign(attrs...))
  412. }
  413. func (c certDo) Joins(fields ...field.RelationField) *certDo {
  414. for _, _f := range fields {
  415. c = *c.withDO(c.DO.Joins(_f))
  416. }
  417. return &c
  418. }
  419. func (c certDo) Preload(fields ...field.RelationField) *certDo {
  420. for _, _f := range fields {
  421. c = *c.withDO(c.DO.Preload(_f))
  422. }
  423. return &c
  424. }
  425. func (c certDo) FirstOrInit() (*model.Cert, error) {
  426. if result, err := c.DO.FirstOrInit(); err != nil {
  427. return nil, err
  428. } else {
  429. return result.(*model.Cert), nil
  430. }
  431. }
  432. func (c certDo) FirstOrCreate() (*model.Cert, error) {
  433. if result, err := c.DO.FirstOrCreate(); err != nil {
  434. return nil, err
  435. } else {
  436. return result.(*model.Cert), nil
  437. }
  438. }
  439. func (c certDo) FindByPage(offset int, limit int) (result []*model.Cert, count int64, err error) {
  440. result, err = c.Offset(offset).Limit(limit).Find()
  441. if err != nil {
  442. return
  443. }
  444. if size := len(result); 0 < limit && 0 < size && size < limit {
  445. count = int64(size + offset)
  446. return
  447. }
  448. count, err = c.Offset(-1).Limit(-1).Count()
  449. return
  450. }
  451. func (c certDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
  452. count, err = c.Count()
  453. if err != nil {
  454. return
  455. }
  456. err = c.Offset(offset).Limit(limit).Scan(result)
  457. return
  458. }
  459. func (c certDo) Scan(result interface{}) (err error) {
  460. return c.DO.Scan(result)
  461. }
  462. func (c certDo) Delete(models ...*model.Cert) (result gen.ResultInfo, err error) {
  463. return c.DO.Delete(models)
  464. }
  465. func (c *certDo) withDO(do gen.Dao) *certDo {
  466. c.DO = *do.(*gen.DO)
  467. return c
  468. }