Skip to content

Commit 1e929e3

Browse files
committed
Fixed symbology mapping error
1 parent dd742e9 commit 1e929e3

File tree

2 files changed

+134
-90
lines changed

2 files changed

+134
-90
lines changed

AI_MultiBarcodes_Capture/src/main/java/com/zebra/ai_multibarcodes_capture/helpers/EBarcodesSymbologies.java

Lines changed: 81 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -6,52 +6,52 @@
66

77
public enum EBarcodesSymbologies {
88
UNKNOWN("UNKNOWN", -1, false, "LABEL-TYPE-UNKNOWN"),
9-
AUSTRALIAN_POSTAL("AUSTRALIAN POSTAL", 26, false, "LABEL-TYPE-AUSPOSTAL"),
9+
EAN_8("EAN 8", 0, true, "LABEL-TYPE-EAN8"),
10+
EAN_13("EAN 13", 1, true, "LABEL-TYPE-EAN13"),
11+
UPC_A("UPC A", 2, true, "LABEL-TYPE-UPCA"),
12+
UPC_E("UPC E", 3, true, "LABEL-TYPE-UPCE"),
1013
AZTEC("AZTEC", 4, true, "LABEL-TYPE-AZTEC"),
11-
CANADIAN_POSTAL("CANADIAN POSTAL", 27, false, "LABEL-TYPE-CANPOSTAL"),
12-
CHINESE_2OF5("CHINESE 2OF5", 28, false, "LABEL-TYPE-CHINESE2OF5"),
13-
CODABAR("CODABAR", 1, true, "LABEL-TYPE-CODABAR"),
14-
CODE11("CODE11", 2, false, "LABEL-TYPE-CODE11"),
15-
CODE39("CODE39", 3, true, "LABEL-TYPE-CODE39"),
16-
CODE93("CODE93", 5, false, "LABEL-TYPE-CODE93"),
14+
CODABAR("CODABAR", 5, true, "LABEL-TYPE-CODABAR"),
1715
CODE128("CODE128", 6, true, "LABEL-TYPE-CODE128"),
18-
COMPOSITE_AB("COMPOSITE AB", 7, false, "LABEL-TYPE-COMPOSITEAB"),
19-
COMPOSITE_C("COMPOSITE C", 8, false, "LABEL-TYPE-COMPOSITEC"),
20-
D2OF5("D2OF5", 9, false, "LABEL-TYPE-D2OF5"),
16+
CODE39("CODE39", 7, true, "LABEL-TYPE-CODE39"),
17+
I2OF5("I2OF5", 8, false, "LABEL-TYPE-I2OF5"),
18+
GS1_DATABAR("GS1 DATABAR", 9, true, "LABEL-TYPE-GS1DATABAR"),
2119
DATAMATRIX("DATAMATRIX", 10, true, "LABEL-TYPE-DATAMATRIX"),
22-
DOTCODE("DOTCODE", 11, false, "LABEL-TYPE-DOTCODE"),
23-
DUTCH_POSTAL("DUTCH POSTAL", 29, false, "LABEL-TYPE-DUTCHPOSTAL"),
24-
EAN_8("EAN 8", 12, true, "LABEL-TYPE-EAN8"),
25-
EAN_13("EAN 13", 13, true, "LABEL-TYPE-EAN13"),
26-
FINNISH_POSTAL_4S("FINNISH POSTAL 4S", 30, false, "LABEL-TYPE-FINNISHPOSTAL4S"),
27-
GRID_MATRIX("GRID MATRIX", 14, false, "LABEL-TYPE-GRIDMATRIX"),
28-
GS1_DATABAR("GS1 DATABAR", 15, true, "LABEL-TYPE-GS1DATABAR"),
29-
GS1_DATABAR_EXPANDED("GS1 DATABAR EXPANDED", 16, true, "LABEL-TYPE-GS1DATABAREXPANDED"),
30-
GS1_DATABAR_LIM("GS1 DATABAR LIM", 17, false, "LABEL-TYPE-GS1DATABARLIM"),
20+
GS1_DATABAR_EXPANDED("GS1 DATABAR EXPANDED", 11, true, "LABEL-TYPE-GS1DATABAREXPANDED"),
21+
MAILMARK("MAILMARK", 12, true, "LABEL-TYPE-MAILMARK"),
22+
MAXICODE("MAXICODE", 13, true, "LABEL-TYPE-MAXICODE"),
23+
PDF417("PDF417", 14, true, "LABEL-TYPE-PDF417"),
24+
QRCODE("QRCODE", 15, true, "LABEL-TYPE-QRCODE"),
25+
DOTCODE("DOTCODE", 16, false, "LABEL-TYPE-DOTCODE"),
26+
GRID_MATRIX("GRID MATRIX", 17, false, "LABEL-TYPE-GRIDMATRIX"),
3127
GS1_DATAMATRIX("GS1 DATAMATRIX", 18, false, "LABEL-TYPE-GS1DATAMATRIX"),
3228
GS1_QRCODE("GS1 QRCODE", 19, false, "LABEL-TYPE-GS1QRCODE"),
33-
HANXIN("HANXIN", 20, false, "LABEL-TYPE-HANXIN"),
34-
I2OF5("I2OF5", 21, false, "LABEL-TYPE-I2OF5"),
35-
JAPANESE_POSTAL("JAPANESE POSTAL", 31, false, "LABEL-TYPE-JAPANESEPOSTAL"),
36-
KOREAN_3OF5("KOREAN 3OF5", 32, false, "LABEL-TYPE-KOREAN3OF5"),
37-
MAILMARK("MAILMARK", 33, true, "LABEL-TYPE-MAILMARK"),
38-
MATRIX_2OF5("MATRIX 2OF5", 34, false, "LABEL-TYPE-MATRIX2OF5"),
39-
MAXICODE("MAXICODE", 22, true, "LABEL-TYPE-MAXICODE"),
40-
MICROPDF("MICROPDF", 23, false, "LABEL-TYPE-MICROPDF"),
41-
MICROQR("MICROQR", 24, false, "LABEL-TYPE-MICROQR"),
42-
MSI("MSI", 25, false, "LABEL-TYPE-MSI"),
43-
PDF417("PDF417", 35, true, "LABEL-TYPE-PDF417"),
44-
QRCODE("QRCODE", 36, true, "LABEL-TYPE-QRCODE"),
45-
TLC39("TLC39", 37, false, "LABEL-TYPE-TLC39"),
46-
TRIOPTIC39("TRIOPTIC39", 38, false, "LABEL-TYPE-TRIOPTIC39"),
47-
UK_POSTAL("UK POSTAL", 39, false, "LABEL-TYPE-UKPOSTAL"),
48-
UPC_A("UPC A", 40, true, "LABEL-TYPE-UPCA"),
49-
UPC_E("UPC E", 41, true, "LABEL-TYPE-UPCE"),
50-
UPCE1("UPCE1", 42, false, "LABEL-TYPE-UPCE1"),
51-
USPLANET("USPLANET", 43, false, "LABEL-TYPE-USPLANET"),
52-
USPOSTNET("USPOSTNET", 44, false, "LABEL-TYPE-USPOSTNET"),
53-
US4STATE("US4STATE", 45, false, "LABEL-TYPE-US4STATE"),
54-
US4STATE_FICS("US4STATE FICS", 46, false, "LABEL-TYPE-US4STATEFICS");
29+
MICROQR("MICROQR", 20, false, "LABEL-TYPE-MICROQR"),
30+
MICROPDF("MICROPDF", 21, false, "LABEL-TYPE-MICROPDF"),
31+
USPOSTNET("USPOSTNET", 22, false, "LABEL-TYPE-USPOSTNET"),
32+
USPLANET("USPLANET", 23, false, "LABEL-TYPE-USPLANET"),
33+
UK_POSTAL("UK POSTAL", 24, false, "LABEL-TYPE-UKPOSTAL"),
34+
JAPANESE_POSTAL("JAPANESE POSTAL", 25, false, "LABEL-TYPE-JAPANESEPOSTAL"),
35+
AUSTRALIAN_POSTAL("AUSTRALIAN POSTAL", 26, false, "LABEL-TYPE-AUSPOSTAL"),
36+
CANADIAN_POSTAL("CANADIAN POSTAL", 27, false, "LABEL-TYPE-CANPOSTAL"),
37+
DUTCH_POSTAL("DUTCH POSTAL", 28, false, "LABEL-TYPE-DUTCHPOSTAL"),
38+
US4STATE("US4STATE", 29, false, "LABEL-TYPE-US4STATE"),
39+
US4STATE_FICS("US4STATE FICS", 30, false, "LABEL-TYPE-US4STATEFICS"),
40+
MSI("MSI", 31, false, "LABEL-TYPE-MSI"),
41+
CODE93("CODE93", 32, false, "LABEL-TYPE-CODE93"),
42+
TRIOPTIC39("TRIOPTIC39", 33, false, "LABEL-TYPE-TRIOPTIC39"),
43+
D2OF5("D2OF5", 34, false, "LABEL-TYPE-D2OF5"),
44+
CHINESE_2OF5("CHINESE 2OF5", 35, false, "LABEL-TYPE-CHINESE2OF5"),
45+
KOREAN_3OF5("KOREAN 3OF5", 36, false, "LABEL-TYPE-KOREAN3OF5"),
46+
CODE11("CODE11", 37, false, "LABEL-TYPE-CODE11"),
47+
TLC39("TLC39", 38, false, "LABEL-TYPE-TLC39"),
48+
HANXIN("HANXIN", 39, false, "LABEL-TYPE-HANXIN"),
49+
MATRIX_2OF5("MATRIX 2OF5", 40, false, "LABEL-TYPE-MATRIX2OF5"),
50+
UPCE1("UPCE1", 41, false, "LABEL-TYPE-UPCE1"),
51+
GS1_DATABAR_LIM("GS1 DATABAR LIM", 42, false, "LABEL-TYPE-GS1DATABARLIM"),
52+
FINNISH_POSTAL_4S("FINNISH POSTAL 4S", 43, false, "LABEL-TYPE-FINNISHPOSTAL4S"),
53+
COMPOSITE_AB("COMPOSITE AB", 44, false, "LABEL-TYPE-COMPOSITEAB"),
54+
COMPOSITE_C("COMPOSITE C", 45, false, "LABEL-TYPE-COMPOSITEC");
5555

5656
private String name = "";
5757
private int value = -1;
@@ -197,98 +197,98 @@ public static EBarcodesSymbologies fromInt(int value)
197197
{
198198
switch(value)
199199
{
200+
case 0:
201+
return EBarcodesSymbologies.EAN_8;
200202
case 1:
201-
return EBarcodesSymbologies.CODABAR;
203+
return EBarcodesSymbologies.EAN_13;
202204
case 2:
203-
return EBarcodesSymbologies.CODE11;
205+
return EBarcodesSymbologies.UPC_A;
204206
case 3:
205-
return EBarcodesSymbologies.CODE39;
207+
return EBarcodesSymbologies.UPC_E;
206208
case 4:
207209
return EBarcodesSymbologies.AZTEC;
208210
case 5:
209-
return EBarcodesSymbologies.CODE93;
211+
return EBarcodesSymbologies.CODABAR;
210212
case 6:
211213
return EBarcodesSymbologies.CODE128;
212214
case 7:
213-
return EBarcodesSymbologies.COMPOSITE_AB;
215+
return EBarcodesSymbologies.CODE39;
214216
case 8:
215-
return EBarcodesSymbologies.COMPOSITE_C;
217+
return EBarcodesSymbologies.I2OF5;
216218
case 9:
217-
return EBarcodesSymbologies.D2OF5;
219+
return EBarcodesSymbologies.GS1_DATABAR;
218220
case 10:
219221
return EBarcodesSymbologies.DATAMATRIX;
220222
case 11:
221-
return EBarcodesSymbologies.DOTCODE;
223+
return EBarcodesSymbologies.GS1_DATABAR_EXPANDED;
222224
case 12:
223-
return EBarcodesSymbologies.EAN_8;
225+
return EBarcodesSymbologies.MAILMARK;
224226
case 13:
225-
return EBarcodesSymbologies.EAN_13;
227+
return EBarcodesSymbologies.MAXICODE;
226228
case 14:
227-
return EBarcodesSymbologies.GRID_MATRIX;
229+
return EBarcodesSymbologies.PDF417;
228230
case 15:
229-
return EBarcodesSymbologies.GS1_DATABAR;
231+
return EBarcodesSymbologies.QRCODE;
230232
case 16:
231-
return EBarcodesSymbologies.GS1_DATABAR_EXPANDED;
233+
return EBarcodesSymbologies.DOTCODE;
232234
case 17:
233-
return EBarcodesSymbologies.GS1_DATABAR_LIM;
235+
return EBarcodesSymbologies.GRID_MATRIX;
234236
case 18:
235237
return EBarcodesSymbologies.GS1_DATAMATRIX;
236238
case 19:
237239
return EBarcodesSymbologies.GS1_QRCODE;
238240
case 20:
239-
return EBarcodesSymbologies.HANXIN;
241+
return EBarcodesSymbologies.MICROQR;
240242
case 21:
241-
return EBarcodesSymbologies.I2OF5;
243+
return EBarcodesSymbologies.MICROPDF;
242244
case 22:
243-
return EBarcodesSymbologies.MAXICODE;
245+
return EBarcodesSymbologies.USPOSTNET;
244246
case 23:
245-
return EBarcodesSymbologies.MICROPDF;
247+
return EBarcodesSymbologies.USPLANET;
246248
case 24:
247-
return EBarcodesSymbologies.MICROQR;
249+
return EBarcodesSymbologies.UK_POSTAL;
248250
case 25:
249-
return EBarcodesSymbologies.MSI;
251+
return EBarcodesSymbologies.JAPANESE_POSTAL;
250252
case 26:
251253
return EBarcodesSymbologies.AUSTRALIAN_POSTAL;
252254
case 27:
253255
return EBarcodesSymbologies.CANADIAN_POSTAL;
254256
case 28:
255-
return EBarcodesSymbologies.CHINESE_2OF5;
256-
case 29:
257257
return EBarcodesSymbologies.DUTCH_POSTAL;
258+
case 29:
259+
return EBarcodesSymbologies.US4STATE;
258260
case 30:
259-
return EBarcodesSymbologies.FINNISH_POSTAL_4S;
261+
return EBarcodesSymbologies.US4STATE_FICS;
260262
case 31:
261-
return EBarcodesSymbologies.JAPANESE_POSTAL;
263+
return EBarcodesSymbologies.MSI;
262264
case 32:
263-
return EBarcodesSymbologies.KOREAN_3OF5;
265+
return EBarcodesSymbologies.CODE93;
264266
case 33:
265-
return EBarcodesSymbologies.MAILMARK;
267+
return EBarcodesSymbologies.TRIOPTIC39;
266268
case 34:
267-
return EBarcodesSymbologies.MATRIX_2OF5;
269+
return EBarcodesSymbologies.D2OF5;
268270
case 35:
269-
return EBarcodesSymbologies.PDF417;
271+
return EBarcodesSymbologies.CHINESE_2OF5;
270272
case 36:
271-
return EBarcodesSymbologies.QRCODE;
273+
return EBarcodesSymbologies.KOREAN_3OF5;
272274
case 37:
273-
return EBarcodesSymbologies.TLC39;
275+
return EBarcodesSymbologies.CODE11;
274276
case 38:
275-
return EBarcodesSymbologies.TRIOPTIC39;
277+
return EBarcodesSymbologies.TLC39;
276278
case 39:
277-
return EBarcodesSymbologies.UK_POSTAL;
279+
return EBarcodesSymbologies.HANXIN;
278280
case 40:
279-
return EBarcodesSymbologies.UPC_A;
281+
return EBarcodesSymbologies.MATRIX_2OF5;
280282
case 41:
281-
return EBarcodesSymbologies.UPC_E;
282-
case 42:
283283
return EBarcodesSymbologies.UPCE1;
284+
case 42:
285+
return EBarcodesSymbologies.GS1_DATABAR_LIM;
284286
case 43:
285-
return EBarcodesSymbologies.USPLANET;
287+
return EBarcodesSymbologies.FINNISH_POSTAL_4S;
286288
case 44:
287-
return EBarcodesSymbologies.USPOSTNET;
289+
return EBarcodesSymbologies.COMPOSITE_AB;
288290
case 45:
289-
return EBarcodesSymbologies.US4STATE;
290-
case 46:
291-
return EBarcodesSymbologies.US4STATE_FICS;
291+
return EBarcodesSymbologies.COMPOSITE_C;
292292
default:
293293
return EBarcodesSymbologies.UNKNOWN;
294294
}

WebInterface/src/api/barcodes.php

Lines changed: 53 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -216,15 +216,59 @@ private function updateBarcodeStatus($barcode_id) {
216216
}
217217

218218
private function getSymbologyName($symbology_id) {
219-
try {
220-
$stmt = $this->connection->prepare("SELECT name FROM symbology_types WHERE id = :id");
221-
$stmt->bindParam(':id', $symbology_id);
222-
$stmt->execute();
223-
$result = $stmt->fetch();
224-
return $result ? $result['name'] : 'UNKNOWN';
225-
} catch (Exception $e) {
226-
return 'UNKNOWN';
227-
}
219+
// Map integer values to human-readable names from EBarcodesSymbologies enum
220+
// Based on Zebra AI DataCapture documentation: https://techdocs.zebra.com/ai-datacapture/latest/barcodedecoder/#barcodesymbologies
221+
$symbology_map = array(
222+
-1 => 'UNKNOWN',
223+
0 => 'EAN 8',
224+
1 => 'EAN 13',
225+
2 => 'UPC A',
226+
3 => 'UPC E',
227+
4 => 'AZTEC',
228+
5 => 'CODABAR',
229+
6 => 'CODE128',
230+
7 => 'CODE39',
231+
8 => 'I2OF5',
232+
9 => 'GS1 DATABAR',
233+
10 => 'DATAMATRIX',
234+
11 => 'GS1 DATABAR EXPANDED',
235+
12 => 'MAILMARK',
236+
13 => 'MAXICODE',
237+
14 => 'PDF417',
238+
15 => 'QRCODE',
239+
16 => 'DOTCODE',
240+
17 => 'GRID MATRIX',
241+
18 => 'GS1 DATAMATRIX',
242+
19 => 'GS1 QRCODE',
243+
20 => 'MICROQR',
244+
21 => 'MICROPDF',
245+
22 => 'USPOSTNET',
246+
23 => 'USPLANET',
247+
24 => 'UK POSTAL',
248+
25 => 'JAPANESE POSTAL',
249+
26 => 'AUSTRALIAN POSTAL',
250+
27 => 'CANADIAN POSTAL',
251+
28 => 'DUTCH POSTAL',
252+
29 => 'US4STATE',
253+
30 => 'US4STATE FICS',
254+
31 => 'MSI',
255+
32 => 'CODE93',
256+
33 => 'TRIOPTIC39',
257+
34 => 'D2OF5',
258+
35 => 'CHINESE 2OF5',
259+
36 => 'KOREAN 3OF5',
260+
37 => 'CODE11',
261+
38 => 'TLC39',
262+
39 => 'HANXIN',
263+
40 => 'MATRIX 2OF5',
264+
41 => 'UPCE1',
265+
42 => 'GS1 DATABAR LIM',
266+
43 => 'FINNISH POSTAL 4S',
267+
44 => 'COMPOSITE AB',
268+
45 => 'COMPOSITE C'
269+
);
270+
271+
return isset($symbology_map[$symbology_id]) ? $symbology_map[$symbology_id] : 'UNKNOWN';
228272
}
229273

230274
private function resetAllData() {

0 commit comments

Comments
 (0)