Sebastiaan de Schaetzen 8380e95217
All checks were successful
Backend Deploy / build (push) Successful in 2m55s
Backend Build and Test / build (push) Successful in 3m5s
Add endpoint to add funds (#99)
Closes #91

Reviewed-on: #99
2025-05-27 12:02:07 +02:00

81 lines
1.7 KiB
Go

package main
import "time"
type User struct {
ID int `json:"id"`
Name string `json:"name"`
}
type UserWithAllowance struct {
ID int `json:"id"`
Name string `json:"name"`
Allowance float64 `json:"allowance"`
}
type History struct {
Allowance float64 `json:"allowance"`
Timestamp time.Time `json:"timestamp"`
Description string `json:"description"`
}
type PostHistory struct {
Allowance float64 `json:"allowance"`
Description string `json:"description"`
}
// Task represents a task in the system.
type Task struct {
ID int `json:"id"`
Name string `json:"name"`
Reward float64 `json:"reward"`
Assigned *int `json:"assigned"` // Pointer to allow null
}
type Allowance struct {
ID int `json:"id"`
Name string `json:"name"`
Target float64 `json:"target"`
Progress float64 `json:"progress"`
Weight float64 `json:"weight"`
Colour string `json:"colour"`
}
type CreateAllowanceRequest struct {
Name string `json:"name"`
Target float64 `json:"target"`
Weight float64 `json:"weight"`
Colour string `json:"colour"`
}
type UpdateAllowanceRequest struct {
Name string `json:"name"`
Target float64 `json:"target"`
Weight float64 `json:"weight"`
Colour string `json:"colour"`
}
type BulkUpdateAllowanceRequest struct {
ID int `json:"id"`
Weight float64 `json:"weight"`
}
type CreateGoalResponse struct {
ID int `json:"id"`
}
type CreateTaskRequest struct {
Name string `json:"name" binding:"required"`
Reward float64 `json:"reward"`
Assigned *int `json:"assigned"`
}
type CreateTaskResponse struct {
ID int `json:"id"`
}
type AddAllowanceAmountRequest struct {
Amount float64 `json:"amount"`
Description string `json:"description"`
}