From d9a1372077039d14f03d7ab5f0a00a0889568710 Mon Sep 17 00:00:00 2001 From: aguhh18 Date: Wed, 17 Dec 2025 11:34:08 +0700 Subject: [PATCH] feat[BE]:: add totalHppPricePerKg to marketing report summary --- .../repports/dto/repportMarketing.dto.go | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/internal/modules/repports/dto/repportMarketing.dto.go b/internal/modules/repports/dto/repportMarketing.dto.go index 98ec9888..dc4baabd 100644 --- a/internal/modules/repports/dto/repportMarketing.dto.go +++ b/internal/modules/repports/dto/repportMarketing.dto.go @@ -33,10 +33,11 @@ type RepportMarketingItemDTO struct { } type Summary struct { - TotalQty int `json:"total_qty"` - TotalWeightKg float64 `json:"total_weight_kg"` - TotalSalesAmount int64 `json:"total_sales_amount"` - TotalHppAmount int64 `json:"total_hpp_amount"` + TotalQty int `json:"total_qty"` + TotalWeightKg float64 `json:"total_weight_kg"` + TotalSalesAmount int64 `json:"total_sales_amount"` + TotalHppAmount int64 `json:"total_hpp_amount"` + TotalHppPricePerKg float64 `json:"total_hpp_price_per_kg"` } type RepportMarketingResponseDTO struct { @@ -130,11 +131,17 @@ func ToSummary(mdps []entity.MarketingDeliveryProduct, hppPricePerKg float64) *S totalHppAmount += int64(calculatedTotalWeight * hppPricePerKg) } + totalHppPricePerKg := float64(0) + if totalWeightKg > 0 { + totalHppPricePerKg = float64(totalHppAmount) / totalWeightKg + } + return &Summary{ - TotalQty: totalQty, - TotalWeightKg: totalWeightKg, - TotalSalesAmount: totalSalesAmount, - TotalHppAmount: totalHppAmount, + TotalQty: totalQty, + TotalWeightKg: totalWeightKg, + TotalSalesAmount: totalSalesAmount, + TotalHppAmount: totalHppAmount, + TotalHppPricePerKg: totalHppPricePerKg, } }