| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609 | // Code generated by gorm.io/gen. DO NOT EDIT.// Code generated by gorm.io/gen. DO NOT EDIT.// Code generated by gorm.io/gen. DO NOT EDIT.package queryimport (	"context"	"strings"	"gorm.io/gorm"	"gorm.io/gorm/clause"	"gorm.io/gorm/schema"	"gorm.io/gen"	"gorm.io/gen/field"	"gorm.io/plugin/dbresolver"	"github.com/0xJacky/Nginx-UI/model")func newCert(db *gorm.DB, opts ...gen.DOOption) cert {	_cert := cert{}	_cert.certDo.UseDB(db, opts...)	_cert.certDo.UseModel(&model.Cert{})	tableName := _cert.certDo.TableName()	_cert.ALL = field.NewAsterisk(tableName)	_cert.ID = field.NewUint64(tableName, "id")	_cert.CreatedAt = field.NewTime(tableName, "created_at")	_cert.UpdatedAt = field.NewTime(tableName, "updated_at")	_cert.DeletedAt = field.NewField(tableName, "deleted_at")	_cert.Name = field.NewString(tableName, "name")	_cert.Domains = field.NewField(tableName, "domains")	_cert.Filename = field.NewString(tableName, "filename")	_cert.SSLCertificatePath = field.NewString(tableName, "ssl_certificate_path")	_cert.SSLCertificateKeyPath = field.NewString(tableName, "ssl_certificate_key_path")	_cert.AutoCert = field.NewInt(tableName, "auto_cert")	_cert.ChallengeMethod = field.NewString(tableName, "challenge_method")	_cert.DnsCredentialID = field.NewUint64(tableName, "dns_credential_id")	_cert.ACMEUserID = field.NewUint64(tableName, "acme_user_id")	_cert.KeyType = field.NewString(tableName, "key_type")	_cert.Log = field.NewString(tableName, "log")	_cert.Resource = field.NewField(tableName, "resource")	_cert.SyncNodeIds = field.NewField(tableName, "sync_node_ids")	_cert.MustStaple = field.NewBool(tableName, "must_staple")	_cert.LegoDisableCNAMESupport = field.NewBool(tableName, "lego_disable_cname_support")	_cert.RevokeOld = field.NewBool(tableName, "revoke_old")	_cert.DnsCredential = certBelongsToDnsCredential{		db: db.Session(&gorm.Session{}),		RelationField: field.NewRelation("DnsCredential", "model.DnsCredential"),	}	_cert.ACMEUser = certBelongsToACMEUser{		db: db.Session(&gorm.Session{}),		RelationField: field.NewRelation("ACMEUser", "model.AcmeUser"),	}	_cert.fillFieldMap()	return _cert}type cert struct {	certDo	ALL                     field.Asterisk	ID                      field.Uint64	CreatedAt               field.Time	UpdatedAt               field.Time	DeletedAt               field.Field	Name                    field.String	Domains                 field.Field	Filename                field.String	SSLCertificatePath      field.String	SSLCertificateKeyPath   field.String	AutoCert                field.Int	ChallengeMethod         field.String	DnsCredentialID         field.Uint64	ACMEUserID              field.Uint64	KeyType                 field.String	Log                     field.String	Resource                field.Field	SyncNodeIds             field.Field	MustStaple              field.Bool	LegoDisableCNAMESupport field.Bool	RevokeOld               field.Bool	DnsCredential           certBelongsToDnsCredential	ACMEUser certBelongsToACMEUser	fieldMap map[string]field.Expr}func (c cert) Table(newTableName string) *cert {	c.certDo.UseTable(newTableName)	return c.updateTableName(newTableName)}func (c cert) As(alias string) *cert {	c.certDo.DO = *(c.certDo.As(alias).(*gen.DO))	return c.updateTableName(alias)}func (c *cert) updateTableName(table string) *cert {	c.ALL = field.NewAsterisk(table)	c.ID = field.NewUint64(table, "id")	c.CreatedAt = field.NewTime(table, "created_at")	c.UpdatedAt = field.NewTime(table, "updated_at")	c.DeletedAt = field.NewField(table, "deleted_at")	c.Name = field.NewString(table, "name")	c.Domains = field.NewField(table, "domains")	c.Filename = field.NewString(table, "filename")	c.SSLCertificatePath = field.NewString(table, "ssl_certificate_path")	c.SSLCertificateKeyPath = field.NewString(table, "ssl_certificate_key_path")	c.AutoCert = field.NewInt(table, "auto_cert")	c.ChallengeMethod = field.NewString(table, "challenge_method")	c.DnsCredentialID = field.NewUint64(table, "dns_credential_id")	c.ACMEUserID = field.NewUint64(table, "acme_user_id")	c.KeyType = field.NewString(table, "key_type")	c.Log = field.NewString(table, "log")	c.Resource = field.NewField(table, "resource")	c.SyncNodeIds = field.NewField(table, "sync_node_ids")	c.MustStaple = field.NewBool(table, "must_staple")	c.LegoDisableCNAMESupport = field.NewBool(table, "lego_disable_cname_support")	c.RevokeOld = field.NewBool(table, "revoke_old")	c.fillFieldMap()	return c}func (c *cert) GetFieldByName(fieldName string) (field.OrderExpr, bool) {	_f, ok := c.fieldMap[fieldName]	if !ok || _f == nil {		return nil, false	}	_oe, ok := _f.(field.OrderExpr)	return _oe, ok}func (c *cert) fillFieldMap() {	c.fieldMap = make(map[string]field.Expr, 22)	c.fieldMap["id"] = c.ID	c.fieldMap["created_at"] = c.CreatedAt	c.fieldMap["updated_at"] = c.UpdatedAt	c.fieldMap["deleted_at"] = c.DeletedAt	c.fieldMap["name"] = c.Name	c.fieldMap["domains"] = c.Domains	c.fieldMap["filename"] = c.Filename	c.fieldMap["ssl_certificate_path"] = c.SSLCertificatePath	c.fieldMap["ssl_certificate_key_path"] = c.SSLCertificateKeyPath	c.fieldMap["auto_cert"] = c.AutoCert	c.fieldMap["challenge_method"] = c.ChallengeMethod	c.fieldMap["dns_credential_id"] = c.DnsCredentialID	c.fieldMap["acme_user_id"] = c.ACMEUserID	c.fieldMap["key_type"] = c.KeyType	c.fieldMap["log"] = c.Log	c.fieldMap["resource"] = c.Resource	c.fieldMap["sync_node_ids"] = c.SyncNodeIds	c.fieldMap["must_staple"] = c.MustStaple	c.fieldMap["lego_disable_cname_support"] = c.LegoDisableCNAMESupport	c.fieldMap["revoke_old"] = c.RevokeOld}func (c cert) clone(db *gorm.DB) cert {	c.certDo.ReplaceConnPool(db.Statement.ConnPool)	c.DnsCredential.db = db.Session(&gorm.Session{Initialized: true})	c.DnsCredential.db.Statement.ConnPool = db.Statement.ConnPool	c.ACMEUser.db = db.Session(&gorm.Session{Initialized: true})	c.ACMEUser.db.Statement.ConnPool = db.Statement.ConnPool	return c}func (c cert) replaceDB(db *gorm.DB) cert {	c.certDo.ReplaceDB(db)	c.DnsCredential.db = db.Session(&gorm.Session{})	c.ACMEUser.db = db.Session(&gorm.Session{})	return c}type certBelongsToDnsCredential struct {	db *gorm.DB	field.RelationField}func (a certBelongsToDnsCredential) Where(conds ...field.Expr) *certBelongsToDnsCredential {	if len(conds) == 0 {		return &a	}	exprs := make([]clause.Expression, 0, len(conds))	for _, cond := range conds {		exprs = append(exprs, cond.BeCond().(clause.Expression))	}	a.db = a.db.Clauses(clause.Where{Exprs: exprs})	return &a}func (a certBelongsToDnsCredential) WithContext(ctx context.Context) *certBelongsToDnsCredential {	a.db = a.db.WithContext(ctx)	return &a}func (a certBelongsToDnsCredential) Session(session *gorm.Session) *certBelongsToDnsCredential {	a.db = a.db.Session(session)	return &a}func (a certBelongsToDnsCredential) Model(m *model.Cert) *certBelongsToDnsCredentialTx {	return &certBelongsToDnsCredentialTx{a.db.Model(m).Association(a.Name())}}func (a certBelongsToDnsCredential) Unscoped() *certBelongsToDnsCredential {	a.db = a.db.Unscoped()	return &a}type certBelongsToDnsCredentialTx struct{ tx *gorm.Association }func (a certBelongsToDnsCredentialTx) Find() (result *model.DnsCredential, err error) {	return result, a.tx.Find(&result)}func (a certBelongsToDnsCredentialTx) Append(values ...*model.DnsCredential) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Append(targetValues...)}func (a certBelongsToDnsCredentialTx) Replace(values ...*model.DnsCredential) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Replace(targetValues...)}func (a certBelongsToDnsCredentialTx) Delete(values ...*model.DnsCredential) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Delete(targetValues...)}func (a certBelongsToDnsCredentialTx) Clear() error {	return a.tx.Clear()}func (a certBelongsToDnsCredentialTx) Count() int64 {	return a.tx.Count()}func (a certBelongsToDnsCredentialTx) Unscoped() *certBelongsToDnsCredentialTx {	a.tx = a.tx.Unscoped()	return &a}type certBelongsToACMEUser struct {	db *gorm.DB	field.RelationField}func (a certBelongsToACMEUser) Where(conds ...field.Expr) *certBelongsToACMEUser {	if len(conds) == 0 {		return &a	}	exprs := make([]clause.Expression, 0, len(conds))	for _, cond := range conds {		exprs = append(exprs, cond.BeCond().(clause.Expression))	}	a.db = a.db.Clauses(clause.Where{Exprs: exprs})	return &a}func (a certBelongsToACMEUser) WithContext(ctx context.Context) *certBelongsToACMEUser {	a.db = a.db.WithContext(ctx)	return &a}func (a certBelongsToACMEUser) Session(session *gorm.Session) *certBelongsToACMEUser {	a.db = a.db.Session(session)	return &a}func (a certBelongsToACMEUser) Model(m *model.Cert) *certBelongsToACMEUserTx {	return &certBelongsToACMEUserTx{a.db.Model(m).Association(a.Name())}}func (a certBelongsToACMEUser) Unscoped() *certBelongsToACMEUser {	a.db = a.db.Unscoped()	return &a}type certBelongsToACMEUserTx struct{ tx *gorm.Association }func (a certBelongsToACMEUserTx) Find() (result *model.AcmeUser, err error) {	return result, a.tx.Find(&result)}func (a certBelongsToACMEUserTx) Append(values ...*model.AcmeUser) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Append(targetValues...)}func (a certBelongsToACMEUserTx) Replace(values ...*model.AcmeUser) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Replace(targetValues...)}func (a certBelongsToACMEUserTx) Delete(values ...*model.AcmeUser) (err error) {	targetValues := make([]interface{}, len(values))	for i, v := range values {		targetValues[i] = v	}	return a.tx.Delete(targetValues...)}func (a certBelongsToACMEUserTx) Clear() error {	return a.tx.Clear()}func (a certBelongsToACMEUserTx) Count() int64 {	return a.tx.Count()}func (a certBelongsToACMEUserTx) Unscoped() *certBelongsToACMEUserTx {	a.tx = a.tx.Unscoped()	return &a}type certDo struct{ gen.DO }// FirstByID Where("id=@id")func (c certDo) FirstByID(id uint64) (result *model.Cert, err error) {	var params []interface{}	var generateSQL strings.Builder	params = append(params, id)	generateSQL.WriteString("id=? ")	var executeSQL *gorm.DB	executeSQL = c.UnderlyingDB().Where(generateSQL.String(), params...).Take(&result) // ignore_security_alert	err = executeSQL.Error	return}// DeleteByID update @@table set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=@idfunc (c certDo) DeleteByID(id uint64) (err error) {	var params []interface{}	var generateSQL strings.Builder	params = append(params, id)	generateSQL.WriteString("update certs set deleted_at=strftime('%Y-%m-%d %H:%M:%S','now') where id=? ")	var executeSQL *gorm.DB	executeSQL = c.UnderlyingDB().Exec(generateSQL.String(), params...) // ignore_security_alert	err = executeSQL.Error	return}func (c certDo) Debug() *certDo {	return c.withDO(c.DO.Debug())}func (c certDo) WithContext(ctx context.Context) *certDo {	return c.withDO(c.DO.WithContext(ctx))}func (c certDo) ReadDB() *certDo {	return c.Clauses(dbresolver.Read)}func (c certDo) WriteDB() *certDo {	return c.Clauses(dbresolver.Write)}func (c certDo) Session(config *gorm.Session) *certDo {	return c.withDO(c.DO.Session(config))}func (c certDo) Clauses(conds ...clause.Expression) *certDo {	return c.withDO(c.DO.Clauses(conds...))}func (c certDo) Returning(value interface{}, columns ...string) *certDo {	return c.withDO(c.DO.Returning(value, columns...))}func (c certDo) Not(conds ...gen.Condition) *certDo {	return c.withDO(c.DO.Not(conds...))}func (c certDo) Or(conds ...gen.Condition) *certDo {	return c.withDO(c.DO.Or(conds...))}func (c certDo) Select(conds ...field.Expr) *certDo {	return c.withDO(c.DO.Select(conds...))}func (c certDo) Where(conds ...gen.Condition) *certDo {	return c.withDO(c.DO.Where(conds...))}func (c certDo) Order(conds ...field.Expr) *certDo {	return c.withDO(c.DO.Order(conds...))}func (c certDo) Distinct(cols ...field.Expr) *certDo {	return c.withDO(c.DO.Distinct(cols...))}func (c certDo) Omit(cols ...field.Expr) *certDo {	return c.withDO(c.DO.Omit(cols...))}func (c certDo) Join(table schema.Tabler, on ...field.Expr) *certDo {	return c.withDO(c.DO.Join(table, on...))}func (c certDo) LeftJoin(table schema.Tabler, on ...field.Expr) *certDo {	return c.withDO(c.DO.LeftJoin(table, on...))}func (c certDo) RightJoin(table schema.Tabler, on ...field.Expr) *certDo {	return c.withDO(c.DO.RightJoin(table, on...))}func (c certDo) Group(cols ...field.Expr) *certDo {	return c.withDO(c.DO.Group(cols...))}func (c certDo) Having(conds ...gen.Condition) *certDo {	return c.withDO(c.DO.Having(conds...))}func (c certDo) Limit(limit int) *certDo {	return c.withDO(c.DO.Limit(limit))}func (c certDo) Offset(offset int) *certDo {	return c.withDO(c.DO.Offset(offset))}func (c certDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *certDo {	return c.withDO(c.DO.Scopes(funcs...))}func (c certDo) Unscoped() *certDo {	return c.withDO(c.DO.Unscoped())}func (c certDo) Create(values ...*model.Cert) error {	if len(values) == 0 {		return nil	}	return c.DO.Create(values)}func (c certDo) CreateInBatches(values []*model.Cert, batchSize int) error {	return c.DO.CreateInBatches(values, batchSize)}// Save : !!! underlying implementation is different with GORM// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)func (c certDo) Save(values ...*model.Cert) error {	if len(values) == 0 {		return nil	}	return c.DO.Save(values)}func (c certDo) First() (*model.Cert, error) {	if result, err := c.DO.First(); err != nil {		return nil, err	} else {		return result.(*model.Cert), nil	}}func (c certDo) Take() (*model.Cert, error) {	if result, err := c.DO.Take(); err != nil {		return nil, err	} else {		return result.(*model.Cert), nil	}}func (c certDo) Last() (*model.Cert, error) {	if result, err := c.DO.Last(); err != nil {		return nil, err	} else {		return result.(*model.Cert), nil	}}func (c certDo) Find() ([]*model.Cert, error) {	result, err := c.DO.Find()	return result.([]*model.Cert), err}func (c certDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Cert, err error) {	buf := make([]*model.Cert, 0, batchSize)	err = c.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {		defer func() { results = append(results, buf...) }()		return fc(tx, batch)	})	return results, err}func (c certDo) FindInBatches(result *[]*model.Cert, batchSize int, fc func(tx gen.Dao, batch int) error) error {	return c.DO.FindInBatches(result, batchSize, fc)}func (c certDo) Attrs(attrs ...field.AssignExpr) *certDo {	return c.withDO(c.DO.Attrs(attrs...))}func (c certDo) Assign(attrs ...field.AssignExpr) *certDo {	return c.withDO(c.DO.Assign(attrs...))}func (c certDo) Joins(fields ...field.RelationField) *certDo {	for _, _f := range fields {		c = *c.withDO(c.DO.Joins(_f))	}	return &c}func (c certDo) Preload(fields ...field.RelationField) *certDo {	for _, _f := range fields {		c = *c.withDO(c.DO.Preload(_f))	}	return &c}func (c certDo) FirstOrInit() (*model.Cert, error) {	if result, err := c.DO.FirstOrInit(); err != nil {		return nil, err	} else {		return result.(*model.Cert), nil	}}func (c certDo) FirstOrCreate() (*model.Cert, error) {	if result, err := c.DO.FirstOrCreate(); err != nil {		return nil, err	} else {		return result.(*model.Cert), nil	}}func (c certDo) FindByPage(offset int, limit int) (result []*model.Cert, count int64, err error) {	result, err = c.Offset(offset).Limit(limit).Find()	if err != nil {		return	}	if size := len(result); 0 < limit && 0 < size && size < limit {		count = int64(size + offset)		return	}	count, err = c.Offset(-1).Limit(-1).Count()	return}func (c certDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {	count, err = c.Count()	if err != nil {		return	}	err = c.Offset(offset).Limit(limit).Scan(result)	return}func (c certDo) Scan(result interface{}) (err error) {	return c.DO.Scan(result)}func (c certDo) Delete(models ...*model.Cert) (result gen.ResultInfo, err error) {	return c.DO.Delete(models)}func (c *certDo) withDO(do gen.Dao) *certDo {	c.DO = *do.(*gen.DO)	return c}
 |