Commit 34f8cb99 LN
2 个父辈 8a0723d0 be6a8077
...@@ -816,15 +816,19 @@ public class BarcodeRule { ...@@ -816,15 +816,19 @@ public class BarcodeRule {
// rule ="BATCH;PRODATEyyyy-MM-dd[1:10:-1]EXPD[-1:-4:-1];PN[1:12:-1]SP[13:5:-1]QTY[-1:-5:-1];RI"; // rule ="BATCH;PRODATEyyyy-MM-dd[1:10:-1]EXPD[-1:-4:-1];PN[1:12:-1]SP[13:5:-1]QTY[-1:-5:-1];RI";
// codeStr = "L00002019090199951797;E2019-09-01 0365;B8C.R2003.V81506072019090103000;R506072019102200356"; // codeStr = "L00002019090199951797;E2019-09-01 0365;B8C.R2003.V81506072019090103000;R506072019102200356";
// Map<String,String> filedMap = new HashMap<>(); codeStr = "[PN]1223456789[UID]123456789qsdf[QTY]5000";
// filedMap.put("RI","R506072019102200356"); Map<String,String> filedMap = new HashMap<>();
// filedMap.put("PN","8C.R2003.V81"); filedMap.put("RI","123456789qsdf");
// filedMap.put("BATCH","L00002019090199951797"); filedMap.put("PN","1223456789");
// filedMap.put("SP","50607"); //filedMap.put("BATCH","L00002019090199951797");
// filedMap.put("QTY","3000"); //filedMap.put("SP","50607");
// filedMap.put("PRODATEyyyy-MM-dd","2019-09-01"); filedMap.put("QTY","5000");
// filedMap.put("EXPD","0365"); //filedMap.put("PRODATEyyyy-MM-dd","2019-09-01");
// System.out.println("====="+toCodeRule(codeStr,filedMap)); //filedMap.put("EXPD","0365");
//rule = toCodeRule(codeStr,filedMap);
//BarcodeRule barcodeRule = BarcodeRule.newRule(rule);
//CodeBean bean = barcodeRule.toCodeBean(codeStr);
//System.out.println("====="+bean);
// codeStr = "=1+0x0-13x12=SU100PM0JPR"; // codeStr = "=1+0x0-13x12=SU100PM0JPR";
// rule = "PN[-1_SU:2:-1][RI]"; // rule = "PN[-1_SU:2:-1][RI]";
...@@ -843,6 +847,8 @@ public class BarcodeRule { ...@@ -843,6 +847,8 @@ public class BarcodeRule {
codeStr = "41000100883,2329,38M0540150,4341,1,710032329883000188"; codeStr = "41000100883,2329,38M0540150,4341,1,710032329883000188";
rule = "RI,PRODATEyyWW,PN,QTY,MSL,BATCH"; rule = "RI,PRODATEyyWW,PN,QTY,MSL,BATCH";
codeStr = "GW00001";
rule = "PN[-1:2:-1]RI[-1:0:-1]";
BarcodeRule br = BarcodeRule.newRule(rule); BarcodeRule br = BarcodeRule.newRule(rule);
Barcode b = br.toCodeBean(codeStr).getBarcode(); Barcode b = br.toCodeBean(codeStr).getBarcode();
if(b != null){ if(b != null){
...@@ -887,7 +893,8 @@ public class BarcodeRule { ...@@ -887,7 +893,8 @@ public class BarcodeRule {
String separator = findSeparator(codeStr); String separator = findSeparator(codeStr);
String[] codeArr = new String[]{codeStr}; String[] codeArr = new String[]{codeStr};
if(!Strings.isNullOrEmpty(separator)){ if(!Strings.isNullOrEmpty(separator)){
codeArr = codeStr.split(separator); String regexSeparator = toRegexStr(separator);
codeArr = codeStr.split(regexSeparator);
} }
String[] ruleArr = new String[codeArr.length]; String[] ruleArr = new String[codeArr.length];
for (String fieldName : fieldValueMap.keySet()) { for (String fieldName : fieldValueMap.keySet()) {
...@@ -936,8 +943,10 @@ public class BarcodeRule { ...@@ -936,8 +943,10 @@ public class BarcodeRule {
if(!Character.isLetterOrDigit(c)){ if(!Character.isLetterOrDigit(c)){
//不是字母和数字才可以作为分割符 //不是字母和数字才可以作为分割符
String separator = toRegexStr(c + ""); String separator = toRegexStr(c + "");
separator = c + "";
if(trySeparator.indexOf(c) == -1){ if(trySeparator.indexOf(c) == -1){
String[] ss = str.split(separator,-1); String regexSeparator = toRegexStr(c + "");
String[] ss = str.split(regexSeparator,-1);
if(ss.length > tempArr.length){ if(ss.length > tempArr.length){
trySeparator = c + trySeparator; trySeparator = c + trySeparator;
result =separator; result =separator;
......
...@@ -76,10 +76,8 @@ public class CodeResolve { ...@@ -76,10 +76,8 @@ public class CodeResolve {
public CodeBean resolveSingleCode(String barcodeItemStr,int type){ public CodeBean resolveSingleCode(String barcodeItemStr,int type){
if(barcodeRuleList == null || barcodeRuleList.isEmpty()){ if(barcodeRuleList == null || barcodeRuleList.isEmpty()){
CodeBean codeBean = new CodeBean(); CodeBean codeBean = BarcodeRule.splitCodeAndSize(barcodeItemStr);
codeBean.setBarcode(null);
codeBean.setError("smfcore.error.barcode.noRules", "解析规则未定义"); codeBean.setError("smfcore.error.barcode.noRules", "解析规则未定义");
codeBean.setCodeStr(barcodeItemStr);
return codeBean; return codeBean;
} }
......
...@@ -75,7 +75,7 @@ public class NeotelApi extends BaseSmfApiListener { ...@@ -75,7 +75,7 @@ public class NeotelApi extends BaseSmfApiListener {
public void outTaskStatusChange(String outNotifyUrl, DataLog task) { public void outTaskStatusChange(String outNotifyUrl, DataLog task) {
String requestParams = ""; String requestParams = "";
String responseInfo = ""; String responseInfo = "";
if (task.isFinished()) { if (task.isFinished() || task.isEnd()) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("reelId", task.getBarcode()); paramMap.put("reelId", task.getBarcode());
paramMap.put("partNum", task.getPartNumber()); paramMap.put("partNum", task.getPartNumber());
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!