update carton filter and merge api for shipment

This commit is contained in:
tzw
2024-03-02 18:15:05 +06:30
parent b1e45debc7
commit c63353636a
22 changed files with 410 additions and 150 deletions

View File

@@ -11,8 +11,9 @@ import 'package:path_provider/path_provider.dart';
import '../config.dart';
import 'dev_info.dart';
import 'firebase_helper.dart';
import 'dart:developer' as log;
final log = Logger('requestAPI');
final logger = Logger('requestAPI');
// request makes http request
// if token is null
@@ -21,7 +22,7 @@ Future<dynamic> requestAPI(String path, method,
DevInfo devInfo = await DevInfo.getDevInfo();
String deviceName = "${devInfo.model}(${devInfo.id})";
log.info("device:${devInfo.deviceID},deviceName:$deviceName");
logger.info("device:${devInfo.deviceID},deviceName:$deviceName");
Map<String, dynamic> headers = {};
if (token != null) {
@@ -39,9 +40,21 @@ Future<dynamic> requestAPI(String path, method,
receiveTimeout: Duration(milliseconds: networkTimeout ?? 50000),
headers: headers,
);
log.info("baseUrl:${options.baseUrl}, path:$path");
log.info("payload:$payload");
logger.info("baseUrl:${options.baseUrl}, path:$path, method:$method");
logger.info("payload:$payload");
List<String> list = [];
headers.forEach((key, value) {
var r = '-H $key:$value ';
list.add(r);
});
String curlPath =
"curl -X $method ${list.join("")}${payload != null ? '-d $payload ' : ''}${options.baseUrl}$path";
log.log(curlPath);
try {
Dio dio = new Dio(options);
Response response = await dio.request(
@@ -55,7 +68,7 @@ Future<dynamic> requestAPI(String path, method,
throw Exception(data.message);
}
} catch (e) {
log.warning("path:$path, api:$e");
logger.warning("path:$path, api:$e");
throw e;
}
}
@@ -67,7 +80,7 @@ Future<dynamic> requestDownloadAPI(String path, method,
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
String deviceName = "${androidInfo.model}(${androidInfo.id})";
log.info("device:${androidInfo.id},deviceName:$deviceName");
logger.info("device:${androidInfo.id},deviceName:$deviceName");
var bytes = utf8.encode(payload);
var base64Str = base64.encode(bytes);
@@ -75,7 +88,7 @@ Future<dynamic> requestDownloadAPI(String path, method,
try {
String baseUrl = url == null ? Config.instance.apiURL : url;
log.info("Path:$baseUrl$path");
logger.info("Path:$baseUrl$path");
HttpClient client = new HttpClient();
var _downloadData = StringBuffer();
var fileSave = new File(filePath!);
@@ -96,7 +109,7 @@ Future<dynamic> requestDownloadAPI(String path, method,
fileSave.writeAsString(_downloadData.toString());
});
} catch (e) {
log.warning("path:$path, api:$e");
logger.warning("path:$path, api:$e");
throw e;
}
}
@@ -108,7 +121,7 @@ Future<dynamic> requestDownloadPDFAPI(String path, method,
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
String deviceName = "${androidInfo.model}(${androidInfo.id})";
log.info("device:${androidInfo.id},deviceName:$deviceName");
logger.info("device:${androidInfo.id},deviceName:$deviceName");
var bytes = utf8.encode(payload);
var base64Str = base64.encode(bytes);
@@ -116,7 +129,7 @@ Future<dynamic> requestDownloadPDFAPI(String path, method,
try {
String baseUrl = url == null ? Config.instance.apiURL : url;
log.info("Path:$baseUrl$path");
logger.info("Path:$baseUrl$path");
HttpClient client = new HttpClient();
// var _downloadData = StringBuffer();
var fileSave = new File(filePath!);
@@ -140,7 +153,7 @@ Future<dynamic> requestDownloadPDFAPI(String path, method,
// fileSave.writeAsString(_downloadData.toString());
// });
} catch (e) {
log.warning("path:$path, api:$e");
logger.warning("path:$path, api:$e");
throw e;
}
}
@@ -157,7 +170,7 @@ Future<dynamic> requestDownload(String path, method,
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
String deviceName = "${androidInfo.model}(${androidInfo.id})";
log.info("device:${androidInfo.id},deviceName:$deviceName");
logger.info("device:${androidInfo.id},deviceName:$deviceName");
var bytes = utf8.encode(payload);
var base64Str = base64.encode(bytes);
@@ -165,7 +178,7 @@ Future<dynamic> requestDownload(String path, method,
try {
String baseUrl = url == null ? Config.instance.apiURL : url;
log.info("Path:$baseUrl$path");
logger.info("Path:$baseUrl$path");
HttpClient client = new HttpClient();
// var _downloadData = StringBuffer();
var request = await client.postUrl(Uri.parse("$baseUrl$path"));
@@ -207,7 +220,7 @@ Future<dynamic> requestDownload(String path, method,
});
} catch (e) {
e.toString();
log.warning("path:$path, api:$e");
logger.warning("path:$path, api:$e");
throw e;
}
}
@@ -218,7 +231,7 @@ Future<File> downloadPDF(
final directory = await getApplicationSupportDirectory();
String path = ('${directory.path}');
log.info("download file path:$path");
logger.info("download file path:$path");
var data = {"template_name": templateName, "data": values};
print("payload:$data");