diff --git a/lib/controller/base_controller.dart b/lib/controller/base_controller.dart index 0059bb257744b9556b7e792192bea40d90fd05d7..3eed81a845bd39d961dd57d0229a94f2dab125ae 100644 --- a/lib/controller/base_controller.dart +++ b/lib/controller/base_controller.dart @@ -28,8 +28,7 @@ class BaseController extends GetxController with WidgetsBindingObserver { ///verifyOtp RxString generatedOtp="".obs; - //todo-Fetch the phone number from welcome screen - RxString userPhoneNumber="919945215727".obs; + diff --git a/lib/serverRequest/all_request.dart b/lib/serverRequest/all_request.dart index a1934d79b35099e6843d7791c478034d5248f72f..f8307175ff35d8463f6c3f79c3306b444fbc79e2 100644 --- a/lib/serverRequest/all_request.dart +++ b/lib/serverRequest/all_request.dart @@ -8,6 +8,7 @@ import 'package:exide_crr/data/app_env.dart'; import 'package:exide_crr/preferences/app_shared_preferences.dart'; import 'package:exide_crr/serverRequest/app_exception.dart'; import 'package:exide_crr/utils/custom_toast.dart'; +import 'package:exide_crr/views/loginScreen/controller/login_controller.dart'; import 'package:fluttertoast/fluttertoast.dart'; import 'package:get/get.dart'; import 'package:get/get_core/src/get_main.dart'; @@ -16,6 +17,7 @@ import 'package:shared_preferences/shared_preferences.dart'; import '../appLocalization/language_key.dart'; import '../model/verifyOtp.dart'; +import '../routes/routes_name.dart'; final httpClient = http.Client(); @@ -145,6 +147,12 @@ class AllHttpRequest { Future sendOtp() async { try { final baseController = Get.find<BaseController>(); + final loginController = Get.find<LoginController>(); + + ///Get the phone number from login controller if null direct back to login screen + // if(loginController.dealerData["phone"]==null){ + // Get.back(); + // } ///Locally generated 4 digit otp baseController.generatedOtp.value = Miscellaneous.generateOTP(); @@ -153,7 +161,7 @@ class AllHttpRequest { var smsContent='$smsData ${baseController.generatedOtp.value} -EXIDE'; ///Set up POST request arguments - String url = '$baseUrlForSendOtp/sendsms?to=${baseController.userPhoneNumber}&from=ExideB&text=$smsContent'; + String url = '$baseUrlForSendOtp/sendsms?to=${loginController.dealerData["phone"]}&from=ExideB&text=$smsContent'; Map<String, String>? headers = { "Content-type": "application/json", "Authorization": "Bearer ${generatedAuth.token}", @@ -162,7 +170,8 @@ class AllHttpRequest { var response = await http.post(uri, headers: headers); if (response.statusCode == 200) { - ///If success do nothing + Get.toNamed(RoutesName.verifyOtp); + ///If success redirect to verify OTP screen } else { Fluttertoast.showToast(msg: apiError.tr); log("Error generate auth--${response.statusCode}"); diff --git a/lib/views/loginScreen/controller/login_controller.dart b/lib/views/loginScreen/controller/login_controller.dart index 98451665d54c6aefc916b844c61709c07fb93eae..93a6f30bb55e09f7f04b901afba502236bd4fc7d 100644 --- a/lib/views/loginScreen/controller/login_controller.dart +++ b/lib/views/loginScreen/controller/login_controller.dart @@ -8,6 +8,7 @@ import 'package:get/get_rx/src/rx_types/rx_types.dart'; import 'package:get/get_state_manager/src/simple/get_controllers.dart'; import '../../../model/condition_data.dart'; +import '../../../serverRequest/all_request.dart'; class LoginController extends GetxController { FirebaseService firebaseService = FirebaseService.instance; @@ -38,4 +39,8 @@ class LoginController extends GetxController { isLoginLoading.value = false; } } + + onClickHandler(){ + AllHttpRequest().generateAuth(); + } } diff --git a/lib/views/loginScreen/view/login_screen.dart b/lib/views/loginScreen/view/login_screen.dart index 9908d8356e0bc107c2bbc3443d8a03fa8cacf56d..80ebefda92392d62e9248d69edbb83e29c6ec20d 100644 --- a/lib/views/loginScreen/view/login_screen.dart +++ b/lib/views/loginScreen/view/login_screen.dart @@ -14,6 +14,8 @@ import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; import 'package:get/get_utils/src/extensions/internacionalization.dart'; +import '../../../routes/routes_name.dart'; + class LoginScreen extends StatefulWidget { const LoginScreen({super.key}); @@ -103,9 +105,7 @@ class _LoginScreenState extends State<LoginScreen> { Obx( () => CustomButton( buttonName: next.tr, - onTap: () { - // Get.offNamed(RoutesName.loginScreen); - }, + onTap: loginController.onClickHandler, activeBackgroundColor: AppColor.darkRed, width: Get.width, isActive: loginController.dealerData["phone"] != null, diff --git a/lib/views/verifyOTP/controller/verify_otp_controller.dart b/lib/views/verifyOTP/controller/verify_otp_controller.dart index 475862f8bc51f9d42beeaf8d50d145ad70343ef8..1e8af1ec03760fe87b7831e3b41ebff221591bdd 100644 --- a/lib/views/verifyOTP/controller/verify_otp_controller.dart +++ b/lib/views/verifyOTP/controller/verify_otp_controller.dart @@ -20,7 +20,7 @@ class VerifyOtpController extends GetxController { @override void onInit() { startTimer(); - AllHttpRequest().generateAuth(); + super.onInit(); } diff --git a/lib/views/verifyOTP/widgets/screen_header.dart b/lib/views/verifyOTP/widgets/screen_header.dart index 38b3d2b269eacd34335ae6e226e4f4d4614922b4..32753413077b237b1740087de734de30b4fd0f81 100644 --- a/lib/views/verifyOTP/widgets/screen_header.dart +++ b/lib/views/verifyOTP/widgets/screen_header.dart @@ -6,6 +6,7 @@ import '../../../appLocalization/language_key.dart'; import '../../../constants/image_constants.dart'; import '../../../customWidget/app_text.dart'; import '../../../res/app_color_text_size.dart'; +import '../../../routes/routes_name.dart'; Widget screenHeader() { return Column(