Implement backend

This commit is contained in:
2022-04-24 19:40:44 +00:00
committed by Gitea
parent bd026732c8
commit 2ca3328f0f
4 changed files with 111 additions and 1 deletions

View File

@ -8,6 +8,41 @@ import (
"github.com/google/uuid"
)
type FilterTransactionsRequest struct {
CategoryID string `json:"category_id"`
PayeeID string `json:"payee_id"`
AccountID string `json:"account_id"`
}
func (h *Handler) filteredTransactions(c *gin.Context) {
budgetID := c.Param("budgetid")
budgetUUID, err := uuid.Parse(budgetID)
if err != nil {
c.AbortWithError(http.StatusBadRequest, err)
return
}
var request FilterTransactionsRequest
err = c.BindJSON(&request)
if err != nil {
c.AbortWithError(http.StatusBadRequest, err)
return
}
params := postgres.GetFilteredTransactionsParams{
BudgetID: budgetUUID,
CategoryID: uuid.NullUUID{},
FilterCategory: true,
}
transactions, err := h.Service.GetFilteredTransactions(c.Request.Context(), params)
if err != nil {
c.AbortWithError(http.StatusInternalServerError, err)
return
}
c.JSON(http.StatusOK, TransactionsResponse{nil, transactions})
}
func (h *Handler) problematicTransactions(c *gin.Context) {
budgetID := c.Param("budgetid")
budgetUUID, err := uuid.Parse(budgetID)