mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-10-02 08:29:21 +00:00
用户注册初始化
This commit is contained in:
@@ -24,7 +24,7 @@ class CurrentUserUpdateSchema(BaseModel):
|
|||||||
return mobile_validator(value)
|
return mobile_validator(value)
|
||||||
|
|
||||||
|
|
||||||
class UserRegisterSchema(CurrentUserUpdateSchema):
|
class UserRegisterSchema(BaseModel):
|
||||||
"""注册"""
|
"""注册"""
|
||||||
name: str = Field(default=None, max_length=15, description="名称")
|
name: str = Field(default=None, max_length=15, description="名称")
|
||||||
mobile: Optional[str] = Field(default=None, description="手机号")
|
mobile: Optional[str] = Field(default=None, description="手机号")
|
||||||
@@ -32,6 +32,11 @@ class UserRegisterSchema(CurrentUserUpdateSchema):
|
|||||||
gender: Optional[int] = Field(default=1, description="性别") # 1:男 2:女
|
gender: Optional[int] = Field(default=1, description="性别") # 1:男 2:女
|
||||||
username: str = Field(default=None, max_length=15, description="用户名")
|
username: str = Field(default=None, max_length=15, description="用户名")
|
||||||
password: str = Field(default=None, max_length=128, description="密码哈希值")
|
password: str = Field(default=None, max_length=128, description="密码哈希值")
|
||||||
|
dept_id: Optional[int] = Field(default=1, description='部门ID')
|
||||||
|
role_ids: Optional[List[int]] = Field(default=[2], description='角色ID')
|
||||||
|
position_ids: Optional[List[int]] = Field(default=[1], description='岗位ID')
|
||||||
|
creator_id: Optional[int] = Field(default=1, description='创建人ID')
|
||||||
|
description: Optional[str] = Field(default=f'注册用户{username}', max_length=255, description="备注")
|
||||||
|
|
||||||
|
|
||||||
class UserForgetPasswordSchema(BaseModel):
|
class UserForgetPasswordSchema(BaseModel):
|
||||||
|
|||||||
@@ -149,7 +149,10 @@ class UserService:
|
|||||||
raise CustomException(msg="用户不存在")
|
raise CustomException(msg="用户不存在")
|
||||||
if user.is_superuser:
|
if user.is_superuser:
|
||||||
raise CustomException(msg="超级管理员不能删除")
|
raise CustomException(msg="超级管理员不能删除")
|
||||||
|
if user.available:
|
||||||
|
raise CustomException(msg="用户已启用,不能删除")
|
||||||
|
if auth.user.id == id:
|
||||||
|
raise CustomException(msg="不能删除当前登陆用户")
|
||||||
# 删除用户角色关联数据
|
# 删除用户角色关联数据
|
||||||
await UserCRUD(auth).set_user_roles(user_ids=[id], role_ids=[])
|
await UserCRUD(auth).set_user_roles(user_ids=[id], role_ids=[])
|
||||||
|
|
||||||
@@ -246,7 +249,12 @@ class UserService:
|
|||||||
|
|
||||||
data.password = PwdUtil.set_password_hash(password=data.password)
|
data.password = PwdUtil.set_password_hash(password=data.password)
|
||||||
dict_data = data.model_dump(exclude_unset=True)
|
dict_data = data.model_dump(exclude_unset=True)
|
||||||
|
dict_data['creator_id'] = data.creator_id
|
||||||
|
dict_data['dept_id'] = data.dept_id
|
||||||
|
dict_data['description'] = data.description
|
||||||
result = await UserCRUD(auth).create(data=dict_data)
|
result = await UserCRUD(auth).create(data=dict_data)
|
||||||
|
await UserCRUD(auth).set_user_roles(user_ids=[result.id], role_ids=data.role_ids)
|
||||||
|
await UserCRUD(auth).set_user_positions(user_ids=[result.id], position_ids=data.position_ids)
|
||||||
return UserOutSchema.model_validate(result).model_dump()
|
return UserOutSchema.model_validate(result).model_dump()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user