Bläddra i källkod

fix: sms login 去掉员工检查 + 去掉 db.commit

alphah 2 veckor sedan
förälder
incheckning
e7936d0bd3
1 ändrade filer med 2 tillägg och 11 borttagningar
  1. 2 11
      backend/app/api/v1/module_system/auth/service.py

+ 2 - 11
backend/app/api/v1/module_system/auth/service.py

@@ -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(