usecase

package
v0.0.0-...-a021cce Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2025 License: MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cases

type Cases struct {
	Community *Community
	User      *User
	Search    *Search
}

func Setup

func Setup(ctx context.Context, cfg *config.Config, db *pgxpool.Pool, b *bot.Bot) Cases

type Community

type Community struct {
	// contains filtered or unexported fields
}

func NewCommunity

func NewCommunity(communityRepo repo.Community, memberRepo repo.Member, userRepo repo.User, bot *bot.Bot, storage repo.ImageStorage) *Community

func (*Community) ConnectCommunityWithTGChat

func (c *Community) ConnectCommunityWithTGChat(ctx context.Context, actorTGID int64, communityID string, tgChatID int64) error

func (*Community) Create

func (c *Community) Create(ctx Context, community *domain.CreateCommunity) (*domain.Community, error)

func (*Community) GetByID

func (c *Community) GetByID(ctx Context, id string) (*domain.Community, error)

func (*Community) GetMember

func (c *Community) GetMember(ctx Context, communityID, memberID string) (*domain.Member, error)

func (*Community) GetPreviewByID

func (c *Community) GetPreviewByID(ctx Context, id string) (*domain.Community, error)

func (*Community) GetPreviewByTGID

func (c *Community) GetPreviewByTGID(ctx context.Context, tgID int64) (*domain.Community, error)

func (*Community) GetPreviews

func (c *Community) GetPreviews(ctx Context) ([]*domain.Community, error)

func (*Community) IsMember

func (c *Community) IsMember(ctx Context, communityID string) (bool, error)

func (*Community) JoinCommunity

func (c *Community) JoinCommunity(ctx Context, communityID string, config *domain.MemberConfig) error

func (*Community) LeaveCommunity

func (c *Community) LeaveCommunity(ctx Context, communityID string) error

func (*Community) MigrateTGChatID

func (c *Community) MigrateTGChatID(ctx context.Context, oldTGID, newTGID int64) error

func (*Community) Patch

func (c *Community) Patch(ctx Context, community *domain.PatchCommunity) (*domain.Community, error)

func (*Community) PatchMember

func (c *Community) PatchMember(ctx Context, communityID string, member *domain.PatchMember) error

func (*Community) SetAvatar

func (c *Community) SetAvatar(ctx Context, communityID string, avatar []byte) (string, error)

func (*Community) SyncCommunityWithTGChat

func (c *Community) SyncCommunityWithTGChat(ctx context.Context, tgChatID int64) error

type Context

type Context struct {
	context.Context
	User *domain.User
}

func NewContext

func NewContext(ctx context.Context, user *domain.User) Context
type Search struct {
	// contains filtered or unexported fields
}

func NewSearch

func NewSearch(communityCase *Community) *Search

func (*Search) SearchCommunities

func (s *Search) SearchCommunities(ctx Context, text string) ([]*domain.Community, error)

func (*Search) SearchMembers

func (s *Search) SearchMembers(ctx Context, communityID, text string) ([]*domain.Member, error)

type User

type User struct {
	// contains filtered or unexported fields
}

func NewUser

func NewUser(
	ctx context.Context,
	userRepo repo.User,
	communityRepo repo.Community,
	memberRepo repo.Member,
	storage repo.ImageStorage,
	tgbot *bot.Bot,
) *User

func (*User) Create

func (u *User) Create(ctx context.Context, userTGData *domain.UserTGData) (*domain.User, error)

func (*User) Delete

func (u *User) Delete(ctx Context, userID string) error

func (*User) GetByTGData

func (u *User) GetByTGData(ctx context.Context, tgData *domain.UserTGData) (*domain.User, error)

func (*User) GetMeProfile

func (u *User) GetMeProfile(ctx Context) (*domain.UserProfile, error)

func (*User) GetProfile

func (u *User) GetProfile(ctx Context, userID string) (*domain.UserProfile, error)

func (*User) Patch

func (u *User) Patch(ctx context.Context, user *domain.PatchUser) (*domain.User, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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