Skip to content

Commit 866d0df

Browse files
committed
add special edeka code conversion for internal store codes
1 parent c112c58 commit 866d0df

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

core/src/main/java/io/snabble/sdk/codes/EAN13.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public class EAN13 extends ScannableCode implements Serializable {
2222
private boolean verifyInternalEanChecksum;
2323
private boolean useGermanPrintPrefix;
2424

25-
EAN13(String code, Project project) {
25+
EAN13(Project project, String code) {
2626
super(code);
2727

2828
if (!isEan13(code)) {

core/src/main/java/io/snabble/sdk/codes/EdekaProductCode.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,19 @@ public class EdekaProductCode extends ScannableCode {
66
private String lookupCode;
77
private int price;
88

9-
EdekaProductCode(String code) {
9+
private String overriddenCode;
10+
11+
EdekaProductCode(Project project, String code) {
1012
super(code);
1113

1214
lookupCode = code.substring(2, 15);
1315
price = Integer.parseInt(code.substring(15, 21));
16+
overriddenCode = EAN13.generateNewCodeWithEmbeddedData(project, "2417000000000", price).getCode();
17+
}
18+
19+
@Override
20+
public String getCode() {
21+
return overriddenCode;
1422
}
1523

1624
@Override

core/src/main/java/io/snabble/sdk/codes/ScannableCode.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@ public boolean isEmbeddedDataOk() {
4949

5050
public static ScannableCode parse(Project project, String code) {
5151
if (EAN13.isEan13(code)) {
52-
return new EAN13(code, project);
52+
return new EAN13(project, code);
5353
} else if (EAN14.isEan14(code)) {
5454
return new EAN14(code);
5555
} else if (EdekaProductCode.isEdekaProductCode(project, code)) {
56-
return new EdekaProductCode(code);
56+
return new EdekaProductCode(project, code);
5757
} else {
5858
return new ScannableCode(code);
5959
}

0 commit comments

Comments
 (0)