From 785bc936135733585195bdb61355c0f03038fd91 Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Wed, 17 Aug 2022 14:07:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device_driver/driver/OpcDeviceDriver.java | 12 +++- .../ItemProtocol.java | 2 +- .../ItemProtocol.java | 2 +- ...agePalletSplitManipulatorDeviceDriver.java | 59 ++++++++++++++++++- 4 files changed, 67 insertions(+), 8 deletions(-) diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java index cf07de0..ebc6edf 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java @@ -64,15 +64,21 @@ public interface OpcDeviceDriver extends DeviceDriver { } default Float getFloatValue(String protocol) { - return (Float) this.getOpcValueAccessor().getValue(this.getItem(protocol)); + RedisUtils redisUtils = SpringContextHolder.getBean(RedisUtils.class); + return (Float)redisUtils.get(this.getItem(protocol)); +// return (Float) this.getOpcValueAccessor().getValue(this.getItem(protocol)); } default int[] getIntegeregerArrayValue(String protocol) { - return (int[]) this.getOpcValueAccessor().getValue(this.getItem(protocol)); +// return (int[]) this.getOpcValueAccessor().getValue(this.getItem(protocol)); + RedisUtils redisUtils = SpringContextHolder.getBean(RedisUtils.class); + return (int[])redisUtils.get(this.getItem(protocol)); } default String getStringValue(String protocol) { - return (String) this.getOpcValueAccessor().getValue(this.getItem(protocol)); +// return (String) this.getOpcValueAccessor().getValue(this.getItem(protocol)); + RedisUtils redisUtils = SpringContextHolder.getBean(RedisUtils.class); + return (String)redisUtils.get(this.getItem(protocol)); } default Object getValue(String protocol) { diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/ItemProtocol.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/ItemProtocol.java index 9360938..cec9072 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/ItemProtocol.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/lnsh_palletizing_manipulator_site/ItemProtocol.java @@ -152,7 +152,7 @@ public class ItemProtocol { } else { return value; } - return "0"; + return ""; } public static List getReadableItemDtos() { diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/ItemProtocol.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/ItemProtocol.java index b7f0557..009b60d 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/ItemProtocol.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/ItemProtocol.java @@ -767,7 +767,7 @@ public class ItemProtocol { } else { return value; } - return "0"; + return ""; } public static List getReadableItemDtos() { diff --git a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/RljnPackagePalletSplitManipulatorDeviceDriver.java b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/RljnPackagePalletSplitManipulatorDeviceDriver.java index c64fda9..d474f29 100644 --- a/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/RljnPackagePalletSplitManipulatorDeviceDriver.java +++ b/acs/hd/nladmin-system/src/main/java/org/nl/acs/device_driver/lnsh/rljn_package_palletSplit_manipulator/RljnPackagePalletSplitManipulatorDeviceDriver.java @@ -689,12 +689,14 @@ public class RljnPackagePalletSplitManipulatorDeviceDriver extends AbstractOpcDe case 6: //码垛完成 if (!requireSucess) { + applyEmpty(); palletizing(); } break; case 7: - //码垛强制完成 + //码垛强制完成 半托缓存 if (!requireSucess) { + applyEmpty(); mandatoryPalletizing(); } break; @@ -716,6 +718,19 @@ public class RljnPackagePalletSplitManipulatorDeviceDriver extends AbstractOpcDe enterProduction(json); } break; + case 10: + //叫料 + if (!requireSucess && getStation>0 && StrUtil.isNotEmpty(material)) { + callMaterial(); + } + break; + case 11: + //强制去包装 + if (!requireSucess) { + applyEmpty(); + mandatoryPalletizing(); + } + break; } switch (flag) { @@ -819,6 +834,43 @@ public class RljnPackagePalletSplitManipulatorDeviceDriver extends AbstractOpcDe } } + + /** + * 叫料 + * + * @param + */ + public synchronized boolean callMaterial() { + Date date = new Date(); + if (date.getTime() - this.instruction_require_time.getTime() < (long) this.instruction_require_time_out) { + log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out); + return false; + } else { + this.instruction_require_time = date; + JSONObject json = new JSONObject(); + String linkobj = (String)this.getDevice().getExtraValue().get("link_device_code"); + String demosub = linkobj.substring(1,linkobj.length()-1); + String demoArray[] = demosub.split(","); + List demoList = Arrays.asList(demoArray); + json.put("device_code",demoList.get(getStation-1).replace("\"","")); + json.put("type","2"); + json.put("material_code",material); + json.put("vehicle_code",barcode); + json.put("is_full","1"); + HttpResponse result = acsToWmsService.lnshApplyTaskToWms(json); + if (ObjectUtil.isNotEmpty(result)) { + JSONObject jsonObject = JSONObject.parseObject(result.body()); + if (result.getStatus() == 200 && StrUtil.equals(jsonObject.getString("status"),"200")) { + this.writing(1); + } + this.setRequireSucess(true); + } + return true; + } + } + + + /** * 排产单确认 * @@ -1109,9 +1161,10 @@ public class RljnPackagePalletSplitManipulatorDeviceDriver extends AbstractOpcDe String demosub = linkobj.substring(1,linkobj.length()-1); String demoArray[] = demosub.split(","); List demoList = Arrays.asList(demoArray); - json.put("device_code",demoList.get(put_station-1).replace("\"","")); json.put("qty",qty); + json.put("device_code",demoList.get(put_station-1).replace("\"","")); + json.put("qty",qty); json.put("vehicle_code",barcode); - json.put("is_full","0"); + json.put("is_full","1"); json.put("product_code",product_code); json.put("AlongSide",AlongSide); json.put("BshortSide",BshortSide);