businessClaim function

Future<CommonModel?> businessClaim(
  1. {required Map<String, dynamic> value,
  2. List<File>? fileList}
)

Implementation

Future<CommonModel?> businessClaim({required Map<String, dynamic> value, List<File>? fileList}) async {
  CommonModel? res;

  MultipartRequest multiPartRequest = await getMultiPartRequest(APIEndPoint.saveBusinessClaim);

  multiPartRequest.fields.addAll(await getMultipartFields(val: value));

  if (fileList.validate().isNotEmpty) {
    multiPartRequest.files.addAll(await getMultipartImages(files: fileList.validate(), name: BusinessClaimKeys.businessClaimAttachment));
    multiPartRequest.fields[BusinessClaimKeys.proofCount] = fileList.validate().length.toString();
  }

  log("${multiPartRequest.fields}");

  multiPartRequest.headers.addAll(buildHeaderTokens());

  log("Multi Part Request : ${jsonEncode(multiPartRequest.fields)} ${multiPartRequest.files.map((e) => e.field + ": " + e.filename.validate())}");

  appStore.setLoading(true);

  await sendMultiPartRequest(multiPartRequest, onSuccess: (temp) async {
    appStore.setLoading(false);

    log("Response: ${jsonDecode(temp)}");

    res = CommonModel.fromJson(jsonDecode(temp));

    // toast(jsonDecode(temp)['message'], print: true);
  }, onError: (error) {
    // toast(error.toString(), print: true);
    res = CommonModel.fromJson(jsonDecode(error));
    appStore.setLoading(false);
  }).catchError((e) {
    appStore.setLoading(false);
    toast(e.toString());
  });

  return res;
}