Add alarms to tasks, admin role from DB

This commit is contained in:
2026-03-28 19:39:25 +05:00
parent a2f09de04d
commit 28ef21b2f4
6 changed files with 141 additions and 20 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ class AdminScreen extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final user = ref.watch(currentUserProvider);
final isAdmin = user?.isAdmin ?? false;
final isAdmin = user?.role == UserRole.admin;
return Scaffold(
appBar: AppBar(
+16 -4
View File
@@ -1,5 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
import '../../providers/auth_provider.dart';
class DashboardScreen extends StatelessWidget {
const DashboardScreen({super.key});
@@ -10,10 +12,20 @@ class DashboardScreen extends StatelessWidget {
appBar: AppBar(
title: const Text('NANAXE CRM'),
actions: [
IconButton(
icon: const Icon(Icons.admin_panel_settings),
onPressed: () => context.push('/home/admin'),
tooltip: 'Админка',
Consumer(
builder: (context, ref, _) {
final user = ref.watch(currentUserProvider);
final isAdmin = user?.role == UserRole.admin;
if (isAdmin ?? false) {
return IconButton(
icon: const Icon(Icons.admin_panel_settings),
onPressed: () => context.push('/home/admin'),
tooltip: 'Админка',
);
}
return const SizedBox.shrink();
},
),
IconButton(
icon: const Icon(Icons.auto_awesome),
-6
View File
@@ -20,7 +20,6 @@ class _HomeScreenState extends State<HomeScreen> {
const TasksScreen(),
const MindMapScreen(),
const CalendarScreen(),
const AlarmsScreen(),
];
@override
@@ -55,11 +54,6 @@ class _HomeScreenState extends State<HomeScreen> {
selectedIcon: Icon(Icons.calendar_today),
label: 'Календарь',
),
NavigationDestination(
icon: Icon(Icons.alarm_outlined),
selectedIcon: Icon(Icons.alarm),
label: 'Будильники',
),
],
),
);
+1
View File
@@ -26,6 +26,7 @@ class _TaskFormScreenState extends ConsumerState<TaskFormScreen> {
TaskPriority _priority = TaskPriority.medium;
DateTime? _dueDate;
int _estimatedHours = 0;
List<AlarmData> _alarms = [];
bool _isGenerating = false;
@override