Files
fcs/lib/pages/widgets/barcode_scanner.dart

27 lines
735 B
Dart
Raw Normal View History

2020-10-11 02:17:23 +06:30
import 'package:barcode_scan/barcode_scan.dart';
Future<String> scanBarcode() async {
try {
String barcode = await BarcodeScanner.scan();
if (barcode == null) return null;
String gs = String.fromCharCode(29);
if (barcode.contains(gs)) {
var codes = barcode.split(gs);
barcode = codes.length >= 2 ? codes[1] : barcode;
2020-11-09 05:53:25 +06:30
} 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);
}
2020-10-11 02:17:23 +06:30
}
return barcode;
} catch (e) {
print('error: $e');
return null;
}
}