aboutsummaryrefslogtreecommitdiffstats
path: root/backend/internal/api/v1/goals/goals.go
blob: 4f994683b518fe632e4bcbfae79d83f6c8cdfb42 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package goals

import (
	"finance/backend/internal/api/handlers"

	"github.com/gin-gonic/gin"
)

// GetGoals returns all goals for the authenticated user
func GetGoals() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.GetGoals
}

// GetGoalByID returns a specific goal by ID
func GetGoalByID() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.GetGoal
}

// CreateGoal creates a new financial goal
func CreateGoal() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.CreateGoal
}

// UpdateGoal updates an existing goal
func UpdateGoal() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.UpdateGoal
}

// DeleteGoal deletes a goal
func DeleteGoal() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.DeleteGoal
}

// UpdateGoalProgress updates just the progress (current amount) of a goal
func UpdateGoalProgress() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.UpdateGoalProgress
}

// GetGoalProgressDetails returns goal with enhanced progress tracking details
func GetGoalProgressDetails() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.GetGoalProgressDetails
}

// GetAllGoalsProgressDetails returns all goals with enhanced progress tracking details
func GetAllGoalsProgressDetails() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.GetAllGoalsProgressDetails
}

// LinkTransactionToGoal links a transaction to a goal for progress tracking
func LinkTransactionToGoal() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.LinkTransactionToGoal
}

// RecalculateGoalProgress recalculates the progress of a goal based on its transactions
func RecalculateGoalProgress() gin.HandlerFunc {
	handler := handlers.NewGoalHandler()
	return handler.RecalculateGoalProgress
}