wifi swipe added

main_design2.1
WaseemAbbasi22 11 months ago
parent 96b0a2d36b
commit d386f0152f

@ -258,7 +258,6 @@ class UserProvider extends ChangeNotifier {
URLs.sendForgetPasswordOtp + '?employeeId=$employeeId', URLs.sendForgetPasswordOtp + '?employeeId=$employeeId',
); );
generalResponseModel = GeneralResponseModel.fromJson(json.decode(response.body)); generalResponseModel = GeneralResponseModel.fromJson(json.decode(response.body));
print('data i got is ${generalResponseModel.data}');
_loading = false; _loading = false;
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
notifyListeners(); notifyListeners();
@ -278,7 +277,6 @@ class UserProvider extends ChangeNotifier {
} }
Future<GeneralResponseModel> forgetPasswordValidateOtp({@required BuildContext context, @required String employeeId, @required String otp}) async { Future<GeneralResponseModel> forgetPasswordValidateOtp({@required BuildContext context, @required String employeeId, @required String otp}) async {
print('payload i got is ${employeeId} code ${otp}');
GeneralResponseModel generalResponseModel = GeneralResponseModel(responseCode: -1); GeneralResponseModel generalResponseModel = GeneralResponseModel(responseCode: -1);
// if (_loading == true) return generalResponseModel; // if (_loading == true) return generalResponseModel;
_loading = true; _loading = true;
@ -290,12 +288,9 @@ class UserProvider extends ChangeNotifier {
URLs.sendForgetPasswordValidateOtp + '?employeeId=$employeeId&otp=$otp', URLs.sendForgetPasswordValidateOtp + '?employeeId=$employeeId&otp=$otp',
); );
generalResponseModel = GeneralResponseModel.fromJson(json.decode(response.body)); generalResponseModel = GeneralResponseModel.fromJson(json.decode(response.body));
print('response model i got is ${generalResponseModel.data}');
_loading = false; _loading = false;
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
print('i got status ${response.statusCode}');
if (generalResponseModel.data != null) { if (generalResponseModel.data != null) {
print('inside data not null ${generalResponseModel.data}');
verifyOtpModel = VerifyOtpModel.fromJson(generalResponseModel.data); verifyOtpModel = VerifyOtpModel.fromJson(generalResponseModel.data);
} }
notifyListeners(); notifyListeners();

@ -108,7 +108,7 @@ class _ResetPasswordViewState extends State<ResetPasswordView> {
if (newPassword != confirmPassword) { if (newPassword != confirmPassword) {
Fluttertoast.showToast(msg: 'Password not matched try again'); Fluttertoast.showToast(msg: 'Password not matched try again');
} else { } else {
_userProvider = Provider.of<UserProvider>(context); _userProvider = Provider.of<UserProvider>(context,listen: false);
UpdatePasswordModel updatePasswordModel = UpdatePasswordModel updatePasswordModel =
UpdatePasswordModel(password: newPassword, confirmPassword: confirmPassword, userId: _userProvider.verifyOtpModel.userId, token: _userProvider.verifyOtpModel.token); UpdatePasswordModel(password: newPassword, confirmPassword: confirmPassword, userId: _userProvider.verifyOtpModel.userId, token: _userProvider.verifyOtpModel.token);
GeneralResponseModel generalResponseModel = await _userProvider.updateNewPassword(context: context, updatePasswordModel: updatePasswordModel); GeneralResponseModel generalResponseModel = await _userProvider.updateNewPassword(context: context, updatePasswordModel: updatePasswordModel);

@ -111,10 +111,11 @@ class _LandPageState extends State<LandPage> {
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) { if (_userProvider.user != null && !_userProvider.user.employeeIsHMG) {
print('i am called.'); WidgetsBinding.instance.addPostFrameCallback((_) {
_userProvider.getSwipeLastTransaction(userId: _userProvider.user.userID); _userProvider.getSwipeLastTransaction(userId: _userProvider.user.userID);
} });
}
_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();

@ -126,7 +126,7 @@ class _LoginPageState extends State<LoginPage> {
onTap: () async { onTap: () async {
if(userNameController.text.isNotEmpty){ if(userNameController.text.isNotEmpty){
GeneralResponseModel response = await _userProvider.sendForgetPasswordOtp(context: context, employeeId: userNameController.text); GeneralResponseModel response = await _userProvider.sendForgetPasswordOtp(context: context, employeeId: userNameController.text);
if(response.isSuccess){ if( response.isSuccess){
Navigator.push(context, MaterialPageRoute(builder: (context)=>ForgetPasswordVerifyOtpView(data: {'employeeId':userNameController.text,'phoneNumber':response.data},))); Navigator.push(context, MaterialPageRoute(builder: (context)=>ForgetPasswordVerifyOtpView(data: {'employeeId':userNameController.text,'phoneNumber':response.data},)));
// Navigator.push(context, ForgetPasswordVerifyOtpView.routeName); // Navigator.push(context, ForgetPasswordVerifyOtpView.routeName);
}else{ }else{

@ -27,6 +27,7 @@ import 'package:test_sa/new_views/swipe_module/enums/swipe_type.dart';
import 'package:test_sa/new_views/swipe_module/models/swipe_model.dart'; 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';
import 'package:wifi_iot/wifi_iot.dart';
class SwipeGeneralUtils { class SwipeGeneralUtils {
SwipeGeneralUtils._(); SwipeGeneralUtils._();
@ -237,7 +238,7 @@ class SwipeGeneralUtils {
performQrCodeAttendance(latitude: lat, longitude: long, context: context); performQrCodeAttendance(latitude: lat, longitude: long, context: context);
return; return;
case SwipeTypeEnum.Wifi: case SwipeTypeEnum.Wifi:
performQrCodeAttendance(latitude: lat, longitude: long, context: context); performWifiAttendance(latitude: lat, long: long, context: context);
return; return;
} }
} }
@ -468,4 +469,63 @@ class SwipeGeneralUtils {
} }
return false; return false;
} }
Future<void> performWifiAttendance({@required double latitude, @required double long,@required BuildContext context}) async {
String ssId ='HMG-MOHEMM';
String password ='M0hemm@1212';
// if (Platform.isAndroid) {
// if (!(await checkSession())) {
// return;
// }
// }
showLoading(context);
bool isConnected = await WiFiForIoTPlugin.connect( ssId,
password: password, joinOnce: Platform.isIOS ? false : true, security: NetworkSecurity.WPA, withInternet: false);
if (Platform.isIOS) {
if (await WiFiForIoTPlugin.getSSID() == ssId) {
isConnected = true;
} else {
isConnected = false;
}
}
UserProvider userProvider = Provider.of<UserProvider>(context, listen: false);
if (isConnected) {
await WiFiForIoTPlugin.forceWifiUsage(true);
await Future.delayed(const Duration(seconds: 6));
try {
final swipeModel = Swipe(swipeTypeValue: SwipeTypeEnum.Wifi.getIntFromSwipeTypeEnum(), value: '', latitude: latitude, longitude: long);
final swipeResponse = await userProvider.makeSwipe(model: swipeModel);
await closeWifiRequest();
if (swipeResponse.isSuccess) {
hideLoading(context);
Navigator.pushNamed(context, SwipeSuccessView.routeName);
} else {
hideLoading(context);
showErrorDialog(message: swipeResponse.message ?? "Unexpected error occurred", context: context);
}
} catch (errSwipeGeneralUtilsor) {
hideLoading(context);
await closeWifiRequest();
}
} else {
// if (userProvider.) {
hideLoading(context);
confirmDialog(context, "Come Near HMG Wifi");
// } else {
// await closeWifiRequest();
// }
await closeWifiRequest();
}
}
Future<bool> closeWifiRequest() async {
if (Platform.isAndroid) {
await WiFiForIoTPlugin.forceWifiUsage(false);
}
return await WiFiForIoTPlugin.disconnect();
}
} }

Loading…
Cancel
Save