Files
fm_be/internal/domain/contact/repository.go
2026-07-16 22:16:45 +07:00

21 lines
1.1 KiB
Go

package contact
import "context"
type Repository interface {
ListContacts(ctx context.Context, filter ListFilter) ([]ContactListItem, int64, error)
GetContactByID(ctx context.Context, userID []byte) (*ContactListItem, error)
IsActorAdmin(ctx context.Context) (bool, error)
ResolveRoleCodeByID(ctx context.Context, roleID []byte) (string, error)
CreateContact(ctx context.Context, in CreateInput) ([]byte, error)
UpdateContact(ctx context.Context, in UpdateInput) error
DeleteContact(ctx context.Context, userID []byte) error
UpdateContactStatus(ctx context.Context, userID []byte, isActive bool) error
UpdateContactRole(ctx context.Context, userID []byte, roleCode string) error
UpdatePilotCategory(ctx context.Context, userID []byte, category string) error
UpdateLicense(ctx context.Context, userID []byte, licenseNo *string) error
UpdateChiefFlags(ctx context.Context, userID []byte, patch ProfilePatch) error
UpdateResponsibleComplaints(ctx context.Context, userID []byte, value bool) error
BulkUpdateStatus(ctx context.Context, userIDs [][]byte, isActive bool) (int64, error)
}