Documentation
¶
Index ¶
- Variables
- func Exec(ctx context.Context, db Executor, query string, args ...interface{}) (pgconn.CommandTag, error)
- func Execx(ctx context.Context, db Executor, sqlizer sq.Sqlizer) (pgconn.CommandTag, error)
- func Get(ctx context.Context, db Querier, dst interface{}, query string, ...) error
- func Getx(ctx context.Context, db Querier, dst interface{}, sqlizer sq.Sqlizer) error
- func Select(ctx context.Context, db pgxscan.Querier, dst interface{}, query string, ...) error
- func Selectx(ctx context.Context, db pgxscan.Querier, dst interface{}, sqlizer sq.Sqlizer) error
- type Executor
- type Querier
- type Storage
- func (s *Storage) Close()
- func (s *Storage) CreateAIAPILog(ctx context.Context, record *model.AIAPILog) error
- func (s *Storage) CreateAuthDataTx(ctx context.Context, tx Tx, record *model.AuthData) error
- func (s *Storage) CreateChatBotDialog(ctx context.Context, record *model.ChatBotDialog) error
- func (s *Storage) CreateNutritionist(ctx context.Context, record *model.Nutritionist) error
- func (s *Storage) CreateUser(ctx context.Context, record *model.User) error
- func (s *Storage) CreateUserTx(ctx context.Context, tx Tx, record *model.User) error
- func (s *Storage) GetAuthDataBySourceIDAndType(ctx context.Context, sourceID uuid.UUID, sourceType model.AuthDataSourceType) (*model.AuthData, error)
- func (s *Storage) GetChatBotDialogByKeyFields(ctx context.Context, userTelegramID int64, kind model.ChatBotDialogKind, ...) (*model.ChatBotDialog, error)
- func (s *Storage) GetNutritionistByID(ctx context.Context, id uuid.UUID) (*model.Nutritionist, error)
- func (s *Storage) GetUserByEmail(ctx context.Context, email string) (*model.User, error)
- func (s *Storage) GetUserByID(ctx context.Context, id uuid.UUID) (*model.User, error)
- func (s *Storage) GetUserByTelegramID(ctx context.Context, telegramID int64) (*model.User, error)
- func (s *Storage) UpdateAIAPILog(ctx context.Context, record *model.AIAPILog) error
- func (s *Storage) UpdateAuthDataPassword(ctx context.Context, record *model.AuthData) error
- func (s *Storage) UpdateChatBotDialog(ctx context.Context, record *model.ChatBotDialog) error
- func (s *Storage) UpdateChatBotDialogStatusTx(ctx context.Context, tx Tx, status model.ChatBotDialogStatus, id uuid.UUID) error
- func (s *Storage) UpdateNutritionist(ctx context.Context, record *model.Nutritionist) error
- func (s *Storage) UpdateUser(ctx context.Context, record *model.User) error
- func (s *Storage) WithTransaction(ctx context.Context, fn func(tx Tx) error) (err error)
- func (s *Storage) WithTx(ctx context.Context, options pgx.TxOptions, fn func(tx Tx) error) (err error)
- type Tx
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound is error that record not found ErrNotFound = errors.New("record not found") )
Functions ¶
func Exec ¶
func Exec(ctx context.Context, db Executor, query string, args ...interface{}) (pgconn.CommandTag, error)
Exec executes query
Types ¶
type Executor ¶
type Executor interface {
Exec(ctx context.Context, sql string, arguments ...any) (pgconn.CommandTag, error)
}
Executor can execute sql query
type Querier ¶
type Querier interface {
Query(ctx context.Context, query string, args ...interface{}) (pgx.Rows, error)
}
Querier can execute sql query and get the pgx.Rows
type Storage ¶
type Storage struct {
// contains filtered or unexported fields
}
func (*Storage) CreateAIAPILog ¶
CreateAIAPILog creates model.AIAPILogs
func (*Storage) CreateAuthDataTx ¶
CreateAuthDataTx creates model.AuthData in transaction
func (*Storage) CreateChatBotDialog ¶
CreateChatBotDialog creates model.ChatBotDialog
func (*Storage) CreateNutritionist ¶
CreateNutritionist creates model.Nutritionist
func (*Storage) CreateUser ¶
CreateUser creates model.User
func (*Storage) CreateUserTx ¶
CreateUserTx creates model.User in transaction
func (*Storage) GetAuthDataBySourceIDAndType ¶
func (s *Storage) GetAuthDataBySourceIDAndType( ctx context.Context, sourceID uuid.UUID, sourceType model.AuthDataSourceType, ) (*model.AuthData, error)
GetAuthDataBySourceIDAndType gets model.AuthData by source_id, source_type
func (*Storage) GetChatBotDialogByKeyFields ¶
func (s *Storage) GetChatBotDialogByKeyFields( ctx context.Context, userTelegramID int64, kind model.ChatBotDialogKind, status model.ChatBotDialogStatus, ) (*model.ChatBotDialog, error)
GetChatBotDialogByKeyFields gets last model.ChatBotDialog by user_telegram_id, kind, status
func (*Storage) GetNutritionistByID ¶
func (s *Storage) GetNutritionistByID(ctx context.Context, id uuid.UUID) (*model.Nutritionist, error)
GetNutritionistByID gets model.Nutritionist by id
func (*Storage) GetUserByEmail ¶
GetUserByEmail gets model.User by email
func (*Storage) GetUserByID ¶
GetUserByID gets model.User by id
func (*Storage) GetUserByTelegramID ¶
GetUserByTelegramID gets model.User by telegram_id
func (*Storage) UpdateAIAPILog ¶
UpdateAIAPILog updates model.AIAPILog
func (*Storage) UpdateAuthDataPassword ¶
UpdateAuthDataPassword updates password in model.AuthData
func (*Storage) UpdateChatBotDialog ¶
UpdateChatBotDialog updates model.ChatBotDialog
func (*Storage) UpdateChatBotDialogStatusTx ¶
func (s *Storage) UpdateChatBotDialogStatusTx(ctx context.Context, tx Tx, status model.ChatBotDialogStatus, id uuid.UUID) error
UpdateChatBotDialogStatusTx updates status for model.ChatBotDialog in transaction
func (*Storage) UpdateNutritionist ¶
UpdateNutritionist updates model.Nutritionist
func (*Storage) UpdateUser ¶
UpdateUser updates model.User
func (*Storage) WithTransaction ¶
WithTransaction executes function in transaction with default isolation level