test-auth-status.js 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. const { PrismaClient } = require('@prisma/client');
  2. const prisma = new PrismaClient();
  3. async function testAuthStatus() {
  4. try {
  5. console.log('🔍 Test de l\'état d\'authentification et des utilisateurs');
  6. // 1. Vérifier les utilisateurs existants
  7. const users = await prisma.user.findMany({
  8. include: {
  9. company: true,
  10. },
  11. });
  12. console.log(`\n👥 Utilisateurs trouvés: ${users.length}`);
  13. users.forEach(user => {
  14. console.log(` - User ${user.id}: ${user.email} (${user.name})`);
  15. console.log(` - Rôle: ${user.role}`);
  16. console.log(` - Compagnie: ${user.company ? `${user.company.name} (ID: ${user.company.id})` : 'Aucune'}`);
  17. console.log(` - Actif: ${user.isActive}`);
  18. console.log('');
  19. });
  20. // 2. Vérifier les compagnies
  21. const companies = await prisma.company.findMany({
  22. include: {
  23. _count: {
  24. select: {
  25. employees: true,
  26. vehicules: true,
  27. },
  28. },
  29. },
  30. });
  31. console.log(`\n🏢 Compagnies trouvées: ${companies.length}`);
  32. companies.forEach(company => {
  33. console.log(` - Compagnie ${company.id}: ${company.name}`);
  34. console.log(` - Utilisateurs: ${company._count.users}`);
  35. console.log(` - Véhicules: ${company._count.vehicules}`);
  36. console.log('');
  37. });
  38. // 3. Suggestions pour les tests
  39. console.log('💡 Suggestions pour tester:');
  40. if (users.length > 0) {
  41. const userWithCompany = users.find(u => u.company);
  42. if (userWithCompany) {
  43. console.log(` - Connectez-vous avec: ${userWithCompany.email}`);
  44. console.log(` - Compagnie associée: ${userWithCompany.company.name} (ID: ${userWithCompany.company.id})`);
  45. console.log(` - L'endpoint sera appelé: /api/reservations/company/${userWithCompany.company.id}/sum`);
  46. } else {
  47. console.log(' - Aucun utilisateur n\'a de compagnie associée');
  48. console.log(' - Vous devez associer un utilisateur à une compagnie pour tester');
  49. }
  50. } else {
  51. console.log(' - Aucun utilisateur trouvé');
  52. console.log(' - Créez un utilisateur et associez-le à une compagnie');
  53. }
  54. // 4. Test spécifique pour la compagnie 5
  55. const company5 = companies.find(c => c.id === 5);
  56. if (company5) {
  57. console.log(`\n🎯 Test spécifique pour la compagnie 5 (${company5.name}):`);
  58. const usersInCompany5 = users.filter(u => u.companyId === 5);
  59. console.log(` - Utilisateurs dans cette compagnie: ${usersInCompany5.length}`);
  60. usersInCompany5.forEach(user => {
  61. console.log(` - ${user.email} (${user.name})`);
  62. });
  63. if (usersInCompany5.length === 0) {
  64. console.log(' - ⚠️ Aucun utilisateur associé à la compagnie 5');
  65. console.log(' - Pour tester, connectez-vous avec un utilisateur de cette compagnie');
  66. }
  67. } else {
  68. console.log('\n❌ Compagnie 5 non trouvée');
  69. }
  70. } catch (error) {
  71. console.error('❌ Erreur lors du test:', error);
  72. } finally {
  73. await prisma.$disconnect();
  74. }
  75. }
  76. testAuthStatus();