初始化 HyperNode-AI 控制面。
包含节点账本、每日清算,以及 Ubuntu 交互式部署脚本。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
"""按序列号或钱包地址读取主体,供各业务模块共用。"""
|
||||
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.errors import AppError
|
||||
from app.models import ComputeNode, User
|
||||
|
||||
|
||||
def get_user_by_wallet(session: Session, wallet_address: str) -> User:
|
||||
user = session.scalar(select(User).where(User.wallet_address == wallet_address))
|
||||
if user is None:
|
||||
raise AppError("用户不存在", 404)
|
||||
return user
|
||||
|
||||
|
||||
def get_node_by_sn(session: Session, sn: str) -> ComputeNode:
|
||||
node = session.scalar(select(ComputeNode).where(ComputeNode.sn == sn))
|
||||
if node is None:
|
||||
raise AppError(f"节点不存在: {sn}", 404)
|
||||
return node
|
||||
Reference in New Issue
Block a user