From 3722f70737d62b397ff5a00d1cd1a3502bfa85de Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Wed, 8 Mar 2023 11:06:36 +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 --- .../agv/server/impl/NDCAgvServiceImpl.java | 10 ++- .../java/org/nl/acs/device/wql/task_inst.xls | Bin 308736 -> 195072 bytes .../agv/ndctwo/AgvNdcTwoDeviceDriver.java | 57 +++++++++++------- .../OvenGantryManipulatorDeviceDriver.java | 6 +- .../SiemensConveyorDeviceDriver.java | 6 +- .../SiemensConveyorCkkDeviceDriver.java | 6 +- .../SiemensConveyorLabelingDeviceDriver.java | 6 +- .../SlitTwoManipulatorDeviceDriver.java | 6 +- .../StandardAutodoorDeviceDriver.java | 36 ++++++++++- .../wms/service/impl/WmsToAcsServiceImpl.java | 8 ++- .../org/nl/acs/task/service/dto/TaskDto.java | 6 ++ .../task/service/impl/TaskServiceImpl.java | 3 + .../main/resources/config/application-dev.yml | 4 +- .../src/main/resources/log/AcsToWms.xml | 2 +- .../src/main/resources/log/WmsToAcs.xml | 2 +- .../src/views/system/monitor/device/index.vue | 9 +++ 16 files changed, 121 insertions(+), 46 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java index ea818705c..54c66a6d4 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java @@ -72,7 +72,15 @@ public class NDCAgvServiceImpl implements NDCAgvService { }; log.info("下发删除AGV指令--{}", Bytes2HexString(b)); -// NDCSocketConnectionAutoRun.write(b); + + if (StrUtil.equals(inst.getAgv_system_type(),"1")){ + OneNDCSocketConnectionAutoRun.write(b); + } else if (StrUtil.equals(inst.getAgv_system_type(),"2")){ + TwoNDCSocketConnectionAutoRun.write(b); + } else if (StrUtil.equals(inst.getAgv_system_type(),"3")){ + TwoNDC2SocketConnectionAutoRun.write(b); + } + System.out.println("下发删除agv指令数据:" + Bytes2HexString(b)); } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device/wql/task_inst.xls b/acs/nladmin-system/src/main/java/org/nl/acs/device/wql/task_inst.xls index 665ebb77d2f6d83b4b567710488c0372ec3c6f0d..9a913ea95580988ff4bcd772d970fd1fc932dec1 100644 GIT binary patch delta 44376 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 G`~LtgzJ3h= literal 308736 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�e5-8M@ro9wt4nZxjWu5-wksWZrI@gM^(Dxb3Nby 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 N(vIcD>yz^Q{{fu4tn>f? diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index 3e4e3c007..83dcb5a37 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -88,12 +88,14 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic inst = instructionService.findByCodeFromCache(String.valueOf(ikey)); if(ObjectUtil.isEmpty(inst)){ log.info("该指令号未找到对应指令:"+ikey); + message = "该指令号未找到对应指令:"+ikey; logServer.deviceExecuteLog(this.device_code, "", "", "该指令号未找到对应指令:"+ikey); return; } task = taskService.findByTaskCode(inst.getTask_code()); if(ObjectUtil.isEmpty(task)){ log.info("该指令号未找到对应任务:"+ikey); + message = "该指令号未找到对应任务:"+ikey; logServer.deviceExecuteLog(this.device_code, "", "", "该指令号未找到对应任务:"+ikey); return; } @@ -187,6 +189,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { log.info("等待LMS系统进行确认允许取货,设备号{},指令号{}", device_code,ikey); + message = "等待LMS系统进行确认允许取货,设备号:"+device_code +",指令号:"+ikey; logServer.deviceExecuteLog(this.device_code, "", "", "等待LMS系统进行确认允许取货,设备号"+device.getDevice_code()+",指令号"+ikey); } } else { @@ -205,9 +208,9 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if(standardInspectSiteDeviceDriver.getMove() == 1 && standardInspectSiteDeviceDriver.getAction() == 1){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { + message = "设备号:"+device_code + "光电信号:" + standardInspectSiteDeviceDriver.getMove() + ",动作信号:"+ standardInspectSiteDeviceDriver.getAction() + ",指令号:"+ikey; log.info("设备{}当前光电信号{},动作信号{},不满足取货条件,指令号{}", device_code,standardInspectSiteDeviceDriver.getMove(),standardInspectSiteDeviceDriver.getAction(),ikey); } - } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -270,6 +273,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if(standardInspectSiteDeviceDriver.getMove() == 0 ){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { + message = "设备号:"+device_code + "光电信号:" + standardInspectSiteDeviceDriver.getMove() + ",动作信号:"+ standardInspectSiteDeviceDriver.getAction() + ",指令号:"+ikey; log.info("设备{}当前光电信号{},动作信号{},不满足取货条件", device_code,standardInspectSiteDeviceDriver.getMove()); } } else { @@ -318,6 +322,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { log.info("等待LMS系统进行确认允许取货,设备号{},指令号{}", device_code,ikey); + message = "等待LMS系统进行确认允许取货,设备号:"+device_code +",指令号:"+ikey; logServer.deviceExecuteLog(this.device_code, "", "", "等待LMS系统进行确认允许取货,设备号"+device.getDevice_code()); } @@ -398,7 +403,9 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if(ObjectUtil.isNotEmpty(task)){ logServer.deviceExecuteLog(this.device_code, "", "", "上报满卷重量,weight:" + weight); + message = "上报满卷重量,weight:"+weight +",指令号:"+ikey; task.setWeight(String.valueOf(weight)); + task.setCarno(this.device_code); taskService.update(task); } data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -505,7 +512,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); standardOrdinarySiteDeviceDriver.setOption(0); } else { - log.info("等待LMS系统进行确认离开,设备号{}", device_code); + log.info("等待LMS系统进行确认离开,设备号{},指令号:{}", device_code,ikey); + message = "等待LMS系统进行确认离开,设备号:"+device_code +",指令号:"+ikey; } } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -563,7 +571,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); standardOrdinarySiteDeviceDriver.setOption(0); } else { - log.info("等待LMS系统进行确认离开,设备号{}", device_code); + log.info("等待LMS系统进行确认离开,设备号{},指令号:{}", device_code,ikey); + message = "等待LMS系统进行确认离开,设备号:"+device_code +",指令号:"+ikey; } } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -619,7 +628,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); standardOrdinarySiteDeviceDriver.setOption(0); } else { - log.info("等待LMS系统进行确认离开,设备号{}", device_code); + log.info("等待LMS系统进行确认离开,设备号{},指令号:{}", device_code,ikey); + message = "等待LMS系统进行确认离开,设备号:"+device_code +",指令号:"+ikey; } } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -701,33 +711,36 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if(this.getPhase() ==0 ){ phase = "无任务"; } else if (this.getPhase() == 1) { - phase = "1 开始任务"; + phase = "1 0X01 开始任务"; } else if (this.getPhase() == 2) { - phase = "2 分配车号"; + phase = "2 0X02 分配车号"; } else if (this.getPhase() == 3) { - phase = "3 到达取货点1"; + phase = "3 0X03 到达取货点1"; } else if (this.getPhase() == 5) { - phase = "5 取货点1取货完毕"; + phase = "5 0X05 取货点1请求离开"; } else if (this.getPhase() == 8) { - phase = "8 到达取货点2"; + phase = "8 0X08 到达取货点2"; } else if (this.getPhase() == 10) { - phase = "开始任务"; - } else if (this.getPhase() == 3) { - phase = "开始任务"; - } else if (this.getPhase() == 3) { - phase = "开始任务"; - } else if (this.getPhase() == 3) { - phase = "开始任务"; - } else if (this.getPhase() == 3) { - phase = "开始任务"; - } else if (this.getPhase() == 3) { - phase = "开始任务"; + phase = "10 0X0A 取货点2请求离开"; + } else if (this.getPhase() == 12) { + phase = "12 0X0C 到达放货点"; + } else if (this.getPhase() == 14) { + phase = "14 0X0E 放货完成"; + } else if (this.getPhase() == 16) { + phase = "16 0X10 到达放货点"; + } else if (this.getPhase() == 18) { + phase = "18 0X12 放货完成"; + } else if (this.getPhase() == 20) { + phase = "20 0X14 任务完毕"; + } else if (this.getPhase() == 100) { + phase = "100 0X64 上报称重"; } - - jo.put("isOnline", this.getIsonline()); + jo.put("phase", phase); + jo.put("isOnline", true); jo.put("error", this.getError()); jo.put("isError", this.getIserror()); jo.put("message", this.getMessage()); + jo.put("agv_power", this.getAgv_power()); jo.put("device_name", this.getDevice().getDevice_name()); jo.put("mode", mode); 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 6e9437480..0e6139385 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 @@ -131,9 +131,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i error = this.itemProtocol.getError(); task = this.itemProtocol.getTask(); heartbeat = this.itemProtocol.getHeartbeat(); - if(heartbeat != last_heartbeat){ - logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); - } +// if(heartbeat != last_heartbeat){ +// logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); +// } if (mode != last_mode) { if (mode == 2) { logServer.deviceExecuteLog(this.device_code, "", "", "信号复位前requireSuccess:" + requireSucess); 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 de987c5cc..e2eb3f95e 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 @@ -151,9 +151,9 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme task = this.itemProtocol.getTask(); to_command = this.itemProtocol.getTo_command(); heartbeat = this.itemProtocol.getHeartbeat(); - if(heartbeat != last_heartbeat){ - logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); - } +// if(heartbeat != last_heartbeat){ +// logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); +// } if (mode != last_mode) { if (mode == 2) { requireSucess = false; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java index 33c9e544e..e147b749b 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java @@ -144,9 +144,9 @@ public class SiemensConveyorCkkDeviceDriver extends AbstractOpcDeviceDriver impl error = this.itemProtocol.getError(); task = this.itemProtocol.getTask(); heartbeat = this.itemProtocol.getHeartbeat(); - if(heartbeat != last_heartbeat){ - logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); - } +// if(heartbeat != last_heartbeat){ +// logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); +// } if (mode != last_mode) { if (mode == 2) { requireSucess = false; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java index f44486b82..a35180fcd 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java @@ -141,9 +141,9 @@ public class SiemensConveyorLabelingDeviceDriver extends AbstractOpcDeviceDriver task = this.itemProtocol.getTask(); weight = this.itemProtocol.getWeight(); heartbeat = this.itemProtocol.getHeartbeat(); - if(heartbeat != last_heartbeat){ - logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); - } +// if(heartbeat != last_heartbeat){ +// logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); +// } if (mode != last_mode) { if (mode == 2) { requireSucess = false; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java index 0d781b293..a36d2574c 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java @@ -162,9 +162,9 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl to_command1 = this.itemProtocol.getTo_command1(); to_command2 = this.itemProtocol.getTo_command2(); heartbeat = this.itemProtocol.getHeartbeat(); - if(heartbeat != last_heartbeat){ - logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); - } +// if(heartbeat != last_heartbeat){ +// logServer.deviceExecuteLog(this.device_code, "", "", "heartbeat:" + last_heartbeat + "->" + heartbeat); +// } if (mode != last_mode) { if (mode == 2) { logServer.deviceExecuteLog(device_code, "", "", "开始请求标记复位`此时请求标记值为:" + requireSucess); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_autodoor/StandardAutodoorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_autodoor/StandardAutodoorDeviceDriver.java index 3f57a45c1..ca4a03c45 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_autodoor/StandardAutodoorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_autodoor/StandardAutodoorDeviceDriver.java @@ -1,5 +1,6 @@ package org.nl.acs.device_driver.basedriver.standard_autodoor; +import com.alibaba.fastjson.JSONObject; import lombok.Data; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -7,6 +8,7 @@ import org.nl.acs.device_driver.DeviceDriver; import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver; import org.nl.acs.device_driver.driver.ExecutableDeviceDriver; import org.nl.acs.log.service.DeviceExecuteLogService; +import org.nl.acs.monitor.DeviceStageMonitor; import org.nl.acs.opc.Device; import org.nl.modules.wql.util.SpringContextHolder; @@ -20,7 +22,7 @@ import java.util.Map; @Slf4j @Data @RequiredArgsConstructor -public class StandardAutodoorDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver { +public class StandardAutodoorDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver, DeviceStageMonitor { protected ItemProtocol itemProtocol = new ItemProtocol(this); DeviceExecuteLogService logServer = SpringContextHolder.getBean("deviceExecuteLogServiceImpl"); @@ -44,9 +46,10 @@ public class StandardAutodoorDeviceDriver extends AbstractOpcDeviceDriver implem open = this.itemProtocol.getOpen(); close = this.itemProtocol.getClose(); if (open != last_open) { - + logServer.deviceExecuteLog(this.device_code, "", "", "信号open:" + last_open + "->" + open); } if (close != last_close) { + logServer.deviceExecuteLog(this.device_code, "", "", "信号close:" + last_close + "->" + close); } @@ -66,4 +69,33 @@ public class StandardAutodoorDeviceDriver extends AbstractOpcDeviceDriver implem } + @Override + public JSONObject getDeviceStatusName() { + JSONObject jo = new JSONObject(); + String open = ""; + String close = ""; + if(this.getOpen() == 0){ + open = "未知"; + } else if(this.getOpen() == 1){ + open = "开到位"; + } + if(this.getClose() == 0){ + open = "未知"; + } else if(this.getOpen() == 1){ + open = "关到位"; + } + jo.put("device_name", this.getDevice().getDevice_name()); + jo.put("open", open); + jo.put("close", close); + jo.put("isOnline", true); + + return jo; + } + + @Override + public void setDeviceStatus(JSONObject data) { + + } + + } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index cd05723f8..7e217e763 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -16,6 +16,7 @@ import org.nl.acs.device_driver.basedriver.cargo_lift_conveyor.CargoLiftConveyor import org.nl.acs.device_driver.basedriver.empty_vehicle_stacking_position.EmptyVehicleStackingPositionDeviceDriver; import org.nl.acs.device_driver.basedriver.hongxiang_conveyor.HongXiangStationDeviceDriver; import org.nl.acs.device_driver.basedriver.hongxiang_device.HongXiangConveyorDeviceDriver; +import org.nl.acs.device_driver.basedriver.lamp_three_color.LampThreecolorDeviceDriver; import org.nl.acs.device_driver.basedriver.plug_pull_device_site.PlugPullDeviceSiteDeviceDriver; import org.nl.acs.device_driver.basedriver.siemens_conveyor.SiemensConveyorDeviceDriver; import org.nl.acs.device_driver.basedriver.standard_conveyor_control_with_scanner.StandardCoveyorControlWithScannerDeviceDriver; @@ -170,12 +171,15 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { throw new Exception("未找到对应设备:" + device_code); } HongXiangStationDeviceDriver hongXiangStationDeviceDriver; - PlugPullDeviceSiteDeviceDriver plugPullDeviceSiteDeviceDriver; + LampThreecolorDeviceDriver lampThreecolorDeviceDriver; if (device.getDeviceDriver() instanceof HongXiangStationDeviceDriver) { hongXiangStationDeviceDriver = (HongXiangStationDeviceDriver) device.getDeviceDriver(); hongXiangStationDeviceDriver.writing(code, value); } - + if (device.getDeviceDriver() instanceof LampThreecolorDeviceDriver) { + lampThreecolorDeviceDriver = (LampThreecolorDeviceDriver) device.getDeviceDriver(); + lampThreecolorDeviceDriver.writing(code, value); + } } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/dto/TaskDto.java b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/dto/TaskDto.java index c80a62dd1..db8e149ae 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/dto/TaskDto.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/dto/TaskDto.java @@ -290,4 +290,10 @@ public class TaskDto implements Serializable { * 烘箱温度 */ private String temperature; + + /** + * 车号 + */ + private String carno; + } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java index 5ab39530e..c6ca173c4 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java @@ -680,6 +680,9 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { if(ObjectUtil.isNotEmpty(dto.getWeight())){ feed_jo.put("weight",dto.getWeight()); } + if(ObjectUtil.isNotEmpty(dto.getCarno())){ + feed_jo.put("car_no",dto.getCarno()); + } JSONArray ja = new JSONArray(); ja.add(feed_jo); String message = null; diff --git a/acs/nladmin-system/src/main/resources/config/application-dev.yml b/acs/nladmin-system/src/main/resources/config/application-dev.yml index f57637425..a1f56261a 100644 --- a/acs/nladmin-system/src/main/resources/config/application-dev.yml +++ b/acs/nladmin-system/src/main/resources/config/application-dev.yml @@ -13,11 +13,11 @@ spring: driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy # url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true # url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:lzhl_one_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true - url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_one_wcs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true + url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_one_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true username: ${DB_USER:root} # password: ${DB_PWD:P@ssw0rd} # password: ${DB_PWD:Root.123456} - password: ${DB_PWD:password} + password: ${DB_PWD:123456} # 初始连接数 initial-size: 5 diff --git a/acs/nladmin-system/src/main/resources/log/AcsToWms.xml b/acs/nladmin-system/src/main/resources/log/AcsToWms.xml index 1fd47dab8..670abbeef 100644 --- a/acs/nladmin-system/src/main/resources/log/AcsToWms.xml +++ b/acs/nladmin-system/src/main/resources/log/AcsToWms.xml @@ -6,7 +6,7 @@ - ${LOG_HOME}/ACS请求WMS/%d{yyyy-MM-dd}.%i.log + ${LOG_HOME}/ACS请求LMS/%d{yyyy-MM-dd}.%i.log 15 diff --git a/acs/nladmin-system/src/main/resources/log/WmsToAcs.xml b/acs/nladmin-system/src/main/resources/log/WmsToAcs.xml index 9c26bdaee..f26a6ef74 100644 --- a/acs/nladmin-system/src/main/resources/log/WmsToAcs.xml +++ b/acs/nladmin-system/src/main/resources/log/WmsToAcs.xml @@ -6,7 +6,7 @@ - ${LOG_HOME}/WMS下发ACS/%d{yyyy-MM-dd}.%i.log + ${LOG_HOME}/LMS下发ACS/%d{yyyy-MM-dd}.%i.log 15 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 3f0233add..46de2c227 100644 --- a/acs/nladmin-ui/src/views/system/monitor/device/index.vue +++ b/acs/nladmin-ui/src/views/system/monitor/device/index.vue @@ -456,12 +456,21 @@ export default { } else if (val === 'move_1') { const obj = { name: '前工位光电信号', value: data[val] } this.arr.push(obj) + } else if (val === 'open') { + const obj = { name: '开到位', value: data[val] } + this.arr.push(obj) + } else if (val === 'close') { + const obj = { name: '关到位', value: data[val] } + this.arr.push(obj) } else if (val === 'phase') { const obj = { name: 'AGV交互阶段', value: data[val] } this.arr.push(obj) } else if (val === 'option') { const obj = { name: 'AGV动作', value: data[val] } this.arr.push(obj) + } else if (val === 'agv_power') { + const obj = { name: 'AGV电量', value: data[val] } + this.arr.push(obj) } else if (val === 'move_2') { const obj = { name: '后工位光电信号', value: data[val] } this.arr.push(obj)