uploadFilesOCR method
Implementation
Future<APIResponse<dynamic>> uploadFilesOCR(
String? url,
Map<String, dynamic>? bodyMap,
Map<String, String>? headers,
Map<String, String>? mapping,
) async {
final isInterNet = await check();
if (!isInterNet) {
return APIResponse<dynamic>(
code: "-111", message: "Bạn đang không bật mạng", value: null);
} else {
var uri = Uri.parse(url ?? "");
var request = http.MultipartRequest(
"POST",
uri,
);
if (headers != null) {
request.headers.addAll(headers);
}
if (bodyMap != null) {
var keys = bodyMap.keys;
for (var i = 0; i < bodyMap.length; i++) {
var key = keys.elementAt(i);
request.fields[key] = bodyMap[key]!;
}
}
if (mapping != null) {
for (var key in mapping.keys) {
String imageFileURL = mapping[key]!;
var multFile = await http.MultipartFile.fromPath(key, imageFileURL,
filename: "$key.jpg", contentType: MediaType.parse("image/jpg"));
request.files.add(multFile);
}
}
var response = await request.send();
var responseData = await response.stream.toBytes();
var responseString = String.fromCharCodes(responseData);
//Get the response from the server
var jsonBody = jsonDecode(responseString);
return APIResponse<dynamic>(
value: jsonBody,
code: response.statusCode == 200 ? "000" : "-1",
message: responseString);
}
}