2025-04-01 14:13:41 +08:00

46 lines
1.2 KiB
Go

package budget
import (
"context"
db "management/internal/db/sqlc"
"management/internal/pkg/redis"
)
type BudgetBiz interface {
Create(ctx context.Context, arg *db.CreateBudgetParams) (*db.Budget, error)
Update(ctx context.Context, arg *db.UpdateBudgetParams) (*db.Budget, error)
List(ctx context.Context, arg *db.ListBudgetConditionParam) ([]*db.BudgetView, int64, error)
Get(ctx context.Context, id int64) (*db.Budget, error)
}
type budgetBiz struct {
store db.Store
redis redis.IRedis
}
var _ BudgetBiz = (*budgetBiz)(nil)
func New(store db.Store, redis redis.IRedis) *budgetBiz {
return &budgetBiz{
store: store,
redis: redis,
}
}
func (b *budgetBiz) Create(ctx context.Context, arg *db.CreateBudgetParams) (*db.Budget, error) {
return b.store.CreateBudget(ctx, arg)
}
func (b *budgetBiz) Update(ctx context.Context, arg *db.UpdateBudgetParams) (*db.Budget, error) {
return b.store.UpdateBudget(ctx, arg)
}
func (b *budgetBiz) List(ctx context.Context, arg *db.ListBudgetConditionParam) ([]*db.BudgetView, int64, error) {
return b.store.ListBudgetCondition(ctx, arg)
}
func (b *budgetBiz) Get(ctx context.Context, id int64) (*db.Budget, error) {
return b.store.GetBudget(ctx, id)
}