tfse-app-api-v0.2/user/User.py

214 lines
5.3 KiB
Python

from user.scripts import *
class User:
def __init__(self):
self.cid = None
self.name = None
self.email = None
self.pwd = None
self.avatar = None
def register(self, code):
"""
注册
Parameters:
code: 验证码
Returns:
info: 信息
"""
# 校验邮箱格式
if not check_mail_fmt(self.email):
return "邮箱格式错误"
# 校验密码强度
if not check_pwd_fmt(self.pwd):
return "密码强度太低"
# 检验邮箱是否被注册
if check_registered(self.email):
return "邮箱已被注册"
# 验证码是否正确
info = check_verify_code(self.email, code)
if info is not True:
return info
# 通过以上校验,生成新用户信息,插入新用户数据,清除验证码和时间戳
gen_new_user(self.email, self.pwd)
return "注册成功"
def login(self):
"""
登录
Parameters:
-
Returns:
info: 信息
result: 结果
"""
result = check_pwd(self.email, self.pwd)
if not result:
return "邮箱或密码错误", {}
else:
return "登陆成功", result
def change_pwd(self, code):
"""
修改密码
Parameters:
code: 验证码
Returns:
info: 信息
"""
# 校验邮箱格式
if not check_mail_fmt(self.email):
return "邮箱格式错误"
# 校验密码强度
if not check_pwd_fmt(self.pwd):
return "密码强度太低"
# 检验邮箱是否存在
if check_registered(self.email):
return "该邮箱未注册"
# 检验验证码是否正确
info = check_verify_code(self.email, code)
if info is not True:
return info
# 通过以上检验 进行密码修改
try:
reset_pwd(self.email, self.pwd)
return "修改密码成功"
except Exception:
return "修改密码失败"
def change_email(self, code):
"""
更换邮箱
Args:
code: 验证码
Returns:
info: 信息
"""
# 校验邮箱格式
if not check_mail_fmt(self.email):
return "邮箱格式错误"
# 检验邮箱是否被注册
if check_registered(self.email):
return "邮箱已被注册"
# 检验验证码是否正确
info = check_verify_code(self.email, code)
if info is not True:
return info
# 通过以上检验 进行更换邮箱
reset_email(self.cid, self.email)
return "修改邮箱成功"
def get_avatar(self):
"""
查看用户头像
Parameters:
-
Returns:
filestream
"""
return avatar_by_cid(self.cid)
def change_avatar(self, avatar_id):
"""
更换头像
Returns:
-
"""
choose_avatar(self.cid, avatar_id)
return "头像已更换"
def upload_id_card(self, image):
"""
上传识别身份证文本
Parameters:
image: 营业执照
Returns:
info 信息
result 识别结果
"""
info = id_card_recognition_result(self.cid, image)
if info[0] != '识别正确':
return info, {}
else:
return info[0], info[1]
def upload_business_license(self, image):
"""
上传识别营业执照文本
Parameters:
image: 营业执照
Returns:
info 信息
result 识别结果
"""
info = business_license_recognition_result(self.cid, image)
if info[0] != '识别正确':
return info, {}
else:
return info[0], info[1]
def real_company_verify(self):
"""
公司实名认证
Returns:
info: 信息
"""
info = tyc_company_verify(self.cid)
return info
def send_verify_mail(self, v_type):
"""
发送验证邮件
Parameters:
v_type: 验证类型
Returns:
info: 回复
"""
if v_type == 'register' or v_type == 'resetemail':
if check_registered(self.email):
return "邮箱已被注册"
code = gen_verify_code(self.email)
info = send_email(self.email, code, v_type)
return info
elif v_type == 'resetpwd':
if not check_registered(self.email):
return "该邮箱未注册"
code = gen_verify_code(self.email)
info = send_email(self.email, code, v_type)
return info
else:
return "邮件发送失败"
@staticmethod
def feedback(content):
"""
反馈邮件
Returns:
-
"""
info = send_feedback_email(content)
return info
def user_info(self):
"""
显示企业基本信息
Returns:
result: 企业基本信息
"""
return refresh_user_info(self.cid)