fitnessProRequest method

Future fitnessProRequest({
  1. dynamic type,
  2. dynamic landmark,
  3. dynamic pincode,
  4. dynamic context,
})

Implementation

Future fitnessProRequest({type, landmark, pincode, context}) async {
  var decodedResponse;
  final ApiBody = {
    "type": "$type",
    "landmark": "$landmark",
    "pincode": "$pincode"
  };
  var body = jsonEncode(ApiBody);

  http.Response response = await http.post(
      Uri.parse('${medicine_API}api/save-fitness-pro-details'),
      headers: {
        "Content-Type": "application/json",
        'Authorization': currentUserToken,
      },
      body: body);
  decodedResponse = json.decode(response.body);
  Get.back();

  if (decodedResponse['success'] == true) {
    await showDialog(
      barrierDismissible: false,
      context: context,
      builder: (BuildContext context) {
        return MedicinePaymentSuccessPopup(
            message: " ${decodedResponse['message']}",
            ontap: () {
              Get.back();
            },
            image: '${LottiePath}Upload_Successful.json');
      },
    );
    // await Get.offAll(HomePage());
  } else if (decodedResponse['success'] == false) {
    if (decodedResponse.containsKey('errors_fields')) {
      Map<String, dynamic> errorFields = decodedResponse['errors_fields'];
      String errorMessage = '';

      errorFields.forEach((field, errors) {
        if (errors is List) {
          for (String error in errors) {
            errorMessage += ' $error\n';
          }
        }
      });

      Validator()
          .errorMessage(context: context, message: errorMessage.trim());
    } else {
      Validator().errorMessage(
          context: context, message: "An error occurred, please try again.");
    }
  }
}