From d92d28c892153d5cb4926e8433636aae137a9909 Mon Sep 17 00:00:00 2001 From: giovanni Date: Wed, 20 May 2026 14:39:36 +0700 Subject: [PATCH] adjust response get report expense --- .../repositories/expense_realization.repository.go | 1 + internal/modules/repports/dto/repportExpense.dto.go | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/internal/modules/expenses/repositories/expense_realization.repository.go b/internal/modules/expenses/repositories/expense_realization.repository.go index e15f3247..5b813ae7 100644 --- a/internal/modules/expenses/repositories/expense_realization.repository.go +++ b/internal/modules/expenses/repositories/expense_realization.repository.go @@ -98,6 +98,7 @@ func (r *ExpenseRealizationRepositoryImpl) GetAllWithFilters(ctx context.Context return db. Preload("Expense"). Preload("Expense.Supplier"). + Preload("Expense.Location"). Preload("Kandang"). Preload("Kandang.Location"). Preload("Nonstock"). diff --git a/internal/modules/repports/dto/repportExpense.dto.go b/internal/modules/repports/dto/repportExpense.dto.go index 00935929..6d26aa89 100644 --- a/internal/modules/repports/dto/repportExpense.dto.go +++ b/internal/modules/repports/dto/repportExpense.dto.go @@ -6,6 +6,7 @@ import ( entity "gitlab.com/mbugroup/lti-api.git/internal/entities" approvalDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/approvals/dto" kandangDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/kandangs/dto" + locationDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/locations/dto" nonstockDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/nonstocks/dto" supplierDTO "gitlab.com/mbugroup/lti-api.git/internal/modules/master/suppliers/dto" ) @@ -48,6 +49,7 @@ type RepportExpenseRealisasiDTO struct { type RepportExpenseListDTO struct { RepportExpenseBaseDTO + Location *locationDTO.LocationRelationDTO `json:"location,omitempty"` Kandang *kandangDTO.KandangRelationDTO `json:"kandang,omitempty"` Pengajuan RepportExpensePengajuanDTO `json:"pengajuan"` Realisasi RepportExpenseRealisasiDTO `json:"realisasi"` @@ -133,6 +135,15 @@ func ToRepportExpenseListDTO(baseDTO RepportExpenseBaseDTO, ns *entity.ExpenseNo totalRealisasi = ns.Realization.Qty * ns.Realization.Price } + var location *locationDTO.LocationRelationDTO + if ns.Expense != nil && ns.Expense.Location != nil && ns.Expense.Location.Id != 0 { + mapped := locationDTO.ToLocationRelationDTO(*ns.Expense.Location) + location = &mapped + } else if ns.Kandang != nil && ns.Kandang.Location.Id != 0 { + mapped := locationDTO.ToLocationRelationDTO(ns.Kandang.Location) + location = &mapped + } + // Get kandang data at the main level var kandang *kandangDTO.KandangRelationDTO if ns.Kandang != nil && ns.Kandang.Id != 0 { @@ -142,6 +153,7 @@ func ToRepportExpenseListDTO(baseDTO RepportExpenseBaseDTO, ns *entity.ExpenseNo return RepportExpenseListDTO{ RepportExpenseBaseDTO: baseDTO, + Location: location, Kandang: kandang, Pengajuan: ToRepportExpensePengajuanDTO(ns), Realisasi: realisasi,