expense filter by outlet and date range

This commit is contained in:
Efril
2026-05-28 11:52:16 +07:00
parent a55a3f4ee2
commit 66a8126da0
6 changed files with 61 additions and 9 deletions
+16
View File
@@ -164,6 +164,22 @@ func (h *ExpenseHandler) ListExpenses(c *gin.Context) {
req.Search = search
}
// Prioritize outlet_id from context (e.g. outlet-scoped user),
// fall back to query param if context has no outlet.
if contextInfo.OutletID != uuid.Nil {
req.OutletID = contextInfo.OutletID.String()
} else if outletID := c.Query("outlet_id"); outletID != "" {
req.OutletID = outletID
}
if startDate := c.Query("start_date"); startDate != "" {
req.StartDate = startDate
}
if endDate := c.Query("end_date"); endDate != "" {
req.EndDate = endDate
}
validationError, validationErrorCode := h.expenseValidator.ValidateListExpenseRequest(req)
if validationError != nil {
validationResponseError := contract.NewResponseError(validationErrorCode, constants.RequestEntity, validationError.Error())