refactor(#93): extraire un widget UserList réutilisable
Centralise le pattern d'affichage des listes utilisateurs pour garantir une UI homogène entre gestionnaires, parents, assistantes maternelles et administrateurs. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,10 +1,7 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:p_tits_pas/services/configuration_service.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/assistante_maternelle_management_widget.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/gestionnaire_management_widget.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/parent_managmant_widget.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/admin_management_widget.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/parametres_panel.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/user_management_panel.dart';
|
||||
import 'package:p_tits_pas/widgets/app_footer.dart';
|
||||
import 'package:p_tits_pas/widgets/admin/dashboard_admin.dart';
|
||||
|
||||
@@ -18,7 +15,6 @@ class AdminDashboardScreen extends StatefulWidget {
|
||||
class _AdminDashboardScreenState extends State<AdminDashboardScreen> {
|
||||
bool? _setupCompleted;
|
||||
int mainTabIndex = 0;
|
||||
int subIndex = 0;
|
||||
int settingsSubIndex = 0;
|
||||
|
||||
@override
|
||||
@@ -27,6 +23,11 @@ class _AdminDashboardScreenState extends State<AdminDashboardScreen> {
|
||||
_loadSetupStatus();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
Future<void> _loadSetupStatus() async {
|
||||
try {
|
||||
final completed = await ConfigurationService.getSetupStatus();
|
||||
@@ -51,12 +52,6 @@ class _AdminDashboardScreenState extends State<AdminDashboardScreen> {
|
||||
});
|
||||
}
|
||||
|
||||
void onSubTabChange(int index) {
|
||||
setState(() {
|
||||
subIndex = index;
|
||||
});
|
||||
}
|
||||
|
||||
void onSettingsSubTabChange(int index) {
|
||||
setState(() {
|
||||
settingsSubIndex = index;
|
||||
@@ -89,10 +84,7 @@ class _AdminDashboardScreenState extends State<AdminDashboardScreen> {
|
||||
body: Column(
|
||||
children: [
|
||||
if (mainTabIndex == 0)
|
||||
DashboardUserManagementSubBar(
|
||||
selectedSubIndex: subIndex,
|
||||
onSubTabChange: onSubTabChange,
|
||||
)
|
||||
const SizedBox.shrink()
|
||||
else
|
||||
DashboardSettingsSubBar(
|
||||
selectedSubIndex: settingsSubIndex,
|
||||
@@ -114,17 +106,6 @@ class _AdminDashboardScreenState extends State<AdminDashboardScreen> {
|
||||
selectedSettingsTabIndex: settingsSubIndex,
|
||||
);
|
||||
}
|
||||
switch (subIndex) {
|
||||
case 0:
|
||||
return const GestionnaireManagementWidget();
|
||||
case 1:
|
||||
return const ParentManagementWidget();
|
||||
case 2:
|
||||
return const AssistanteMaternelleManagementWidget();
|
||||
case 3:
|
||||
return const AdminManagementWidget();
|
||||
default:
|
||||
return const Center(child: Text('Page non trouvée'));
|
||||
}
|
||||
return const AdminUserManagementPanel();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user