nfc & ui improvements

main_design2.1
Sikander Saleem 1 year ago
parent fd6b5dc83a
commit 9c4151a0fc

Binary file not shown.

@ -1,5 +1,4 @@
storePassword=Cloud@AtomsSA storePassword=Cloud@AtomsSA
keyPassword=Cloud@AtomsSA keyPassword=Cloud@AtomsSA
keyAlias=playstore keyAlias=playstore
#storeFile=/Users/sikandersaleem/StudioProjects/cloudsolutions-atoms/android/AtomsSA-playStore.jks storeFile=AtomsSA-playStore.jks
storeFile=/Users/waseem/CsProjects/android/AtomsSA-playStore.jks

@ -11,17 +11,16 @@ 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/string_extensions.dart'; import 'package:test_sa/extensions/string_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/models/enums/user_types.dart'; 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/calendar_page.dart'; import 'package:test_sa/new_views/pages/land_page/calendar_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/my_request/my_requests_page.dart';
import 'package:test_sa/new_views/swipe_module/mark_attendance_widget.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/new_views/swipe_module/swipe_success_view.dart'; import 'package:test_sa/new_views/swipe_module/swipe_success_view.dart';
import 'package:test_sa/new_views/swipe_module/utils/swipe_general_utils.dart'; import 'package:test_sa/new_views/swipe_module/utils/swipe_general_utils.dart';
import 'package:test_sa/views/widgets/equipment/single_device_picker.dart'; import 'package:test_sa/views/widgets/equipment/single_device_picker.dart';
import '../../../controllers/providers/settings/setting_provider.dart'; import '../../../controllers/providers/settings/setting_provider.dart';
import '../../../views/widgets/dialogs/dialog.dart'; import '../../../views/widgets/dialogs/dialog.dart';
import '../../common_widgets/app_bottom_nav_bar.dart'; import '../../common_widgets/app_bottom_nav_bar.dart';
@ -49,7 +48,6 @@ class _LandPageState extends State<LandPage> {
@override @override
void initState() { void initState() {
_pages = <Widget>[]; _pages = <Widget>[];
super.initState(); super.initState();
} }
@ -103,19 +101,19 @@ class _LandPageState extends State<LandPage> {
} }
} }
Future<void> checkNfcSupported() async { // Future<void> checkNfcSupported() async {
isNfcSupported = await NfcManager.instance.isAvailable(); // isNfcSupported = await NfcManager.instance.isAvailable();
setState(() {}); // setState(() {});
} // }
@override @override
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.isUserConfirmSwipe) { // if (_userProvider.isUserConfirmSwipe) {
if (!_userProvider.user.employeeIsHMG) { // if (!_userProvider.user.employeeIsHMG) {
checkNfcSupported(); // checkNfcSupported();
} // }
_pages = <Widget>[ _pages = <Widget>[
DashboardPage(onDrawerPress: (() { DashboardPage(onDrawerPress: (() {
_scaffoldKey.currentState.isDrawerOpen ? _scaffoldKey.currentState.closeDrawer() : _scaffoldKey.currentState.openDrawer(); _scaffoldKey.currentState.isDrawerOpen ? _scaffoldKey.currentState.closeDrawer() : _scaffoldKey.currentState.openDrawer();
@ -191,17 +189,18 @@ class _LandPageState extends State<LandPage> {
), ),
if (userProvider.user != null && !userProvider.user.employeeIsHMG) if (userProvider.user != null && !userProvider.user.employeeIsHMG)
Positioned( Positioned(
right:_userProvider.user.type==UsersTypes.engineer? 20.toScreenWidth:null, right: _userProvider.user.type == UsersTypes.engineer ? 20.toScreenWidth : null,
left:_userProvider.user.type!=UsersTypes.engineer? 20.toScreenWidth:null , left: _userProvider.user.type != UsersTypes.engineer ? 20.toScreenWidth : null,
bottom: 130.toScreenHeight, bottom: 130.toScreenHeight,
child: GestureDetector( child: GestureDetector(
onTap: () { onTap: () async {
isNfcSupported = await NfcManager.instance.isAvailable();
SwipeGeneralUtils.showSwipeTypeBottomSheetSheet(context: context, isNfcSupported: isNfcSupported); SwipeGeneralUtils.showSwipeTypeBottomSheetSheet(context: context, isNfcSupported: isNfcSupported);
}, },
child: CircularAnimationWithProgressIndicator( child: CircularAnimationWithProgressIndicator(
child: Container( child: Container(
width: 120.toScreenWidth, width: 100.toScreenWidth,
height: 120.toScreenHeight, height: 100.toScreenHeight,
decoration: const BoxDecoration( decoration: const BoxDecoration(
shape: BoxShape.circle, shape: BoxShape.circle,
color: AppColor.white, color: AppColor.white,
@ -212,11 +211,22 @@ class _LandPageState extends State<LandPage> {
children: [ children: [
'swipe'.toSvgAsset(width: 32, height: 32), 'swipe'.toSvgAsset(width: 32, height: 32),
8.height, 8.height,
context.translation.checkIn.bodyText(context).custom(color: AppColor.neutral80), Text(
8.height, ("${context.translation.checkIn}\n${userProvider.swipeTransactionModel != null && userProvider.swipeTransactionModel.swipeTime != null ? SwipeGeneralUtils.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime) : '--:--'}"),
userProvider.swipeTransactionModel != null && userProvider.swipeTransactionModel.swipeTime != null style: AppTextStyles.bodyText2.copyWith(color: AppColor.neutral80, fontWeight: FontWeight.w500, fontFamily: "Poppins"),
? SwipeGeneralUtils.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime).bodyText(context).custom(color: AppColor.neutral80) ),
: '--:--'.bodyText(context).custom(color: AppColor.neutral80),
// (context.translation.checkIn +
// "\n" +
// (userProvider.swipeTransactionModel != null && userProvider.swipeTransactionModel.swipeTime != null
// ? SwipeGeneralUtils.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime)
// : '--:--'))
// .bodyText2(context)
// .custom(color: AppColor.neutral80),
// 8.height,
// userProvider.swipeTransactionModel != null && userProvider.swipeTransactionModel.swipeTime != null
// ? SwipeGeneralUtils.formatTimeOnly(userProvider.swipeTransactionModel.swipeTime).bodyText2(context).custom(color: AppColor.neutral80)
// : '--:--'.bodyText(context).custom(color: AppColor.neutral80),
], ],
), ),
), ),

@ -76,8 +76,8 @@ class _CircularAnimationWithProgressIndicatorState
); );
}, },
child: SizedBox( child: SizedBox(
width: 120.toScreenHeight, width: 100.toScreenHeight,
height: 120.toScreenWidth, height: 100.toScreenWidth,
child: const CircularProgressIndicator( child: const CircularProgressIndicator(
strokeWidth: 3.0, strokeWidth: 3.0,
backgroundColor: AppColor.primary30, backgroundColor: AppColor.primary30,

@ -1,7 +1,7 @@
import 'dart:async'; import 'dart:async';
import 'dart:developer'; import 'dart:developer';
import 'dart:io'; import 'dart:io';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:geolocator/geolocator.dart'; import 'package:geolocator/geolocator.dart';
@ -29,7 +29,6 @@ import 'package:test_sa/new_views/swipe_module/models/swipe_model.dart';
import 'package:test_sa/new_views/swipe_module/swipe_success_view.dart'; import 'package:test_sa/new_views/swipe_module/swipe_success_view.dart';
import 'package:test_sa/new_views/swipe_module/utils/location_utils.dart'; import 'package:test_sa/new_views/swipe_module/utils/location_utils.dart';
class SwipeGeneralUtils { class SwipeGeneralUtils {
static bool _isLoadingVisible = false; static bool _isLoadingVisible = false;
@ -178,7 +177,6 @@ class SwipeGeneralUtils {
); );
} }
static void showErrorDialog({String message, @required BuildContext context}) { static void showErrorDialog({String message, @required BuildContext context}) {
showDialog( showDialog(
context: context, context: context,
@ -214,7 +212,7 @@ class SwipeGeneralUtils {
return Container( return Container(
padding: const EdgeInsets.all(12), padding: const EdgeInsets.all(12),
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.white, color: isEnabled ? Colors.white : AppColor.white40,
borderRadius: BorderRadius.circular(18), borderRadius: BorderRadius.circular(18),
border: Border.all(color: AppColor.white40, width: 2), border: Border.all(color: AppColor.white40, width: 2),
), ),
@ -222,13 +220,12 @@ class SwipeGeneralUtils {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
icon.toSvgAsset(), icon.toSvgAsset(color: isEnabled ? null : Colors.grey.withOpacity(0.5)),
title.heading5(context).custom(color: AppColor.neutral50), title.heading5(context).custom(color: isEnabled ? AppColor.neutral50 : Colors.grey.withOpacity(0.5)),
], ],
), ),
).onPress( ).onPress(
() { () {
log('isEnabled is ${!isEnabled}');
if (!isEnabled) return; if (!isEnabled) return;
onPress(); onPress();
}, },
@ -533,7 +530,7 @@ class SwipeGeneralUtils {
@required bool isEnable, @required bool isEnable,
@required BuildContext context, @required BuildContext context,
}) async { }) async {
if (!(await isGoogleServicesAvailable())) { if (!(await isGoogleServicesAvailable())) {
checkHuaweiLocationPermission(attendanceType: swipeType, context: context); checkHuaweiLocationPermission(attendanceType: swipeType, context: context);
} else { } else {
LocationUtilities.isEnabled((bool isEnabled) { LocationUtilities.isEnabled((bool isEnabled) {
@ -592,7 +589,7 @@ class SwipeGeneralUtils {
static List<Widget> availableAttendanceMethodList({@required BuildContext context, @required UserProvider userProvider, @required bool isNfcSupported}) { static List<Widget> availableAttendanceMethodList({@required BuildContext context, @required UserProvider userProvider, @required bool isNfcSupported}) {
List<Widget> availableMethods = []; List<Widget> availableMethods = [];
if (userProvider.user.enableNFC) { if (userProvider.user.enableNFC) {
availableMethods.add(attendanceTypeCard(SwipeTypeEnum.NFC.name, 'nfc_icon', userProvider.user.enableNFC, () { availableMethods.add(attendanceTypeCard(SwipeTypeEnum.NFC.name, 'nfc_icon', isNfcSupported, () {
handleSwipe(swipeType: SwipeTypeEnum.NFC, isEnable: userProvider.user.enableNFC, context: navigatorKey.currentState.overlay.context); handleSwipe(swipeType: SwipeTypeEnum.NFC, isEnable: userProvider.user.enableNFC, context: navigatorKey.currentState.overlay.context);
}, context)); }, context));
} }
@ -687,7 +684,6 @@ class SwipeGeneralUtils {
// } // }
} }
// //
// static Widget getNoDataWidget(BuildContext context) { // static Widget getNoDataWidget(BuildContext context) {
// return Column( // return Column(
@ -906,4 +902,4 @@ class SwipeGeneralUtils {
// } // }
// } // }
// return selectedDate; // return selectedDate;
// } // }

Loading…
Cancel
Save