hide task module & recurrent WO for nurse

design_3.0_task_module_new
Sikander Saleem 6 months ago
parent 84bf5ac399
commit b4587a6347

@ -106,7 +106,7 @@ class MyHttpOverrides extends HttpOverrides {
void main() async { void main() async {
WidgetsFlutterBinding.ensureInitialized(); WidgetsFlutterBinding.ensureInitialized();
// HttpOverrides.global = MyHttpOverrides(); // for later use. HttpOverrides.global = MyHttpOverrides(); // for later use.
_configureLocalTimeZone(); _configureLocalTimeZone();
NotificationManger.initialisation((notificationDetails) {}, (id, title, body, payload) async {}); NotificationManger.initialisation((notificationDetails) {}, (id, title, body, payload) async {});

@ -1,8 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/enums/user_types.dart'; import 'package:test_sa/models/enums/user_types.dart';
@ -17,8 +17,17 @@ class AppBottomNavigationBar extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
bool isEngineer = (Provider.of<UserProvider>(context, listen: false).user?.type) == UsersTypes.engineer; bool isEngineer = (Provider.of<UserProvider>(context, listen: false).user?.type) == UsersTypes.engineer;
bool isUserFMS = Provider.of<SettingProvider>(context, listen: false).isUserFMS;
List<NavItemModel> navItems = [
NavItemModel(0, "overview", context.translation.overview),
NavItemModel(1, "request_icon", context.translation.workOrder),
if ((isEngineer && isUserFMS) || !isEngineer) NavItemModel(2, "add_icon", context.translation.calendar, showLabel: false),
NavItemModel(3, "assets", context.translation.assets),
NavItemModel(4, "contact", context.translation.contact),
];
return Container( return Container(
// height: 84.toScreenHeight,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColor.background(context), color: AppColor.background(context),
boxShadow: [boxShadowR14], boxShadow: [boxShadowR14],
@ -26,17 +35,12 @@ class AppBottomNavigationBar extends StatelessWidget {
child: BottomNavigationBar( child: BottomNavigationBar(
backgroundColor: Colors.white, backgroundColor: Colors.white,
items: <BottomNavigationBarItem>[ items: <BottomNavigationBarItem>[
navBarItem(context, index: 0, iconName: "overview", label: context.translation.overview), for (int i = 0; i < navItems.length; i++) navBarItem(context, index: navItems[i].index, iconName: navItems[i].iconName, label: navItems[i].label, showLabel: navItems[i].showLabel),
navBarItem(context, index: 1, iconName: "request_icon", label: context.translation.workOrder),
// if (!isEngineer) navBarItem(context, index: 2, iconName: "add_icon", label: context.translation.calendar, showLabel: false),
navBarItem(context, index: 2, iconName: "add_icon", label: context.translation.calendar, showLabel: false),
// navBarItem(context, index: !isEngineer ? 3 : 2, iconName: "assets", label: context.translation.assets),
navBarItem(context, index: 3, iconName: "assets", label: context.translation.assets),
// navBarItem(context, index: !isEngineer ? 4 : 3, iconName: "contact", label: context.translation.contact),
navBarItem(context, index: 4, iconName: "contact", label: context.translation.contact),
], ],
currentIndex: selectedIndex, currentIndex: selectedIndex,
onTap: onPressed, onTap: (index) {
onPressed(navItems[index].index);
},
selectedLabelStyle: AppTextStyles.tinyFont2, selectedLabelStyle: AppTextStyles.tinyFont2,
unselectedLabelStyle: AppTextStyles.tinyFont2, unselectedLabelStyle: AppTextStyles.tinyFont2,
selectedItemColor: Theme.of(context).bottomNavigationBarTheme.selectedItemColor, selectedItemColor: Theme.of(context).bottomNavigationBarTheme.selectedItemColor,
@ -50,7 +54,7 @@ class AppBottomNavigationBar extends StatelessWidget {
icon: iconName icon: iconName
.toSvgAsset( .toSvgAsset(
width: showLabel ? 26 : 38, width: showLabel ? 26 : 38,
height: showLabel ? 26 : 38, height: showLabel ? 26 : 38,
color: showLabel || (showLabel && selectedIndex != 2) color: showLabel || (showLabel && selectedIndex != 2)
? selectedIndex == index ? selectedIndex == index
? Theme.of(context).bottomNavigationBarTheme.selectedItemColor ? Theme.of(context).bottomNavigationBarTheme.selectedItemColor
@ -62,3 +66,12 @@ class AppBottomNavigationBar extends StatelessWidget {
); );
} }
} }
class NavItemModel {
int index;
String label;
String iconName;
bool showLabel;
NavItemModel(this.index, this.iconName, this.label, {this.showLabel = true});
}

@ -90,12 +90,12 @@ class CreateRequestModel {
if (Provider.of<SettingProvider>(context, listen: false).engineerCanCreateCM) { if (Provider.of<SettingProvider>(context, listen: false).engineerCanCreateCM) {
list.add(CreateRequestModel(context.translation.correctiveMaintenance, "add_icon", CreateNewRequest.id)); list.add(CreateRequestModel(context.translation.correctiveMaintenance, "add_icon", CreateNewRequest.id));
} }
list.add(CreateRequestModel(context.translation.task, "add_icon", CreateTaskView.id)); // list.add(CreateRequestModel(context.translation.task, "add_icon", CreateTaskView.id)); // todo enable it in NextRelease
} else { } else {
list.add(CreateRequestModel(context.translation.correctiveMaintenance, "add_icon", CreateNewRequest.id)); list.add(CreateRequestModel(context.translation.correctiveMaintenance, "add_icon", CreateNewRequest.id));
list.add(CreateRequestModel(context.translation.gasRefill, "add_icon", GasRefillRequestForm.routeName)); list.add(CreateRequestModel(context.translation.gasRefill, "add_icon", GasRefillRequestForm.routeName));
list.add(CreateRequestModel(context.translation.transferAsset, "add_icon", CreateDeviceTransferRequest.id)); list.add(CreateRequestModel(context.translation.transferAsset, "add_icon", CreateDeviceTransferRequest.id));
list.add(CreateRequestModel(context.translation.task, "add_icon", CreateTaskView.id)); // list.add(CreateRequestModel(context.translation.task, "add_icon", CreateTaskView.id)); // todo enable it in NextRelease
} }
return list; return list;
} }

@ -15,9 +15,7 @@ import 'package:test_sa/models/enums/user_types.dart';
import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/app_style/app_color.dart';
import 'package:test_sa/new_views/common_widgets/app_filled_button.dart'; import 'package:test_sa/new_views/common_widgets/app_filled_button.dart';
import 'package:test_sa/new_views/pages/land_page/create_request-type_bottomsheet.dart'; import 'package:test_sa/new_views/pages/land_page/create_request-type_bottomsheet.dart';
import 'package:test_sa/new_views/pages/land_page/mark_attendance_widget.dart';
import 'package:test_sa/new_views/pages/land_page/my_request/my_requests_page.dart'; import 'package:test_sa/new_views/pages/land_page/my_request/my_requests_page.dart';
import 'package:test_sa/new_views/pages/land_page/non_hmg_employee_swipe_view.dart';
import 'package:test_sa/new_views/pages/login_page.dart'; import 'package:test_sa/new_views/pages/login_page.dart';
import 'package:test_sa/new_views/pages/settings_page.dart'; import 'package:test_sa/new_views/pages/settings_page.dart';
import 'package:test_sa/views/widgets/equipment/single_device_picker.dart'; import 'package:test_sa/views/widgets/equipment/single_device_picker.dart';
@ -104,22 +102,22 @@ class _LandPageState extends State<LandPage> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
if (_userProvider == null) { if (_userProvider == null) {
_userProvider = Provider.of<UserProvider>(context, listen: false); _userProvider = Provider.of<UserProvider>(context, listen: false);
if (_userProvider!.user != null && _userProvider!.user!.employeeIsHMG==false) { if (_userProvider!.user != null && _userProvider!.user!.employeeIsHMG == false) {
WidgetsBinding.instance.addPostFrameCallback((_) { WidgetsBinding.instance.addPostFrameCallback((_) {
_userProvider!.getSwipeLastTransaction(userId: _userProvider!.user!.userID!); _userProvider!.getSwipeLastTransaction(userId: _userProvider!.user!.userID!);
}); });
} }
_pages = <Widget>[ _pages = <Widget>[
DashboardView(onDrawerPress: (() { DashboardView(onDrawerPress: (() {
_scaffoldKey.currentState!.isDrawerOpen ? _scaffoldKey.currentState!.closeDrawer() : _scaffoldKey.currentState!.openDrawer(); _scaffoldKey.currentState!.isDrawerOpen ? _scaffoldKey.currentState!.closeDrawer() : _scaffoldKey.currentState!.openDrawer();
})), })),
// const old_page.LandPage(), // const old_page.LandPage(),
const MyRequestsPage(), const MyRequestsPage(),
// if (_userProvider!.user!.type != UsersTypes.engineer) // if (_userProvider!.user!.type != UsersTypes.engineer)
const SizedBox(), const SizedBox(),
// if (_userProvider!.user!.type != UsersTypes.engineer) const CalendarPage(), // if (_userProvider!.user!.type != UsersTypes.engineer) const CalendarPage(),
const MyAssetsPage(fromBottomBar: true), const MyAssetsPage(fromBottomBar: true),
]; ];
checkLocalAuth(); checkLocalAuth();
} }
@ -149,19 +147,20 @@ class _LandPageState extends State<LandPage> {
)) ))
: null, : null,
drawer: const AppDrawer(), drawer: const AppDrawer(),
body: _pages[currentPageIndex], body: _pages[currentPageIndex],
bottomNavigationBar: _pages.isEmpty bottomNavigationBar: _pages.isEmpty
? null ? null
: AppBottomNavigationBar( : AppBottomNavigationBar(
selectedIndex: currentPageIndex, selectedIndex: currentPageIndex,
onPressed: (index) { onPressed: (index) {
bool isEngineer = _userProvider!.user!.type == UsersTypes.engineer; bool isEngineer = _userProvider!.user!.type == UsersTypes.engineer;
print("index:$index");
if (index == 2) { if (index == 2) {
showModalBottomSheet( showModalBottomSheet(
context: context, context: context,
useSafeArea: true, useSafeArea: true,
backgroundColor: Colors.white, backgroundColor: Colors.white,
builder: (context) => CreateRequestTypeBottomSheet(isEngineer:isEngineer), builder: (context) => CreateRequestTypeBottomSheet(isEngineer: isEngineer),
); );
} else if (index == 4) { } else if (index == 4) {
showModalBottomSheet( showModalBottomSheet(

@ -63,7 +63,7 @@ class _AllRequestsFilterPageState extends State<AllRequestsFilterPage> {
context.translation.gasRefill: 2, context.translation.gasRefill: 2,
context.translation.transferAsset: 3, context.translation.transferAsset: 3,
context.translation.preventiveMaintenance: 4, context.translation.preventiveMaintenance: 4,
context.translation.task: 6, // context.translation.task: 6,// todo enable it in NextRelease
}; };
if (isEngineer) { if (isEngineer) {
types.addAll({context.translation.recurrentWo: 5}); types.addAll({context.translation.recurrentWo: 5});

@ -3,10 +3,12 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/api/all_requests_provider.dart'; import 'package:test_sa/controllers/providers/api/all_requests_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/context_extension.dart';
import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/enums/user_types.dart';
import 'package:test_sa/models/search_all_requests_model.dart'; import 'package:test_sa/models/search_all_requests_model.dart';
import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/app_style/app_color.dart';
import 'package:test_sa/new_views/pages/land_page/my_request/all_requests_filter_page.dart'; import 'package:test_sa/new_views/pages/land_page/my_request/all_requests_filter_page.dart';
@ -37,9 +39,12 @@ class _MyRequestsPageState extends State<MyRequestsPage> {
context.translation.gasRefill, context.translation.gasRefill,
context.translation.transferAsset, context.translation.transferAsset,
context.translation.preventiveMaintenance, context.translation.preventiveMaintenance,
context.translation.recurrentWo,
context.translation.taskRequest,
]; ];
if (Provider.of<UserProvider>(context, listen: false).user!.type != UsersTypes.normal_user) {
requestsList.add(context.translation.recurrentWo);
}
// context.translation.taskRequest // todo enable it in NextRelease
_provider = Provider.of<AllRequestsProvider>(context, listen: false); _provider = Provider.of<AllRequestsProvider>(context, listen: false);
_provider!.reset(); _provider!.reset();
WidgetsBinding.instance.addPostFrameCallback((_) { WidgetsBinding.instance.addPostFrameCallback((_) {
@ -135,8 +140,7 @@ class _MyRequestsPageState extends State<MyRequestsPage> {
selectedRequest = index; selectedRequest = index;
}); });
_provider!.reset(); _provider!.reset();
_provider!.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest); _provider!.getAllRequests(context, typeTransaction: selectedRequest == 0 ? null : selectedRequest);
} }
}), }),
separatorBuilder: (cxt, index) => 8.width, separatorBuilder: (cxt, index) => 8.width,

@ -1,5 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -10,10 +11,9 @@ import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/text_extensions.dart';
import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart';
import 'package:test_sa/models/device/asset.dart'; import 'package:test_sa/models/device/asset.dart';
import 'package:test_sa/models/device/device_transfer.dart';
import 'package:test_sa/models/device/asset_transfer_attachment.dart'; import 'package:test_sa/models/device/asset_transfer_attachment.dart';
import 'package:test_sa/models/device/device_transfer.dart';
import 'package:test_sa/models/enums/user_types.dart'; import 'package:test_sa/models/enums/user_types.dart';
import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/models/new_models/department.dart'; import 'package:test_sa/models/new_models/department.dart';
import 'package:test_sa/models/new_models/floor.dart'; import 'package:test_sa/models/new_models/floor.dart';
import 'package:test_sa/models/service_request/pending_service_request_model.dart'; import 'package:test_sa/models/service_request/pending_service_request_model.dart';
@ -21,10 +21,10 @@ import 'package:test_sa/modules/cm_module/views/components/action_button/footer_
import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/app_style/app_color.dart';
import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart'; import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart';
import 'package:test_sa/providers/ppm_service_provider.dart'; import 'package:test_sa/providers/ppm_service_provider.dart';
import 'package:test_sa/views/pages/user/requests/pending_requests_screen.dart'; import 'package:test_sa/views/pages/user/requests/pending_requests_screen.dart';
import 'package:test_sa/views/widgets/equipment/asset_picker.dart'; import 'package:test_sa/views/widgets/equipment/asset_picker.dart';
import 'package:test_sa/views/widgets/images/multi_image_picker.dart'; import 'package:test_sa/views/widgets/images/multi_image_picker.dart';
import '../../../models/new_models/building.dart'; import '../../../models/new_models/building.dart';
import '../../../models/new_models/site.dart'; import '../../../models/new_models/site.dart';
import '../../../new_views/common_widgets/app_filled_button.dart'; import '../../../new_views/common_widgets/app_filled_button.dart';
@ -144,6 +144,8 @@ class _CreateDeviceTransferRequestState extends State<CreateDeviceTransferReques
21.height, 21.height,
requestTypeWidget(context), requestTypeWidget(context),
12.height, 12.height,
"Destination".bodyText(context).custom(color: AppColor.white936),
12.height,
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [

Loading…
Cancel
Save