Implement Platform Superuser UI and Fix API Role Casing

- Update API to return lowercase roles for frontend compatibility
- Fix Tenant owner lookup in platform admin serializer
- Update frontend App.tsx to match tarball implementation
- Prioritize vite.config.js for HMR support
- Include pending CSP and CORS configuration updates
This commit is contained in:
poduck
2025-11-27 02:16:05 -05:00
parent 2e111364a2
commit 249a9040d2
10 changed files with 143 additions and 8 deletions

View File

@@ -43,7 +43,7 @@ class TenantSerializer(serializers.ModelSerializer):
try:
owner = User.objects.filter(
role=User.Role.TENANT_OWNER,
# Note: We need to add a tenant reference to User model
tenant=obj
).first()
if owner:
@@ -52,7 +52,7 @@ class TenantSerializer(serializers.ModelSerializer):
'username': owner.username,
'full_name': owner.full_name,
'email': owner.email,
'role': owner.role,
'role': owner.role.lower(),
}
except:
pass
@@ -65,6 +65,7 @@ class PlatformUserSerializer(serializers.ModelSerializer):
business_name = serializers.SerializerMethodField()
business_subdomain = serializers.SerializerMethodField()
full_name = serializers.SerializerMethodField()
role = serializers.SerializerMethodField()
class Meta:
model = User
@@ -76,6 +77,9 @@ class PlatformUserSerializer(serializers.ModelSerializer):
]
read_only_fields = fields
def get_role(self, obj):
return obj.role.lower()
def get_full_name(self, obj):
"""Get user's full name"""
return obj.full_name