FEAT[BE]: add default filterby become so_date in report markeing

This commit is contained in:
aguhh18
2026-01-20 22:42:16 +07:00
committed by Hafizh A. Y
parent 1d726afa6f
commit 30f5ed417c
3 changed files with 8 additions and 5 deletions
@@ -225,8 +225,12 @@ func (r *MarketingDeliveryProductRepositoryImpl) GetAllWithFilters(ctx context.C
} }
} }
if filters.FilterBy != "" && (filters.StartDate != "" || filters.EndDate != "") { if filters.StartDate != "" || filters.EndDate != "" {
if filters.FilterBy == "so_date" { filterBy := filters.FilterBy
if filterBy == "" {
filterBy = "so_date"
}
if filterBy == "so_date" {
if filters.StartDate != "" { if filters.StartDate != "" {
if startDate, err := utils.ParseDateString(filters.StartDate); err == nil { if startDate, err := utils.ParseDateString(filters.StartDate); err == nil {
db = db.Where("marketings.so_date >= ?", startDate) db = db.Where("marketings.so_date >= ?", startDate)
@@ -238,7 +242,7 @@ func (r *MarketingDeliveryProductRepositoryImpl) GetAllWithFilters(ctx context.C
db = db.Where("marketings.so_date < ?", nextDate) db = db.Where("marketings.so_date < ?", nextDate)
} }
} }
} else if filters.FilterBy == "realization_date" { } else if filterBy == "realization_date" {
if filters.StartDate != "" { if filters.StartDate != "" {
if startDate, err := utils.ParseDateString(filters.StartDate); err == nil { if startDate, err := utils.ParseDateString(filters.StartDate); err == nil {
db = db.Where("marketing_delivery_products.delivery_date >= ?", startDate) db = db.Where("marketing_delivery_products.delivery_date >= ?", startDate)
@@ -175,7 +175,6 @@ func (s *repportService) GetMarketing(c *fiber.Ctx, params *validation.Marketing
for customerID := range customerGroups { for customerID := range customerGroups {
transactions, err := s.CustomerPaymentRepo.GetCustomerPaymentTransactions(c.Context(), &customerID) transactions, err := s.CustomerPaymentRepo.GetCustomerPaymentTransactions(c.Context(), &customerID)
if err != nil { if err != nil {
s.Log.Warnf("Failed to get transactions for customer %d: %v", customerID, err)
continue continue
} }