add export cycles

This commit is contained in:
hanie.khodkari
2024-12-14 18:02:16 +03:30
parent d74ba68a5a
commit a44f8ac368
3 changed files with 49 additions and 0 deletions
@@ -1,7 +1,9 @@
import 'package:cssd/config/colors.dart';
import 'package:permission_handler/permission_handler.dart';
import '../../config/routes.dart';
import '../../providers/auth.dart';
import '../../providers/connectivity.dart';
import '../../widgets/CycleScreens/Result/banner.dart';
import '../../widgets/CycleScreens/Result/data_box.dart';
@@ -266,9 +268,37 @@ class CycleResultFloatingButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
final userData = Provider.of<Auth>(context, listen: false).user;
return Row(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
if (userData['roles'].contains('Supervisor') ||
userData['roles'].contains('Admin'))
InkWell(
customBorder: CircleBorder(),
onTap: () async {
var status = await Permission.storage.request();
if (status.isGranted) {
Provider.of<CyclesProvider>(context, listen: false)
.exportCycles();
}
},
child: Container(
padding: EdgeInsets.all(_deviceBlockSize),
decoration: BoxDecoration(
shape: BoxShape.circle,
color: Colors.black,
),
child: Icon(
Icons.import_export,
size: 10 * _deviceBlockSize,
color: Colors.white,
),
),
),
SizedBox(
width: 2 * _deviceBlockSize,
),
InkWell(
customBorder: CircleBorder(),
onTap: () {