2020-04-11 19:40:26 +00:00
|
|
|
package logic
|
|
|
|
|
2020-04-18 19:00:31 +00:00
|
|
|
import (
|
|
|
|
"git.dragon-labs.de/alphyron/group_helper/models"
|
|
|
|
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api"
|
|
|
|
)
|
2020-04-11 19:40:26 +00:00
|
|
|
|
|
|
|
type GroupHelperService interface {
|
|
|
|
CreateGroup(*models.Group) (*models.Group, error)
|
|
|
|
UpdateGroup(*models.Group) (*models.Group, error)
|
|
|
|
|
|
|
|
GetGroupByID(int64) (*models.Group, error)
|
2020-04-11 20:27:56 +00:00
|
|
|
GetGroupDatabaseSize(*models.Group) (int, error)
|
2020-04-11 19:40:26 +00:00
|
|
|
|
|
|
|
CreateUser(*models.User) (*models.User, error)
|
2020-04-11 20:27:56 +00:00
|
|
|
GetUserByID(int64) (*models.User, error)
|
2020-04-11 19:40:26 +00:00
|
|
|
|
|
|
|
UserJoinGroup(*models.User, *models.Group) (bool, error)
|
|
|
|
UserLeaveGroup(*models.User, *models.Group) (bool, error)
|
|
|
|
IsUserInGroup(*models.User, *models.Group) (bool, error)
|
|
|
|
|
|
|
|
ListGroups() ([]*models.Group, error)
|
|
|
|
ListUsers() ([]*models.User, error)
|
|
|
|
}
|
2020-04-18 19:00:31 +00:00
|
|
|
|
|
|
|
type CommandService interface {
|
|
|
|
HelpCommand(*tgbotapi.Message) error
|
|
|
|
InfoCommand(*tgbotapi.Message) error
|
|
|
|
PlaceholderCommand(*tgbotapi.Message) error
|
|
|
|
PrintJoinMessage(*tgbotapi.Message) error
|
|
|
|
PrintLeaveMessage(*tgbotapi.Message) error
|
|
|
|
PrintKickMessage(*tgbotapi.Message) error
|
|
|
|
PrintVerifiedMessage(*tgbotapi.Message) error
|
|
|
|
PrintGroupStatus() error
|
|
|
|
UpdateJoinMessage(*tgbotapi.Message) error
|
|
|
|
UpdateLeaveMessage(*tgbotapi.Message) error
|
|
|
|
UpdateKickMessage(*tgbotapi.Message) error
|
|
|
|
UpdateVerifiedMessage(*tgbotapi.Message) error
|
|
|
|
UpdateOnlineCheck(*tgbotapi.Message) error
|
|
|
|
UpdateForbidWriting(*tgbotapi.Message) error
|
|
|
|
}
|