Commit 07982ee3 zshaohui

1.料盘尺寸与元器件尺寸不符,不允许入库

1 个父辈 af7fccc7
......@@ -220,11 +220,13 @@ public class CodeResolve {
}
//如果 barcode 里的料盘信息比 Component 中的大,使用比较大的,防止放不进去撞击
else if(codeBeanFromRule.getReelHeight() > component.getHeight() || codeBeanFromRule.getReelWidth() > component.getPlateSize()){
log.info("更新物料["+component.getPartNumber()+"]档案尺寸["+component.getPlateSize()+"x"+component.getHeight()+"]为["+codeBeanFromRule.getReelWidth()+"x"+codeBeanFromRule.getReelHeight()+"]");
component.setPlateSize(barcodeFromRule.getPlateSize());
component.setHeight(barcodeFromRule.getHeight());
component.setType(type);
componentManager.save(component);
if (component.getHeight() == 1 || component.getPlateSize() == 1) {
log.info("更新物料[" + component.getPartNumber() + "]档案尺寸[" + component.getPlateSize() + "x" + component.getHeight() + "]为[" + codeBeanFromRule.getReelWidth() + "x" + codeBeanFromRule.getReelHeight() + "]");
component.setPlateSize(barcodeFromRule.getPlateSize());
component.setHeight(barcodeFromRule.getHeight());
component.setType(type);
componentManager.save(component);
}
}
codeBeanFromRule.setShowImg(component.getShowImg());
}
......
......@@ -11,7 +11,9 @@ import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.Constants;
import com.neotel.smfcore.common.utils.ReelLockPosUtil;
import com.neotel.smfcore.core.api.SmfApi;
import com.neotel.smfcore.core.barcode.service.manager.IComponentManager;
import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.barcode.service.po.Component;
import com.neotel.smfcore.core.barcode.utils.CodeResolve;
import com.neotel.smfcore.core.device.bean.PosInfo;
import com.neotel.smfcore.core.message.util.DeviceMessageUtil;
......@@ -61,6 +63,9 @@ public class DeviceController {
@Autowired
private IStoragePosManager storagePosManager;
@Autowired
private IComponentManager componentManager;
private Map<String, IDeviceHandler> handlerMap = new HashMap<>();
public DeviceController(List<IDeviceHandler> deviceHandlerList) {
......@@ -181,6 +186,15 @@ public class DeviceController {
throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码", new String[]{code});
}
//判断尺寸是否和元器件是否一致
Component component = componentManager.findByPartNumberAndProvider(barcode.getPartNumber(), barcode.getProvider());
if (component != null){
if (component.getPlateSize() != barcode.getPlateSize() || component.getHeight() != barcode.getHeight()){
throw new ValidateException("smfcore.error.component.sizeNotMatch", "料盘尺寸[{0}}]与元器件{1}尺寸[{2}]不符,无法入库"
, new String[]{barcode.getPlateSize()+"x"+barcode.getHeight(),component.getPartNumber(),component.getPlateSize()+"x"+component.getHeight()});
}
}
for (DataLog dataLog : taskService.getQueueTasks()) {
//判断是否有正在执行的任务
/*if (dataLog.isCheckOutTask()) {
......
......@@ -272,4 +272,5 @@ smfcore.error.storage.outNotEnd=\u6599\u4ED3{0}\u6709\u51FA\u5E93\u4EFB\u52A1\u6
#smfclient.loadMaterialFailed=loading material failed:{0}
#smfclient.checkingMaterialOk=checking material is ok:{0}
#smfclient.checkNg=checking material is ng:{0}
smfcore.logMonitor=\u65E5\u5FD7\u76D1\u63A7
\ No newline at end of file
smfcore.logMonitor=\u65E5\u5FD7\u76D1\u63A7
smfcore.error.component.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5143\u5668\u4EF6{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93
\ No newline at end of file
......@@ -257,3 +257,4 @@ smfcore.greaterThanZero=Amount Must be greater than 0
smfcore.error.virtualOut.num=The number cannot exceed {0}
smfcore.error.virtualOut.noItem=The corresponding material is not found in work order {0}
smfcore.logMonitor=Log Monitoring
smfcore.error.component.sizeNotMatch=Tray size [{0}] does not match component {1} size [{2}], cannot store in warehouse
\ No newline at end of file
......@@ -256,3 +256,4 @@ smfcore.greaterThanZero=\u6570\u91CF\u5FC5\u987B\u5927\u4E8E0
smfcore.error.virtualOut.num=\u6570\u91CF\u4E0D\u80FD\u8D85\u8FC7{0}
smfcore.error.virtualOut.noItem=\u5DE5\u5355{0}\u4E2D\u672A\u627E\u5230\u5BF9\u5E94\u7684PN\u6216\u7269\u6599\u7F16\u53F7
smfcore.logMonitor=\u30ED\u30B0\u76E3\u8996
smfcore.error.component.sizeNotMatch=\u30C8\u30EC\u30A4\u30B5\u30A4\u30BA[{0}]\u306F\u90E8\u54C1{1}\u306E\u30B5\u30A4\u30BA[{2}]\u3068\u4E00\u81F4\u3057\u306A\u3044\u305F\u3081\u3001\u5165\u5EAB\u3067\u304D\u307E\u305B\u3093
......@@ -255,4 +255,5 @@ smfcore.equipmentView=\u8BBE\u5907\u4E92\u8054
smfcore.greaterThanZero=\u6570\u91CF\u5FC5\u987B\u5927\u4E8E0
smfcore.error.virtualOut.num=\u6570\u91CF\u4E0D\u80FD\u8D85\u8FC7{0}
smfcore.error.virtualOut.noItem=\u5DE5\u5355{0}\u4E2D\u672A\u627E\u5230\u5BF9\u5E94\u7684PN\u6216\u7269\u6599\u7F16\u53F7
smfcore.logMonitor=\u65E5\u5FD7\u76D1\u63A7
\ No newline at end of file
smfcore.logMonitor=\u65E5\u5FD7\u76D1\u63A7
smfcore.error.component.sizeNotMatch=\u6599\u76D8\u5C3A\u5BF8[{0}}]\u4E0E\u5143\u5668\u4EF6{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26,\u65E0\u6CD5\u5165\u5E93
\ No newline at end of file
......@@ -255,4 +255,5 @@ smfcore.equipmentView=\u8A2D\u5099\u4E92\u806F
smfcore.greaterThanZero=\u6578\u91CF\u5FC5\u9808\u5927\u65BC0
smfcore.error.virtualOut.num=\u6578\u91CF\u4E0D\u80FD\u8D85\u904E{0}
smfcore.error.virtualOut.noItem=\u5DE5\u55AE{0}\u4E2D\u672A\u627E\u5230\u5C0D\u61C9\u7684PN\u7269\u6599\u7DE8\u865F
smfcore.logMonitor=\u65E5\u8A8C\u76E3\u63A7
\ No newline at end of file
smfcore.logMonitor=\u65E5\u8A8C\u76E3\u63A7
smfcore.error.component.sizeNotMatch=\u6599\u76E4\u5C3A\u5BF8[{0}]\u8207\u5143\u5668\u4EF6{1}\u5C3A\u5BF8[{2}]\u4E0D\u7B26\uFF0C\u7121\u6CD5\u5165\u5EAB
\ No newline at end of file
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!