HH/verify_seed_data.py

74 lines
2.2 KiB
Python

#!/usr/bin/env python
"""Verify the seeded admin test data"""
import os
import django
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'PX360.settings')
django.setup()
from django.contrib.auth import get_user_model
from apps.complaints.models import Complaint, Inquiry
User = get_user_model()
print("=" * 60)
print("ADMIN TEST DATA VERIFICATION")
print("=" * 60)
# Check admin users
print("\n📋 ADMIN USERS:")
print("-" * 60)
admin_users = User.objects.filter(
username__in=['rahaf', 'abrar', 'amaal'],
is_staff=True
)
for user in admin_users:
print(f"{user.username} - {user.get_full_name()} ({user.email})")
print(f" Staff: {user.is_staff} | Superuser: {user.is_superuser} | Active: {user.is_active}")
# Check complaints
print("\n📋 COMPLAINTS SUMMARY:")
print("-" * 60)
total_complaints = Complaint.objects.count()
complaints_by_status = Complaint.objects.values('status').count()
complaints_by_severity = Complaint.objects.values('severity').count()
print(f" Total complaints: {total_complaints}")
print("\n By Status:")
for status, count in Complaint.objects.values_list('status').order_by('status'):
count = Complaint.objects.filter(status=status).count()
print(f" - {status}: {count}")
print("\n By Severity:")
for severity in ['low', 'medium', 'high', 'critical']:
count = Complaint.objects.filter(severity=severity).count()
if count > 0:
print(f" - {severity}: {count}")
print("\n By Assigned User:")
for user in admin_users:
count = Complaint.objects.filter(assigned_to=user).count()
print(f" - {user.username}: {count} complaints")
# Check inquiries
print("\n📋 INQUIRIES SUMMARY:")
print("-" * 60)
total_inquiries = Inquiry.objects.count()
print(f" Total inquiries: {total_inquiries}")
print("\n By Status:")
for status in ['open', 'in_progress', 'resolved', 'closed']:
count = Inquiry.objects.filter(status=status).count()
if count > 0:
print(f" - {status}: {count}")
print("\n By Assigned User:")
for user in admin_users:
count = Inquiry.objects.filter(assigned_to=user).count()
print(f" - {user.username}: {count} inquiries")
print("\n" + "=" * 60)
print("✓ VERIFICATION COMPLETE")
print("=" * 60)