232 lines
7.3 KiB
Go
232 lines
7.3 KiB
Go
// 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 query
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
|
|
"gorm.io/gorm"
|
|
|
|
"gorm.io/gen"
|
|
|
|
"gorm.io/plugin/dbresolver"
|
|
)
|
|
|
|
var (
|
|
Q = new(Query)
|
|
Ansprechpartner *ansprechpartner
|
|
Dokument *dokument
|
|
Firma *firma
|
|
FirmaAnsprechpartner *firmaAnsprechpartner
|
|
Kalender *kalender
|
|
Kalendereintrag *kalendereintrag
|
|
Kostenstelle *kostenstelle
|
|
Lager *lager
|
|
Lagerplatz *lagerplatz
|
|
Material *material
|
|
Nachricht *nachricht
|
|
Projekt *projekt
|
|
Rechnung *rechnung
|
|
Rechnungsposition *rechnungsposition
|
|
Scanobject *scanobject
|
|
User *user
|
|
Zahlung *zahlung
|
|
)
|
|
|
|
func SetDefault(db *gorm.DB, opts ...gen.DOOption) {
|
|
*Q = *Use(db, opts...)
|
|
Ansprechpartner = &Q.Ansprechpartner
|
|
Dokument = &Q.Dokument
|
|
Firma = &Q.Firma
|
|
FirmaAnsprechpartner = &Q.FirmaAnsprechpartner
|
|
Kalender = &Q.Kalender
|
|
Kalendereintrag = &Q.Kalendereintrag
|
|
Kostenstelle = &Q.Kostenstelle
|
|
Lager = &Q.Lager
|
|
Lagerplatz = &Q.Lagerplatz
|
|
Material = &Q.Material
|
|
Nachricht = &Q.Nachricht
|
|
Projekt = &Q.Projekt
|
|
Rechnung = &Q.Rechnung
|
|
Rechnungsposition = &Q.Rechnungsposition
|
|
Scanobject = &Q.Scanobject
|
|
User = &Q.User
|
|
Zahlung = &Q.Zahlung
|
|
}
|
|
|
|
func Use(db *gorm.DB, opts ...gen.DOOption) *Query {
|
|
return &Query{
|
|
db: db,
|
|
Ansprechpartner: newAnsprechpartner(db, opts...),
|
|
Dokument: newDokument(db, opts...),
|
|
Firma: newFirma(db, opts...),
|
|
FirmaAnsprechpartner: newFirmaAnsprechpartner(db, opts...),
|
|
Kalender: newKalender(db, opts...),
|
|
Kalendereintrag: newKalendereintrag(db, opts...),
|
|
Kostenstelle: newKostenstelle(db, opts...),
|
|
Lager: newLager(db, opts...),
|
|
Lagerplatz: newLagerplatz(db, opts...),
|
|
Material: newMaterial(db, opts...),
|
|
Nachricht: newNachricht(db, opts...),
|
|
Projekt: newProjekt(db, opts...),
|
|
Rechnung: newRechnung(db, opts...),
|
|
Rechnungsposition: newRechnungsposition(db, opts...),
|
|
Scanobject: newScanobject(db, opts...),
|
|
User: newUser(db, opts...),
|
|
Zahlung: newZahlung(db, opts...),
|
|
}
|
|
}
|
|
|
|
type Query struct {
|
|
db *gorm.DB
|
|
|
|
Ansprechpartner ansprechpartner
|
|
Dokument dokument
|
|
Firma firma
|
|
FirmaAnsprechpartner firmaAnsprechpartner
|
|
Kalender kalender
|
|
Kalendereintrag kalendereintrag
|
|
Kostenstelle kostenstelle
|
|
Lager lager
|
|
Lagerplatz lagerplatz
|
|
Material material
|
|
Nachricht nachricht
|
|
Projekt projekt
|
|
Rechnung rechnung
|
|
Rechnungsposition rechnungsposition
|
|
Scanobject scanobject
|
|
User user
|
|
Zahlung zahlung
|
|
}
|
|
|
|
func (q *Query) Available() bool { return q.db != nil }
|
|
|
|
func (q *Query) clone(db *gorm.DB) *Query {
|
|
return &Query{
|
|
db: db,
|
|
Ansprechpartner: q.Ansprechpartner.clone(db),
|
|
Dokument: q.Dokument.clone(db),
|
|
Firma: q.Firma.clone(db),
|
|
FirmaAnsprechpartner: q.FirmaAnsprechpartner.clone(db),
|
|
Kalender: q.Kalender.clone(db),
|
|
Kalendereintrag: q.Kalendereintrag.clone(db),
|
|
Kostenstelle: q.Kostenstelle.clone(db),
|
|
Lager: q.Lager.clone(db),
|
|
Lagerplatz: q.Lagerplatz.clone(db),
|
|
Material: q.Material.clone(db),
|
|
Nachricht: q.Nachricht.clone(db),
|
|
Projekt: q.Projekt.clone(db),
|
|
Rechnung: q.Rechnung.clone(db),
|
|
Rechnungsposition: q.Rechnungsposition.clone(db),
|
|
Scanobject: q.Scanobject.clone(db),
|
|
User: q.User.clone(db),
|
|
Zahlung: q.Zahlung.clone(db),
|
|
}
|
|
}
|
|
|
|
func (q *Query) ReadDB() *Query {
|
|
return q.ReplaceDB(q.db.Clauses(dbresolver.Read))
|
|
}
|
|
|
|
func (q *Query) WriteDB() *Query {
|
|
return q.ReplaceDB(q.db.Clauses(dbresolver.Write))
|
|
}
|
|
|
|
func (q *Query) ReplaceDB(db *gorm.DB) *Query {
|
|
return &Query{
|
|
db: db,
|
|
Ansprechpartner: q.Ansprechpartner.replaceDB(db),
|
|
Dokument: q.Dokument.replaceDB(db),
|
|
Firma: q.Firma.replaceDB(db),
|
|
FirmaAnsprechpartner: q.FirmaAnsprechpartner.replaceDB(db),
|
|
Kalender: q.Kalender.replaceDB(db),
|
|
Kalendereintrag: q.Kalendereintrag.replaceDB(db),
|
|
Kostenstelle: q.Kostenstelle.replaceDB(db),
|
|
Lager: q.Lager.replaceDB(db),
|
|
Lagerplatz: q.Lagerplatz.replaceDB(db),
|
|
Material: q.Material.replaceDB(db),
|
|
Nachricht: q.Nachricht.replaceDB(db),
|
|
Projekt: q.Projekt.replaceDB(db),
|
|
Rechnung: q.Rechnung.replaceDB(db),
|
|
Rechnungsposition: q.Rechnungsposition.replaceDB(db),
|
|
Scanobject: q.Scanobject.replaceDB(db),
|
|
User: q.User.replaceDB(db),
|
|
Zahlung: q.Zahlung.replaceDB(db),
|
|
}
|
|
}
|
|
|
|
type queryCtx struct {
|
|
Ansprechpartner IAnsprechpartnerDo
|
|
Dokument IDokumentDo
|
|
Firma IFirmaDo
|
|
FirmaAnsprechpartner IFirmaAnsprechpartnerDo
|
|
Kalender IKalenderDo
|
|
Kalendereintrag IKalendereintragDo
|
|
Kostenstelle IKostenstelleDo
|
|
Lager ILagerDo
|
|
Lagerplatz ILagerplatzDo
|
|
Material IMaterialDo
|
|
Nachricht INachrichtDo
|
|
Projekt IProjektDo
|
|
Rechnung IRechnungDo
|
|
Rechnungsposition IRechnungspositionDo
|
|
Scanobject IScanobjectDo
|
|
User IUserDo
|
|
Zahlung IZahlungDo
|
|
}
|
|
|
|
func (q *Query) WithContext(ctx context.Context) *queryCtx {
|
|
return &queryCtx{
|
|
Ansprechpartner: q.Ansprechpartner.WithContext(ctx),
|
|
Dokument: q.Dokument.WithContext(ctx),
|
|
Firma: q.Firma.WithContext(ctx),
|
|
FirmaAnsprechpartner: q.FirmaAnsprechpartner.WithContext(ctx),
|
|
Kalender: q.Kalender.WithContext(ctx),
|
|
Kalendereintrag: q.Kalendereintrag.WithContext(ctx),
|
|
Kostenstelle: q.Kostenstelle.WithContext(ctx),
|
|
Lager: q.Lager.WithContext(ctx),
|
|
Lagerplatz: q.Lagerplatz.WithContext(ctx),
|
|
Material: q.Material.WithContext(ctx),
|
|
Nachricht: q.Nachricht.WithContext(ctx),
|
|
Projekt: q.Projekt.WithContext(ctx),
|
|
Rechnung: q.Rechnung.WithContext(ctx),
|
|
Rechnungsposition: q.Rechnungsposition.WithContext(ctx),
|
|
Scanobject: q.Scanobject.WithContext(ctx),
|
|
User: q.User.WithContext(ctx),
|
|
Zahlung: q.Zahlung.WithContext(ctx),
|
|
}
|
|
}
|
|
|
|
func (q *Query) Transaction(fc func(tx *Query) error, opts ...*sql.TxOptions) error {
|
|
return q.db.Transaction(func(tx *gorm.DB) error { return fc(q.clone(tx)) }, opts...)
|
|
}
|
|
|
|
func (q *Query) Begin(opts ...*sql.TxOptions) *QueryTx {
|
|
tx := q.db.Begin(opts...)
|
|
return &QueryTx{Query: q.clone(tx), Error: tx.Error}
|
|
}
|
|
|
|
type QueryTx struct {
|
|
*Query
|
|
Error error
|
|
}
|
|
|
|
func (q *QueryTx) Commit() error {
|
|
return q.db.Commit().Error
|
|
}
|
|
|
|
func (q *QueryTx) Rollback() error {
|
|
return q.db.Rollback().Error
|
|
}
|
|
|
|
func (q *QueryTx) SavePoint(name string) error {
|
|
return q.db.SavePoint(name).Error
|
|
}
|
|
|
|
func (q *QueryTx) RollbackTo(name string) error {
|
|
return q.db.RollbackTo(name).Error
|
|
}
|