From f2fb475e2e1d91e9c209154cc1bb8142995388df Mon Sep 17 00:00:00 2001 From: yanps Date: Wed, 24 Jan 2024 13:38:13 +0800 Subject: [PATCH 1/7] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=83=98=E7=AE=B1?= =?UTF-8?q?=E8=A1=8C=E6=9E=B6=E4=B8=8D=E7=BB=992=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HongXiangConveyorDeviceDriver.java | 29 +++++++++-- .../OvenGantryManipulatorDeviceDriver.java | 52 +++++++++++++++---- .../SiemensConveyorDeviceDriver.java | 2 +- .../src/views/system/monitor/device/index.vue | 3 ++ acs2/nladmin-ui/src/views/lucene/time.vue | 6 +-- 5 files changed, 76 insertions(+), 16 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hongxiang_device/HongXiangConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hongxiang_device/HongXiangConveyorDeviceDriver.java index d24676f2e..8e1740ffa 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hongxiang_device/HongXiangConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hongxiang_device/HongXiangConveyorDeviceDriver.java @@ -340,6 +340,7 @@ public class HongXiangConveyorDeviceDriver extends AbstractOpcDeviceDriver imple jo.put("finish", finish); jo.put("isOnline", this.getIsonline()); jo.put("error", ErrorUtil.getDictDetail("hx_error_type", String.valueOf(this.getError()))); + jo.put("error1", ErrorUtil.getDictDetail("hx_error_type", String.valueOf(this.getError1()))); jo.put("isError", this.getIserror()); jo.put("countdown_house", countdown_house); jo.put("countdown_min", countdown_min); @@ -348,9 +349,6 @@ public class HongXiangConveyorDeviceDriver extends AbstractOpcDeviceDriver imple jo.put("mode", mode); jo.put("move", move); jo.put("action", action); -// jo.put("isOnline", this.getIsonline()); -// jo.put("error", this.getError()); -// jo.put("isError", this.getIserror()); jo.put("task", this.getTask()); return jo; } @@ -402,4 +400,29 @@ public class HongXiangConveyorDeviceDriver extends AbstractOpcDeviceDriver imple } } + public void writing(List list) { + Map itemMap = new HashMap(); + for (int i = 0; i < list.size(); i++) { + Object ob = list.get(i); + JSONObject json = (JSONObject) JSONObject.toJSON(ob); + if (!StrUtil.isEmpty(json.getString("value"))) { + String to_param = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code() + + "." + json.getString("code"); + itemMap.put(to_param, json.getString("value")); + } + } + logServer.deviceExecuteLog(device_code, "", "", "下发电气信号:" + itemMap); + try { + this.checkcontrol(itemMap); + } catch (Exception e) { + e.printStackTrace(); + try { + this.checkcontrol(itemMap); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + + } + } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java index ed46b3468..6fbc82193 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java @@ -457,11 +457,29 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i this.writing("to_command", "1"); if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) { hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver(); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); + List list = new ArrayList(); + Map map = new HashMap(); + map.put("code", "to_open_door"); + map.put("value", "1"); + list.add(map); + try { + hongXiangConveyorDeviceDriver.writing(list); + } catch (Exception e) { + logServer.deviceExecuteLog(this.getDevice_code(), "", "", "起点设备:" + start_device_code + "未打开烘箱门,导致now_steps_type不等于: 2 ;now_steps_type:" + now_steps_type); + } } if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) { hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver(); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); + List list = new ArrayList(); + Map map = new HashMap(); + map.put("code", "to_open_door"); + map.put("value", "1"); + list.add(map); + try { + hongXiangConveyorDeviceDriver.writing(list); + } catch (Exception e) { + logServer.deviceExecuteLog(this.getDevice_code(), "", "", "终点设备:" + next_device_code + "未打开烘箱门,导致now_steps_type不等于: 2;now_steps_type:" + now_steps_type); + } } this.setNow_steps_type(2); this.setRequireSucess(true); @@ -605,13 +623,29 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i //HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver; if (nextDevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) { hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextDevice.getDeviceDriver(); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); + List list = new ArrayList(); + Map map = new HashMap(); + map.put("code", "to_open_door"); + map.put("value", "1"); + list.add(map); + try { + hongXiangConveyorDeviceDriver.writing(list); + } catch (Exception e) { + logServer.deviceExecuteLog(this.getDevice_code(), "", "", "终点设备:" + next_device_code + "未打开烘箱门,导致now_steps_type不等于: 2;now_steps_type:" + now_steps_type); + } } if (startDevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) { hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startDevice.getDeviceDriver(); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); - hongXiangConveyorDeviceDriver.writing("to_open_door", "1"); + List list = new ArrayList(); + Map map = new HashMap(); + map.put("code", "to_open_door"); + map.put("value", "1"); + list.add(map); + try { + hongXiangConveyorDeviceDriver.writing(list); + } catch (Exception e) { + logServer.deviceExecuteLog(this.getDevice_code(), "", "", "起点设备:" + start_device_code + "未打开烘箱门,导致now_steps_type不等于: 2;now_steps_type:" + now_steps_type); + } } this.setNow_steps_type(2); this.setRequireSucess(true); @@ -800,11 +834,11 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i steps_type = "更新指令状态"; } else if (now_steps_type == 2) { steps_type = "下发电气信号"; - }else if(now_steps_type == 3){ + } else if (now_steps_type == 3) { steps_type = "允许取货"; - }else if (now_steps_type ==4 ){ + } else if (now_steps_type == 4) { steps_type += "允许放货"; - }else if (now_steps_type == 5){ + } else if (now_steps_type == 5) { steps_type += "放货完成"; } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java index 8dd8baaf5..1d4486e82 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java @@ -476,7 +476,7 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme break; } else { message = "task变化请求LMS失败: " + response.getMessage(); - Thread.sleep(5000); + Thread.sleep(15000); } } } catch (Exception e) { diff --git a/acs/nladmin-ui/src/views/system/monitor/device/index.vue b/acs/nladmin-ui/src/views/system/monitor/device/index.vue index 7533172be..0aa5a9538 100644 --- a/acs/nladmin-ui/src/views/system/monitor/device/index.vue +++ b/acs/nladmin-ui/src/views/system/monitor/device/index.vue @@ -470,6 +470,9 @@ export default { } else if (val === 'error') { const obj = { name: '报警', value: data[val] } this.arr.push(obj) + } else if (val === 'error1') { + const obj = { name: '报警2', value: data[val] } + this.arr.push(obj) } else if (val === 'ip') { const obj = { name: 'IP地址', value: data[val] } this.arr.push(obj) diff --git a/acs2/nladmin-ui/src/views/lucene/time.vue b/acs2/nladmin-ui/src/views/lucene/time.vue index 37b160175..7d3a98c68 100644 --- a/acs2/nladmin-ui/src/views/lucene/time.vue +++ b/acs2/nladmin-ui/src/views/lucene/time.vue @@ -7,9 +7,9 @@ v-model="query.createTime" type="datetimerange" :picker-options="pickerOptions" - range-separator="至" - start-placeholder="开始日期" - end-placeholder="结束日期" + :range-separator="$t('monitor.lucence.until')" + :start-placeholder="$t('auto.common.startDate')" + :end-placeholder="$t('auto.common.endDate')" align="right" /> From 686e3d33ae0a7484b64ec21a8ff7c003bbf08de4 Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Wed, 24 Jan 2024 16:56:38 +0800 Subject: [PATCH 2/7] =?UTF-8?q?rev=20=E6=9B=B4=E6=96=B0=E9=A9=B1=E5=8A=A8?= =?UTF-8?q?=E5=AD=97=E7=AC=A6=E4=B8=B2=E8=AF=BB=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/nl/acs/device_driver/driver/OpcDeviceDriver.java | 2 +- .../one_conveyor/box_subvolumes_conveyor/ItemProtocol.java | 2 +- .../main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java | 5 +---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java index c1d27c02a..04fbae0a4 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/driver/OpcDeviceDriver.java @@ -190,7 +190,7 @@ public interface OpcDeviceDriver extends DeviceDriver { * @return */ default String getStringValue(String protocol) { - return this.getOpcValueAccessor().getValue(this.getItem(protocol)).toString(); + return (String) this.getOpcValueAccessor().getValue(this.getItem(protocol)); } /** diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_subvolumes_conveyor/ItemProtocol.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_subvolumes_conveyor/ItemProtocol.java index 56a2e5c48..8b81241be 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_subvolumes_conveyor/ItemProtocol.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_subvolumes_conveyor/ItemProtocol.java @@ -153,7 +153,7 @@ public class ItemProtocol { } else { return value; } - return "0"; + return ""; } public static List getReadableItemDtos() { diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java index 1f245e4c4..8e8f2f0ba 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java @@ -207,10 +207,8 @@ public class DeviceOpcProtocolRunable implements Runnable, DataCallback, ServerC if (!UnifiedDataAppService.isEquals(value, his)) { OpcItemDto itemDto = this.getItem(itemId); - if (true) { - this.logItemChanged(itemId, accessor_value, value, itemDto); - } if (!ObjectUtil.isEmpty(value)) { + this.logItemChanged(itemId, accessor_value, value, itemDto); accessor_value.setValue(itemId, value); } } @@ -436,7 +434,6 @@ public class DeviceOpcProtocolRunable implements Runnable, DataCallback, ServerC String.valueOf(itemDto.getHis_item_value()), String.valueOf(itemDto.getItem_value())); luceneLogDto.setLogType(LogTypeEnum.DEVICE_LOG.getDesc()); log.info("{}", JSON.toJSONString(luceneLogDto)); - } } else { if(his instanceof int[]){ From c27c42de8b19424982232419bf5f6e1c80b2f32e Mon Sep 17 00:00:00 2001 From: lishuai <1793460677@qq.com> Date: Fri, 26 Jan 2024 13:56:15 +0800 Subject: [PATCH 3/7] =?UTF-8?q?add=20:=20=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BeltConveyorDeviceDriver.java | 176 ++++++++---------- .../BoxStorageOutConveyorDeviceDriver.java | 2 +- .../FoldDiscSiteDeviceDriver.java | 115 ++++++------ ...ConveyorWithScannerWeightDeviceDriver.java | 2 +- .../BoxPackageManipulatorDeviceDriver.java | 51 +++-- .../BoxStorageManipulatorDeviceDriver.java | 62 +++--- .../ReturnGoodManipulatorDeviceDriver.java | 62 +++--- ...pedManipulatorManipulatorDeviceDriver.java | 62 +++--- .../standard_stacker/ItemProtocol.java | 2 +- .../StandardStackerDeviceDriver.java | 72 +++++-- .../service/quartz/task/AutoCreateInst.java | 3 +- 11 files changed, 308 insertions(+), 301 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/BeltConveyorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/BeltConveyorDeviceDriver.java index 951e8cb05..db13c6e8b 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/BeltConveyorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/conveyor/belt_conveyor/BeltConveyorDeviceDriver.java @@ -36,6 +36,8 @@ import org.nl.acs.monitor.DeviceStageMonitor; import org.nl.acs.opc.DeviceAppService; import org.nl.acs.route.service.RouteLineService; import org.nl.acs.route.service.dto.RouteLineDto; +import org.nl.acs.task.enums.TaskStatusEnum; +import org.nl.acs.task.enums.TaskTypeEnum; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; import org.nl.config.SpringContextHolder; @@ -232,62 +234,6 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements logServer.deviceExecuteLog(this.device_code, "", "", "信号mode:" + last_mode + "->" + mode + "复位请求标记:" + requireSucess); logServer.deviceExecuteLog(this.device_code, "", "", "信号mode:" + last_mode + "->" + mode); } - if (move != last_move) { - logServer.deviceItemValue(this.device_code, "move", String.valueOf(move)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号move:" + last_move + "->" + move); - } - if (container_direction != last_container_direction) { - logServer.deviceItemValue(this.device_code, "carrier_direction", String.valueOf(container_direction)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号container_direction:" + last_container_direction + "->" + container_direction); - } - if (container_type != last_container_type) { - logServer.deviceItemValue(this.device_code, "container_type", String.valueOf(container_type)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号container_type:" + last_container_type + "->" + container_type); - } - if (container_no != last_container_no) { - logServer.deviceItemValue(this.device_code, "container_no", String.valueOf(container_no)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号container_no:" + last_container_no + "->" + container_no); - } - if (action != last_action) { - logServer.deviceItemValue(this.device_code, "action", String.valueOf(action)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号action:" + last_action + "->" + action); - } - if (to_command != last_to_command) { - logServer.deviceItemValue(this.device_code, "to_command", String.valueOf(to_command)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_command:" + last_to_command + "->" + to_command); - } - if (to_target != last_to_target) { - logServer.deviceItemValue(this.device_code, "to_target", String.valueOf(to_target)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_target:" + last_to_target + "->" + to_target); - } - if (to_task != last_to_task) { - logServer.deviceItemValue(this.device_code, "to_task", String.valueOf(to_task)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_task:" + last_to_task + "->" + to_task); - } - if (to_container_no != last_to_container_no) { - logServer.deviceItemValue(this.device_code, "to_container_no", String.valueOf(to_container_no)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_container_no:" + last_to_container_no + "->" + to_container_no); - } - if (to_container_type != last_to_container_type) { - logServer.deviceItemValue(this.device_code, "to_container_type", String.valueOf(to_container_type)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_container_type:" + last_to_container_type + "->" + to_container_type); - } - if (error != last_error) { - if (error != 0) { - DeviceErrorLogDto acsDeviceErrorLog = new DeviceErrorLogDto(); - acsDeviceErrorLog.setDevice_code(this.device_code); - acsDeviceErrorLog.setError_code(String.valueOf(error)); - String errorInfo = ErrorUtil.getDictDetail(ErrorType.CONVEYOR_ERROR.getErrorType(), String.valueOf(error)); - acsDeviceErrorLog.setError_info(errorInfo); - errorLogServer.create(acsDeviceErrorLog); - } - logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号error:" + last_error + "->" + error); - } - if (task != last_task) { - logServer.deviceItemValue(this.device_code, "task", String.valueOf(task)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号task:" + last_task + "->" + task); - } if (move != 0 && task > 0) { @@ -346,6 +292,13 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements applyManipulatorTask(); } break; + case 7: + //申请空托盘到叠盘位的任务 + //TODO 申请行架任务 + if (move == 1 && !requireSucess) { + applyEmpotyTask(); + } + break; default: break; } @@ -367,6 +320,16 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements } + private void applyEmpotyTask() { + JSONObject param = new JSONObject(); + param.put("device_code", device_code); + logServer.deviceExecuteLog(this.device_code, "", "", "二楼到一楼输送线申请行架任务,参数:" + param); + HttpResponse response = acsToWmsService.shipDeviceUpdate(param); + if (response == null || response.getStatus() == 200) { + logServer.deviceExecuteLog(this.device_code, "", "", "二楼到一楼输送线申请行架任务,接口返回:" + response.body()); + } + } + private void applyManipulatorTask() { JSONObject param = new JSONObject(); @@ -488,19 +451,6 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements } - public void writing(Map map) { - DeviceExecuteLogService logServer = SpringContextHolder.getBean("deviceExecuteLogServiceImpl"); - Map itemMap = new LinkedHashMap<>(); - map.forEach((key, value) -> { - if (ObjectUtil.isNotEmpty(value)) { - itemMap.put(getToParam() + key, value); - } - }); - if (ObjectUtil.isNotEmpty(itemMap)) { - this.control(itemMap); - logServer.deviceExecuteLog(this.getDevice().getDevice_code(), "", "", "下发多个电气信号:" + itemMap); - } - } /*public synchronized void request_for_shipment(String mode, String item_out_seq_arr, int[] item_out_qty_arr) { @@ -591,13 +541,8 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements if (ObjectUtil.isEmpty(inst)) { return false; } - Map map = new LinkedHashMap<>(); - map.put("to_target", next_addr); - map.put("to_task", inst.getInstruction_code()); - map.put("to_command", CommonFinalParam.ONE); - map.put("to_container_type", CommonFinalParam.ONE); - map.put("to_container_no", CommonFinalParam.ONE); - this.writing(map); + List list = new ArrayList(); + writeData(next_addr, list, inst); led_message = getLedMessage(inst); requireSucess = true; return true; @@ -607,7 +552,7 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements if (ObjectUtil.isNull(taskdto)) { return false; } - if (ObjectUtil.isNotNull(taskdto) && CommonFinalParam.ONE.equals(taskdto.getTask_type())) { + if (ObjectUtil.isNotNull(taskdto) && TaskTypeEnum.Conveyor_Task.getIndex().equals(taskdto.getTask_type())) { //判断指令的起点和当前的设备号相同 if (!taskdto.getStart_device_code().equals(device_code)) { return false; @@ -658,23 +603,7 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements next_point_code = next_device_code; } Instruction instdto = new Instruction(); - instdto.setInstruction_id(IdUtil.simpleUUID()); - instdto.setRoute_plan_code(route_plan_code); - instdto.setRemark(taskdto.getRemark()); - instdto.setMaterial(taskdto.getMaterial()); - instdto.setQuantity(taskdto.getQuantity()); - instdto.setTask_id(taskid); - instdto.setTask_code(taskcode); - String now = DateUtil.now(); - instdto.setCreate_time(now); - instdto.setCreate_by("auto"); - instdto.setStart_device_code(start_device_code); - instdto.setNext_device_code(next_device_code); - instdto.setStart_point_code(start_point_code); - instdto.setNext_point_code(next_point_code); - instdto.setPriority(priority); - instdto.setInstruction_status("0"); - instdto.setExecute_device_code(start_point_code); + packageData(instdto, route_plan_code, taskdto, taskid, taskcode, start_device_code, next_device_code, start_point_code, next_point_code, priority); log.error("=================================,{}", instdto.getCreate_by()); try { instructionService.create(instdto); @@ -683,17 +612,12 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements log.error("指令创建失败!,{}", e.getMessage()); return false; } - taskdto.setTask_status(CommonFinalParam.ONE); + taskdto.setTask_status(TaskStatusEnum.BUSY.getIndex()); taskserver.update(taskdto); requireSucess = true; - Map map = new LinkedHashMap<>(); String next_addr = nextdevice.getExtraValue().get("address").toString(); - map.put("to_target", next_addr); - map.put("to_task", instdto.getInstruction_code()); - map.put("to_command", CommonFinalParam.ONE); - map.put("to_container_type", CommonFinalParam.ONE); - map.put("to_container_no", CommonFinalParam.ONE); - this.writing(map); + List list = new ArrayList(); + writeData(next_addr, list, instdto); led_message = getLedMessage(instdto); requireSucess = true; return true; @@ -703,6 +627,51 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements } } + private void writeData(String next_addr, List list, Instruction inst) { + Map map = new HashMap(); + map.put("code", "to_target"); + map.put("value", next_addr); + list.add(map); + Map map1 = new HashMap(); + map1.put("code", "to_task"); + map1.put("value", inst.getInstruction_code()); + list.add(map1); + Map map2 = new HashMap(); + map2.put("code", "to_command"); + map2.put("value", "1"); + list.add(map2); + Map map3 = new HashMap(); + map3.put("code", "to_container_type"); + map3.put("value", "1"); + list.add(map3); + Map map4 = new HashMap(); + map4.put("code", "to_container_no"); + map4.put("value", "1"); + list.add(map4); + + this.writing(list); + } + + private static void packageData(Instruction instdto, String route_plan_code, TaskDto taskdto, String taskid, String taskcode, String start_device_code, String next_device_code, String start_point_code, String next_point_code, String priority) { + instdto.setInstruction_id(IdUtil.simpleUUID()); + instdto.setRoute_plan_code(route_plan_code); + instdto.setRemark(taskdto.getRemark()); + instdto.setMaterial(taskdto.getMaterial()); + instdto.setQuantity(taskdto.getQuantity()); + instdto.setTask_id(taskid); + instdto.setTask_code(taskcode); + String now = DateUtil.now(); + instdto.setCreate_time(now); + instdto.setCreate_by("auto"); + instdto.setStart_device_code(start_device_code); + instdto.setNext_device_code(next_device_code); + instdto.setStart_point_code(start_point_code); + instdto.setNext_point_code(next_point_code); + instdto.setPriority(priority); + instdto.setInstruction_status("0"); + instdto.setExecute_device_code(start_point_code); + } + public void writeData(String next_addr, Instruction instdto, Map map) { } @@ -821,7 +790,8 @@ public class BeltConveyorDeviceDriver extends AbstractOpcDeviceDriver implements logServer.deviceExecuteLog(device_code, "", "", "入库输送线任务开始反馈执行中状态,反馈成功,指令号:" + task); } //当货物到达b点,实现完成指令 - if (StrUtil.equals(inst.getInstruction_status(), CommonFinalParam.ONE) || StrUtil.equals(inst.getInstruction_status(), InstructionStatusEnum.READY.getIndex())) { + + if (StrUtil.equals(inst.getInstruction_status(), InstructionStatusEnum.BUSY.getIndex()) || StrUtil.equals(inst.getInstruction_status(), InstructionStatusEnum.READY.getIndex())) { if (StrUtil.equals(this.getDeviceCode(), inst.getNext_device_code())) { inst.setExecute_device_code(this.device_code); finish_instruction(); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_storage_out_conveyor/BoxStorageOutConveyorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_storage_out_conveyor/BoxStorageOutConveyorDeviceDriver.java index 55be68eed..904130d24 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_storage_out_conveyor/BoxStorageOutConveyorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/box_storage_out_conveyor/BoxStorageOutConveyorDeviceDriver.java @@ -173,7 +173,7 @@ public class BoxStorageOutConveyorDeviceDriver extends AbstractOpcDeviceDriver i - if (move != 0 && task > 0) { + if (move != 0 && task > 0) { update_instruction_status(); } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/fold_disc_site/FoldDiscSiteDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/fold_disc_site/FoldDiscSiteDeviceDriver.java index 6d65251d3..7300886a5 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/fold_disc_site/FoldDiscSiteDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/fold_disc_site/FoldDiscSiteDeviceDriver.java @@ -19,6 +19,7 @@ import org.nl.acs.history.ErrorUtil; import org.nl.acs.history.service.DeviceErrorLogService; import org.nl.acs.history.service.impl.DeviceErrorLogServiceImpl; import org.nl.acs.instruction.domain.Instruction; +import org.nl.acs.instruction.enums.InstructionStatusEnum; import org.nl.acs.instruction.service.InstructionService; import org.nl.acs.log.service.DeviceExecuteLogService; import org.nl.acs.monitor.DeviceStageMonitor; @@ -130,6 +131,9 @@ public class FoldDiscSiteDeviceDriver extends AbstractOpcDeviceDriver implements String notCreateTaskMessage = ""; String notCreateInstMessage = ""; String feedMessage = ""; + String vehicle_code; + String inst_message; + String task_code = null; List getDeviceCodeList = null; @@ -161,69 +165,9 @@ public class FoldDiscSiteDeviceDriver extends AbstractOpcDeviceDriver implements container_type = this.itemProtocol.getContainer_type(); carrier_direction = this.itemProtocol.getCarrier_direction(); - if (to_container_type != last_to_container_type) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_container_type:" + last_to_container_type + "->" + to_container_type); - } - if (container_type != last_container_type) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号container_type:" + last_container_type + "->" + container_type); - } - if (qty != last_qty) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号qty:" + last_qty + "->" + qty); - } - if (carrier_direction != last_carrier_direction) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号carrier_direction:" + last_carrier_direction + "->" + carrier_direction); - } - if (to_command != last_to_command) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_command:" + last_to_command + "->" + to_command); - } - if (to_target != last_to_target) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_target:" + last_to_target + "->" + to_target); - } - if (to_task != last_to_task) { - logServer.deviceExecuteLog(this.device_code, "", "", "信号to_task:" + last_to_task + "->" + to_task); - } - if (mode != last_mode) { - requireSucess = false; - logServer.deviceItemValue(this.device_code, "mode", String.valueOf(mode)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号mode:" + last_mode + "->" + mode); - } - if (move != last_move) { - logServer.deviceItemValue(this.device_code, "move", String.valueOf(move)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号move:" + last_move + "->" + move); - } - if (action != last_action) { - logServer.deviceItemValue(this.device_code, "action", String.valueOf(action)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号action:" + last_action + "->" + action); - } - if (error != last_error) { - logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号error:" + last_error + "->" + error); - } - if (task != last_task) { - logServer.deviceItemValue(this.device_code, "task", String.valueOf(task)); - logServer.deviceExecuteLog(this.device_code, "", "", "信号task:" + last_task + "->" + task); - } - // 更新指令状态 - if (mode == 3 && task > 0) { - Date date = new Date(); - if (date.getTime() - this.instruction_update_time.getTime() < (long) this.instruction_update_time_out) { - log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_update_time_out); - - } else { - this.instruction_update_time = date; - //更改指令状态 - if (task > 0) { - Instruction inst = checkInst(); - if (inst != null) { - if (StrUtil.equals(inst.getInstruction_status(), "0")) { - inst.setInstruction_status(CommonFinalParam.ONE); - inst.setExecute_device_code(this.device_code); - instructionService.update(inst); - } - } - } - } + if (move != 0 && task > 0) { + update_instruction_status(); } } catch (Exception var17) { @@ -360,6 +304,53 @@ public class FoldDiscSiteDeviceDriver extends AbstractOpcDeviceDriver implements } } + + + /** + * 更新指令状态 + */ + public synchronized void update_instruction_status() throws Exception { + Date date = new Date(); + if (date.getTime() - this.instruction_update_time.getTime() < (long) this.instruction_update_time_out) { + log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_update_time_out); + + } else { + this.instruction_update_time = date; + inst = checkInst(); + if (inst != null) { + inst_message = "当前指令号:" + inst.getInstruction_code() + " " + inst.getStart_point_code() + "->" + inst.getNext_point_code() + " 载具号:" + inst.getVehicle_code(); + vehicle_code = inst.getVehicle_code(); + task_code = inst.getTask_code(); + if (StrUtil.equals(inst.getInstruction_status(), "0") && StrUtil.equals(this.getDeviceCode(), inst.getStart_device_code())) { + inst.setInstruction_status(InstructionStatusEnum.BUSY.getIndex()); + inst.setExecute_device_code(this.device_code); + instructionService.update(inst); + logServer.deviceExecuteLog(device_code, "", "", "纸箱入库输送线任务开始反馈执行中状态,反馈成功,指令号:" + task + ",载具号:" + inst.getVehicle_code()); + } + if (StrUtil.equals(inst.getInstruction_status(), InstructionStatusEnum.BUSY.getIndex()) || StrUtil.equals(inst.getInstruction_status(), InstructionStatusEnum.READY.getIndex())) { + if (StrUtil.equals(this.getDeviceCode(), inst.getNext_device_code())) { + inst.setExecute_device_code(this.device_code); + if (mode == 2) { + finish_instruction(); + } + logServer.deviceExecuteLog(device_code, "", "", "纸箱入库输送线任务开始反馈完成状态,反馈成功,指令号:" + task + ",载具号:" + inst.getVehicle_code()); + } else { + + } + } + } else { +// message = "输送线任务反馈状态,查询不到指令号:" + task +"指令已完成"; + inst_message = null; + } + + } + } + + public synchronized boolean finish_instruction() throws Exception { + instructionService.finish(inst); + return true; + } + @Override public JSONObject feedLmsRealFailedInfo() { JSONObject jo = new JSONObject(); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/scanner_weight_conveyor/ConveyorWithScannerWeightDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/scanner_weight_conveyor/ConveyorWithScannerWeightDeviceDriver.java index c5afabe01..b939ac8ef 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/scanner_weight_conveyor/ConveyorWithScannerWeightDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_conveyor/scanner_weight_conveyor/ConveyorWithScannerWeightDeviceDriver.java @@ -379,7 +379,7 @@ public class ConveyorWithScannerWeightDeviceDriver extends AbstractOpcDeviceDriv String vehiclecode = taskdto.getVehicle_code(); String priority = taskdto.getPriority(); Instruction instdto = new Instruction(); - if (TaskTypeEnum.AGV_Task.equals(taskdto.getTask_type())){ + if (TaskTypeEnum.AGV_Task.getIndex().equals(taskdto.getTask_type())){ String route_plan_code = taskdto.getRoute_plan_code(); List shortPathsList = routeLineService.getShortPathLines(taskdto.getStart_device_code(), taskdto.getNext_device_code(), route_plan_code); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_package_manipulator/BoxPackageManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_package_manipulator/BoxPackageManipulatorDeviceDriver.java index 7511d9a9d..76cee61c0 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_package_manipulator/BoxPackageManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_package_manipulator/BoxPackageManipulatorDeviceDriver.java @@ -354,9 +354,6 @@ public class BoxPackageManipulatorDeviceDriver extends AbstractOpcDeviceDriver i logServer.deviceExecuteLog(this.getDevice_code(), "", "", "创建指令时出现异常:" + e.getMessage()); return false; } - logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" - + instdto.getInstruction_code() + ",指令起点:" + instdto.getStart_device_code() - + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString()); //创建指令后修改任务状态 taskDto.setTask_status("1"); taskserver.update(taskDto); @@ -379,29 +376,31 @@ public class BoxPackageManipulatorDeviceDriver extends AbstractOpcDeviceDriver i map4.put("code", "to_task"); map4.put("value", instdto.getInstruction_code()); list.add(map4); - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getSeq())) { - Map map5 = new HashMap<>(); - map5.put("code", "to_seq"); - map5.put("value", interactionJsonDTO.getSeq()); - list.add(map5); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLastOne())) { - Map map6 = new HashMap<>(); - map6.put("code", "to_last_one"); - map6.put("value", interactionJsonDTO.getLastOne()); - list.add(map6); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getDirection())) { - Map map7 = new HashMap<>(); - map7.put("code", "to_direction"); - map7.put("value", interactionJsonDTO.getDirection()); - list.add(map7); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getMaxNo())) { - Map map8 = new HashMap<>(); - map8.put("code", "to_max_no"); - map8.put("value", interactionJsonDTO.getMaxNo()); - list.add(map8); + if (ObjectUtil.isNotEmpty(interactionJsonDTO)) { + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getSeq())) { + Map map5 = new HashMap<>(); + map5.put("code", "to_seq"); + map5.put("value", interactionJsonDTO.getSeq()); + list.add(map5); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLastOne())) { + Map map6 = new HashMap<>(); + map6.put("code", "to_last_one"); + map6.put("value", interactionJsonDTO.getLastOne()); + list.add(map6); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getDirection())) { + Map map7 = new HashMap<>(); + map7.put("code", "to_direction"); + map7.put("value", interactionJsonDTO.getDirection()); + list.add(map7); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getMaxNo())) { + Map map8 = new HashMap<>(); + map8.put("code", "to_max_no"); + map8.put("value", interactionJsonDTO.getMaxNo()); + list.add(map8); + } } try { diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_storage_manipulator/BoxStorageManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_storage_manipulator/BoxStorageManipulatorDeviceDriver.java index 0074079b9..52c86bc27 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_storage_manipulator/BoxStorageManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/box_storage_manipulator/BoxStorageManipulatorDeviceDriver.java @@ -336,7 +336,7 @@ public class BoxStorageManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" + instdto.getInstruction_code() + ",指令起点:" + instdto.getStart_device_code() - + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString()); + + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO); //创建指令后修改任务状态 taskDto.setTask_status("1"); taskserver.update(taskDto); @@ -359,35 +359,37 @@ public class BoxStorageManipulatorDeviceDriver extends AbstractOpcDeviceDriver i map4.put("code", "to_task"); map4.put("value", instdto.getInstruction_code()); list.add(map4); - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { - Map map5 = new HashMap<>(); - map5.put("code", "to_weight"); - map5.put("value", interactionJsonDTO.getWeight()); - list.add(map5); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { - Map map6 = new HashMap<>(); - map6.put("code", "to_length"); - map6.put("value", interactionJsonDTO.getLength()); - list.add(map6); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { - Map map7 = new HashMap<>(); - map7.put("code", "to_height"); - map7.put("value", interactionJsonDTO.getHeight()); - list.add(map7); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getBarcode())) { - Map map8 = new HashMap<>(); - map8.put("code", "to_barcode"); - map8.put("value", interactionJsonDTO.getBarcode()); - list.add(map8); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLayer())) { - Map map9 = new HashMap<>(); - map9.put("code", "to_layer"); - map9.put("value", interactionJsonDTO.getLayer()); - list.add(map9); + if (ObjectUtil.isNotEmpty(interactionJsonDTO)) { + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { + Map map5 = new HashMap<>(); + map5.put("code", "to_weight"); + map5.put("value", interactionJsonDTO.getWeight()); + list.add(map5); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { + Map map6 = new HashMap<>(); + map6.put("code", "to_length"); + map6.put("value", interactionJsonDTO.getLength()); + list.add(map6); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { + Map map7 = new HashMap<>(); + map7.put("code", "to_height"); + map7.put("value", interactionJsonDTO.getHeight()); + list.add(map7); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getBarcode())) { + Map map8 = new HashMap<>(); + map8.put("code", "to_barcode"); + map8.put("value", interactionJsonDTO.getBarcode()); + list.add(map8); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLayer())) { + Map map9 = new HashMap<>(); + map9.put("code", "to_layer"); + map9.put("value", interactionJsonDTO.getLayer()); + list.add(map9); + } } try { diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/return_good_manipulator/ReturnGoodManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/return_good_manipulator/ReturnGoodManipulatorDeviceDriver.java index 98604f505..7e0cb7383 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/return_good_manipulator/ReturnGoodManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/return_good_manipulator/ReturnGoodManipulatorDeviceDriver.java @@ -333,7 +333,7 @@ public class ReturnGoodManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" + instdto.getInstruction_code() + ",指令起点:" + instdto.getStart_device_code() - + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString()); + + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO); //创建指令后修改任务状态 taskDto.setTask_status("1"); taskserver.update(taskDto); @@ -356,35 +356,37 @@ public class ReturnGoodManipulatorDeviceDriver extends AbstractOpcDeviceDriver i map4.put("code", "to_task"); map4.put("value", instdto.getInstruction_code()); list.add(map4); - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { - Map map5 = new HashMap<>(); - map5.put("code", "to_weight"); - map5.put("value", interactionJsonDTO.getWeight()); - list.add(map5); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { - Map map6 = new HashMap<>(); - map6.put("code", "to_length"); - map6.put("value", interactionJsonDTO.getLength()); - list.add(map6); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { - Map map7 = new HashMap<>(); - map7.put("code", "to_height"); - map7.put("value", interactionJsonDTO.getHeight()); - list.add(map7); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getBarcode())) { - Map map8 = new HashMap<>(); - map8.put("code", "to_barcode"); - map8.put("value", interactionJsonDTO.getBarcode()); - list.add(map8); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getContainerType())) { - Map map9 = new HashMap<>(); - map9.put("code", "to_container_type"); - map9.put("value", interactionJsonDTO.getContainerType()); - list.add(map9); + if (ObjectUtil.isNotEmpty(interactionJsonDTO)) { + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { + Map map5 = new HashMap<>(); + map5.put("code", "to_weight"); + map5.put("value", interactionJsonDTO.getWeight()); + list.add(map5); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { + Map map6 = new HashMap<>(); + map6.put("code", "to_length"); + map6.put("value", interactionJsonDTO.getLength()); + list.add(map6); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { + Map map7 = new HashMap<>(); + map7.put("code", "to_height"); + map7.put("value", interactionJsonDTO.getHeight()); + list.add(map7); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getBarcode())) { + Map map8 = new HashMap<>(); + map8.put("code", "to_barcode"); + map8.put("value", interactionJsonDTO.getBarcode()); + list.add(map8); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getContainerType())) { + Map map9 = new HashMap<>(); + map9.put("code", "to_container_type"); + map9.put("value", interactionJsonDTO.getContainerType()); + list.add(map9); + } } try { diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java index a5eeeffd9..ea180aaea 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/one_manipulator/trapped_manipulator/TrappedManipulatorManipulatorDeviceDriver.java @@ -332,7 +332,7 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice } logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" + instdto.getInstruction_code() + ",指令起点:" + instdto.getStart_device_code() - + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO.toString()); + + ",指令终点:" + instdto.getNext_device_code() + ",交互参数:" + interactionJsonDTO); //创建指令后修改任务状态 taskDto.setTask_status("1"); taskserver.update(taskDto); @@ -355,35 +355,37 @@ public class TrappedManipulatorManipulatorDeviceDriver extends AbstractOpcDevice map4.put("code", "to_task"); map4.put("value", instdto.getInstruction_code()); list.add(map4); - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { - Map map5 = new HashMap<>(); - map5.put("code", "to_weight"); - map5.put("value", interactionJsonDTO.getWeight()); - list.add(map5); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { - Map map6 = new HashMap<>(); - map6.put("code", "to_length"); - map6.put("value", interactionJsonDTO.getLength()); - list.add(map6); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { - Map map7 = new HashMap<>(); - map7.put("code", "to_height"); - map7.put("value", interactionJsonDTO.getHeight()); - list.add(map7); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getTemplate())) { - Map map8 = new HashMap<>(); - map8.put("code", "to_template"); - map8.put("value", interactionJsonDTO.getTemplate()); - list.add(map8); - } - if (ObjectUtil.isNotEmpty(interactionJsonDTO.getTemplate())) { - Map map9 = new HashMap<>(); - map9.put("code", "to_last_one"); - map9.put("value", interactionJsonDTO.getIsLastOne()); - list.add(map9); + if (ObjectUtil.isNotEmpty(interactionJsonDTO)) { + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getWeight())) { + Map map5 = new HashMap<>(); + map5.put("code", "to_weight"); + map5.put("value", interactionJsonDTO.getWeight()); + list.add(map5); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getLength())) { + Map map6 = new HashMap<>(); + map6.put("code", "to_length"); + map6.put("value", interactionJsonDTO.getLength()); + list.add(map6); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getHeight())) { + Map map7 = new HashMap<>(); + map7.put("code", "to_height"); + map7.put("value", interactionJsonDTO.getHeight()); + list.add(map7); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getTemplate())) { + Map map8 = new HashMap<>(); + map8.put("code", "to_template"); + map8.put("value", interactionJsonDTO.getTemplate()); + list.add(map8); + } + if (ObjectUtil.isNotEmpty(interactionJsonDTO.getTemplate())) { + Map map9 = new HashMap<>(); + map9.put("code", "to_last_one"); + map9.put("value", interactionJsonDTO.getIsLastOne()); + list.add(map9); + } } try { this.writing(list); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/ItemProtocol.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/ItemProtocol.java index 1fbee0e9a..da8557f75 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/ItemProtocol.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/ItemProtocol.java @@ -456,7 +456,7 @@ public class ItemProtocol { list.add(new ItemDto(item_to_type, "物料类型", "DB100.B3")); list.add(new ItemDto(item_to_task, "任务号", "DB100.D4")); list.add(new ItemDto(item_to_z, "作业排", "DB100.B8")); - list.add(new ItemDto(item_to_x, "作业列", "DN100.B9")); + list.add(new ItemDto(item_to_x, "作业列", "DB100.B9")); list.add(new ItemDto(item_to_y, "作业层", "DB100.B10")); list.add(new ItemDto(item_to_trayCode, "托盘号", "DB100.B11.20")); return list; diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java index 68dc6e048..2df4b6367 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/stacker/standard_stacker/StandardStackerDeviceDriver.java @@ -347,7 +347,8 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme } } else { - Map map = new LinkedHashMap<>(); + + List list = new ArrayList(); switch (command) { case 0: boolean b = applyTask(); @@ -365,28 +366,52 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme Device nextDevice = deviceAppService.findDeviceByCode(next_device_code); if (StrUtil.equals(nextDevice.getDevice_type(), DeviceType.conveyor.name())) { if (ObjectUtil.isNotEmpty(nextDevice.getExtraValue().get("z"))) { - map.put("to_x", nextDevice.getExtraValue().get("z")); + Map map = new HashMap(); + map.put("code", "to_x"); + map.put("value", nextDevice.getExtraValue().get("z")); + list.add(map); } if (ObjectUtil.isNotEmpty(nextDevice.getExtraValue().get("x"))) { - map.put("to_z", nextDevice.getExtraValue().get("x")); + Map map = new HashMap<>(); + map.put("code", "to_z"); + map.put("value", nextDevice.getExtraValue().get("x")); + list.add(map); } if (ObjectUtil.isNotEmpty(nextDevice.getExtraValue().get("y"))) { - map.put("to_y", nextDevice.getExtraValue().get("y")); + Map map = new HashMap<>(); + map.put("code", "to_y"); + map.put("value", nextDevice.getExtraValue().get("y")); + list.add(map); } } if (StrUtil.equals(nextDevice.getDevice_type(), DeviceType.storage.name())) { String pattern = "\\d+"; Pattern compile = Pattern.compile(pattern); - map.put("to_y", inst.getTo_z()); + Map map = new HashMap<>(); + map.put("code", "to_y"); + map.put("value", inst.getTo_z()); + list.add(map); if (inst.getTo_x().length() > 1 && !compile.matcher(inst.getTo_x()).matches()) { String substring = inst.getTo_x().substring(1); - map.put("to_z", substring); + Map map1 = new HashMap<>(); + map1.put("code", "to_z"); + map1.put("value", substring); + list.add(map1); } else { - map.put("to_z", inst.getTo_x()); + Map map2 = new HashMap<>(); + map2.put("code", "to_z"); + map2.put("value", inst.getTo_x()); + list.add(map2); } - map.put("to_x", inst.getTo_y()); + Map map3 = new HashMap<>(); + map3.put("code", "to_x"); + map3.put("value", inst.getTo_y()); + list.add(map3); } - map.put("to_command", 2); + Map map4 = new HashMap<>(); + map4.put("code", "to_command"); + map4.put("value", 2); + list.add(map4); requireSucess = true; break; case 3: @@ -408,13 +433,19 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme return; } } - map.put("to_command", 3); + Map map = new HashMap<>(); + map.put("code", "to_command"); + map.put("value", 4); + list.add(map); } requireSucess = true; break; case 5: message = "放货完成"; - map.put("to_command", 5); + Map map = new HashMap<>(); + map.put("code", "to_command"); + map.put("value", 5); + list.add(map); Instruction inst = checkInst(); try { finish_instruction(inst); @@ -425,17 +456,26 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme break; case 6: message = "取货准备(会库位台)"; - map.put("to_command", 6); + Map map1 = new HashMap<>(); + map1.put("code", "to_command"); + map1.put("value", 6); + list.add(map1); requireSucess = true; break; case 7: message = "召回"; - map.put("to_command", 7); + Map map2 = new HashMap<>(); + map2.put("code", "to_command"); + map2.put("value", 7); + list.add(map2); requireSucess = true; break; case 8: message = "急停"; - map.put("to_command", 8); + Map map3 = new HashMap<>(); + map3.put("code", "to_command"); + map3.put("value", 8); + list.add(map3); requireSucess = true; break; default: @@ -443,8 +483,8 @@ public class StandardStackerDeviceDriver extends AbstractOpcDeviceDriver impleme requireSucess = true; break; } - if (ObjectUtil.isNotNull(map)) { - this.writing(map); + if (ObjectUtil.isNotNull(list)) { + this.writing(list); } } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java index 2c8209e33..a9ee25479 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/AutoCreateInst.java @@ -21,6 +21,7 @@ import org.nl.acs.opc.DeviceAppServiceImpl; import org.nl.acs.route.service.RouteLineService; import org.nl.acs.route.service.dto.RouteLineDto; import org.nl.acs.task.enums.TaskStatusEnum; +import org.nl.acs.task.enums.TaskTypeEnum; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; import org.nl.config.SpringContextHolder; @@ -49,7 +50,7 @@ public class AutoCreateInst { List list = taskserver.queryAllByStatus("0"); for (int i = 0; i < list.size(); i++) { TaskDto acsTask = list.get(i); - if (StrUtil.equals(acsTask.getTask_type(), "7") && !StrUtil.startWith(acsTask.getTask_code(), "-")) { + if (StrUtil.equals(acsTask.getTask_type(), TaskTypeEnum.AGV_Task.getIndex()) && !StrUtil.startWith(acsTask.getTask_code(), "-")) { continue; } String taskid = acsTask.getTask_id(); From 8966921312d40568ada299ee9130dcf710f6d7f8 Mon Sep 17 00:00:00 2001 From: yanps Date: Fri, 26 Jan 2024 17:49:35 +0800 Subject: [PATCH 4/7] =?UTF-8?q?opt:=20=E8=BE=93=E9=80=81=E7=BA=BF=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=92=8C=E7=95=8C=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OvenGantryManipulatorDeviceDriver.java | 4 +- .../SiemensConveyorDeviceDriver.java | 26 ++-- acs/nladmin-ui/src/assets/images/logo.png | Bin 8852 -> 5102 bytes acs/nladmin-ui/src/assets/images/logo1.png | Bin 0 -> 8852 bytes .../src/layout/components/Sidebar/Logo.vue | 4 +- .../src/views/acs/device/opc/index.vue | 8 +- .../acs/history/deviceErrorInfo/index.vue | 10 +- .../views/acs/history/instRecord/index.vue | 50 +++--- .../views/acs/history/taskRecord/index.vue | 52 +++---- .../acs/history/taskTreeRecord/index.vue | 48 +++--- .../src/views/acs/history/udwData/index.vue | 2 +- .../src/views/acs/instruction/index.vue | 147 ++++++++++++++---- acs/nladmin-ui/src/views/acs/task/index.vue | 95 +++++++---- acs/nladmin-ui/src/views/login.vue | 4 +- 14 files changed, 297 insertions(+), 153 deletions(-) create mode 100644 acs/nladmin-ui/src/assets/images/logo1.png diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java index 6fbc82193..f6c3817c7 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java @@ -39,6 +39,7 @@ import org.nl.acs.task.service.dto.TaskDto; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.system.service.ParamService; import org.nl.modules.system.service.impl.ParamServiceImpl; +import org.nl.modules.system.util.CodeUtil; import org.nl.modules.wql.util.SpringContextHolder; import org.openscada.opc.lib.da.Server; import org.springframework.beans.factory.annotation.Autowired; @@ -579,6 +580,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i instdto.setPriority(priority); instdto.setInstruction_status("0"); instdto.setExecute_device_code(start_point_code); + instdto.setInstruction_code(CodeUtil.getNewCode("INSTRUCT_NO")); //判断关联的同一列烘箱设备是否都关门 都关门返回false,有一个不关门就返回true boolean isCloseDoor = this.judgeCloseDoor(instdto.getStart_device_code(), instdto.getNext_device_code()); @@ -614,7 +616,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i String start_addr = startDevice.getExtraValue().get("address").toString(); String next_addr = nextDevice.getExtraValue().get("address").toString(); logServer.deviceExecuteLog(device_code, "", "", "当前设备:" + device_code + ",下发指令:" - + instdto.getInstruction_code() + ",指令起点:" + instdto.getStart_device_code() + + instdto.getInstruction_code() +";指令号: "+ CodeUtil.getNewCode("INSTRUCT_NO") + ",指令起点:" + instdto.getStart_device_code() + ",指令终点:" + instdto.getNext_device_code()); this.writing("to_onset", start_addr); this.writing("to_target", next_addr); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java index 1d4486e82..9ac8f9e9c 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java @@ -469,16 +469,24 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme applyManipulatorActionRequest.setTask_code1(inst.getTask_code()); logServer.deviceExecuteLog(this.device_code, "", "", "task变化请求LMS,参数:" + applyManipulatorActionRequest); try { - for (int i = 0; i < 5; i++) { - ApplyManipulatorActionResponse response = acsToWmsService.actionFinishRequest(applyManipulatorActionRequest); - if (response == null || response.getstatus() == 200) { - logServer.deviceExecuteLog(this.device_code, "", "", "task变化请求LMS,接口返回:" + response.getMessage()); - break; - } else { - message = "task变化请求LMS失败: " + response.getMessage(); - Thread.sleep(15000); + final ThreadPoolExecutor EXECUTOR = ThreadPoolExecutorUtil.getPoll(); + EXECUTOR.submit(() -> { + for (int i = 0; i < 5; i++) { + ApplyManipulatorActionResponse response = acsToWmsService.actionFinishRequest(applyManipulatorActionRequest); + if (response == null || response.getstatus() == 200) { + logServer.deviceExecuteLog(this.device_code, "", "", "task变化请求LMS,接口返回:" + response.getMessage()); + break; + } else { + logServer.deviceExecuteLog(this.device_code, "", "", "任务变化请求LMS失败:" + response.getMessage()); + message = "task变化请求LMS失败: " + response.getMessage(); + try { + Thread.sleep(15000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } } - } + }); } catch (Exception e) { e.printStackTrace(); logServer.deviceExecuteLog(this.device_code, "", "", "task变化请求LMS失败" + e.getMessage()); diff --git a/acs/nladmin-ui/src/assets/images/logo.png b/acs/nladmin-ui/src/assets/images/logo.png index f7577109651b89def3d9359ab324b445c714fe77..9675cc8b9ad17478078605e6453409db8dde5d3c 100644 GIT binary patch literal 5102 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 literal 8852 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 ZLF@BRes2KN|GQZNP*u`YtbtmE{|_Y7!}b6G diff --git a/acs/nladmin-ui/src/assets/images/logo1.png b/acs/nladmin-ui/src/assets/images/logo1.png new file mode 100644 index 0000000000000000000000000000000000000000..f7577109651b89def3d9359ab324b445c714fe77 GIT binary patch literal 8852 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 ZLF@BRes2KN|GQZNP*u`YtbtmE{|_Y7!}b6G literal 0 HcmV?d00001 diff --git a/acs/nladmin-ui/src/layout/components/Sidebar/Logo.vue b/acs/nladmin-ui/src/layout/components/Sidebar/Logo.vue index bc2a53d0b..f05e56633 100644 --- a/acs/nladmin-ui/src/layout/components/Sidebar/Logo.vue +++ b/acs/nladmin-ui/src/layout/components/Sidebar/Logo.vue @@ -70,8 +70,8 @@ export default { width: 100%; & .sidebar-logo { - width: 32px; - height: 32px; + width: 55px; + height: 15px; vertical-align: middle; margin-right: 6px; } diff --git a/acs/nladmin-ui/src/views/acs/device/opc/index.vue b/acs/nladmin-ui/src/views/acs/device/opc/index.vue index 1afca03d7..8fabb2326 100644 --- a/acs/nladmin-ui/src/views/acs/device/opc/index.vue +++ b/acs/nladmin-ui/src/views/acs/device/opc/index.vue @@ -109,11 +109,11 @@ - + diff --git a/acs/nladmin-ui/src/views/acs/history/deviceErrorInfo/index.vue b/acs/nladmin-ui/src/views/acs/history/deviceErrorInfo/index.vue index 7a3611a3d..4c34c0590 100644 --- a/acs/nladmin-ui/src/views/acs/history/deviceErrorInfo/index.vue +++ b/acs/nladmin-ui/src/views/acs/history/deviceErrorInfo/index.vue @@ -43,7 +43,7 @@ @@ -63,10 +63,10 @@ @selection-change="crud.selectionChangeHandler" > - - - - + + + + @@ -95,45 +95,45 @@ style="width: 100%;" @selection-change="crud.selectionChangeHandler" > - - - - - + + + + + - + - - - - - - - - - + + + + + + + + + - + - - - - - - - + + + + + + + @@ -202,7 +202,7 @@ export default { edit: false, del: false, reset: false, - download: true + download: false } }) }, diff --git a/acs/nladmin-ui/src/views/acs/history/taskRecord/index.vue b/acs/nladmin-ui/src/views/acs/history/taskRecord/index.vue index 702d4d290..28bbe2b32 100644 --- a/acs/nladmin-ui/src/views/acs/history/taskRecord/index.vue +++ b/acs/nladmin-ui/src/views/acs/history/taskRecord/index.vue @@ -229,47 +229,47 @@ style="width: 100%;" @selection-change="crud.selectionChangeHandler" > - - - - + + + + - + - - - - - - - - - - + + + + + + + + + + - + - - - - - - - - - + + + + + + + + + @@ -325,7 +325,7 @@ export default { edit: false, del: false, reset: false, - download: true + download: false } }) }, diff --git a/acs/nladmin-ui/src/views/acs/history/taskTreeRecord/index.vue b/acs/nladmin-ui/src/views/acs/history/taskTreeRecord/index.vue index 5ca9ad20f..b714d425d 100644 --- a/acs/nladmin-ui/src/views/acs/history/taskTreeRecord/index.vue +++ b/acs/nladmin-ui/src/views/acs/history/taskTreeRecord/index.vue @@ -86,51 +86,51 @@ @select-all="crud.selectAllChange" @selection-change="crud.selectionChangeHandler" > - - - + + + - + - - - - - - - - - - + + + + + + + + + + - + - + - - - - - - - - + + + + + + + + diff --git a/acs/nladmin-ui/src/views/acs/history/udwData/index.vue b/acs/nladmin-ui/src/views/acs/history/udwData/index.vue index 17f53a1fd..346fd74a3 100644 --- a/acs/nladmin-ui/src/views/acs/history/udwData/index.vue +++ b/acs/nladmin-ui/src/views/acs/history/udwData/index.vue @@ -31,7 +31,7 @@ diff --git a/acs/nladmin-ui/src/views/acs/instruction/index.vue b/acs/nladmin-ui/src/views/acs/instruction/index.vue index 406e28684..bc5b7faa2 100644 --- a/acs/nladmin-ui/src/views/acs/instruction/index.vue +++ b/acs/nladmin-ui/src/views/acs/instruction/index.vue @@ -32,7 +32,7 @@ style="width: 190px" @change="crud.toQuery" > - + @@ -119,48 +119,52 @@ @selection-change="crud.selectionChangeHandler" > - - - + + + - - - + + + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + --> + + @@ -232,7 +324,7 @@ const defaultForm = { update_time: null } export default { - dicts: ['task_status', 'task_type'], + dicts: ['task_status', 'task_type', 'agv_system_type'], name: 'Instruction', components: { crudOperation, pagination }, mixins: [presenter(), header(), form(defaultForm), crud()], @@ -370,4 +462,5 @@ export default { .el-icon-arrow-down { font-size: 12px; } + diff --git a/acs/nladmin-ui/src/views/acs/task/index.vue b/acs/nladmin-ui/src/views/acs/task/index.vue index 619b3ce01..6805581b6 100644 --- a/acs/nladmin-ui/src/views/acs/task/index.vue +++ b/acs/nladmin-ui/src/views/acs/task/index.vue @@ -408,47 +408,46 @@ style="width: 100%;" @selection-change="crud.selectionChangeHandler" > - - - - + + + + - - + + - - - - - - - - + + + + + + + - + - - - - - - - - - + + + + + + + + + + @@ -497,7 +529,7 @@ export default { edit: true, del: true, reset: false, - download: true + download: false }, crudMethod: { ...crudTask } }) @@ -707,14 +739,16 @@ export default { // }) // }, - beforeHandleCommand(index, row, command) { + /* beforeHandleCommand(index, row, command) { + console.log(command.command) return { 'index': index, 'row': row, 'command': command } - }, + }, */ handleCommand(command) { + console.log(command.command) switch (command.command) { case 'a':// 完成 this.finish(command.index, command.row) @@ -836,4 +870,11 @@ export default { .el-icon-arrow-down { font-size: 12px; } + +.custom-cell { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + diff --git a/acs/nladmin-ui/src/views/login.vue b/acs/nladmin-ui/src/views/login.vue index caa6d0699..b246c984e 100644 --- a/acs/nladmin-ui/src/views/login.vue +++ b/acs/nladmin-ui/src/views/login.vue @@ -56,8 +56,8 @@ export default { codeUrl: '', cookiePass: '', loginForm: { - username: 'admin', - password: '123456', + username: '', + password: '', rememberMe: false, code: '', uuid: '' From 332cf10c59bf3503987054ddf2f0452255581338 Mon Sep 17 00:00:00 2001 From: yanps Date: Fri, 26 Jan 2024 17:50:31 +0800 Subject: [PATCH 5/7] =?UTF-8?q?opt:=20opc=E7=BA=BF=E7=A8=8B=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=B7=BB=E5=8A=A0agv=E8=AE=BE=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/acs/common/base/CommonFinalParam.java | 2 +- .../agv/xg_agv_car/XgAgvCarDeviceDriver.java | 68 ++++++++++++++++++- .../slit_two_manipulator/ItemProtocol.java | 1 + .../rest/DeviceStageMonitorController.java | 1 - .../nl/acs/opc/DeviceOpcProtocolRunable.java | 25 +++---- .../acs/device/driver/agv/xg_agv_car.vue | 8 +-- acs2/nladmin-ui/src/views/acs/task/index.vue | 2 +- .../src/views/system/dict/index.vue | 6 +- 8 files changed, 89 insertions(+), 24 deletions(-) diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/common/base/CommonFinalParam.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/common/base/CommonFinalParam.java index 31c6d132a..f5ba681d1 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/common/base/CommonFinalParam.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/common/base/CommonFinalParam.java @@ -10,7 +10,7 @@ import org.springframework.stereotype.Component; @Data public class CommonFinalParam { - private final String DELETE = "0"; + public static final String DELETE = "0"; /** * 分隔符 */ diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/xg_agv_car/XgAgvCarDeviceDriver.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/xg_agv_car/XgAgvCarDeviceDriver.java index 9a72fcf30..436891663 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/xg_agv_car/XgAgvCarDeviceDriver.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/agv/xg_agv_car/XgAgvCarDeviceDriver.java @@ -2,6 +2,7 @@ package org.nl.acs.device_driver.agv.xg_agv_car; import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.Data; import lombok.RequiredArgsConstructor; @@ -123,6 +124,31 @@ public class XgAgvCarDeviceDriver extends AbstractDeviceDriver implements Device */ private int manua_confirm = 0; + /** + * 是否推送场景的状态 0=可推送 1=正在更新场景 2=正在执行运单 + */ + private String upload_scene_status; + /** + * 机器人当前运单 + */ + private String current_order; + /** + * 机器人连接状态 0表示断连 1表示连接上 + */ + private String connection_status; + /** + * 机器人可接单状态 true=可接单 false=不可接单 + */ + private String dispatchable; + /** + * core出错标识 + */ + private boolean is_error; + /** + * 是否正在执行用户下发的运单 + */ + private boolean procBusiness; + String device_code = null; String container; String container_type_desc; @@ -152,7 +178,28 @@ public class XgAgvCarDeviceDriver extends AbstractDeviceDriver implements Device @Override public JSONObject getDeviceStatusName() { - return null; + getAgvStatus(); + JSONObject jo = new JSONObject(); + String isError; + if(is_error){ + isError = "报错"; + }else{ + isError = "正常"; + } + if(CommonFinalParam.ONE.equals(upload_scene_status)){ + upload_scene_status = "正在更新场景"; + }else if(CommonFinalParam.TWO.equals(upload_scene_status)){ + upload_scene_status = "正在执行运单"; + }else if(CommonFinalParam.DELETE.equals(upload_scene_status)){ + upload_scene_status = "可推送"; + } + jo.put("is_error",isError); + jo.put("upload_scene_status",upload_scene_status); + jo.put("procBusiness",procBusiness); + jo.put("current_order",current_order); + jo.put("connection_status",connection_status); + jo.put("dispatchable",dispatchable); + return jo; } @@ -162,6 +209,7 @@ public class XgAgvCarDeviceDriver extends AbstractDeviceDriver implements Device } + /** * 获取机器人信息 */ @@ -169,7 +217,23 @@ public class XgAgvCarDeviceDriver extends AbstractDeviceDriver implements Device HttpResponse robotInfo = xianGongAgvService.getRobotInfo(this.getDevice().getDevice_name()); if(robotInfo.getStatus() == 200){ JSONObject jsonObject = JSONObject.parseObject(robotInfo.body()); - + String report = jsonObject.getString("report"); + //core出错标识 + is_error = jsonObject.getBooleanValue("is_error"); + //是否推送场景的状态 0=可推送 1=正在更新场景 2=正在执行运单 + upload_scene_status = jsonObject.getString("upload_scene_status"); + JSONArray objects = JSONObject.parseArray(report); + for (int i = 0; i < objects.size(); i++) { + JSONObject json = (JSONObject)objects.get(i); + //是否正在执行用户下发的运单 + procBusiness = json.getBooleanValue("procBusiness"); + //机器人当前运单 + current_order = json.getString("current_order"); + //机器人连接状态 0表示断连 1表示连接上 + connection_status = json.getString("connection_status"); + //机器人可接单状态 true=可接单 false=不可接单 + dispatchable = json.getString("dispatchable"); + } }else{ log.info("请求{}机器人状态失败", this.getDevice().getDevice_name()); } diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/ItemProtocol.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/ItemProtocol.java index c2bed26ee..795ad82ee 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/ItemProtocol.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/two_conveyor/slit_two_manipulator/ItemProtocol.java @@ -161,6 +161,7 @@ public class ItemProtocol { list.add(new ItemDto(item_move2, "后工位光电信号", "DB15.B3")); list.add(new ItemDto(item_action, "动作信号", "DB15.B4")); list.add(new ItemDto(item_walk_y, "行走列", "DB15.B5")); + list.add(new ItemDto(item_task, "任务号", "DB15.D3")); list.add(new ItemDto(item_error, "报警信号", "DB15.B6")); list.add(new ItemDto(item_x_position, "x坐标", "DB15.REAL10")); list.add(new ItemDto(item_y_position, "y坐标", "DB15.REAL14")); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/monitor/rest/DeviceStageMonitorController.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/monitor/rest/DeviceStageMonitorController.java index a783bfe1b..3b9196ffb 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/monitor/rest/DeviceStageMonitorController.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/monitor/rest/DeviceStageMonitorController.java @@ -29,7 +29,6 @@ public class DeviceStageMonitorController { private final DeviceStageMonitorService deviceStageMonitorService; @Log("获取舞台设备信息") - @PostMapping("/getDeviceByCodes") public ResponseEntity getDeviceByCodes(@RequestBody String json) throws Exception { JSONArray jsonArray = JSONArray.parseArray(json); diff --git a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java index 8e8f2f0ba..0824063a7 100644 --- a/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java +++ b/acs2/nladmin-system/nlsso-server/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java @@ -202,7 +202,7 @@ public class DeviceOpcProtocolRunable implements Runnable, DataCallback, ServerC Object his = accessor_value.getValue(itemId); if (!ObjectUtl.isEquals(itemState.getQuality(), QualityTypeValue.OPC_QUALITY_GOOD) && his != null) { log.warn("opc 值不健康 item: {}, 状态: {}", itemId, itemState.getQuality()); - valueAllNotNull = true; + valueAllNotNull = false; } if (!UnifiedDataAppService.isEquals(value, his)) { @@ -231,29 +231,30 @@ public class DeviceOpcProtocolRunable implements Runnable, DataCallback, ServerC random *= 1000; if (this.all_null < 3) { if (log.isWarnEnabled()) { - log.warn("{} 所有内容都为空, all_null:{} ,暂定{}s", tag, all_null, 5000 + random); + log.warn("{} 所有内容都为空, all_null:{} ,暂定{}s", tag, all_null,3); } - ThreadUtl.sleep((long) (5000 + random)); + + ThreadUtl.sleep( 3000); + break start; } else if (this.all_null < 6) { if (log.isWarnEnabled()) { log.warn(tag + "重新创建server"); - log.warn("{} 所有内容都为空, all_null:{} ,暂定{}s", tag, all_null, 30000 + random); + log.warn("{} 所有内容都为空, all_null:{} ,暂定{}s", tag, all_null,3); } -// ThreadUtl.sleep((long) (30000 + random)); - ThreadUtl.sleep((long) ((new Random()).nextInt(3) + 1) * 1000); + ThreadUtl.sleep(3000); break start; } else if (this.all_null < 12) { if (log.isWarnEnabled()) { - log.warn("{} 所有内容都为空, all_null:{} ,暂定{}ms", tag, all_null, '\uea60' + random); + log.warn(tag + "重新创建server"); + log.warn("{} 所有内容都为空, all_null:{} ,暂定{}s", tag, all_null,3); } - - ThreadUtl.sleep((long) ('\uea60' + random)); + ThreadUtl.sleep(3000); + break start; } else { if (log.isWarnEnabled()) { - log.warn("{} 所有内容都为空, all_null:{} ,暂定{}ms", tag, all_null, 120000 + random); + log.warn("{} 所有内容都为空, all_null:{} ,暂定{}ms", tag, all_null, 5000); } - - ThreadUtl.sleep((long) (120000 + random)); + ThreadUtl.sleep((long) (5000)); } ++this.all_null; diff --git a/acs2/nladmin-ui/src/views/acs/device/driver/agv/xg_agv_car.vue b/acs2/nladmin-ui/src/views/acs/device/driver/agv/xg_agv_car.vue index 26832e498..e076de3cb 100644 --- a/acs2/nladmin-ui/src/views/acs/device/driver/agv/xg_agv_car.vue +++ b/acs2/nladmin-ui/src/views/acs/device/driver/agv/xg_agv_car.vue @@ -110,7 +110,7 @@ - + - +
diff --git a/acs2/nladmin-ui/src/views/acs/task/index.vue b/acs2/nladmin-ui/src/views/acs/task/index.vue index 5b99cd25c..bef15b6f9 100644 --- a/acs2/nladmin-ui/src/views/acs/task/index.vue +++ b/acs2/nladmin-ui/src/views/acs/task/index.vue @@ -483,7 +483,7 @@ -