From a7719708fb7fede4a4130a1f46941f950301ec53 Mon Sep 17 00:00:00 2001 From: optclblast Date: Sun, 5 May 2024 01:03:15 +0300 Subject: [PATCH] tmp --- backend/internal/pkg/models/user.go | 31 +++++++++++++++++++ .../usecase/repository/users/repository.go | 22 +++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 backend/internal/usecase/repository/users/repository.go diff --git a/backend/internal/pkg/models/user.go b/backend/internal/pkg/models/user.go index 4078291..e869522 100644 --- a/backend/internal/pkg/models/user.go +++ b/backend/internal/pkg/models/user.go @@ -3,4 +3,35 @@ package models type UserIdentity interface { Id() string Mnemonic() string + IsAdmin() bool +} + +type User struct { + id string + mnemonic string + isAdmin bool +} + +func NewUser(id string, mnemonic string) *User { + return &User{ + id: id, + mnemonic: mnemonic, + } +} + +func (u *User) Id() string { + return u.id +} + +func (u *User) Mnemonic() string { + return u.mnemonic +} + +func (u *User) IsAdmin() bool { + return u.isAdmin +} + +type OrganizationUser struct { + User + // add org info } diff --git a/backend/internal/usecase/repository/users/repository.go b/backend/internal/usecase/repository/users/repository.go new file mode 100644 index 0000000..9f326c4 --- /dev/null +++ b/backend/internal/usecase/repository/users/repository.go @@ -0,0 +1,22 @@ +package users + +import ( + "context" + + "github.com/emochka2007/block-accounting/internal/pkg/models" +) + +type GetParams struct { + Id string + OrganizationId string + Seed []byte +} + +// todo implement +type Repository interface { + Get(ctx context.Context, params GetParams) (*models.User, error) + Create(ctx context.Context, user *models.User) error + Activate(ctx context.Context, id string) error + Update(ctx context.Context, user *models.User) error + Delete(ctx context.Context, id string) error +}