app

package
v0.0.0-...-d679055 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckIntegrity

func CheckIntegrity(db *sql.DB)

Check database integrity and log the result

func CheckPenLength

func CheckPenLength(db *sql.DB)

CheckPenLength проверяет значения pen_length и пишет в лог, если больше половины значений равны 5

func GetGigaLastUpdateTime

func GetGigaLastUpdateTime(db *sql.DB, chatID int64) (time.Time, error)

GetGigaLastUpdateTime получает время последнего обновления для команды /giga

func GetUnhandsomeLastUpdateTime

func GetUnhandsomeLastUpdateTime(db *sql.DB, chatID int64) (time.Time, error)

GetUnhandsomeLastUpdateTime получает время последнего обновления для команды /unhandsome

func GetUserIDByUsername

func GetUserIDByUsername(db *sql.DB, username string) (int, error)

GetUserIDByUsername получает ID пользователя по его username

func InitDB

func InitDB() (*sql.DB, error)

InitDB инициализирует базу данных

func SendMessage

func SendMessage(chatID int64, text string, bot *tgbotapi.BotAPI, replyToMessageID int)

SendMessage отправляет сообщение в чат или как ответ на конкретное сообщение

func SpinSkipAction

func SpinSkipAction() bool

Возвращает true, если действие должно быть пропущено (1% шанс)

func StartBackupRoutine

func StartBackupRoutine(db *sql.DB, mutex *sync.Mutex)

StartBackupRoutine запускает процесс резервного копирования

func UpdateGiga

func UpdateGiga(db *sql.DB, newSize int, userID int64, chatID int64)

UpdateGiga обновляет значения handsome_count и handsome_last_update_at в базе данных

func UpdateGigaLastUpdate

func UpdateGigaLastUpdate(db SQLExecutor, chatID int64) error

func UpdateUnhandsome

func UpdateUnhandsome(db *sql.DB, newSize int, userID int64, chatID int64)

UpdateUnhandsome обновляет значения unhandsome_count и unhandsome_last_update_at в базе данных

func UpdateUnhandsomeLastUpdate

func UpdateUnhandsomeLastUpdate(db SQLExecutor, chatID int64) error

func UpdateUserPen

func UpdateUserPen(db *sql.DB, userID int64, chatID int64, newSize int)

UpdateUserPen обновляет значения pen_length и pen_last_update_at в базе данных

func UserExists

func UserExists(db *sql.DB, userID int64, chatID int64) (bool, error)

Проверка наличия пользователя в базе данных

Types

type Member

type Member struct {
	ID   int64
	Name string
}

func GetPenNames

func GetPenNames(db *sql.DB, chatID int64) ([]Member, error)

GetPenNames получает все значения pen_name из таблицы pens

func SelectRandomMember

func SelectRandomMember(members []Member) Member

Выбирает случайного участника из списка

type Pen

type Pen struct {
	Size           int
	LastUpdateTime time.Time
}

func GetUserPen

func GetUserPen(db *sql.DB, userID int64, chatID int64) (Pen, error)

GetUserPen получает значения pen_length и pen_last_update_at из базы данных

type SQLExecutor

type SQLExecutor interface {
	Exec(query string, args ...interface{}) (sql.Result, error)
	Query(query string, args ...interface{}) (*sql.Rows, error)
	QueryRow(query string, args ...interface{}) *sql.Row
}

SQLExecutor is an interface that wraps the Exec, Query, and QueryRow methods of sql.DB

type SpinAction

type SpinAction struct{}

type SpinMemberResult

type SpinMemberResult struct {
	ResultType   string
	AnotherField int
}

type SpinpenResult

type SpinpenResult struct {
	ResultType string
	Size       int
}

func SpinAddPenSize

func SpinAddPenSize(pen Pen) SpinpenResult

func SpinDiffPenSize

func SpinDiffPenSize(pen Pen) SpinpenResult

func SpinPenSize

func SpinPenSize(pen Pen) SpinpenResult

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL