import uuid from datetime import datetime from enum import Enum from typing import List from pydantic import BaseModel from schemas import DBBase class SpaceBase(BaseModel): name: str = None class Authority(str, Enum): rw = 'rw' r = 'r' class Member(BaseModel): user_id: str authority: Authority # 解析请求json 创建项目 class SpaceCreate(SpaceBase): name: str project_id: str members: List[Member] = [] is_all_member: bool = False authority: Authority = 'r' class SpaceDelete(DBBase): pass class SpaceDetail(BaseModel): space_id: str class SpaceRename(BaseModel): space_id: str new_name: str class AddSpaceMembers(BaseModel): space_id: str members: List[Member] # -------------------------------------------------------------- # 数据库模型 class SpaceDB(DBBase): name: str user_id: str project_id: str members: List[Member] = [] create_date: datetime = datetime.now()