会员积分改版V1

This commit is contained in:
2026-08-11 09:24:18 +08:00
parent fe24e51b97
commit b9fd07f293
111 changed files with 9355 additions and 3900 deletions
+21 -3
View File
@@ -1,18 +1,36 @@
from pydantic import BaseModel
from __future__ import annotations
from app.schemas.common import NaiveDatetime
from datetime import datetime
from pydantic import BaseModel
class CreditRecordOut(BaseModel):
id: str
type: str
amount: float
balance_delta: float = 0
expired_amount: float = 0
balance_after: float
description: str
created_at: NaiveDatetime
billing_scene: str | None = None
scene_name_snapshot: str | None = None
input_tokens: int | None = None
output_tokens: int | None = None
total_tokens: int | None = None
llm_call_count: int | None = None
llm_success_call_count: int | None = None
llm_failed_call_count: int | None = None
created_at: datetime
model_config = {"from_attributes": True}
class CreditBalanceOut(BaseModel):
credits: float
available_credits: float
next_expiring_credits: float = 0
next_expires_at: datetime | None = None
next_last_usable_at: datetime | None = None
records: list[CreditRecordOut]
total: int = 0