diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device/service/impl/DeviceServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/device/service/impl/DeviceServiceImpl.java index ef7547015..1dae504a3 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device/service/impl/DeviceServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device/service/impl/DeviceServiceImpl.java @@ -880,60 +880,11 @@ public class DeviceServiceImpl implements DeviceService, ApplicationAutoInitial StandardInspectSiteDeviceDriver standardInspectSiteDeviceDriver; if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); - if (!StrUtil.isEmpty(hasGoodStatus)) { - standardOrdinarySiteDeviceDriver.setHasGoods(Integer.parseInt(hasGoodStatus)); - device.setHas_goods(Integer.parseInt(hasGoodStatus)); - } - if (StrUtil.isNotEmpty(material_type)) { - standardOrdinarySiteDeviceDriver.setMaterial(material_type); - device.setMaterial_type(material_type); - } else { - standardOrdinarySiteDeviceDriver.setMaterial(""); - device.setMaterial_type(""); - } - if (StrUtil.isNotEmpty(quantity)) { - standardOrdinarySiteDeviceDriver.setQty(quantity); - device.setQuantity(quantity); - } else { - standardOrdinarySiteDeviceDriver.setQty(""); - device.setQuantity(""); - } - if (StrUtil.isNotEmpty(remark)) { - standardOrdinarySiteDeviceDriver.setRemark(remark); - device.setRemark(remark); - } else { - standardOrdinarySiteDeviceDriver.setRemark(""); - device.setRemark(""); - } - if (StrUtil.isNotEmpty(batch)) { - standardOrdinarySiteDeviceDriver.setBatch(batch); - device.setBatch(batch); - } else { - standardOrdinarySiteDeviceDriver.setBatch(""); - device.setBatch(""); - } - WQLObject runpointwo = WQLObject.getWQLObject("acs_device_runpoint"); - JSONObject json = runpointwo.query("device_code ='" + device_code + "'").uniqueResult(0); - if (!ObjectUtil.isEmpty(json)) { - DeviceRunpointDto obj = json.toJavaObject(DeviceRunpointDto.class); - obj.setHasgoods(hasGoodStatus); - obj.setMaterial_type(material_type); - obj.setBatch(batch); - device.setHas_goods(Integer.parseInt(hasGoodStatus)); - device.setMaterial_type(material_type); - device.setRemark(remark); - device.setQuantity(quantity); - device.setBatch(batch); - device.setIslock(islock); - JSONObject updatejson = (JSONObject) JSONObject.toJSON(obj); - runpointwo.update(updatejson, "device_code = '" + device_code + "'"); - } + standardOrdinarySiteDeviceDriver.setDeviceStatus(form); } else if (device.getDeviceDriver() instanceof StandardInspectSiteDeviceDriver) { standardInspectSiteDeviceDriver = (StandardInspectSiteDeviceDriver) device.getDeviceDriver(); - standardInspectSiteDeviceDriver.setMaterial(material_type); - standardInspectSiteDeviceDriver.setBatch(batch); - device.setMaterial_type(material_type); - device.setBatch(batch); + standardInspectSiteDeviceDriver.setDeviceStatus(form); + } else if (device.getDeviceDriver() instanceof SlitTwoManipulatorDeviceDriver) { slitTwoManipulatorDeviceDriver = (SlitTwoManipulatorDeviceDriver) device.getDeviceDriver(); slitTwoManipulatorDeviceDriver.setDeviceStatus(form); 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 595fe2633..1783d0493 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 @@ -26,6 +26,9 @@ import org.nl.acs.log.service.DeviceExecuteLogService; import org.nl.acs.monitor.DeviceStageMonitor; import org.nl.acs.opc.Device; import org.nl.acs.opc.DeviceAppService; +import org.nl.acs.task.service.TaskService; +import org.nl.acs.task.service.dto.TaskDto; +import org.nl.acs.task.service.impl.TaskServiceImpl; import org.nl.modules.system.service.ParamService; import org.nl.modules.wql.util.SpringContextHolder; @@ -40,6 +43,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic ParamService ParamService = SpringContextHolder.getBean(ParamService.class); InstructionService instructionService = SpringContextHolder.getBean(InstructionServiceImpl.class); + TaskService taskService = SpringContextHolder.getBean(TaskServiceImpl.class); AcsToWmsService acsToWmsService = SpringContextHolder.getBean(AcsToWmsServiceImpl.class); NDCAgvService ndcAgvService = SpringContextHolder.getBean(NDCAgvService.class); DeviceExecuteLogService logServer = SpringContextHolder.getBean(DeviceExecuteLogService.class); @@ -77,8 +81,10 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (carno != 0) { agv_device = deviceAppService.findDeviceByCode(String.valueOf(carno)); } + TaskDto task = null; if (ikey != 0) { inst = instructionService.findByCodeFromCache(String.valueOf(ikey)); + task = taskService.findByTaskCode(inst.getTask_code()); } @@ -158,20 +164,22 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(this.device.getExtraValue().get("wait")) - && StrUtil.equals("true",this.device.getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",this.device.getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // - if(standardOrdinarySiteDeviceDriver.getOption() == 1 ){ + if(standardOrdinarySiteDeviceDriver.getOption() == 1){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { log.info("等待LMS系统进行确认允许取货,设备号{}", device_code); + logServer.deviceExecuteLog(this.device_code, "", "", "等待LMS系统进行确认允许取货,设备号"+device.getDevice_code()); + } } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); + } else if (device.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver(); if(photoelectricInspectionSiteDeviceDriver.getMove() == 1) @@ -220,7 +228,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(this.device.getExtraValue().get("wait")) - && StrUtil.equals("true",this.device.getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",this.device.getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // standardOrdinarySiteDeviceDriver.setOption(0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -229,9 +238,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); + } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } @@ -271,20 +279,21 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) - && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // if(standardOrdinarySiteDeviceDriver.getOption() == 1 ){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } else { log.info("等待LMS系统进行确认允许取货,设备号{}", device_code); + logServer.deviceExecuteLog(this.device_code, "", "", "等待LMS系统进行确认允许取货,设备号"+device.getDevice_code()); + } } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } @@ -327,7 +336,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) - && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ standardOrdinarySiteDeviceDriver.setOption(0); } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -353,6 +363,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic weight = agvaddr; inst.setWeight(String.valueOf(weight)); instructionService.update(inst); + + if(ObjectUtil.isNotEmpty(task)){ + logServer.deviceExecuteLog(this.device_code, "", "", "上报满卷重量,weight:" + weight); + task.setWeight(String.valueOf(weight)); + taskService.update(task); + } data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } } @@ -392,18 +408,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic //请求放空 可以直接走 if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); -// if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) -// && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ -// // -// if(standardOrdinarySiteDeviceDriver.getOption() == 1 ){ -// data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); -// standardOrdinarySiteDeviceDriver.setOption(0); -// } else { -// log.info("等待LMS系统进行确认离开,设备号{}", device_code); -// } -// } else { -// data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); -// } + data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); standardOrdinarySiteDeviceDriver.setAgvphase(phase); @@ -455,7 +460,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) - && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // if(standardOrdinarySiteDeviceDriver.getOption() == 2 ){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -467,9 +473,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } @@ -511,7 +515,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) - && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // if(standardOrdinarySiteDeviceDriver.getOption() == 2 ){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -523,9 +528,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); + } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } @@ -567,7 +571,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver(); if(ObjectUtil.isNotEmpty(standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait")) - && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString())){ + && StrUtil.equals("true",standardOrdinarySiteDeviceDriver.getDevice().getExtraValue().get("wait").toString()) + && StrUtil.equals(task.getTask_type(),"1")){ // if(standardOrdinarySiteDeviceDriver.getOption() == 2 ){ data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -579,9 +584,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } - standardOrdinarySiteDeviceDriver.setAgvphase(phase); - standardOrdinarySiteDeviceDriver.setIndex(index); - standardOrdinarySiteDeviceDriver.setInst(inst); + this.setPhase(phase); + } else { data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); } 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 583431333..5e6707160 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 @@ -231,6 +231,19 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage()); } + if("true".equals(this.device.getExtraValue().get("ship_device_update"))){ + if(ObjectUtil.equal(this.getDevice().getExtraValue().get("noIdleRequest"),"true")){ + if (!requiresShipDeviceUpdate && move == 0) { + this.shipDeviceUpdate(); + } + } else { + if (mode ==2 && !requiresShipDeviceUpdate && move == 0) { + this.shipDeviceUpdate(); + } + } + } + + if (mode == 0) { this.setIsonline(false); message = "未联机"; @@ -247,7 +260,6 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme Instruction instruction = null; List toInstructions; - switch (mode) { case 1: log.debug("设备运转模式:等待工作"); @@ -257,11 +269,7 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme if (move > 0 && !requireSucess) { instruction_require(); } - if (!requiresShipDeviceUpdate && move == 0) { - this.shipDeviceUpdate(); - } else { - this.requiresShipDeviceUpdate = true; - } + break; case 4: //申请捆扎 diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java index 478209a52..e2ec8b0d0 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/standard_ordinary_site/StandardOrdinarySiteDeviceDriver.java @@ -1,6 +1,7 @@ package org.nl.acs.device_driver.basedriver.standard_ordinary_site; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; import lombok.Data; import lombok.RequiredArgsConstructor; @@ -229,13 +230,17 @@ public class StandardOrdinarySiteDeviceDriver extends AbstractDeviceDriver imple jo.put("error", this.getError()); jo.put("isError", this.getIserror()); jo.put("option", option); + jo.put("is_click", true); return jo; } @Override public void setDeviceStatus(JSONObject data) { - + String flag = data.getString("option"); + if(StrUtil.isNotEmpty(flag)){ + option = Integer.parseInt(flag); + } } } 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 840ed5c5e..5b62968c6 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 @@ -748,32 +748,64 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { JSONArray datas = JSONArray.parseArray(whereJson); log.info("updateTask--------------:输入参数" + datas.toString()); JSONObject map = new JSONObject(); + JSONArray errArr = new JSONArray(); if (datas.size() > 0) { for (int i = 0; i < datas.size(); i++) { JSONObject jsonObject = datas.getJSONObject(i); String device_code = jsonObject.getString("device_code"); String task_code = jsonObject.getString("task_code"); + + TaskDto task= taskService.findByTaskCode(task_code); + if(ObjectUtil.isEmpty(task)){ + JSONObject resultJson = new JSONObject(); + resultJson.put("status", HttpStatus.BAD_REQUEST); + resultJson.put("message", "未找到对应的任务:"+task_code); + return resultJson; + } + //1-允许取放; 2-允许离开 String option = jsonObject.getString("option"); StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver; - Device device_k = deviceAppService.findDeviceByCode(device_code+"_K"); - Device device_m = deviceAppService.findDeviceByCode(device_code+"_M"); - if(device_k.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ - standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_k.getDeviceDriver(); - standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); - } - if(device_m.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ - standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_m.getDeviceDriver(); - standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); - } + if(StrUtil.equals(task.getTask_type(),"1")){ + Device device_k = deviceAppService.findDeviceByCode(device_code+"_K"); + Device device_m = deviceAppService.findDeviceByCode(device_code+"_M"); + if(device_k.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_k.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + if(device_m.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_m.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + } else if (StrUtil.equals(task.getTask_type(),"2")){ + if(task.getStart_device_code().endsWith("K")){ + Device device_k = deviceAppService.findDeviceByCode(device_code+"_K"); + if(device_k.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_k.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + } else if(task.getStart_device_code().endsWith("M")){ + Device device_m = deviceAppService.findDeviceByCode(device_code+"_M"); + if(device_m.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver){ + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_m.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + } + } } } JSONObject resultJson = new JSONObject(); - resultJson.put("status", HttpStatus.OK); - resultJson.put("message", "操作成功"); - resultJson.put("data", map); + if (ObjectUtil.isEmpty(errArr)) { + resultJson.put("status", HttpStatus.OK); + } else { + resultJson.put("status", HttpStatus.BAD_REQUEST); + resultJson.put("message", "操作成功"); + if(ObjectUtil.isNotEmpty(errArr)){ + resultJson.put("errArr",errArr); + } + } return resultJson; } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java b/acs/nladmin-system/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java index ae5af1831..8a01bb1ef 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/opc/DeviceOpcProtocolRunable.java @@ -187,6 +187,8 @@ public class DeviceOpcProtocolRunable implements Runnable { log.info("信号{}变更从{}->{};信号快照:{}", new Object[]{item.getId(), his, value, sb}); } +// accessor_value.setValueWithPersistence(item.getId(),accessor_value.getValue(item.getId())); +// accessor_value.getHistoryUnifiedData(item.getId()); //设置值 accessor_value.setValue(item.getId(), value); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/TaskService.java b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/TaskService.java index 2acbb63fb..d6d6d8441 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/task/service/TaskService.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/task/service/TaskService.java @@ -76,6 +76,15 @@ public interface TaskService { */ TaskDto findById(String task_id); + /** + * 根据ID查询 + * + * @param task_code + * @return AcsTask + */ + TaskDto findByTaskCode(String task_code); + + /** * 查询所有未完成任务 * 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 60340dad5..347bb922f 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 @@ -106,9 +106,6 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { @Override public Map queryAll(Map whereJson, Pageable page) { - // WQLObject wo = WQLObject.getWQLObject("acs_task"); - // ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "task_status < 2 ", "update_time - // desc"); HashMap map = new HashMap<>(); map.put("flag", "1"); String task_code = (String) whereJson.get("task_code"); @@ -142,9 +139,6 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { @Override public Map queryAllByCache(Map whereJson, Pageable page) { - - - this.reload(); String task_code = (String) whereJson.get("task_code"); String vehicle_code = (String) whereJson.get("vehicle_code"); @@ -281,6 +275,21 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { return obj; } + @Override + public TaskDto findByTaskCode(String task_code) { + + List list = new ArrayList<>(); + Iterator iterator = tasks.iterator(); + while (iterator.hasNext()) { + TaskDto task = iterator.next(); + if (StrUtil.equals(task.getTask_code(),task_code)) { + return task; + } + } + return null; + } + + @Override public List queryAllUnfinished(Map whereJson) { WQLObject wo = WQLObject.getWQLObject("acs_task"); @@ -477,49 +486,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { if (StrUtil.equals(DeviceType.conveyor.toString(), nextDeviceType)) {} } else { // 判断起点为输送设备 - if (StrUtil.equals(DeviceType.conveyor.toString(), startDeviceType)) {} - if (StrUtil.equals(DeviceType.conveyor.toString(), nextDeviceType)) { - // if (nextdevice.getDeviceDriver() instanceof - // StandardOrdinarySiteDeviceDriver) { - // standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) - // nextdevice.getDeviceDriver(); - // if (nextdevice.getHas_goods() != 0) { - // throw new Exception("任务终点需满足无货!"); - // } - // } - - JSONObject jo = new JSONObject(); - JSONObject jo2 = new JSONObject(); - if (!StrUtil.isEmpty(dto.getMaterial())) { - if (!StrUtil.equals(dto.getMaterial(), "1")) { - jo.put("hasGoodStatus", "2"); - jo.put("material_type", dto.getMaterial()); - } else { - jo.put("hasGoodStatus", "1"); - jo.put("material_type", "1"); - } - - } else { - jo.put("hasGoodStatus", "1"); - jo.put("material_type", "1"); - } - jo.put("device_code", dto.getStart_device_code()); - jo.put("quantity", dto.getQuantity()); - jo.put("remark", dto.getRemark()); - jo.put("batch", startdevice.getBatch()); - jo.put("islock", "true"); - deviceService.changeDeviceStatus(jo); - Device deviceByCode = deviceAppService.findDeviceByCode(dto.getNext_device_code()); - jo2.put("device_code", dto.getNext_device_code()); - jo2.put("hasGoodStatus", deviceByCode.getHas_goods()); - jo2.put("quantity", deviceByCode.getQuantity()); - jo2.put("remark", deviceByCode.getRemark()); - jo2.put("material_type", deviceByCode.getMaterial_type()); - jo2.put("batch", deviceByCode.getBatch()); - jo2.put("islock", "true"); - deviceService.changeDeviceStatus(jo2); - } } WQLObject wo = WQLObject.getWQLObject("acs_task"); JSONObject json = (JSONObject) JSONObject.toJSON(dto); @@ -693,6 +660,9 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial { feed_jo.put("task_id", entity.getExt_task_id()); feed_jo.put("task_code", dto.getTask_code()); feed_jo.put("task_status", dto.getTask_status()); + if(ObjectUtil.isNotEmpty(dto.getWeight())){ + feed_jo.put("weight",dto.getWeight()); + } JSONArray ja = new JSONArray(); ja.add(feed_jo); String message = null; diff --git a/acs/nladmin-system/src/main/resources/logback-spring.xml b/acs/nladmin-system/src/main/resources/logback-spring.xml index aba8aa0c8..f78125731 100644 --- a/acs/nladmin-system/src/main/resources/logback-spring.xml +++ b/acs/nladmin-system/src/main/resources/logback-spring.xml @@ -174,7 +174,7 @@ https://juejin.cn/post/6844903775631572999 - + diff --git a/acs/nladmin-ui/src/views/acs/device/driver/siemens_conveyor.vue b/acs/nladmin-ui/src/views/acs/device/driver/siemens_conveyor.vue index 8e0c06cea..9980a819d 100644 --- a/acs/nladmin-ui/src/views/acs/device/driver/siemens_conveyor.vue +++ b/acs/nladmin-ui/src/views/acs/device/driver/siemens_conveyor.vue @@ -84,8 +84,8 @@ - - + + diff --git a/acs/nladmin-ui/src/views/acs/device/driver/standard_ordinary_site.vue b/acs/nladmin-ui/src/views/acs/device/driver/standard_ordinary_site.vue index e4ccc01a9..d1bf9971e 100644 --- a/acs/nladmin-ui/src/views/acs/device/driver/standard_ordinary_site.vue +++ b/acs/nladmin-ui/src/views/acs/device/driver/standard_ordinary_site.vue @@ -25,7 +25,7 @@ - + diff --git a/acs/nladmin-ui/src/views/acs/monitor/device/index.vue b/acs/nladmin-ui/src/views/acs/monitor/device/index.vue index 4b14b9e0a..a3530ae03 100644 --- a/acs/nladmin-ui/src/views/acs/monitor/device/index.vue +++ b/acs/nladmin-ui/src/views/acs/monitor/device/index.vue @@ -136,10 +136,10 @@ - - 无货 - 有托盘 - 有托盘有货 + + 禁止进出 + 允许进入 + 允许离开 @@ -398,9 +398,6 @@ export default { } else if (val === 'requestSucess') { const obj = { name: '缺料请求成功', value: data[val] } arr.push(obj) - } else if (val === 'fullrequestSucess') { - const obj = { name: '空箱请求成功', value: data[val] } - arr.push(obj) } else if (val === 'applySucess') { const obj = { name: '是否申请指令', value: data[val] } arr.push(obj) @@ -413,9 +410,6 @@ export default { } else if (val === 'option') { const obj = { name: 'AGV动作', value: data[val] } arr.push(obj) - } else if (val === 'full_ready_req_agv') { - const obj = { name: '满箱位就绪,请求AGV', value: data[val] } - arr.push(obj) } else if (val === 'temperature') { const obj = { name: '当前温度', value: data[val] } arr.push(obj) @@ -437,54 +431,12 @@ export default { } else if (val === 'door') { const obj = { name: '门状态', value: data[val] } arr.push(obj) - } else if (val === 'storage_stock_num') { - const obj = { name: '储料仓库存数量', value: data[val] } - arr.push(obj) - } else if (val === 'line_stock_num') { - const obj = { name: '线体库存数量', value: data[val] } - arr.push(obj) - } else if (val === 'order_prod_allnum') { - const obj = { name: '订单生产总量', value: data[val] } - arr.push(obj) - } else if (val === 'order') { - const obj = { name: '工单号', value: data[val] } - arr.push(obj) - } else if (val === 'storage_stock_num') { - const obj = { name: '储料仓库存数量', value: data[val] } - arr.push(obj) - } else if (val === 'line_stock_num') { - const obj = { name: '线体库存数量', value: data[val] } - arr.push(obj) - } else if (val === 'material_type') { - const obj = { name: '产品编号', value: data[val] } - arr.push(obj) - } else if (val === 'lack_req') { - const obj = { name: '缺料请求', value: data[val] } - arr.push(obj) - } else if (val === 'empty_req') { - const obj = { name: '空箱请求', value: data[val] } - arr.push(obj) } else if (val === 'address') { const obj = { name: 'agv位置', value: data[val] } arr.push(obj) } else if (val === 'phaseName') { const obj = { name: 'phase', value: data[val] } arr.push(obj) - } else if (val === 'full_req') { - const obj = { name: '满箱请求', value: data[val] } - arr.push(obj) - } else if (val === 'open_time') { - const obj = { name: '开机时间', value: data[val] } - arr.push(obj) - } else if (val === 'close_time') { - const obj = { name: '关机时间', value: data[val] } - arr.push(obj) - } else if (val === 'feeding_qty') { - const obj = { name: '上料数量', value: data[val] } - arr.push(obj) - } else if (val === 'error_num') { - const obj = { name: '故障次数', value: data[val] } - arr.push(obj) } else if (val === 'is_disable') { const obj = { name: '是否禁用', value: data[val] } arr.push(obj) diff --git a/acs/nladmin-ui/src/views/acs/monitor/device/index2.vue b/acs/nladmin-ui/src/views/acs/monitor/device/index2.vue deleted file mode 100644 index febabca33..000000000 --- a/acs/nladmin-ui/src/views/acs/monitor/device/index2.vue +++ /dev/null @@ -1,631 +0,0 @@ - - - - - diff --git a/acs/nladmin-ui/src/views/loki/view/index.vue b/acs/nladmin-ui/src/views/loki/view/index.vue index dd97033c9..72ca6c599 100644 --- a/acs/nladmin-ui/src/views/loki/view/index.vue +++ b/acs/nladmin-ui/src/views/loki/view/index.vue @@ -7,6 +7,7 @@ - - 无货 - 有托盘 - 有托盘有货 + + 禁止进出 + 允许进入 + 允许离开 @@ -59,8 +59,8 @@ 无货 - 空料斗 - 满料斗 + 有托盘 + 有托盘有货 @@ -153,7 +153,7 @@ @@ -453,12 +453,15 @@ export default { } else if (val === 'weight') { const obj = { name: '重量', value: data[val] } this.arr.push(obj) - } else if (val === 'tray_crib_qty') { - const obj = { name: '托盘垛数', value: data[val] } - this.arr.push(obj) } else if (val === 'move_1') { 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 === 'move_2') { const obj = { name: '后工位光电信号', value: data[val] } this.arr.push(obj)