更新
This commit is contained in:
@@ -13,6 +13,7 @@ import com.alibaba.fastjson.JSONObject;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.acs.config.server.AcsConfigService;
|
import org.nl.acs.config.server.AcsConfigService;
|
||||||
|
import org.nl.acs.device.device_driver.standard_inspect.ItemDto;
|
||||||
import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
|
import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
|
||||||
import org.nl.acs.device.service.*;
|
import org.nl.acs.device.service.*;
|
||||||
import org.nl.acs.device.service.dto.*;
|
import org.nl.acs.device.service.dto.*;
|
||||||
@@ -1171,8 +1172,9 @@ public class DeviceServiceImpl implements DeviceService, ApplicationAutoInitial
|
|||||||
|
|
||||||
//根据设备驱动定义获取OPC读写数据
|
//根据设备驱动定义获取OPC读写数据
|
||||||
DeviceDriverDefination deviceDriverDefination = deviceDriverDefinationAppService.getDeviceDriverDefination(driver_code);
|
DeviceDriverDefination deviceDriverDefination = deviceDriverDefinationAppService.getDeviceDriverDefination(driver_code);
|
||||||
|
OpcDeviceDriverDefination opcDeviceDriverDefination = null;
|
||||||
if (deviceDriverDefination instanceof OpcDeviceDriverDefination) {
|
if (deviceDriverDefination instanceof OpcDeviceDriverDefination) {
|
||||||
OpcDeviceDriverDefination opcDeviceDriverDefination = (OpcDeviceDriverDefination) deviceDriverDefination;
|
opcDeviceDriverDefination = (OpcDeviceDriverDefination) deviceDriverDefination;
|
||||||
//处理DB读和写属性
|
//处理DB读和写属性
|
||||||
result.put("rs", opcDeviceDriverDefination.getReadableItemDtos());
|
result.put("rs", opcDeviceDriverDefination.getReadableItemDtos());
|
||||||
result.put("ws", opcDeviceDriverDefination.getWriteableItemDtos());
|
result.put("ws", opcDeviceDriverDefination.getWriteableItemDtos());
|
||||||
@@ -1190,24 +1192,12 @@ public class DeviceServiceImpl implements DeviceService, ApplicationAutoInitial
|
|||||||
extraObj.put(json.getString("extra_code"), json.get("extra_value"));
|
extraObj.put(json.getString("extra_code"), json.get("extra_value"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
extraObj.put("address", dto.getAddress());
|
|
||||||
JSONArray get_device_code = extraObj.getJSONArray("get_device_code");
|
|
||||||
JSONArray load_device_code = extraObj.getJSONArray("load_device_code");
|
|
||||||
JSONArray put_device_code = extraObj.getJSONArray("put_device_code");
|
|
||||||
if (ObjectUtil.isNotEmpty(get_device_code)) {
|
|
||||||
extraObj.put("get_device_code",get_device_code);
|
|
||||||
}
|
|
||||||
if (ObjectUtil.isNotEmpty(load_device_code)) {
|
|
||||||
extraObj.put("load_device_code",load_device_code);
|
|
||||||
}
|
|
||||||
if (ObjectUtil.isNotEmpty(put_device_code)) {
|
|
||||||
extraObj.put("put_device_code",put_device_code);
|
|
||||||
}
|
|
||||||
extraObj.put("address", dto.getAddress());
|
extraObj.put("address", dto.getAddress());
|
||||||
result.put("form", extraObj);
|
result.put("form", extraObj);
|
||||||
|
|
||||||
|
|
||||||
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
||||||
|
|
||||||
|
|
||||||
String opc_id = dto.getOpc_server_id();
|
String opc_id = dto.getOpc_server_id();
|
||||||
@@ -1237,35 +1227,111 @@ public class DeviceServiceImpl implements DeviceService, ApplicationAutoInitial
|
|||||||
//设备扩展表【acs_device_extra】
|
//设备扩展表【acs_device_extra】
|
||||||
JSONArray rs = WQLObject.getWQLObject("acs_device_extra").query("filed_type='02' and device_id = '" + device_id + "'", "order_seq").getResultJSONArray(0);
|
JSONArray rs = WQLObject.getWQLObject("acs_device_extra").query("filed_type='02' and device_id = '" + device_id + "'", "order_seq").getResultJSONArray(0);
|
||||||
JSONArray r_arry = new JSONArray();
|
JSONArray r_arry = new JSONArray();
|
||||||
for (int i = 0; i < rs.size(); i++) {
|
//先获取模板
|
||||||
JSONObject robj = new JSONObject();
|
if(ObjectUtil.isNotEmpty(opcDeviceDriverDefination)){
|
||||||
robj.put("code", rs.getJSONObject(i).getString("extra_code"));
|
List<ItemDto> readableItemDtos = opcDeviceDriverDefination.getReadableItemDtos();
|
||||||
robj.put("name", rs.getJSONObject(i).getString("remark"));
|
List<JSONObject> readableItemJsons = new ArrayList<>();
|
||||||
robj.put("db", rs.getJSONObject(i).getString("extra_name"));
|
for (int i = 0; i < readableItemDtos.size(); i++) {
|
||||||
r_arry.add(robj);
|
ItemDto itemDto = readableItemDtos.get(i);
|
||||||
|
JSONObject readableItemJson = new JSONObject();
|
||||||
|
readableItemJson.put("code",itemDto.getCode());
|
||||||
|
readableItemJson.put("name",itemDto.getName());
|
||||||
|
// readableItemJson.put("db",itemDto.getDb());
|
||||||
|
readableItemJsons.add(readableItemJson);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < rs.size(); i++) {
|
||||||
|
JSONObject robj = new JSONObject();
|
||||||
|
String extra_code = rs.getJSONObject(i).getString("extra_code");
|
||||||
|
final String[] split = extra_code.split("\\.");
|
||||||
|
String code = split[split.length - 1];
|
||||||
|
robj.put("code", code);
|
||||||
|
robj.put("name", rs.getJSONObject(i).getString("remark"));
|
||||||
|
if (readableItemJsons.contains(robj)){
|
||||||
|
robj.put("code", rs.getJSONObject(i).getString("extra_code"));
|
||||||
|
robj.put("db", rs.getJSONObject(i).getString("extra_name"));
|
||||||
|
r_arry.add(robj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
List<JSONObject> rarry = new ArrayList<>();
|
||||||
|
for (int i = 0; i < r_arry.size(); i++) {
|
||||||
|
JSONObject rJson = r_arry.getJSONObject(i);
|
||||||
|
String code = rJson.getString("code");
|
||||||
|
String[] split = code.split("\\.");
|
||||||
|
code = split[split.length - 1];
|
||||||
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
jsonObject.put("code", code);
|
||||||
|
jsonObject.put("name",rJson.getString("name"));
|
||||||
|
rarry.add(jsonObject);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < readableItemDtos.size(); i++) {
|
||||||
|
ItemDto itemDto = readableItemDtos.get(i);
|
||||||
|
JSONObject readableItemJson = new JSONObject();
|
||||||
|
readableItemJson.put("code",itemDto.getCode());
|
||||||
|
readableItemJson.put("name",itemDto.getName());
|
||||||
|
if (!rarry.contains(readableItemJson)){
|
||||||
|
readableItemJson.put("db",itemDto.getDb());
|
||||||
|
r_arry.add(readableItemJson);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
JSONArray ws = WQLObject.getWQLObject("acs_device_extra").query("filed_type='03' and device_id = '" + device_id + "'", "order_seq").getResultJSONArray(0);
|
||||||
|
JSONArray w_arry = new JSONArray();
|
||||||
|
List<ItemDto> writeableItemDtos = opcDeviceDriverDefination.getWriteableItemDtos();
|
||||||
|
List<JSONObject> writeableItemJsons = new ArrayList<>();
|
||||||
|
for (int i = 0; i < writeableItemDtos.size(); i++) {
|
||||||
|
ItemDto itemDto = writeableItemDtos.get(i);
|
||||||
|
JSONObject writeableItemJson = new JSONObject();
|
||||||
|
writeableItemJson.put("code",itemDto.getCode());
|
||||||
|
writeableItemJson.put("name",itemDto.getName());
|
||||||
|
//writeableItemJson.put("db",itemDto.getDb());
|
||||||
|
writeableItemJsons.add(writeableItemJson);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < ws.size(); i++) {
|
||||||
|
String extra_code = ws.getJSONObject(i).getString("extra_code");
|
||||||
|
final String[] split = extra_code.split("\\.");
|
||||||
|
String code = split[split.length - 1];
|
||||||
|
JSONObject robj = new JSONObject();
|
||||||
|
robj.put("code", code);
|
||||||
|
robj.put("name", ws.getJSONObject(i).getString("remark"));
|
||||||
|
if (writeableItemJsons.contains(robj)){
|
||||||
|
robj.put("code", ws.getJSONObject(i).getString("extra_code"));
|
||||||
|
robj.put("db", ws.getJSONObject(i).getString("extra_name"));
|
||||||
|
w_arry.add(robj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
List<JSONObject> warry = new ArrayList<>();
|
||||||
|
for (int i = 0; i < w_arry.size(); i++) {
|
||||||
|
JSONObject wJson = w_arry.getJSONObject(i);
|
||||||
|
String code = wJson.getString("code");
|
||||||
|
String[] split = code.split("\\.");
|
||||||
|
code = split[split.length - 1];
|
||||||
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
jsonObject.put("code",code);
|
||||||
|
jsonObject.put("name",wJson.getString("name"));
|
||||||
|
warry.add(jsonObject);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < writeableItemDtos.size(); i++) {
|
||||||
|
ItemDto itemDto = writeableItemDtos.get(i);
|
||||||
|
JSONObject writeableItemJson = new JSONObject();
|
||||||
|
writeableItemJson.put("code",itemDto.getCode());
|
||||||
|
writeableItemJson.put("name",itemDto.getName());
|
||||||
|
if (!warry.contains(writeableItemJson)){
|
||||||
|
writeableItemJson.put("db",itemDto.getDb());
|
||||||
|
w_arry.add(writeableItemJson);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!r_arry.isEmpty()) {
|
||||||
|
result.put("rs", r_arry);
|
||||||
|
}
|
||||||
|
if (!w_arry.isEmpty()) {
|
||||||
|
result.put("ws", w_arry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
JSONArray ws = WQLObject.getWQLObject("acs_device_extra").query("filed_type='03' and device_id = '" + device_id + "'", "order_seq").getResultJSONArray(0);
|
|
||||||
JSONArray w_arry = new JSONArray();
|
|
||||||
for (int i = 0; i < ws.size(); i++) {
|
|
||||||
JSONObject robj = new JSONObject();
|
|
||||||
robj.put("code", ws.getJSONObject(i).getString("extra_code"));
|
|
||||||
robj.put("name", ws.getJSONObject(i).getString("remark"));
|
|
||||||
robj.put("db", ws.getJSONObject(i).getString("extra_name"));
|
|
||||||
w_arry.add(robj);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!r_arry.isEmpty()) {
|
|
||||||
result.put("rs", r_arry);
|
|
||||||
}
|
|
||||||
if (!w_arry.isEmpty()) {
|
|
||||||
result.put("ws", w_arry);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
//处理DB读和写属性
|
//处理DB读和写属性
|
||||||
/* result.put("rs", ReadUtil.getReadableItemDtos());
|
// result.put("rs", ReadUtil.getReadableItemDtos());
|
||||||
result.put("ws", ReadUtil.getWriteableItemDtos());*/
|
// result.put("ws", ReadUtil.getWriteableItemDtos());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,13 @@
|
|||||||
package org.nl.acs.device_driver.lnsh.lnsh_one_rgv;
|
package org.nl.acs.device_driver.lnsh.lnsh_one_rgv;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
|
import org.nl.acs.device.device_driver.standard_inspect.ReadUtil;
|
||||||
import org.nl.acs.device.service.DeviceService;
|
import org.nl.acs.device.service.DeviceService;
|
||||||
import org.nl.acs.device_driver.DeviceDriver;
|
import org.nl.acs.device_driver.DeviceDriver;
|
||||||
@@ -14,15 +18,18 @@ import org.nl.acs.instruction.service.InstructionService;
|
|||||||
import org.nl.acs.instruction.service.dto.Instruction;
|
import org.nl.acs.instruction.service.dto.Instruction;
|
||||||
import org.nl.acs.log.service.LogServer;
|
import org.nl.acs.log.service.LogServer;
|
||||||
import org.nl.acs.opc.Device;
|
import org.nl.acs.opc.Device;
|
||||||
|
import org.nl.acs.opc.DeviceAppService;
|
||||||
|
import org.nl.acs.opc.DeviceAppServiceImpl;
|
||||||
import org.nl.acs.route.service.RouteLineService;
|
import org.nl.acs.route.service.RouteLineService;
|
||||||
|
import org.nl.acs.route.service.dto.RouteLineDto;
|
||||||
import org.nl.acs.task.service.TaskService;
|
import org.nl.acs.task.service.TaskService;
|
||||||
|
import org.nl.acs.task.service.dto.TaskDto;
|
||||||
import org.nl.utils.SpringContextHolder;
|
import org.nl.utils.SpringContextHolder;
|
||||||
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
import org.openscada.opc.lib.da.Server;
|
import org.openscada.opc.lib.da.Server;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.*;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 嘉耐单工位RGV
|
* 嘉耐单工位RGV
|
||||||
@@ -42,6 +49,8 @@ public class LnshOneRGVDeviceDriver extends AbstractOpcDeviceDriver implements D
|
|||||||
TaskService taskserver = SpringContextHolder.getBean("taskServiceImpl");
|
TaskService taskserver = SpringContextHolder.getBean("taskServiceImpl");
|
||||||
@Autowired
|
@Autowired
|
||||||
LogServer logServer = SpringContextHolder.getBean("logServerImpl");
|
LogServer logServer = SpringContextHolder.getBean("logServerImpl");
|
||||||
|
@Autowired
|
||||||
|
DeviceAppService deviceAppservice = SpringContextHolder.getBean(DeviceAppServiceImpl.class);
|
||||||
|
|
||||||
int mode = 0;
|
int mode = 0;
|
||||||
int error = 0;
|
int error = 0;
|
||||||
@@ -82,6 +91,11 @@ public class LnshOneRGVDeviceDriver extends AbstractOpcDeviceDriver implements D
|
|||||||
int qty = 0;
|
int qty = 0;
|
||||||
int last_qty = 0;
|
int last_qty = 0;
|
||||||
|
|
||||||
|
private Date instruction_require_time = new Date();
|
||||||
|
private Date instruction_finished_time = new Date();
|
||||||
|
private Date instruction_apply_time = new Date();
|
||||||
|
private int instruction_require_time_out = 3000;
|
||||||
|
|
||||||
String specifications = "";
|
String specifications = "";
|
||||||
String last_specifications = "";
|
String last_specifications = "";
|
||||||
|
|
||||||
@@ -92,7 +106,7 @@ public class LnshOneRGVDeviceDriver extends AbstractOpcDeviceDriver implements D
|
|||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() throws Exception {
|
||||||
String message = null;
|
String message = null;
|
||||||
try {
|
try {
|
||||||
device_code = this.getDeviceCode();
|
device_code = this.getDeviceCode();
|
||||||
@@ -189,7 +203,9 @@ public class LnshOneRGVDeviceDriver extends AbstractOpcDeviceDriver implements D
|
|||||||
log.debug("设备运转模式:等待工作");
|
log.debug("设备运转模式:等待工作");
|
||||||
return;
|
return;
|
||||||
case 2:
|
case 2:
|
||||||
|
if (mode == 2 && move_1 == 0 && action_1 == 0 && !requireSucess) {
|
||||||
|
instruction_require();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -269,4 +285,78 @@ public class LnshOneRGVDeviceDriver extends AbstractOpcDeviceDriver implements D
|
|||||||
Map<String, Object> itemMap = new HashMap<String, Object>();
|
Map<String, Object> itemMap = new HashMap<String, Object>();
|
||||||
ReadUtil.write(itemMap, server);
|
ReadUtil.write(itemMap, server);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public synchronized boolean instruction_require() throws Exception {
|
||||||
|
Date date = new Date();
|
||||||
|
if (date.getTime() - this.instruction_apply_time.getTime() < (long) this.instruction_require_time_out) {
|
||||||
|
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
this.instruction_apply_time = date;
|
||||||
|
String linkobj = (String)this.getDevice().getExtraValue().get("get_device_code");
|
||||||
|
String demosub = linkobj.substring(1,linkobj.length()-1);
|
||||||
|
String demoArray[] = demosub.split(",");
|
||||||
|
List<String> device_code_list = Arrays.asList(demoArray);
|
||||||
|
TaskDto task = null;
|
||||||
|
for(int i=0;i<device_code_list.size();i++){
|
||||||
|
task = taskserver.queryTaskByDeviceCode(device_code_list.get(i).replace("\"","")).get(0);
|
||||||
|
if(ObjectUtil.isNotEmpty(task)) break;
|
||||||
|
}
|
||||||
|
if (!ObjectUtil.isEmpty(task)) {
|
||||||
|
String taskid = task.getTask_id();
|
||||||
|
String taskcode = task.getTask_code();
|
||||||
|
String vehiclecode = task.getVehicle_code();
|
||||||
|
String priority = task.getPriority();
|
||||||
|
String start_point_code = task.getStart_point_code();
|
||||||
|
String start_device_code = task.getStart_device_code();
|
||||||
|
String route_plan_code = task.getRoute_plan_code();
|
||||||
|
String next_device_code = "";
|
||||||
|
|
||||||
|
Device startdevice = deviceAppservice.findDeviceByCode(start_device_code);
|
||||||
|
Device nextdevice = deviceAppservice.findDeviceByCode(next_device_code);
|
||||||
|
String next_point_code;
|
||||||
|
|
||||||
|
Instruction instdto = new Instruction();
|
||||||
|
instdto.setInstruction_id(IdUtil.simpleUUID());
|
||||||
|
instdto.setRoute_plan_code(route_plan_code);
|
||||||
|
instdto.setRemark(task.getRemark());
|
||||||
|
instdto.setMaterial(task.getMaterial());
|
||||||
|
instdto.setQuantity(task.getQuantity());
|
||||||
|
instdto.setTask_id(taskid);
|
||||||
|
instdto.setTask_code(taskcode);
|
||||||
|
instdto.setVehicle_code(vehiclecode);
|
||||||
|
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_device_code);
|
||||||
|
instdto.setPriority(priority);
|
||||||
|
instdto.setInstruction_status("0");
|
||||||
|
instdto.setExecute_device_code(start_point_code);
|
||||||
|
|
||||||
|
try {
|
||||||
|
instructionService.create(instdto);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
//创建指令后修改任务状态
|
||||||
|
WQLObject taskwo = WQLObject.getWQLObject("acs_task");
|
||||||
|
|
||||||
|
task.setTask_status("1");
|
||||||
|
//创建指令后修改任务状态
|
||||||
|
task.setTask_status("1");
|
||||||
|
taskserver.update(task);
|
||||||
|
|
||||||
|
requireSucess = false;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,10 +34,7 @@ import org.openscada.opc.lib.da.Server;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Date;
|
import java.util.*;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 嘉耐-包装码垛机械手
|
* 嘉耐-包装码垛机械手
|
||||||
@@ -1003,7 +1000,11 @@ public class LnshPackagePalletManipulatorDeviceDriver extends AbstractOpcDeviceD
|
|||||||
} else {
|
} else {
|
||||||
this.instruction_require_time = date;
|
this.instruction_require_time = date;
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
json.put("device_code",this.device_code);
|
String linkobj = (String)this.getDevice().getExtraValue().get("link_device_code");
|
||||||
|
String demosub = linkobj.substring(1,linkobj.length()-1);
|
||||||
|
String demoArray[] = demosub.split(",");
|
||||||
|
List<String> demoList = Arrays.asList(demoArray);
|
||||||
|
json.put("device_code",demoList.get(put_station-1).replace("\"",""));
|
||||||
json.put("qty",qty);
|
json.put("qty",qty);
|
||||||
json.put("vehicle_code",barcode);
|
json.put("vehicle_code",barcode);
|
||||||
json.put("is_full","1");
|
json.put("is_full","1");
|
||||||
@@ -1065,6 +1066,7 @@ public class LnshPackagePalletManipulatorDeviceDriver extends AbstractOpcDeviceD
|
|||||||
json.put("one_qty",one_qty);
|
json.put("one_qty",one_qty);
|
||||||
json.put("two_qty",two_qty);
|
json.put("two_qty",two_qty);
|
||||||
json.put("tool_coordinate",tool_coordinate);
|
json.put("tool_coordinate",tool_coordinate);
|
||||||
|
json.put("material_code",material);
|
||||||
|
|
||||||
HttpResponse result = acsToWmsService.applyTaskManipulatorToWms(json);
|
HttpResponse result = acsToWmsService.applyTaskManipulatorToWms(json);
|
||||||
if (ObjectUtil.isNotEmpty(result)) {
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
@@ -1179,10 +1181,12 @@ public class LnshPackagePalletManipulatorDeviceDriver extends AbstractOpcDeviceD
|
|||||||
} else {
|
} else {
|
||||||
this.instruction_require_time = date;
|
this.instruction_require_time = date;
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
json.put("device_code",this.device_code);
|
String linkobj = (String)this.getDevice().getExtraValue().get("link_device_code");
|
||||||
|
String demosub = linkobj.substring(1,linkobj.length()-1);
|
||||||
|
String demoArray[] = demosub.split(",");
|
||||||
|
List<String> demoList = Arrays.asList(demoArray);
|
||||||
|
json.put("device_code",demoList.get(put_station-1).replace("\"",""));
|
||||||
json.put("type","4");
|
json.put("type","4");
|
||||||
json.put("qty",qty);
|
|
||||||
json.put("vehicle_code",barcode);
|
|
||||||
HttpResponse result = acsToWmsService.lnshApplyTaskToWms(json);
|
HttpResponse result = acsToWmsService.lnshApplyTaskToWms(json);
|
||||||
if (ObjectUtil.isNotEmpty(result)) {
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
||||||
|
|||||||
@@ -31,10 +31,7 @@ import org.nl.wql.core.bean.WQLObject;
|
|||||||
import org.openscada.opc.lib.da.Server;
|
import org.openscada.opc.lib.da.Server;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.*;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 嘉耐拆垛机械手
|
* 嘉耐拆垛机械手
|
||||||
@@ -236,23 +233,52 @@ public class LnshSplitManipulatorDeviceDriver extends AbstractOpcDeviceDriver im
|
|||||||
return;
|
return;
|
||||||
case 2:
|
case 2:
|
||||||
break;
|
break;
|
||||||
|
case 4:
|
||||||
|
//排产单确认
|
||||||
|
// if (!requireSucess && !order_No.equals("0")) {
|
||||||
|
// JSONObject json = new JSONObject();
|
||||||
|
// json.put("producetask_code",order_No);
|
||||||
|
// json.put("device_code",this.device_code);
|
||||||
|
// json.put("material_code",material);
|
||||||
|
// json.put("qty",qty);
|
||||||
|
// json.put("type","1");
|
||||||
|
// enterProduction(json);
|
||||||
|
// }
|
||||||
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
//获取托盘信息
|
//叫料出库
|
||||||
if (!requireSucess) {
|
if (!requireSucess) {
|
||||||
getVehicle();
|
applyMaterialOut();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
//拆垛完成
|
//申请空盘入库
|
||||||
if (!requireSucess) {
|
if (!requireSucess) {
|
||||||
palletizing();
|
applyEmptyIn();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 7:
|
// case 7:
|
||||||
//申请空盘
|
// //码垛强制完成
|
||||||
if (!requireSucess) {
|
// if (!requireSucess) {
|
||||||
applyEmpty();
|
//
|
||||||
}
|
// }
|
||||||
|
// break;
|
||||||
|
// case 8:
|
||||||
|
// //申请空盘
|
||||||
|
// if (!requireSucess) {
|
||||||
|
// applyEmpty();
|
||||||
|
// }
|
||||||
|
case 9:
|
||||||
|
//工单完成
|
||||||
|
// if (!requireSucess && !order_No.equals("0")) {
|
||||||
|
// JSONObject json = new JSONObject();
|
||||||
|
// json.put("producetask_code",order_No);
|
||||||
|
// json.put("device_code",this.device_code);
|
||||||
|
// json.put("material_code",material);
|
||||||
|
// json.put("qty",qty);
|
||||||
|
// json.put("type","3");
|
||||||
|
// enterProduction(json);
|
||||||
|
// }
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -294,6 +320,73 @@ public class LnshSplitManipulatorDeviceDriver extends AbstractOpcDeviceDriver im
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请物料出库
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
*/
|
||||||
|
public synchronized boolean applyMaterialOut() {
|
||||||
|
Date date = new Date();
|
||||||
|
if (date.getTime() - this.instruction_require_time.getTime() < (long) this.instruction_require_time_out) {
|
||||||
|
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
this.instruction_require_time = date;
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
String linkobj = (String)this.getDevice().getExtraValue().get("link_device_code");
|
||||||
|
String demosub = linkobj.substring(1,linkobj.length()-1);
|
||||||
|
String demoArray[] = demosub.split(",");
|
||||||
|
List<String> demoList = Arrays.asList(demoArray);
|
||||||
|
json.put("device_code",demoList.get(getStation-1).replace("\"",""));
|
||||||
|
json.put("type","2");
|
||||||
|
json.put("is_full","1");
|
||||||
|
|
||||||
|
HttpResponse result = acsToWmsService.lnshApplyTaskToWms(json);
|
||||||
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
|
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
||||||
|
if (result.getStatus() == 200 && jsonObject.get("status").equals("200")) {
|
||||||
|
this.writing(this.mode);
|
||||||
|
this.setRequireSucess(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请空盘入库
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
*/
|
||||||
|
public synchronized boolean applyEmptyIn() {
|
||||||
|
Date date = new Date();
|
||||||
|
if (date.getTime() - this.instruction_require_time.getTime() < (long) this.instruction_require_time_out) {
|
||||||
|
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
this.instruction_require_time = date;
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
String linkobj = (String)this.getDevice().getExtraValue().get("link_device_code");
|
||||||
|
String demosub = linkobj.substring(1,linkobj.length()-1);
|
||||||
|
String demoArray[] = demosub.split(",");
|
||||||
|
List<String> demoList = Arrays.asList(demoArray);
|
||||||
|
json.put("device_code",demoList.get(getStation-1).replace("\"",""));
|
||||||
|
json.put("type","3");
|
||||||
|
|
||||||
|
HttpResponse result = acsToWmsService.lnshApplyTaskToWms(json);
|
||||||
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
|
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
||||||
|
if (result.getStatus() == 200 && jsonObject.get("status").equals("200")) {
|
||||||
|
this.writing(this.mode);
|
||||||
|
this.setRequireSucess(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取托盘信息
|
* 获取托盘信息
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -115,6 +115,7 @@ public class LnshStationDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
String last_barcode;
|
String last_barcode;
|
||||||
String specifications = "";
|
String specifications = "";
|
||||||
String last_specifications = "";
|
String last_specifications = "";
|
||||||
|
int container_type =0;
|
||||||
int batch = 0;
|
int batch = 0;
|
||||||
int last_batch = 0;
|
int last_batch = 0;
|
||||||
|
|
||||||
@@ -142,7 +143,7 @@ public class LnshStationDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
barcode = this.itemProtocol.getBarcode();
|
barcode = this.itemProtocol.getBarcode();
|
||||||
batch = this.itemProtocol.getBatch();
|
batch = this.itemProtocol.getBatch();
|
||||||
specifications = this.itemProtocol.getSpecifications();
|
specifications = this.itemProtocol.getSpecifications();
|
||||||
|
container_type = itemProtocol.getContainer_type();
|
||||||
if (mode != last_mode) {
|
if (mode != last_mode) {
|
||||||
this.setRequireSucess(false);
|
this.setRequireSucess(false);
|
||||||
logServer.deviceLog(this.device_code,"mode" ,String.valueOf(mode));
|
logServer.deviceLog(this.device_code,"mode" ,String.valueOf(mode));
|
||||||
@@ -536,7 +537,7 @@ public class LnshStationDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
JSONObject jsonObject = JSONObject.parseObject(result.body());
|
||||||
if (result.getStatus() == 200 && StrUtil.equals(jsonObject.get("status").toString(),"200")) {
|
if (result.getStatus() == 200 && StrUtil.equals(jsonObject.get("status").toString(),"200")) {
|
||||||
String code = jsonObject.getString("code");
|
String code = jsonObject.getString("code");
|
||||||
this.writing(this.mode);
|
this.writing(1);
|
||||||
this.writing(2,Integer.parseInt(code));
|
this.writing(2,Integer.parseInt(code));
|
||||||
this.setRequireSucess(true);
|
this.setRequireSucess(true);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -462,24 +462,6 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
|
|
||||||
//无光电普通站点
|
//无光电普通站点
|
||||||
StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver;
|
StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver;
|
||||||
//无光电特殊站点
|
|
||||||
SpecialOrdinarySiteDeviceDriver specialOrdinarySiteDeviceDriver;
|
|
||||||
//空盘站点
|
|
||||||
StandardEmptyPalletSiteDeviceDriver standardEmptyPalletSiteDeviceDriver;
|
|
||||||
//检测站点
|
|
||||||
StandardInspectSiteDeviceDriver standardInspectSiteDevicedriver;
|
|
||||||
//检测站点-无PLC
|
|
||||||
NonLineInspectSiteDeviceDriver nonLineInspectSiteDeviceDriver;
|
|
||||||
//区域管制站点(机械手)
|
|
||||||
StandardManipulatorInspectSiteDeviceDriver standardManipulatorInspectSiteDeviceDriver;
|
|
||||||
//区域管制站点-无PLC
|
|
||||||
NonLineManipulatorInspectSiteDeviceDriver nonLineManipulatorInspectSiteDeviceDriver;
|
|
||||||
//控制点
|
|
||||||
StandardCoveyorControlDeviceDriver standardCoveyorControlDeviceDriver;
|
|
||||||
//控制点-带扫码
|
|
||||||
StandardCoveyorControlWithScannerDeviceDriver standardCoveyorControlWithScannerDeviceDriver;
|
|
||||||
//控制点-PLC扫码
|
|
||||||
StandardCoveyorControlWithPlcScannerDeviceDriver standardCoveyorControlWithPlcScannerDeviceDriver;
|
|
||||||
//监控点
|
//监控点
|
||||||
StandardCoveyorMonitorDeviceDriver standardCoveyorMonitorDeviceDriver;
|
StandardCoveyorMonitorDeviceDriver standardCoveyorMonitorDeviceDriver;
|
||||||
//扫码器
|
//扫码器
|
||||||
@@ -488,8 +470,6 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
MachinesSiteDeviceDriver machinesSiteDeviceDriver;
|
MachinesSiteDeviceDriver machinesSiteDeviceDriver;
|
||||||
//自动门
|
//自动门
|
||||||
StandardAutodoorDeviceDriver standardAutodoorDeviceDriver;
|
StandardAutodoorDeviceDriver standardAutodoorDeviceDriver;
|
||||||
//称重设备
|
|
||||||
WeighingSiteDeviceDriver weighingSiteDeviceDriver;
|
|
||||||
//机械手码垛驱动(区分托盘类型)
|
//机械手码垛驱动(区分托盘类型)
|
||||||
StandardManipulatorStackingSiteDeviceDriver standardManipulatorStackingSiteDeviceDriver;
|
StandardManipulatorStackingSiteDeviceDriver standardManipulatorStackingSiteDeviceDriver;
|
||||||
//光电检测站点(优先入库)
|
//光电检测站点(优先入库)
|
||||||
@@ -559,6 +539,8 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
jo.put("barcode", lnshStationDeviceDriver.getBarcode());
|
jo.put("barcode", lnshStationDeviceDriver.getBarcode());
|
||||||
jo.put("specifications", lnshStationDeviceDriver.getSpecifications());
|
jo.put("specifications", lnshStationDeviceDriver.getSpecifications());
|
||||||
jo.put("batch", lnshStationDeviceDriver.getBatch());
|
jo.put("batch", lnshStationDeviceDriver.getBatch());
|
||||||
|
jo.put("pallet_type", lnshStationDeviceDriver.getContainer_type());
|
||||||
|
|
||||||
} else if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) {
|
} else if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) {
|
||||||
lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver();
|
lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
@@ -880,19 +862,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
throw new Exception("未找到对应设备:" + device_code);
|
throw new Exception("未找到对应设备:" + device_code);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (device.getDeviceDriver() instanceof StandardCoveyorControlDeviceDriver) {
|
if (device.getDeviceDriver() instanceof StandardAutodoorDeviceDriver) {
|
||||||
standardCoveyorControlDeviceDriver = (StandardCoveyorControlDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardCoveyorControlDeviceDriver.getMode());
|
|
||||||
jo.put("move", standardCoveyorControlDeviceDriver.getMove());
|
|
||||||
jo.put("hasGoods", standardCoveyorControlDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardCoveyorControlDeviceDriver.getIsonline());
|
|
||||||
jo.put("error", standardCoveyorControlDeviceDriver.getError());
|
|
||||||
jo.put("isError", standardCoveyorControlDeviceDriver.getIserror());
|
|
||||||
jo.put("requestSucess", standardCoveyorControlDeviceDriver.getRequireSucess());
|
|
||||||
jo.put("applySucess", standardCoveyorControlDeviceDriver.getApplySucess());
|
|
||||||
jo.put("message", standardCoveyorControlDeviceDriver.getMessage());
|
|
||||||
} else if (device.getDeviceDriver() instanceof StandardAutodoorDeviceDriver) {
|
|
||||||
standardAutodoorDeviceDriver = (StandardAutodoorDeviceDriver) device.getDeviceDriver();
|
standardAutodoorDeviceDriver = (StandardAutodoorDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
jo.put("mode", standardAutodoorDeviceDriver.getMode());
|
jo.put("mode", standardAutodoorDeviceDriver.getMode());
|
||||||
@@ -901,126 +871,17 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
jo.put("error", standardAutodoorDeviceDriver.getError());
|
jo.put("error", standardAutodoorDeviceDriver.getError());
|
||||||
jo.put("isError", standardAutodoorDeviceDriver.getIserror());
|
jo.put("isError", standardAutodoorDeviceDriver.getIserror());
|
||||||
} else if (device.getDeviceDriver() instanceof StandardCoveyorMonitorDeviceDriver) {
|
} else if (device.getDeviceDriver() instanceof StandardCoveyorMonitorDeviceDriver) {
|
||||||
standardCoveyorMonitorDeviceDriver = (StandardCoveyorMonitorDeviceDriver) device.getDeviceDriver();
|
standardCoveyorMonitorDeviceDriver = (StandardCoveyorMonitorDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
jo.put("mode", standardCoveyorMonitorDeviceDriver.getMode());
|
jo.put("mode", standardCoveyorMonitorDeviceDriver.getMode());
|
||||||
jo.put("move", standardCoveyorMonitorDeviceDriver.getMove());
|
jo.put("move", standardCoveyorMonitorDeviceDriver.getMove());
|
||||||
jo.put("hasGoods", standardCoveyorMonitorDeviceDriver.getHasGoods());
|
jo.put("hasGoods", standardCoveyorMonitorDeviceDriver.getHasGoods());
|
||||||
jo.put("isOnline", standardCoveyorMonitorDeviceDriver.getIsonline());
|
jo.put("isOnline", standardCoveyorMonitorDeviceDriver.getIsonline());
|
||||||
jo.put("error", standardCoveyorMonitorDeviceDriver.getError());
|
jo.put("error", standardCoveyorMonitorDeviceDriver.getError());
|
||||||
jo.put("isError", standardCoveyorMonitorDeviceDriver.getIserror());
|
jo.put("isError", standardCoveyorMonitorDeviceDriver.getIserror());
|
||||||
jo.put("message", standardCoveyorMonitorDeviceDriver.getMessage());
|
jo.put("message", standardCoveyorMonitorDeviceDriver.getMessage());
|
||||||
} else if (device.getDeviceDriver() instanceof StandardCoveyorControlWithScannerDeviceDriver) {
|
//普通站点
|
||||||
standardCoveyorControlWithScannerDeviceDriver = (StandardCoveyorControlWithScannerDeviceDriver) device.getDeviceDriver();
|
} else if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) {
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardCoveyorControlWithScannerDeviceDriver.getMode());
|
|
||||||
jo.put("move", standardCoveyorControlWithScannerDeviceDriver.getMove());
|
|
||||||
jo.put("hasGoods", standardCoveyorControlWithScannerDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardCoveyorControlWithScannerDeviceDriver.getIsonline());
|
|
||||||
jo.put("error", standardCoveyorControlWithScannerDeviceDriver.getError());
|
|
||||||
jo.put("isError", standardCoveyorControlWithScannerDeviceDriver.getIserror());
|
|
||||||
jo.put("height", standardCoveyorControlWithScannerDeviceDriver.getHeight());
|
|
||||||
jo.put("operation_type", standardCoveyorControlWithScannerDeviceDriver.getOperation_type());
|
|
||||||
jo.put("direction", standardCoveyorControlWithScannerDeviceDriver.getDirection());
|
|
||||||
jo.put("action", standardCoveyorControlWithScannerDeviceDriver.getAction());
|
|
||||||
jo.put("ioaction", standardCoveyorControlWithScannerDeviceDriver.getIoaction());
|
|
||||||
jo.put("container", StrUtil.isEmpty(standardCoveyorControlWithScannerDeviceDriver.barcode()) ? "" : standardCoveyorControlWithScannerDeviceDriver.barcode());
|
|
||||||
jo.put("message", standardCoveyorControlWithScannerDeviceDriver.getMessage());
|
|
||||||
jo.put("requestSucess", standardCoveyorControlWithScannerDeviceDriver.getRequireSucess().toString());
|
|
||||||
jo.put("applySucess", standardCoveyorControlWithScannerDeviceDriver.getApplySucess().toString());
|
|
||||||
jo.put("instruction_message", standardCoveyorControlWithScannerDeviceDriver.getInst_message());
|
|
||||||
} else if (device.getDeviceDriver() instanceof StandardCoveyorControlWithPlcScannerDeviceDriver) {
|
|
||||||
standardCoveyorControlWithPlcScannerDeviceDriver = (StandardCoveyorControlWithPlcScannerDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardCoveyorControlWithPlcScannerDeviceDriver.getMode());
|
|
||||||
jo.put("move", standardCoveyorControlWithPlcScannerDeviceDriver.getMove());
|
|
||||||
jo.put("hasGoods", standardCoveyorControlWithPlcScannerDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardCoveyorControlWithPlcScannerDeviceDriver.getIsonline());
|
|
||||||
jo.put("error", standardCoveyorControlWithPlcScannerDeviceDriver.getError());
|
|
||||||
jo.put("isError", standardCoveyorControlWithPlcScannerDeviceDriver.getIserror());
|
|
||||||
jo.put("height", standardCoveyorControlWithPlcScannerDeviceDriver.getHeight());
|
|
||||||
jo.put("operation_type", standardCoveyorControlWithPlcScannerDeviceDriver.getOperation_type());
|
|
||||||
jo.put("direction", standardCoveyorControlWithPlcScannerDeviceDriver.getDirection());
|
|
||||||
jo.put("action", standardCoveyorControlWithPlcScannerDeviceDriver.getAction());
|
|
||||||
jo.put("ioaction", standardCoveyorControlWithPlcScannerDeviceDriver.getIoaction());
|
|
||||||
jo.put("container", StrUtil.isEmpty(standardCoveyorControlWithPlcScannerDeviceDriver.getBarcode()) ? "" : standardCoveyorControlWithPlcScannerDeviceDriver.getBarcode());
|
|
||||||
jo.put("message", standardCoveyorControlWithPlcScannerDeviceDriver.getMessage());
|
|
||||||
jo.put("requestSucess", standardCoveyorControlWithPlcScannerDeviceDriver.getRequireSucess().toString());
|
|
||||||
jo.put("applySucess", standardCoveyorControlWithPlcScannerDeviceDriver.getApplySucess().toString());
|
|
||||||
jo.put("instruction_message", standardCoveyorControlWithPlcScannerDeviceDriver.getInst_message());
|
|
||||||
}
|
|
||||||
//检测站点
|
|
||||||
else if (device.getDeviceDriver() instanceof StandardInspectSiteDeviceDriver) {
|
|
||||||
standardInspectSiteDevicedriver = (StandardInspectSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardInspectSiteDevicedriver.getMode());
|
|
||||||
jo.put("move", standardInspectSiteDevicedriver.getMove());
|
|
||||||
jo.put("hasGoods", standardInspectSiteDevicedriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardInspectSiteDevicedriver.getIsonline());
|
|
||||||
jo.put("error", standardInspectSiteDevicedriver.getError());
|
|
||||||
jo.put("isError", standardInspectSiteDevicedriver.getIserror());
|
|
||||||
jo.put("container", standardInspectSiteDevicedriver.getContainer());
|
|
||||||
jo.put("message", standardInspectSiteDevicedriver.getMessage());
|
|
||||||
}
|
|
||||||
//检测站点-无PLC
|
|
||||||
else if (device.getDeviceDriver() instanceof NonLineInspectSiteDeviceDriver) {
|
|
||||||
nonLineInspectSiteDeviceDriver = (NonLineInspectSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", nonLineInspectSiteDeviceDriver.getMode());
|
|
||||||
jo.put("move", nonLineInspectSiteDeviceDriver.getMove());
|
|
||||||
jo.put("isOnline", nonLineInspectSiteDeviceDriver.getIs_online());
|
|
||||||
jo.put("hasGoods", nonLineInspectSiteDeviceDriver.getHasGoods());
|
|
||||||
jo.put("error", nonLineInspectSiteDeviceDriver.getError());
|
|
||||||
jo.put("isError", nonLineInspectSiteDeviceDriver.getIserror());
|
|
||||||
jo.put("container", nonLineInspectSiteDeviceDriver.getContainer());
|
|
||||||
jo.put("message", nonLineInspectSiteDeviceDriver.getMessage());
|
|
||||||
}
|
|
||||||
//区域管制站点(机械手)
|
|
||||||
else if (device.getDeviceDriver() instanceof StandardManipulatorInspectSiteDeviceDriver) {
|
|
||||||
standardManipulatorInspectSiteDeviceDriver = (StandardManipulatorInspectSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardManipulatorInspectSiteDeviceDriver.getMode());
|
|
||||||
jo.put("move", standardManipulatorInspectSiteDeviceDriver.getMove());
|
|
||||||
jo.put("action", standardManipulatorInspectSiteDeviceDriver.getActoin());
|
|
||||||
jo.put("io_action", standardManipulatorInspectSiteDeviceDriver.getIo_action());
|
|
||||||
jo.put("hasGoods", standardManipulatorInspectSiteDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardManipulatorInspectSiteDeviceDriver.getIsonline());
|
|
||||||
jo.put("error", standardManipulatorInspectSiteDeviceDriver.getError());
|
|
||||||
jo.put("isError", standardManipulatorInspectSiteDeviceDriver.getIserror());
|
|
||||||
jo.put("container", standardManipulatorInspectSiteDeviceDriver.getContainer());
|
|
||||||
jo.put("message", standardManipulatorInspectSiteDeviceDriver.getMessage());
|
|
||||||
}
|
|
||||||
//区域管制站点-无PLC(机械手)
|
|
||||||
else if (device.getDeviceDriver() instanceof NonLineManipulatorInspectSiteDeviceDriver) {
|
|
||||||
nonLineManipulatorInspectSiteDeviceDriver = (NonLineManipulatorInspectSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", nonLineManipulatorInspectSiteDeviceDriver.getMode());
|
|
||||||
jo.put("move", nonLineManipulatorInspectSiteDeviceDriver.getMove());
|
|
||||||
jo.put("action", nonLineManipulatorInspectSiteDeviceDriver.getAction());
|
|
||||||
jo.put("io_action", nonLineManipulatorInspectSiteDeviceDriver.getIoaction());
|
|
||||||
jo.put("hasGoods", nonLineManipulatorInspectSiteDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", nonLineManipulatorInspectSiteDeviceDriver.getIs_online());
|
|
||||||
jo.put("error", nonLineManipulatorInspectSiteDeviceDriver.getError());
|
|
||||||
jo.put("isError", nonLineManipulatorInspectSiteDeviceDriver.getIserror());
|
|
||||||
jo.put("container", nonLineManipulatorInspectSiteDeviceDriver.getContainer());
|
|
||||||
jo.put("message", nonLineManipulatorInspectSiteDeviceDriver.getMessage());
|
|
||||||
}
|
|
||||||
//空盘站点
|
|
||||||
else if (device.getDeviceDriver() instanceof StandardEmptyPalletSiteDeviceDriver) {
|
|
||||||
standardEmptyPalletSiteDeviceDriver = (StandardEmptyPalletSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardEmptyPalletSiteDeviceDriver.getMode());
|
|
||||||
jo.put("move", standardEmptyPalletSiteDeviceDriver.getMove());
|
|
||||||
jo.put("number", standardEmptyPalletSiteDeviceDriver.getNumber());
|
|
||||||
jo.put("hasGoods", standardEmptyPalletSiteDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardEmptyPalletSiteDeviceDriver.getIsonline());
|
|
||||||
jo.put("isError", standardEmptyPalletSiteDeviceDriver.getIserror());
|
|
||||||
jo.put("error", standardEmptyPalletSiteDeviceDriver.getError());
|
|
||||||
jo.put("container", standardEmptyPalletSiteDeviceDriver.getContainer());
|
|
||||||
jo.put("message", standardEmptyPalletSiteDeviceDriver.getMessage());
|
|
||||||
}
|
|
||||||
//普通站点
|
|
||||||
else if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) {
|
|
||||||
standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver();
|
standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
jo.put("move", standardOrdinarySiteDeviceDriver.getMove());
|
jo.put("move", standardOrdinarySiteDeviceDriver.getMove());
|
||||||
@@ -1037,35 +898,6 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
jo.put("material", standardOrdinarySiteDeviceDriver.getMaterial());
|
jo.put("material", standardOrdinarySiteDeviceDriver.getMaterial());
|
||||||
jo.put("batch", standardOrdinarySiteDeviceDriver.getBatch());
|
jo.put("batch", standardOrdinarySiteDeviceDriver.getBatch());
|
||||||
|
|
||||||
}
|
|
||||||
//无光电特殊站点
|
|
||||||
else if (device.getDeviceDriver() instanceof SpecialOrdinarySiteDeviceDriver) {
|
|
||||||
specialOrdinarySiteDeviceDriver = (SpecialOrdinarySiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("move", specialOrdinarySiteDeviceDriver.getMove());
|
|
||||||
jo.put("container", specialOrdinarySiteDeviceDriver.getContainer());
|
|
||||||
jo.put("hasGoods", specialOrdinarySiteDeviceDriver.getHasGoods());
|
|
||||||
jo.put("isOnline", true);
|
|
||||||
//点击弹出
|
|
||||||
jo.put("is_click", true);
|
|
||||||
jo.put("device_type", device.getDevice_type());
|
|
||||||
jo.put("error", specialOrdinarySiteDeviceDriver.getError());
|
|
||||||
jo.put("isError", specialOrdinarySiteDeviceDriver.getIserror());
|
|
||||||
jo.put("container", specialOrdinarySiteDeviceDriver.getContainer());
|
|
||||||
jo.put("message", specialOrdinarySiteDeviceDriver.getMessage());
|
|
||||||
jo.put("material", specialOrdinarySiteDeviceDriver.getMaterial());
|
|
||||||
jo.put("batch", specialOrdinarySiteDeviceDriver.getBatch());
|
|
||||||
} else if (device.getDeviceDriver() instanceof StandardInspectSiteDeviceDriver) {
|
|
||||||
standardInspectSiteDevicedriver = (StandardInspectSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("mode", standardInspectSiteDevicedriver.getMode());
|
|
||||||
jo.put("move", standardInspectSiteDevicedriver.getMove());
|
|
||||||
jo.put("hasGoods", standardInspectSiteDevicedriver.getHasGoods());
|
|
||||||
jo.put("isOnline", standardInspectSiteDevicedriver.getIsonline());
|
|
||||||
jo.put("error", standardInspectSiteDevicedriver.getError());
|
|
||||||
jo.put("isError", standardInspectSiteDevicedriver.getIserror());
|
|
||||||
jo.put("container", standardInspectSiteDevicedriver.getContainer());
|
|
||||||
jo.put("message", standardInspectSiteDevicedriver.getMessage());
|
|
||||||
} else if (device.getDeviceDriver() instanceof StandardScannerDeviceDriver) {
|
} else if (device.getDeviceDriver() instanceof StandardScannerDeviceDriver) {
|
||||||
standardScannerDeviceDriver = (StandardScannerDeviceDriver) device.getDeviceDriver();
|
standardScannerDeviceDriver = (StandardScannerDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
@@ -1075,11 +907,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
jo.put("is_click", true);
|
jo.put("is_click", true);
|
||||||
jo.put("ip", standardScannerDeviceDriver.getIp());
|
jo.put("ip", standardScannerDeviceDriver.getIp());
|
||||||
jo.put("container", StrUtil.isEmpty(standardScannerDeviceDriver.readBarcode()) ? "" : standardScannerDeviceDriver.readBarcode());
|
jo.put("container", StrUtil.isEmpty(standardScannerDeviceDriver.readBarcode()) ? "" : standardScannerDeviceDriver.readBarcode());
|
||||||
} else if (device.getDeviceDriver() instanceof WeighingSiteDeviceDriver) {
|
|
||||||
weighingSiteDeviceDriver = (WeighingSiteDeviceDriver) device.getDeviceDriver();
|
|
||||||
jo.put("device_code", device.getDevice_code());
|
|
||||||
jo.put("isOnline", true);
|
|
||||||
jo.put("instruction_message", weighingSiteDeviceDriver.getInst_message());
|
|
||||||
} else if (device.getDeviceDriver() instanceof MachinesSiteDeviceDriver) {
|
} else if (device.getDeviceDriver() instanceof MachinesSiteDeviceDriver) {
|
||||||
machinesSiteDeviceDriver = (MachinesSiteDeviceDriver) device.getDeviceDriver();
|
machinesSiteDeviceDriver = (MachinesSiteDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
@@ -1130,7 +958,9 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
jo.put("barcode", lnshStationDeviceDriver.getBarcode());
|
jo.put("barcode", lnshStationDeviceDriver.getBarcode());
|
||||||
jo.put("specifications", lnshStationDeviceDriver.getSpecifications());
|
jo.put("specifications", lnshStationDeviceDriver.getSpecifications());
|
||||||
jo.put("batch", lnshStationDeviceDriver.getBatch());
|
jo.put("batch", lnshStationDeviceDriver.getBatch());
|
||||||
} else if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) {
|
jo.put("pallet_type", lnshStationDeviceDriver.getContainer_type());
|
||||||
|
|
||||||
|
} else if (device.getDeviceDriver() instanceof LnshPalletizingManipulatorSiteDeviceDriver) {
|
||||||
lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver();
|
lnshPalletizingManipulatorSiteDeviceDriver = (LnshPalletizingManipulatorSiteDeviceDriver) device.getDeviceDriver();
|
||||||
jo.put("device_code", device.getDevice_code());
|
jo.put("device_code", device.getDevice_code());
|
||||||
jo.put("mode", lnshPalletizingManipulatorSiteDeviceDriver.getMode());
|
jo.put("mode", lnshPalletizingManipulatorSiteDeviceDriver.getMode());
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ export default {
|
|||||||
electric_fence, lnsh_mixing_mill, lnsh_press, lnsh_palletizing_manipulator, lnsh_fold_disc_site, lnsh_kiln_lane, lnsh_kiln_truss,
|
electric_fence, lnsh_mixing_mill, lnsh_press, lnsh_palletizing_manipulator, lnsh_fold_disc_site, lnsh_kiln_lane, lnsh_kiln_truss,
|
||||||
lnsh_package_line, lnsh_out_kiln_truss, lnsh_package_pallet_manipulator, lnsh_pallet_storage, lnsh_labeling_machine, lnsh_split_manipulator, lnsh_rgv,
|
lnsh_package_line, lnsh_out_kiln_truss, lnsh_package_pallet_manipulator, lnsh_pallet_storage, lnsh_labeling_machine, lnsh_split_manipulator, lnsh_rgv,
|
||||||
lnsh_station, lnsh_Laminating_machine, lnsh_package_site, rljn_package_palletSplit_manipulator, standard_rgv, lnsh_palletizing_manipulator_site,
|
lnsh_station, lnsh_Laminating_machine, lnsh_package_site, rljn_package_palletSplit_manipulator, standard_rgv, lnsh_palletizing_manipulator_site,
|
||||||
lnsh_one_rgv},
|
lnsh_one_rgv },
|
||||||
dicts: ['device_type'],
|
dicts: ['device_type'],
|
||||||
mixins: [crud],
|
mixins: [crud],
|
||||||
data() {
|
data() {
|
||||||
|
|||||||
@@ -59,6 +59,7 @@
|
|||||||
<el-form-item label="取货点" prop="device_code">
|
<el-form-item label="取货点" prop="device_code">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.get_device_code"
|
v-model="form.get_device_code"
|
||||||
|
filterable
|
||||||
multiple
|
multiple
|
||||||
placeholder="请选择"
|
placeholder="请选择"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
class="filter-item"
|
class="filter-item"
|
||||||
@keyup.enter.native="crud.toQuery"
|
@keyup.enter.native="crud.toQuery"
|
||||||
/>
|
/>
|
||||||
<rrOperation/>
|
<rrOperation />
|
||||||
</div>
|
</div>
|
||||||
<!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
|
<!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
|
||||||
<crudOperation :permission="permission" />
|
<crudOperation :permission="permission" />
|
||||||
@@ -106,7 +106,7 @@ import crudOperation from '@crud/CRUD.operation'
|
|||||||
import udOperation from '@crud/UD.operation'
|
import udOperation from '@crud/UD.operation'
|
||||||
import pagination from '@crud/Pagination'
|
import pagination from '@crud/Pagination'
|
||||||
import crudProduceshiftorder from '@/api/acs/produceshiftorder/produceshiftorder'
|
import crudProduceshiftorder from '@/api/acs/produceshiftorder/produceshiftorder'
|
||||||
import crudTask from "@/api/acs/task/task";
|
import crudTask from '@/api/acs/task/task'
|
||||||
|
|
||||||
const defaultForm = { order_id: null, order_code: null, is_unbundling: null, order_status: null, qty: null, product_code: null, material_code: null, material_name: null, material_uuid: null, cust_code: null, cust_name: null, model: null, molten_pool: null, weight: null, create_by: null, create_time: null, update_by: null, update_time: null, is_deleted: null }
|
const defaultForm = { order_id: null, order_code: null, is_unbundling: null, order_status: null, qty: null, product_code: null, material_code: null, material_name: null, material_uuid: null, cust_code: null, cust_name: null, model: null, molten_pool: null, weight: null, create_by: null, create_time: null, update_by: null, update_time: null, is_deleted: null }
|
||||||
export default {
|
export default {
|
||||||
|
|||||||
Reference in New Issue
Block a user