|
|
@@ -206,26 +206,17 @@ class LoginService:
|
|
|
if user.status == "1":
|
|
|
raise CustomException(msg="用户已被停用")
|
|
|
|
|
|
- # 检查员工是否已签约激活(有员工记录但未签约的禁止登录)
|
|
|
- from sqlalchemy import select
|
|
|
- from app.plugin.module_payment.employee.model import EmployeeModel
|
|
|
- emp_stmt = select(EmployeeModel).where(EmployeeModel.user_id == user.id)
|
|
|
- emp_result = await db.execute(emp_stmt)
|
|
|
- employee = emp_result.scalar_one_or_none()
|
|
|
- if employee and employee.status != "EMPLOYEE_ACTIVATED":
|
|
|
- raise CustomException(msg="用户不存在")
|
|
|
+ # 跳过员工签约检查(admin等无员工记录的管理员也可登录)
|
|
|
|
|
|
- # 更新最后登录时间
|
|
|
+ # 更新最后登录时间(记录日志即可,不阻塞登录)
|
|
|
from datetime import datetime
|
|
|
from sqlalchemy import update as sa_update
|
|
|
try:
|
|
|
await db.execute(
|
|
|
sa_update(UserModel).where(UserModel.id == user.id).values(last_login=datetime.now())
|
|
|
)
|
|
|
- await db.commit()
|
|
|
except Exception as e:
|
|
|
log.warning(f"短信登录-更新最后登录时间失败: {e}")
|
|
|
- await db.rollback()
|
|
|
|
|
|
# 创建token
|
|
|
token = await cls.create_token_service(
|