commonComplianceApi method
Implementation
Future<IdMetaResult> commonComplianceApi({
required dynamic data,
required String url,
}) async {
try {
Options option = Options(headers: {
"Accept": "application/json",
"Authorization": Api.authToken,
"Content-Type": "application/json"
});
Map<String, dynamic> requestData = data.toJson();
if (requestData["metadata"] is Map &&
(requestData["metadata"] as Map).isEmpty) {
requestData.remove("metadata");
}
var value = await Dio().post(
'${Api.baseUrl}$url',
options: option,
data: requestData,
);
if (value.statusCode == Api.successRequestCode) {
PhilipinesCommonResultModel philipinesDrivingLicenseResultModel =
PhilipinesCommonResultModel.fromJson(value.data);
IdMetaResult? apiResponse = await complianceVerificationApi(
data: philipinesDrivingLicenseResultModel.resultId!,
);
if (apiResponse != null) {
return apiResponse;
} else {
return IdMetaResult(
status: false,
error: const ErrorMessage(
status: false,
message: Constants.commonError,
).toJson(),
);
}
} else {
return IdMetaResult(
status: false,
error: const ErrorMessage(
status: false,
message: Constants.commonError,
).toJson(),
);
}
} on DioException catch (e) {
return IdMetaResult(
status: false,
error: e.response?.data ??
ErrorMessage(
status: false,
message: e.message ?? Constants.commonError,
).toJson(),
);
} on Error catch (e) {
return IdMetaResult(
status: false,
error: ErrorMessage(
status: false,
message: e.toString(),
).toJson(),
);
}
}