getKcSteps method

Future<List<StepModel>> getKcSteps(
  1. dynamic context
)

Implementation

Future<List<StepModel>> getKcSteps(context) async {
  Response response;
  final dio = apiClient();
  try {
    var data = dio.then((value) async {
      response = await value.post(UrlResources.configList);

      var res = response.data;
      if (res["isSuccess"]) {
        final results =
            List<Map<String, dynamic>>.from(response.data['data']);
        List<StepModel> finalResult = results
            .map((resultData) => StepModel.fromMap(resultData))
            .toList();
        bool faceVerify =
            finalResult.any((stepModel) => stepModel.scanItem == 2);

        List<StepModel> newLisValue = [];
        if (faceVerify) {
          faceMatch = true;
          newLisValue = finalResult
              .where((stepModel) => stepModel.scanItem != 2)
              .toList();
        } else {
          newLisValue = finalResult;
        }

        newLisValue.sort((a, b) => a.rank.compareTo(b.rank));
        return newLisValue;
      } else {
        throw 'Session expired, Try again';
      }
    });
    return data;
  } catch (error) {
    exitInstaFido(
        context: context,
        msg: 'networkError',
        exitStatus: ExitStatus.docNetworkError,
        scanId: '');
    throw "Something went wrong, try again";
  }
}