Fix user delete flow 10

This commit is contained in:
Urtzi Alfaro
2025-08-02 23:42:59 +02:00
parent abe74f32f8
commit a65386e138
2 changed files with 8 additions and 2 deletions

View File

@@ -31,7 +31,7 @@ class User(Base):
phone = Column(String(20))
language = Column(String(10), default="es")
timezone = Column(String(50), default="Europe/Madrid")
role = Column(String(20), default="user")
role = Column(String(20), nullable=False)
# REMOVED: All tenant relationships - these are handled by tenant service
# No tenant_memberships, tenants relationships
@@ -50,6 +50,7 @@ class User(Base):
"phone": self.phone,
"language": self.language,
"timezone": self.timezone,
"role": self.role,
"created_at": self.created_at.isoformat() if self.created_at else None,
"updated_at": self.updated_at.isoformat() if self.updated_at else None,
"last_login": self.last_login.isoformat() if self.last_login else None

View File

@@ -38,6 +38,8 @@ class AuthService:
detail="User with this email already exists"
)
user_role = user_data.role if user_data.role else "user"
# Create new user
hashed_password = SecurityManager.hash_password(user_data.password)
new_user = User(
@@ -49,12 +51,14 @@ class AuthService:
is_verified=False,
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc),
role=user_data.role
role=user_role
)
db.add(new_user)
await db.flush() # Get user ID without committing
logger.debug(f"User created with role: {new_user.role} for {user_data.email}")
# ✅ FIX 1: Create SEPARATE access and refresh tokens with different payloads
access_token_data = {
"user_id": str(new_user.id),
@@ -99,6 +103,7 @@ class AuthService:
"user_id": str(new_user.id),
"email": new_user.email,
"full_name": new_user.full_name,
"role": new_user.role,
"registered_at": datetime.now(timezone.utc).isoformat()
})
except Exception as e: