feat:新增基金产品列表接口,历史业绩接口,客户注册提交接口,问卷提交接口
This commit is contained in:
+27
-1
@@ -70,4 +70,30 @@ async def login(db: AsyncSession, username: str, password: str) -> dict:
|
||||
raise ParamError("用户名或密码错误")
|
||||
if user.status != "正常":
|
||||
raise ForbiddenError("账号状态异常,无法登录")
|
||||
return {"token": create_token(user.id), "user": user_payload(user)}
|
||||
return {"token": create_token(user.id), "user": user_payload(user)}
|
||||
|
||||
|
||||
async def register(
|
||||
db: AsyncSession,
|
||||
username: str,
|
||||
password: str,
|
||||
phone: str,
|
||||
real_name: str | None = None,
|
||||
) -> dict:
|
||||
"""客户注册:唯一性校验 → 密码加密存储 → 返回用户信息(不自动签发 token)。"""
|
||||
repo = SysUserRepo(db)
|
||||
if await repo.get_by_username(username) is not None:
|
||||
raise ParamError("用户名已存在")
|
||||
if await repo.get_by_phone(phone) is not None:
|
||||
raise ParamError("手机号已注册")
|
||||
|
||||
user = SysUser(
|
||||
username=username,
|
||||
password_hash=hash_password(password),
|
||||
phone=phone,
|
||||
real_name=real_name,
|
||||
user_type="CUSTOMER",
|
||||
status="正常",
|
||||
)
|
||||
user = await repo.add(user)
|
||||
return user_payload(user)
|
||||
Reference in New Issue
Block a user