certs.gen.go 15 KB

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