-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathvin_scan_result.dart
More file actions
60 lines (54 loc) · 1.57 KB
/
vin_scan_result.dart
File metadata and controls
60 lines (54 loc) · 1.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import 'package:dynamsoft_capture_vision_flutter/dynamsoft_capture_vision_flutter.dart';
enum EnumResultStatus {
finished,
cancelled,
error,
}
class VINScanResult {
EnumResultStatus resultStatus;
String? errorString = "";
VINData? data;
VINScanResult({
required this.resultStatus,
this.errorString,
this.data,
});
}
class VINData {
String? vinString;
String? WMI;
String? region;
String? VDS;
String? checkDigit;
String? modelYear;
String? plantCode;
String? serialNumber;
Map<String, String> toMap() {
return {
if (vinString != null) 'vinString': vinString!,
if (WMI != null) 'WMI': WMI!,
if (region != null) 'region': region!,
if (VDS != null) 'VDS': VDS!,
if (checkDigit != null) 'checkDigit': checkDigit!,
if (modelYear != null) 'modelYear': modelYear!,
if (plantCode != null) 'plantCode': plantCode!,
if (serialNumber != null) 'serialNumber': serialNumber!
};
}
static VINData? fromParsedResultItem(ParsedResultItem item) {
var parsedFields = item.parsedFields;
if(parsedFields.isEmpty) {
return null;
}
var data = VINData();
data.vinString = parsedFields["vinString"]?.value;
data.WMI = parsedFields["WMI"]?.value;
data.region = parsedFields["region"]?.value;
data.VDS = parsedFields["VDS"]?.value;
data.checkDigit = parsedFields["checkDigit"]?.value;
data.modelYear = parsedFields["modelYear"]?.value;
data.plantCode = parsedFields["plantCode"]?.value;
data.serialNumber = parsedFields["serialNumber"]?.value;
return data;
}
}