You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
diplomatic-quarter/lib/pages/ErService/ErOptions.dart

104 lines
3.6 KiB
Dart

import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/ErService/rapid-response-team/rrt-main-screen.dart';
import 'package:diplomaticquarterapp/uitl/location_util.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/medical_profile_item.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../../uitl/translations_delegate_base.dart';
import 'AmbulanceReq.dart';
import 'EdOnline/DdServicesPage.dart';
import 'NearestEr.dart';
class ErOptions extends StatefulWidget {
final bool isAppbar;
const ErOptions({Key key, this.isAppbar}) : super(key: key);
@override
_ErOptionsState createState() => _ErOptionsState();
}
class _ErOptionsState extends State<ErOptions> {
LocationUtils locationUtils;
ProjectViewModel projectViewModel;
@override
void initState() {
locationUtils = new LocationUtils(isShowConfirmDialog: true, context: context);
WidgetsBinding.instance.addPostFrameCallback((_) => locationUtils.getCurrentLocation());
super.initState();
}
@override
Widget build(BuildContext context) {
projectViewModel = Provider.of<ProjectViewModel>(context);
final rrtLocked = projectViewModel.havePrivilege(68);
return AppScaffold(
isShowAppBar: widget.isAppbar,
appBarTitle: TranslationBase.of(context).emergencyServices,
isShowDecPage: false,
showNewAppBar: true,
showNewAppBarTitle: true,
backgroundColor: Color(0xffF8F8F8),
body: GridView(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3, childAspectRatio: 2 / 2, crossAxisSpacing: 12, mainAxisSpacing: 12),
physics: NeverScrollableScrollPhysics(),
padding: EdgeInsets.all(21),
shrinkWrap: true,
children: [
InkWell(
onTap: () {
Navigator.push(context, FadePage(page: AmbulanceReq()));
},
child: MedicalProfileItem(
title: TranslationBase.of(context).ambulancerequest,
imagePath: 'assets/images/new-design/AM.PNG',
subTitle: TranslationBase.of(context).requestA,
isPngImage: true,
),
),
InkWell(
onTap: () {
Navigator.push(context, FadePage(page: NearestEr()));
},
child: MedicalProfileItem(
title: TranslationBase.of(context).nearester,
imagePath: 'assets/images/new-design/emergency_icon.png',
subTitle: TranslationBase.of(context).locationa,
isPngImage: true,
),
),
InkWell(
onTap: () {
Navigator.push(context, FadePage(page: DdServicesPage()));
},
child: MedicalProfileItem(
title: "ED",
imagePath: 'assets/images/new-design/AM.PNG',
subTitle: TranslationBase.of(context).service,
isPngImage: true,
),
),
InkWell(
onTap: () {
Navigator.push(context, FadePage(page: RRTMainScreen()));
},
child: MedicalProfileItem(
title: TranslationBase.of(context).rrtService,
imagePath: 'assets/images/new-design/AM.PNG',
subTitle: TranslationBase.of(context).service,
isPngImage: true,
isEnable: rrtLocked,
),
),
],
),
);
}
}