- Updated import statements in the following files to import ResponseBase directly from models instead of models.response: - routers/api/v1/share/__init__.py - routers/api/v1/site/__init__.py - routers/api/v1/slave/__init__.py - routers/api/v1/tag/__init__.py - routers/api/v1/user/__init__.py - routers/api/v1/vas/__init__.py - routers/api/v1/webdav/__init__.py Enhance user registration and related endpoints in user router - Changed return type annotations from models.response.ResponseBase to models.ResponseBase in multiple functions. - Updated return statements to reflect the new import structure. - Improved documentation for clarity. Add PhysicalFile model and storage service implementation - Introduced PhysicalFile model to represent actual files on disk with reference counting logic. - Created storage service module with local storage implementation, including file operations and error handling. - Defined exceptions for storage operations to improve error handling. - Implemented naming rule parser for generating file and directory names based on templates. Update dependency management in uv.lock - Added aiofiles version 25.1.0 to the project dependencies.
78 lines
1.9 KiB
Python
78 lines
1.9 KiB
Python
from .user import (
|
||
LoginRequest,
|
||
RegisterRequest,
|
||
TokenResponse,
|
||
User,
|
||
UserBase,
|
||
UserPublic,
|
||
UserResponse,
|
||
UserSettingResponse,
|
||
WebAuthnInfo,
|
||
)
|
||
from .user_authn import AuthnResponse, UserAuthn
|
||
from .color import ThemeResponse
|
||
|
||
from .download import (
|
||
Download,
|
||
DownloadAria2File,
|
||
DownloadAria2Info,
|
||
DownloadAria2InfoBase,
|
||
DownloadStatus,
|
||
DownloadType,
|
||
)
|
||
from .node import (
|
||
Aria2Configuration,
|
||
Aria2ConfigurationBase,
|
||
Node,
|
||
NodeStatus,
|
||
NodeType,
|
||
)
|
||
from .group import Group, GroupBase, GroupOptions, GroupOptionsBase, GroupResponse
|
||
from .object import (
|
||
CreateFileRequest,
|
||
CreateUploadSessionRequest,
|
||
DirectoryCreateRequest,
|
||
DirectoryResponse,
|
||
FileMetadata,
|
||
FileMetadataBase,
|
||
Object,
|
||
ObjectBase,
|
||
ObjectCopyRequest,
|
||
ObjectDeleteRequest,
|
||
ObjectMoveRequest,
|
||
ObjectPropertyDetailResponse,
|
||
ObjectPropertyResponse,
|
||
ObjectRenameRequest,
|
||
ObjectResponse,
|
||
ObjectType,
|
||
PolicyResponse,
|
||
UploadChunkResponse,
|
||
UploadSession,
|
||
UploadSessionBase,
|
||
UploadSessionResponse,
|
||
)
|
||
from .physical_file import PhysicalFile, PhysicalFileBase
|
||
from .order import Order, OrderStatus, OrderType
|
||
from .policy import Policy, PolicyOptions, PolicyOptionsBase, PolicyType
|
||
from .redeem import Redeem, RedeemType
|
||
from .report import Report, ReportReason
|
||
from .setting import Setting, SettingsType, SiteConfigResponse
|
||
from .share import Share
|
||
from .source_link import SourceLink
|
||
from .storage_pack import StoragePack
|
||
from .tag import Tag, TagType
|
||
from .task import Task, TaskProps, TaskPropsBase, TaskStatus, TaskType
|
||
from .webdav import WebDAV
|
||
|
||
from .database import engine, get_session
|
||
|
||
|
||
import uuid
|
||
from sqlmodel import Field
|
||
from .base import SQLModelBase
|
||
|
||
class ResponseBase(SQLModelBase):
|
||
"""通用响应模型"""
|
||
|
||
instance_id: uuid.UUID = Field(default_factory=uuid.uuid4)
|
||
"""实例ID,用于标识请求的唯一性""" |