loginMethod method

Future<List> loginMethod()

Implementation

Future<List<dynamic>> loginMethod() async {
  loginResponseList.value = <LoginModel>[];
  List<dynamic> returnVal = <dynamic>[ConstantName.fail, ErrorMsg.wentWrong];
  Map<String, dynamic> param = {
    "Username": username.text,
    "Password": password.text,
    "Version": ConstantName.appversion
  };
  await HttpServices.apicall(
          param: param, uri: ApiConstant.loginapi, label: 'Login')
      .then((List response) async {
    if (response[0] == 200) {
      try {
        loginResponseList.value = LoginModel.loginModelFromJson(response[1]);
        loginResponseList.isNotEmpty
            ? await SharedPreferenceHelper.setBunchDataToSp(data: {
                SharedPreferenceKey.username: username.text,
                SharedPreferenceKey.clientId: loginResponseList[0].clientId,
                SharedPreferenceKey.isOCREnable:
                    loginResponseList[0].isOcrEnable,
                SharedPreferenceKey.mobileno: loginResponseList[0].mobileno,
                SharedPreferenceKey.isOTPEnable:
                    loginResponseList[0].isOtpEnable,
                SharedPreferenceKey.role: loginResponseList[0].role
              })
            : null;

        clearLoginDetails();
        returnVal = <dynamic>[ConstantName.pass, ''];
      } catch (e) {
        print('Login api error: $e');
      }
    } else {
      returnVal = <dynamic>[ConstantName.fail, response[1]];
    }
  });
  return returnVal;
}