Added activities module

This commit is contained in:
2026-04-11 11:51:18 +03:00
parent 8e074db55f
commit 2dc8ff01b7
13 changed files with 694 additions and 4 deletions
+17 -3
View File
@@ -6,6 +6,7 @@ import (
"context"
"database/sql"
"errors"
"fmt"
"strings"
)
@@ -19,11 +20,12 @@ type TransactionService interface {
}
type transactionService struct {
repo repositories.TransactionRepository
repo repositories.TransactionRepository
activityRepo repositories.ActivityRepository
}
func NewTransactionService(repo repositories.TransactionRepository) TransactionService {
return &transactionService{repo: repo}
func NewTransactionService(repo repositories.TransactionRepository, activityRepo repositories.ActivityRepository) TransactionService {
return &transactionService{repo: repo, activityRepo: activityRepo}
}
var (
@@ -58,6 +60,18 @@ func (s *transactionService) Create(ctx context.Context, req domain.CreateTransa
return nil, err
}
if s.activityRepo != nil {
description := fmt.Sprintf("Created transaction %d", transaction.ID)
_ = s.activityRepo.Create(ctx, &domain.ActivityLog{
FamilyID: &transaction.FamilyID,
UserID: transaction.CreatedBy,
Action: "create",
EntityType: "transaction",
EntityID: &transaction.ID,
Description: description,
})
}
return transaction, nil
}