Files
fcs/lib/pages/widgets/barcode_scanner.dart
2021-09-10 16:33:52 +06:30

27 lines
747 B
Dart

import 'package:barcode_scan2/platform_wrapper.dart';
Future<String?> scanBarcode() async {
try {
var scanResult = await BarcodeScanner.scan();
String barcode = scanResult.rawContent;
String gs = String.fromCharCode(29);
if (barcode.contains(gs)) {
var codes = barcode.split(gs);
barcode = codes.length >= 2 ? codes[1] : barcode;
} else if (barcode.startsWith("96")) {
if (barcode.length == 34) {
int start = barcode.length - 12;
barcode = barcode.substring(start);
} else if (barcode.length == 22) {
int start = barcode.length - 15;
barcode = barcode.substring(start);
}
}
return barcode;
} catch (e) {
print('error: $e');
return null;
}
}