Commit 8d8ec34d LN

增加移动料架NLM

1 个父辈 8288a783
...@@ -84,6 +84,19 @@ public class CodeResolve { ...@@ -84,6 +84,19 @@ public class CodeResolve {
String codeStr = codeBeanFromRule.getCodeStr(); String codeStr = codeBeanFromRule.getCodeStr();
barcode = barcodeManager.findByBarcode(codeStr); barcode = barcodeManager.findByBarcode(codeStr);
if(barcode != null) {//数据库中已存在 if(barcode != null) {//数据库中已存在
Component component = componentManager.findByPartNumberAndProvider(barcode.getPartNumber(),barcode.getProvider());
int validDay = 0;
if(component != null){
validDay = component.getValidDay();
codeBeanFromRule.setShowImg(component.getShowImg());
//如果已经确认尺寸,使用确认的尺寸
if(component.isSizeConfirmed() || ((component.hasSizeInfo())&&(!codeBeanFromRule.hasReelSizeInfo()))){
codeBeanFromRule.setReelWidth(component.getPlateSize());
codeBeanFromRule.setReelHeight(component.getHeight());
}
}
if(codeBeanFromRule.hasReelSizeInfo()){ if(codeBeanFromRule.hasReelSizeInfo()){
//如果客户端传入的有尺寸,但尺寸不一致,使用上传上来的尺寸 //如果客户端传入的有尺寸,但尺寸不一致,使用上传上来的尺寸
if(barcode.getHeight() != codeBeanFromRule.getReelHeight() || barcode.getPlateSize() != codeBeanFromRule.getReelWidth()){ if(barcode.getHeight() != codeBeanFromRule.getReelHeight() || barcode.getPlateSize() != codeBeanFromRule.getReelWidth()){
...@@ -98,18 +111,6 @@ public class CodeResolve { ...@@ -98,18 +111,6 @@ public class CodeResolve {
} }
} }
} }
Component component = componentManager.findByPartNumberAndProvider(barcode.getPartNumber(),barcode.getProvider());
int validDay = 0;
if(component != null){
validDay = component.getValidDay();
codeBeanFromRule.setShowImg(component.getShowImg());
//如果已经确认尺寸,使用确认的尺寸
if(component.isSizeConfirmed()){
codeBeanFromRule.setReelWidth(component.getPlateSize());
codeBeanFromRule.setReelHeight(component.getHeight());
}
}
Barcode barcodeFromRule = codeBeanFromRule.getBarcode(); Barcode barcodeFromRule = codeBeanFromRule.getBarcode();
if(barcodeFromRule != null){ if(barcodeFromRule != null){
...@@ -150,7 +151,8 @@ public class CodeResolve { ...@@ -150,7 +151,8 @@ public class CodeResolve {
codeBeanFromRule.setCodeStr(barcode.getBarcode()); codeBeanFromRule.setCodeStr(barcode.getBarcode());
codeBeanFromRule.setBarcode(barcode); codeBeanFromRule.setBarcode(barcode);
return codeBeanFromRule; return codeBeanFromRule;
}else if(codeBeanFromRule.isValid()){//数据库中不存在,但解析成功 }else if(codeBeanFromRule.isValid()){
//数据库中不存在,但解析成功
Barcode barcodeFromRule = codeBeanFromRule.getBarcode(); Barcode barcodeFromRule = codeBeanFromRule.getBarcode();
try{ try{
...@@ -185,7 +187,7 @@ public class CodeResolve { ...@@ -185,7 +187,7 @@ public class CodeResolve {
}else{ }else{
//如果已经确认尺寸,使用确认的尺寸 //如果已经确认尺寸,使用确认的尺寸
if(component.isSizeConfirmed()){ if(component.isSizeConfirmed() || ((component.hasSizeInfo())&&(!codeBeanFromRule.hasReelSizeInfo()))){
codeBeanFromRule.setReelWidth(component.getPlateSize()); codeBeanFromRule.setReelWidth(component.getPlateSize());
codeBeanFromRule.setReelHeight(component.getHeight()); codeBeanFromRule.setReelHeight(component.getHeight());
} }
...@@ -210,10 +212,12 @@ public class CodeResolve { ...@@ -210,10 +212,12 @@ public class CodeResolve {
log.info("档案["+barcodeFromRule.getPartNumber()+"]不存在"); log.info("档案["+barcodeFromRule.getPartNumber()+"]不存在");
// throw new ValidateException("component.error.notExist",new String[]{barcodeFromRule.getPartNumber()}); // throw new ValidateException("component.error.notExist",new String[]{barcodeFromRule.getPartNumber()});
throw new ValidateException("smfcore.valueNotExist","{0}[{1}]不存在",new String[]{"component",barcodeFromRule.getPartNumber()}); throw new ValidateException("smfcore.valueNotExist","{0}[{1}]不存在",new String[]{"component",barcodeFromRule.getPartNumber()});
}else if(component.isSizeConfirmed()) { }else if(component.isSizeConfirmed() || ((component.hasSizeInfo())&&(!codeBeanFromRule.hasReelSizeInfo()))){
//如果已经确认尺寸,使用确认的尺寸 //如果已经确认尺寸,使用确认的尺寸
codeBeanFromRule.setReelWidth(component.getPlateSize()); codeBeanFromRule.setReelWidth(component.getPlateSize());
codeBeanFromRule.setReelHeight(component.getHeight()); codeBeanFromRule.setReelHeight(component.getHeight());
barcodeFromRule.setHeight(component.getHeight());
barcodeFromRule.setPlateSize(component.getPlateSize());
} }
codeBeanFromRule.setShowImg(component.getShowImg()); codeBeanFromRule.setShowImg(component.getShowImg());
...@@ -361,7 +365,7 @@ public class CodeResolve { ...@@ -361,7 +365,7 @@ public class CodeResolve {
} }
if(barcode == null){ if(barcode == null){
throw new ValidateException("smfcore.error.barcode.noValidCode", "无效的条码",new String[]{codeBeans.size()+":",codeStr}); throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码",new String[]{codeStr});
} }
return barcode; return barcode;
} }
......
...@@ -110,6 +110,11 @@ public enum DeviceType { ...@@ -110,6 +110,11 @@ public enum DeviceType {
NLP("storage.type.nlp"), NLP("storage.type.nlp"),
/** /**
* 17 移动料架,自动推荐库位 NLM
*/
NLM("storage.type.nlm"),
/**
* 18 (默认料仓) * 18 (默认料仓)
*/ */
DEFAULT("storage.type.default") DEFAULT("storage.type.default")
...@@ -134,6 +139,6 @@ public enum DeviceType { ...@@ -134,6 +139,6 @@ public enum DeviceType {
} }
public static List<DeviceType> availableTypeList(){ public static List<DeviceType> availableTypeList(){
return Lists.newArrayList(AUTO,LINE,BATCH,SOLDERPASTE,VERTICALBOX,SMD_XL,SMD_DUO,SMD_XLC,VIRTUAL,NL,NLP); return Lists.newArrayList(AUTO,LINE,BATCH,SOLDERPASTE,VERTICALBOX,SMD_XL,SMD_DUO,SMD_XLC,VIRTUAL,NL,NLP,NLM);
} }
} }
...@@ -64,4 +64,8 @@ public class StorageDto implements Serializable { ...@@ -64,4 +64,8 @@ public class StorageDto implements Serializable {
@ApiModelProperty("客户端地址") @ApiModelProperty("客户端地址")
private String clientUrl; private String clientUrl;
@ApiModelProperty("是否可以合并库位")
private boolean mergePos=false;
} }
...@@ -66,6 +66,11 @@ public class Storage extends BasePo implements Serializable { ...@@ -66,6 +66,11 @@ public class Storage extends BasePo implements Serializable {
*/ */
private String inListName=""; private String inListName="";
/**
* 是否可以合并库位
*/
private boolean mergePos=false;
// /** // /**
// * 是否是上下层的在线料仓 // * 是否是上下层的在线料仓
...@@ -138,6 +143,12 @@ public class Storage extends BasePo implements Serializable { ...@@ -138,6 +143,12 @@ public class Storage extends BasePo implements Serializable {
return DeviceType.NLP.name().equals(type); return DeviceType.NLP.name().equals(type);
} }
/** /**
* 是否是移动料架
*/
public boolean isNLMShelf() {
return DeviceType.NLM.name().equals(type);
}
/**
* 是否是垂直货柜 * 是否是垂直货柜
*/ */
public boolean isVerticalBox(){ public boolean isVerticalBox(){
......
...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u8FC7\u671F,\u65E0\u6CD5\u5165\ ...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u8FC7\u671F,\u65E0\u6CD5\u5165\
smfcore.allBoxView.noReel=\u5E93\u4F4D{0}\u4E2D\u65E0\u7269\u6599 smfcore.allBoxView.noReel=\u5E93\u4F4D{0}\u4E2D\u65E0\u7269\u6599
smfcore.error.barcode.many=\u627E\u5230\u591A\u4E2A\u6709\u6548\u7684\u6761\u7801 smfcore.error.barcode.many=\u627E\u5230\u591A\u4E2A\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.noValidCode=\u65E0\u6548\u7684\u6761\u7801 smfcore.error.barcode.noValidCode=\u65E0\u6548\u7684\u6761\u7801
smfcore.error.barcode.noValidCode={0}\u4E0D\u662F\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.executing=\u6761\u7801[{0}}]\u4EFB\u52A1\u6B63\u5728\u6267\u884C smfcore.error.barcode.executing=\u6761\u7801[{0}}]\u4EFB\u52A1\u6B63\u5728\u6267\u884C
smfcore.error.pos.notExist=\u5E93\u4F4D[{0}]\u4E0D\u5B58\u5728,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.notExist=\u5E93\u4F4D[{0}]\u4E0D\u5B58\u5728,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.wrong=\u5E93\u4F4D[{0}]\u4E0E\u6599\u4ED3[{1}}]\u4E0D\u5339\u914D,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.wrong=\u5E93\u4F4D[{0}]\u4E0E\u6599\u4ED3[{1}}]\u4E0D\u5339\u914D,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.hasReel=\u5E93\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.hasReel=\u5E93\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5E93\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5E93\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93
smfcore.error.storage.offline=\u6599\u4ED3[{0}]\u79BB\u7EBF smfcore.error.storage.offline=\u6599\u4ED3[{0}]\u79BB\u7EBF
smfcore.error.barcode.invalid=\u6761\u7801\u65E0\u6548 smfcore.error.barcode.invalid={0}\u4E0D\u662F\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26 smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26
smfcore.error.barcode.wrongQty=\u6761\u7801[{0}]\u5BF9\u5E94\u7684\u6570\u91CF<=0\u4E3A: {1} smfcore.error.barcode.wrongQty=\u6761\u7801[{0}]\u5BF9\u5E94\u7684\u6570\u91CF<=0\u4E3A: {1}
smfcore.error.barcode.taskNotEnd=\u6599\u76D8[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u65E0\u6CD5\u6267\u884C\u5165\u5E93\u64CD\u4F5C smfcore.error.barcode.taskNotEnd=\u6599\u76D8[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u65E0\u6CD5\u6267\u884C\u5165\u5E93\u64CD\u4F5C
...@@ -236,6 +235,11 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8C03\u8BD5\u6A21\u5F0F ...@@ -236,6 +235,11 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8C03\u8BD5\u6A21\u5F0F
smfcore.pwd.error=\u5BC6\u7801\u9519\u8BEF smfcore.pwd.error=\u5BC6\u7801\u9519\u8BEF
smfcore.messages.enabledPos=\u542F\u7528\u5E93\u4F4D\uFF1A{0} smfcore.messages.enabledPos=\u542F\u7528\u5E93\u4F4D\uFF1A{0}
smfcore.messages.disabledPos=\u7981\u7528\u5E93\u4F4D\uFF1A{0} smfcore.messages.disabledPos=\u7981\u7528\u5E93\u4F4D\uFF1A{0}
smfcore.shelf.nlm.notFound=\u672A\u627E\u5230\u79FB\u52A8\u6599\u67B6{0}
smfcore.error.barcode.errorSize=\u6761\u7801\u672A\u8BBE\u7F6E\u5C3A\u5BF8
smfcore.shelf.msg.alreadyInPos=\u8BE5\u7269\u6599\u5DF2\u5728\u5E93\u4F4D[{0}]\u4E2D
smfcore.shelf.msg.inMergeOk=\u64CD\u4F5C\u6210\u529F,\u8BF7\u5408\u5E76\u5E93\u4F4D[{0}]\u5E76\u653E\u5165\u6599\u76D8
smfcore.shelf.msg.inError=\u672A\u627E\u5230\u9002\u5408[{0}]\u7684\u5E93\u4F4D
#smfclient.nlp.onlyOneTray=\u4E0D\u53EF\u540C\u65F6\u653E\u5165\u591A\u76D8\u7269\u6599:{0} #smfclient.nlp.onlyOneTray=\u4E0D\u53EF\u540C\u65F6\u653E\u5165\u591A\u76D8\u7269\u6599:{0}
#smfclient.nlp.cannotFindPos={0}\u672A\u627E\u5230\u5E93\u4F4D:{1} #smfclient.nlp.cannotFindPos={0}\u672A\u627E\u5230\u5E93\u4F4D:{1}
#smfclient.nlp.inputOk={0}\u5165\u5E93\u5230{1}\u6210\u529F #smfclient.nlp.inputOk={0}\u5165\u5E93\u5230{1}\u6210\u529F
......
...@@ -39,7 +39,7 @@ smfcore.error.pos.wrong=Position [{0}] and SMD BOX [{1}}] not match, storage fai ...@@ -39,7 +39,7 @@ smfcore.error.pos.wrong=Position [{0}] and SMD BOX [{1}}] not match, storage fai
smfcore.error.pos.hasReel=Position [{0}] is full, storage failed smfcore.error.pos.hasReel=Position [{0}] is full, storage failed
smfcore.error.pos.sizeNotMatch=Reel size[{0}}] not match with position {1} size [{2}], storage failed smfcore.error.pos.sizeNotMatch=Reel size[{0}}] not match with position {1} size [{2}], storage failed
smfcore.error.storage.offline=SMD BOX[{0}] disconnect smfcore.error.storage.offline=SMD BOX[{0}] disconnect
smfcore.error.barcode.invalid=Invalid barcode smfcore.error.barcode.invalid={0} is not a valid barcode
smfcore.error.barcode.wrongSize=Size [{0}] is wrong smfcore.error.barcode.wrongSize=Size [{0}] is wrong
smfcore.error.barcode.wrongQty=Barcode[{0}] amount<=0 is: {1} smfcore.error.barcode.wrongQty=Barcode[{0}] amount<=0 is: {1}
smfcore.error.barcode.taskNotEnd=Reel[{0}] operation not complete, storage failed smfcore.error.barcode.taskNotEnd=Reel[{0}] operation not complete, storage failed
...@@ -236,4 +236,9 @@ smfcore.exitDebugModel.ok=Exited debug mode ...@@ -236,4 +236,9 @@ smfcore.exitDebugModel.ok=Exited debug mode
smfcore.pwd.error=Password error smfcore.pwd.error=Password error
smfcore.messages.enabledPos=Enable Location\uFF1A{0} smfcore.messages.enabledPos=Enable Location\uFF1A{0}
smfcore.messages.disabledPos=Disable Location\uFF1A{0} smfcore.messages.disabledPos=Disable Location\uFF1A{0}
smfcore.shelf.nlm.notFound=No mobile shelf found{0}
smfcore.error.barcode.errorSize=Bar code not set size
smfcore.shelf.msg.alreadyInPos=The material is already in the storage position [{0}].
smfcore.shelf.msg.inMergeOk=The operation is successful, please merge the storage space [{0}] and put it into the material tray.
smfcore.shelf.msg.inError=No library found for [{0}]
...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u6750\u6599\u304C\u53E4\u304F\u3066\u5728\u5EAB\u ...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u6750\u6599\u304C\u53E4\u304F\u3066\u5728\u5EAB\u
smfcore.allBoxView.noReel=\u4FDD\u7BA1\u4E2D\u306E\u7D20\u6750\u304C\u306A\u3044{0} smfcore.allBoxView.noReel=\u4FDD\u7BA1\u4E2D\u306E\u7D20\u6750\u304C\u306A\u3044{0}
smfcore.error.barcode.many=\u8907\u6570\u306E\u6709\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9\u306E\u691C\u7D22 smfcore.error.barcode.many=\u8907\u6570\u306E\u6709\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9\u306E\u691C\u7D22
smfcore.error.barcode.noValidCode=\u7121\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9 smfcore.error.barcode.noValidCode=\u7121\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9
smfcore.error.barcode.noValidCode={0}\u306F\u6709\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9\u3067\u306F\u3042\u308A\u307E\u305B\u3093
smfcore.error.barcode.executing=\u30D0\u30FC\u30B3\u30FC\u30C9 [{0}}] \u30BF\u30B9\u30AF\u304C\u5B9F\u884C\u3055\u308C\u3066\u3044\u307E\u3059 smfcore.error.barcode.executing=\u30D0\u30FC\u30B3\u30FC\u30C9 [{0}}] \u30BF\u30B9\u30AF\u304C\u5B9F\u884C\u3055\u308C\u3066\u3044\u307E\u3059
smfcore.error.pos.notExist=[{0}]\u306E\u30DD\u30B8\u30B7\u30E7\u30F3\u304C\u5B58\u5728\u3057\u306A\u3044\u305F\u3081\u3001\u5165\u529B\u3067\u304D\u307E\u305B\u3093 smfcore.error.pos.notExist=[{0}]\u306E\u30DD\u30B8\u30B7\u30E7\u30F3\u304C\u5B58\u5728\u3057\u306A\u3044\u305F\u3081\u3001\u5165\u529B\u3067\u304D\u307E\u305B\u3093
smfcore.error.pos.wrong=\u30D9\u30A4[{0}]\u306F\u30D3\u30F3[{1}]\u3068\u4E00\u81F4\u3057\u306A\u3044\u305F\u3081\u3001\u30B9\u30C8\u30C3\u30AF\u3067\u304D\u307E\u305B\u3093 smfcore.error.pos.wrong=\u30D9\u30A4[{0}]\u306F\u30D3\u30F3[{1}]\u3068\u4E00\u81F4\u3057\u306A\u3044\u305F\u3081\u3001\u30B9\u30C8\u30C3\u30AF\u3067\u304D\u307E\u305B\u3093
smfcore.error.pos.hasReel=\u6750\u6599\u306F\u65E2\u306B\u30D3\u30F3[{0}]\u306B\u5165\u3063\u3066\u304A\u308A\u3001\u5165\u529B\u3067\u304D\u307E\u305B\u3093 smfcore.error.pos.hasReel=\u6750\u6599\u306F\u65E2\u306B\u30D3\u30F3[{0}]\u306B\u5165\u3063\u3066\u304A\u308A\u3001\u5165\u529B\u3067\u304D\u307E\u305B\u3093
smfcore.error.pos.sizeNotMatch=\u30D1\u30EC\u30C3\u30C8[{0}]\u306E\u30B5\u30A4\u30BA\u304C\u53CE\u7D0D\u30B9\u30DA\u30FC\u30B9[{1}][{2}]\u306E\u30B5\u30A4\u30BA\u306B\u5BFE\u5FDC\u3057\u3066\u304A\u3089\u305A\u3001\u53CE\u7D0D\u3067\u304D\u307E\u305B\u3093 smfcore.error.pos.sizeNotMatch=\u30D1\u30EC\u30C3\u30C8[{0}]\u306E\u30B5\u30A4\u30BA\u304C\u53CE\u7D0D\u30B9\u30DA\u30FC\u30B9[{1}][{2}]\u306E\u30B5\u30A4\u30BA\u306B\u5BFE\u5FDC\u3057\u3066\u304A\u3089\u305A\u3001\u53CE\u7D0D\u3067\u304D\u307E\u305B\u3093
smfcore.error.storage.offline=\u30D3\u30F3 [{0}] \u30AA\u30D5\u30E9\u30A4\u30F3 smfcore.error.storage.offline=\u30D3\u30F3 [{0}] \u30AA\u30D5\u30E9\u30A4\u30F3
smfcore.error.barcode.invalid=\u30D0\u30FC\u30B3\u30FC\u30C9\u304C\u7121\u52B9\u3067\u3059 smfcore.error.barcode.invalid={0}\u306F\u6709\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30C9\u3067\u306F\u3042\u308A\u307E\u305B\u3093
smfcore.error.barcode.wrongSize=\u30B5\u30A4\u30BA[{0}]\u304C\u4E00\u81F4\u3057\u306A\u3044 smfcore.error.barcode.wrongSize=\u30B5\u30A4\u30BA[{0}]\u304C\u4E00\u81F4\u3057\u306A\u3044
smfcore.error.barcode.wrongQty=<=0\u306B\u5BFE\u5FDC\u3059\u308B\u30D0\u30FC\u30B3\u30FC\u30C9[{0}]\u306E\u6570\u306F\uFF1A{1}\u3067\u3059 smfcore.error.barcode.wrongQty=<=0\u306B\u5BFE\u5FDC\u3059\u308B\u30D0\u30FC\u30B3\u30FC\u30C9[{0}]\u306E\u6570\u306F\uFF1A{1}\u3067\u3059
smfcore.error.barcode.taskNotEnd=\u30D1\u30EC\u30C3\u30C8[{0}]\u306B\u5BFE\u3059\u308B\u64CD\u4F5C\u304C\u5B8C\u4E86\u3057\u3066\u304A\u3089\u305A\u3001\u53CE\u7D0D\u64CD\u4F5C\u304C\u3067\u304D\u307E\u305B\u3093 smfcore.error.barcode.taskNotEnd=\u30D1\u30EC\u30C3\u30C8[{0}]\u306B\u5BFE\u3059\u308B\u64CD\u4F5C\u304C\u5B8C\u4E86\u3057\u3066\u304A\u3089\u305A\u3001\u53CE\u7D0D\u64CD\u4F5C\u304C\u3067\u304D\u307E\u305B\u3093
...@@ -235,5 +234,10 @@ smfcore.toDebugModel.ok=\u30B3\u30DF\u30C3\u30B7\u30E7\u30CB\u30F3\u30B0\u30E2\u ...@@ -235,5 +234,10 @@ smfcore.toDebugModel.ok=\u30B3\u30DF\u30C3\u30B7\u30E7\u30CB\u30F3\u30B0\u30E2\u
smfcore.exitDebugModel.ok=\u30C7\u30D0\u30C3\u30B0\u30E2\u30FC\u30C9\u306E\u7D42\u4E86 smfcore.exitDebugModel.ok=\u30C7\u30D0\u30C3\u30B0\u30E2\u30FC\u30C9\u306E\u7D42\u4E86
smfcore.pwd.error=\u30D1\u30B9\u30EF\u30FC\u30C9\u30A8\u30E9\u30FC smfcore.pwd.error=\u30D1\u30B9\u30EF\u30FC\u30C9\u30A8\u30E9\u30FC
smfcore.messages.enabledPos=\u6709\u52B9\u306B\u3059\u308B\u30B9\u30C8\u30EC\u30FC\u30B8\u4F4D\u7F6E \uFF1A{0} smfcore.messages.enabledPos=\u6709\u52B9\u306B\u3059\u308B\u30B9\u30C8\u30EC\u30FC\u30B8\u4F4D\u7F6E \uFF1A{0}
smfcore.messages.disabledPos=\u7121\u52B9\u5316\u30B9\u30C8\u30EC\u30FC\u30B8\u4F4D\u7F6E\uFF1A{0} smfcore.messages.disabledPos=\u7121\u52B9\u5316\u30B9\u30C8\u30EC\u30FC\u30B8\u4F4D\u7F6E\uFF1A{0}
smfcore.shelf.nlm.notFound=\u30E2\u30D0\u30A4\u30EB\u30E9\u30C3\u30AF\u304C\u898B\u3064\u304B\u3089\u306A\u3044{0}
smfcore.error.barcode.errorSize=\u30D0\u30FC\u30B3\u30FC\u30C9\u306E\u30B5\u30A4\u30BA\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044
smfcore.shelf.msg.alreadyInPos=\u7D20\u6750\u306F\u65E2\u306B[{0}]\u306B\u5728\u5EAB\u304C\u3042\u308A\u307E\u3059\u3002
smfcore.shelf.msg.inMergeOk=\u64CD\u4F5C\u304C\u6210\u529F\u3057\u305F\u3089\u3001\u53CE\u7D0D\u30B9\u30DA\u30FC\u30B9[{0}]\u3092\u30DE\u30FC\u30B8\u3057\u3066\u30D1\u30EC\u30C3\u30C8\u306B\u53CE\u7D0D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
smfcore.shelf.msg.inError=\u9069\u5207\u306A\u30B9\u30C8\u30EC\u30FC\u30B8\u9818\u57DF\u304C\u898B\u3064\u304B\u3089\u306A\u3044 [{0}]
...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u8FC7\u671F,\u65E0\u6CD5\u5165\ ...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u8FC7\u671F,\u65E0\u6CD5\u5165\
smfcore.allBoxView.noReel=\u5E93\u4F4D{0}\u4E2D\u65E0\u7269\u6599 smfcore.allBoxView.noReel=\u5E93\u4F4D{0}\u4E2D\u65E0\u7269\u6599
smfcore.error.barcode.many=\u627E\u5230\u591A\u4E2A\u6709\u6548\u7684\u6761\u7801 smfcore.error.barcode.many=\u627E\u5230\u591A\u4E2A\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.noValidCode=\u65E0\u6548\u7684\u6761\u7801 smfcore.error.barcode.noValidCode=\u65E0\u6548\u7684\u6761\u7801
smfcore.error.barcode.noValidCode={0}\u4E0D\u662F\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.executing=\u6761\u7801[{0}}]\u4EFB\u52A1\u6B63\u5728\u6267\u884C smfcore.error.barcode.executing=\u6761\u7801[{0}}]\u4EFB\u52A1\u6B63\u5728\u6267\u884C
smfcore.error.pos.notExist=\u5E93\u4F4D[{0}]\u4E0D\u5B58\u5728,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.notExist=\u5E93\u4F4D[{0}]\u4E0D\u5B58\u5728,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.wrong=\u5E93\u4F4D[{0}]\u4E0E\u6599\u4ED3[{1}}]\u4E0D\u5339\u914D,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.wrong=\u5E93\u4F4D[{0}]\u4E0E\u6599\u4ED3[{1}}]\u4E0D\u5339\u914D,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.hasReel=\u5E93\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.hasReel=\u5E93\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u65E0\u6CD5\u5165\u5E93
smfcore.error.pos.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5E93\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93 smfcore.error.pos.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5E93\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93
smfcore.error.storage.offline=\u6599\u4ED3[{0}]\u79BB\u7EBF smfcore.error.storage.offline=\u6599\u4ED3[{0}]\u79BB\u7EBF
smfcore.error.barcode.invalid=\u6761\u7801\u65E0\u6548 smfcore.error.barcode.invalid={0}\u4E0D\u662F\u6709\u6548\u7684\u6761\u7801
smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26 smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26
smfcore.error.barcode.wrongQty=\u6761\u7801[{0}]\u5BF9\u5E94\u7684\u6570\u91CF<=0\u4E3A: {1} smfcore.error.barcode.wrongQty=\u6761\u7801[{0}]\u5BF9\u5E94\u7684\u6570\u91CF<=0\u4E3A: {1}
smfcore.error.barcode.taskNotEnd=\u6599\u76D8[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u65E0\u6CD5\u6267\u884C\u5165\u5E93\u64CD\u4F5C smfcore.error.barcode.taskNotEnd=\u6599\u76D8[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u65E0\u6CD5\u6267\u884C\u5165\u5E93\u64CD\u4F5C
...@@ -236,3 +235,8 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8C03\u8BD5\u6A21\u5F0F ...@@ -236,3 +235,8 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8C03\u8BD5\u6A21\u5F0F
smfcore.pwd.error=\u5BC6\u7801\u9519\u8BEF smfcore.pwd.error=\u5BC6\u7801\u9519\u8BEF
smfcore.messages.enabledPos=\u542F\u7528\u5E93\u4F4D\uFF1A{0} smfcore.messages.enabledPos=\u542F\u7528\u5E93\u4F4D\uFF1A{0}
smfcore.messages.disabledPos=\u7981\u7528\u5E93\u4F4D\uFF1A{0} smfcore.messages.disabledPos=\u7981\u7528\u5E93\u4F4D\uFF1A{0}
smfcore.shelf.nlm.notFound=\u672A\u627E\u5230\u79FB\u52A8\u6599\u67B6{0}
smfcore.error.barcode.errorSize=\u6761\u7801\u672A\u8BBE\u7F6E\u5C3A\u5BF8
smfcore.shelf.msg.alreadyInPos=\u8BE5\u7269\u6599\u5DF2\u5728\u5E93\u4F4D[{0}]\u4E2D
smfcore.shelf.msg.inMergeOk=\u64CD\u4F5C\u6210\u529F,\u8BF7\u5408\u5E76\u5E93\u4F4D[{0}]\u5E76\u653E\u5165\u6599\u76D8
smfcore.shelf.msg.inError=\u672A\u627E\u5230\u9002\u5408[{0}]\u7684\u5E93\u4F4D
...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u904E\u671F,\u7121\u6CD5\u5165\ ...@@ -32,14 +32,13 @@ smfcore.error.barcode.expired=\u7269\u6599\u5DF2\u904E\u671F,\u7121\u6CD5\u5165\
smfcore.allBoxView.noReel=\u5EAB\u4F4D{0}\u4E2D\u7121\u7269\u6599 smfcore.allBoxView.noReel=\u5EAB\u4F4D{0}\u4E2D\u7121\u7269\u6599
smfcore.error.barcode.many=\u627E\u5230\u591A\u500B\u6709\u6548\u7684\u689D\u78BC smfcore.error.barcode.many=\u627E\u5230\u591A\u500B\u6709\u6548\u7684\u689D\u78BC
smfcore.error.barcode.noValidCode=\u7121\u6548\u7684\u689D\u78BC smfcore.error.barcode.noValidCode=\u7121\u6548\u7684\u689D\u78BC
smfcore.error.barcode.noValidCode={0}\u4E0D\u662F\u6709\u6548\u7684\u689D\u78BC
smfcore.error.barcode.executing=\u689D\u78BC[{0}}]\u4EFB\u52D9\u6B63\u5728\u57F7\u884C smfcore.error.barcode.executing=\u689D\u78BC[{0}}]\u4EFB\u52D9\u6B63\u5728\u57F7\u884C
smfcore.error.pos.notExist=\u5EAB\u4F4D[{0}]\u4E0D\u5B58\u5728,\u7121\u6CD5\u5165\u5EAB smfcore.error.pos.notExist=\u5EAB\u4F4D[{0}]\u4E0D\u5B58\u5728,\u7121\u6CD5\u5165\u5EAB
smfcore.error.pos.wrong=\u5EAB\u4F4D[{0}]\u8207\u6599\u5009[{1}}]\u4E0D\u5339\u914D,\u7121\u6CD5\u5165\u5EAB smfcore.error.pos.wrong=\u5EAB\u4F4D[{0}]\u8207\u6599\u5009[{1}}]\u4E0D\u5339\u914D,\u7121\u6CD5\u5165\u5EAB
smfcore.error.pos.hasReel=\u5EAB\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u7121\u6CD5\u5165\u5EAB smfcore.error.pos.hasReel=\u5EAB\u4F4D[{0}]\u4E2D\u5DF2\u6709\u7269\u6599,\u7121\u6CD5\u5165\u5EAB
smfcore.error.pos.sizeNotMatch=\u6599\u76E4\u5C3A\u5BF8[{0}}]\u8207\u5EAB\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u7121\u6CD5\u5165\u5EAB smfcore.error.pos.sizeNotMatch=\u6599\u76E4\u5C3A\u5BF8[{0}}]\u8207\u5EAB\u4F4D{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u7121\u6CD5\u5165\u5EAB
smfcore.error.storage.offline=\u6599\u5009[{0}]\u96E2\u7DDA smfcore.error.storage.offline=\u6599\u5009[{0}]\u96E2\u7DDA
smfcore.error.barcode.invalid=\u689D\u78BC\u7121\u6548 smfcore.error.barcode.invalid={0}\u4E0D\u662F\u6709\u6548\u7684\u689D\u78BC
smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26 smfcore.error.barcode.wrongSize=\u5C3A\u5BF8[{0}]\u4E0D\u7B26
smfcore.error.barcode.wrongQty=\u689D\u78BC[{0}]\u5C0D\u61C9\u7684\u6578\u91CF<=0\u7232: {1} smfcore.error.barcode.wrongQty=\u689D\u78BC[{0}]\u5C0D\u61C9\u7684\u6578\u91CF<=0\u7232: {1}
smfcore.error.barcode.taskNotEnd=\u6599\u76E4[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u7121\u6CD5\u57F7\u884C\u5165\u5EAB\u64CD\u4F5C smfcore.error.barcode.taskNotEnd=\u6599\u76E4[{0}]\u7684\u64CD\u4F5C\u672A\u5B8C\u6210,\u7121\u6CD5\u57F7\u884C\u5165\u5EAB\u64CD\u4F5C
...@@ -236,3 +235,8 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8ABF\u8A66\u6A21\u5F0F ...@@ -236,3 +235,8 @@ smfcore.exitDebugModel.ok=\u5DF2\u9000\u51FA\u8ABF\u8A66\u6A21\u5F0F
smfcore.pwd.error=\u5BC6\u78BC\u932F\u8AA4 smfcore.pwd.error=\u5BC6\u78BC\u932F\u8AA4
smfcore.messages.enabledPos=\u555F\u7528\u5EAB\u4F4D\uFF1A{0} smfcore.messages.enabledPos=\u555F\u7528\u5EAB\u4F4D\uFF1A{0}
smfcore.messages.disabledPos=\u7981\u7528\u5EAB\u4F4D\uFF1A{0} smfcore.messages.disabledPos=\u7981\u7528\u5EAB\u4F4D\uFF1A{0}
smfcore.shelf.nlm.notFound=\u672A\u627E\u5230\u79FB\u52D5\u6599\u67B6{0}
smfcore.error.barcode.errorSize=\u689D\u78BC\u672A\u8A2D\u7F6E\u5C3A\u5BF8
smfcore.shelf.msg.alreadyInPos=\u8A72\u7269\u6599\u5DF2\u5728\u5EAB\u4F4D[{0}]\u4E2D
smfcore.shelf.msg.inMergeOk=\u64CD\u4F5C\u6210\u529F\uFF0C\u8ACB\u5408\u4F75\u5EAB\u4F4D[{0}]\u4E26\u653E\u5165\u6599\u76E4
smfcore.shelf.msg.inError=\u672A\u627E\u5230\u9069\u5408[{0}]\u7684\u5EAB\u4F4D
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!