intimateClaimSubmission method

Future intimateClaimSubmission({
  1. dynamic policyId,
  2. dynamic corporateId,
  3. dynamic employeeId,
  4. dynamic memberId,
  5. dynamic reasonforclaim,
  6. dynamic reportamount,
  7. dynamic hospitalDate,
  8. dynamic hospitalName,
  9. dynamic hospitalAddress,
  10. dynamic claimType,
  11. dynamic pincode,
  12. dynamic city,
  13. dynamic state,
  14. dynamic source,
})

Implementation

Future intimateClaimSubmission(
    {policyId,
    corporateId,
    employeeId,
    memberId,
    reasonforclaim,
    reportamount,
    hospitalDate,
    hospitalName,
    hospitalAddress,
    claimType,
    pincode,
    city,
    state,
    source}) async {
  var checkStatusCode;

  try {
    final ApiBody = {
      'policy_id': "${policyId}",
      'corporate_id': "${corporateId}",
      'employee_details_id': '${employeeId}',
      'member_id': '${memberId}',
      'reason_for_claim': '${reasonforclaim}',
      'report_amount': '${reportamount}',
      'hospitalization_date': '${hospitalDate}',
      'hospital_name': '${hospitalName}',
      'hospital_address': '${hospitalAddress}',
      'claim_type': '${claimType}',
      'discharge_date': '${hospitalDate}',
      'pincode': '${pincode}',
      'city': '${city}',
      'state': '${state}',
      "source": source,
      'document_type[]': '',
      'claim_document[]': '',
    };

    final response = await http.post(
        Uri.parse('${choice_Base_Url}save-ipd-claim-intimation'),
        body: ApiBody,
        headers: {"Authorization": choiceToken});
    TokenRefresh(refreshtoken: response.headers['authorization'].toString());

    checkStatusCode = response.statusCode;
    var decodedResponse = json.decode(response.body);
    if (decodedResponse['status'] == true) {
      Fluttertoast.showToast(msg: '${decodedResponse['message']}');
      Get.back();
      Navigator.popAndPushNamed(commonContext, '/wellnesspage');
    } else {
      Fluttertoast.showToast(msg: '${decodedResponse['message']}');
      Get.back();
    }
  } catch (err) {
    AutoLogoutThreeTry();
    if (checkStatusCode == 401) {
      await intimateClaimSubmission(
        policyId: "${policyId}",
        corporateId: "${corporateId}",
        employeeId: '${employeeId}',
        memberId: '${memberId}',
        reasonforclaim: '${reasonforclaim}',
        reportamount: '${reportamount}',
        hospitalDate: '${hospitalDate}',
        hospitalName: '${hospitalName}',
        hospitalAddress: '${hospitalAddress}',
        claimType: '${claimType}',
        pincode: '${pincode}',
        city: '${city}',
        state: '${state}',
        source: source,
      );
      (commonContext as Element).reassemble();
    } else {}
  }
}