Add item_expense

This commit is contained in:
2026-05-25 16:19:36 +07:00
parent da87d659df
commit b8be29e110
12 changed files with 439 additions and 181 deletions
+21 -3
View File
@@ -27,7 +27,9 @@ func (r *ExpenseRepositoryImpl) Create(ctx context.Context, expense *entities.Ex
func (r *ExpenseRepositoryImpl) GetByID(ctx context.Context, id uuid.UUID) (*entities.Expense, error) {
var expense entities.Expense
err := r.db.WithContext(ctx).Preload("ChartOfAccount").First(&expense, "id = ?", id).Error
err := r.db.WithContext(ctx).
Preload("Items.ChartOfAccount").
First(&expense, "id = ?", id).Error
if err != nil {
return nil, err
}
@@ -36,7 +38,10 @@ func (r *ExpenseRepositoryImpl) GetByID(ctx context.Context, id uuid.UUID) (*ent
func (r *ExpenseRepositoryImpl) GetByIDAndOrganizationID(ctx context.Context, id, organizationID uuid.UUID) (*entities.Expense, error) {
var expense entities.Expense
err := r.db.WithContext(ctx).Preload("ChartOfAccount").Where("id = ? AND organization_id = ?", id, organizationID).First(&expense).Error
err := r.db.WithContext(ctx).
Preload("Items.ChartOfAccount").
Where("id = ? AND organization_id = ?", id, organizationID).
First(&expense).Error
if err != nil {
return nil, err
}
@@ -78,6 +83,19 @@ func (r *ExpenseRepositoryImpl) List(ctx context.Context, organizationID uuid.UU
return nil, 0, err
}
err := query.Preload("ChartOfAccount").Order("created_at DESC").Limit(limit).Offset(offset).Find(&expenses).Error
err := query.
Preload("Items.ChartOfAccount").
Order("created_at DESC").
Limit(limit).
Offset(offset).
Find(&expenses).Error
return expenses, total, err
}
func (r *ExpenseRepositoryImpl) CreateItem(ctx context.Context, item *entities.ExpenseItem) error {
return r.db.WithContext(ctx).Create(item).Error
}
func (r *ExpenseRepositoryImpl) DeleteItemsByExpenseID(ctx context.Context, expenseID uuid.UUID) error {
return r.db.WithContext(ctx).Delete(&entities.ExpenseItem{}, "expense_id = ?", expenseID).Error
}