Files
server-core/app/api/schemas/operator.py
T
Pine b90539a013 feat(server): 统一登录+算力打通(port 阶段0-1)落地四层架构
- 登录:/auth/send-code·phone-login·wx-login·wx-phone(复用 RBAC 签发)
- 算力:services/compute_client(loopback :3000)+ /admin/compute/ping·provision
- /v1 relay 改走 compute-engine(前端不直连引擎)
- 模型:User 补 wx_openid/phone;仓储 async create+新方法
- 契约:api/schemas(auth/compute)Pydantic
2026-08-24 14:16:34 +08:00

78 lines
1.7 KiB
Python

from pydantic import BaseModel
class TaskCreateRequest(BaseModel):
title: str
category: str = ""
sub_category: str = ""
description: str = ""
mode: str = "grab"
budget_min: int = 0
budget_max: int = 0
deadline: str = ""
publisher_name: str = ""
class TaskStatusRequest(BaseModel):
status: str # review/published/completed/cancelled
class ProviderCreateRequest(BaseModel):
name: str
category: str = ""
level: str = "certified"
status: str = "pending"
contact: str = ""
class ProviderUpdateRequest(BaseModel):
level: str | None = None
status: str | None = None
contact: str | None = None
class ContentCreateRequest(BaseModel):
type: str = "news"
title: str
summary: str = ""
body: str = ""
status: str = "draft"
class ContentStatusRequest(BaseModel):
status: str # published/offline/draft
class ConfigUpdateRequest(BaseModel):
value: str
description: str = ""
# ── 任务管理 ──────────────────────────────────────────────────────────────
# ── 算力对接(compute-engine)─────────────────────────────────────────────
class ComputePingResponse(BaseModel):
ok: bool
version: str | None = None
detail: str | None = None
class ComputeProvisionRequest(BaseModel):
user_id: str
class ComputeProvisionResponse(BaseModel):
engine_user_id: str | None = None
engine_username: str | None = None
pat: str | None = None
created: bool = False
detail: str | None = None