add:新增从密集库出气胀轴行架任务
This commit is contained in:
@@ -38,6 +38,7 @@ import org.nl.config.lucene.service.dto.LuceneLogDto;
|
||||
import org.nl.system.service.param.ISysParamService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
@@ -52,7 +53,8 @@ public class XianGongAgvServiceImpl implements XianGongAgvService {
|
||||
private final DeviceAppService deviceAppService;
|
||||
private final ISysParamService paramService;
|
||||
@Autowired
|
||||
private final AcsToWmsService acsToWmsService;
|
||||
@Lazy
|
||||
private AcsToWmsService acsToWmsService;
|
||||
|
||||
@Autowired
|
||||
private IAcsPointAngleService acsPointAngleService;
|
||||
|
||||
@@ -11,10 +11,6 @@ import org.openscada.opc.lib.da.ItemState;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.CompletionException;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
public class AbstractOpcDeviceDriver extends AbstractDeviceDriver implements OpcDeviceDriver {
|
||||
UnifiedDataAccessor opcUdw;
|
||||
@@ -39,208 +35,202 @@ public class AbstractOpcDeviceDriver extends AbstractDeviceDriver implements Opc
|
||||
|
||||
|
||||
public void checkcontrol(Map<String, Object> itemValues) throws Exception {
|
||||
Group group = opcServerService.getServer(this.getOpcServer());
|
||||
Map<String, Object> write = new HashMap();
|
||||
Map<String, Item> readitems = new LinkedHashMap();
|
||||
List<String> itemsString = new ArrayList();
|
||||
itemsString = new ArrayList<>(itemValues.keySet());
|
||||
Iterator is = itemsString.iterator();
|
||||
|
||||
while (is.hasNext()) {
|
||||
String string = (String) is.next();
|
||||
try {
|
||||
Group group = opcServerService.getServer(this.getOpcServer());
|
||||
Map<String, Object> write = new HashMap();
|
||||
Map<String, Item> readitems = new LinkedHashMap();
|
||||
List<String> itemsString = new ArrayList();
|
||||
itemsString = new ArrayList<>(itemValues.keySet());
|
||||
Iterator is = itemsString.iterator();
|
||||
|
||||
while (is.hasNext()) {
|
||||
String string = (String) is.next();
|
||||
try {
|
||||
readitems.put(string, group.addItem(string));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
readitems.put(string, group.addItem(string));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
int i = 0;
|
||||
while (true) {
|
||||
//下发信号
|
||||
try {
|
||||
if (i == 0) {
|
||||
control(itemValues);
|
||||
} else {
|
||||
controlByNewConn(itemValues);
|
||||
}
|
||||
int i = 0;
|
||||
while (true) {
|
||||
//下发信号
|
||||
|
||||
try {
|
||||
if (i == 0) {
|
||||
control(itemValues);
|
||||
} else {
|
||||
controlByNewConn(itemValues);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// ThreadUtl.sleep(1000L);
|
||||
Map<String, Object> read = new HashMap();
|
||||
Map<Item, ItemState> itemStatus = null;
|
||||
boolean check = true;
|
||||
try {
|
||||
if (i > 0) {
|
||||
group = opcServerService.getServer(this.getOpcServer());
|
||||
itemsString = new ArrayList<>(itemValues.keySet());
|
||||
Iterator nis = itemsString.iterator();
|
||||
|
||||
while (nis.hasNext()) {
|
||||
String string = (String) nis.next();
|
||||
try {
|
||||
readitems.put(string, group.addItem(string));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Map<String, Object> read = new HashMap();
|
||||
Map<Item, ItemState> itemStatus = null;
|
||||
boolean check = true;
|
||||
try {
|
||||
if (i > 0) {
|
||||
group = opcServerService.getServer(this.getOpcServer());
|
||||
itemsString = new ArrayList<>(itemValues.keySet());
|
||||
Iterator nis = itemsString.iterator();
|
||||
itemStatus = group.read(true, (Item[]) readitems.values().toArray(new Item[0]));
|
||||
|
||||
while (nis.hasNext()) {
|
||||
String string = (String) nis.next();
|
||||
try {
|
||||
readitems.put(string, group.addItem(string));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
itemStatus = group.read(true, (Item[]) readitems.values().toArray(new Item[0]));
|
||||
} else {
|
||||
itemStatus = group.read(true, (Item[]) readitems.values().toArray(new Item[0]));
|
||||
}
|
||||
Set<Item> items = itemStatus.keySet();
|
||||
Iterator var15 = items.iterator();
|
||||
while (var15.hasNext()) {
|
||||
Item item = (Item) var15.next();
|
||||
ItemState itemState = (ItemState) itemStatus.get(item);
|
||||
Object value = OpcUtl.getValue(item, itemState);
|
||||
read.put(item.getId(), value);
|
||||
}
|
||||
|
||||
} else {
|
||||
itemStatus = group.read(true, (Item[]) readitems.values().toArray(new Item[0]));
|
||||
}
|
||||
Set<Item> items = itemStatus.keySet();
|
||||
Iterator var15 = items.iterator();
|
||||
while (var15.hasNext()) {
|
||||
Item item = (Item) var15.next();
|
||||
ItemState itemState = (ItemState) itemStatus.get(item);
|
||||
Object value = OpcUtl.getValue(item, itemState);
|
||||
read.put(item.getId(), value);
|
||||
}
|
||||
Iterator var24 = itemsString.iterator();
|
||||
|
||||
Iterator var24 = itemsString.iterator();
|
||||
|
||||
while (var24.hasNext()) {
|
||||
String itemString = (String) var24.next();
|
||||
if (!ObjectUtl.isEquals(String.valueOf(itemValues.get(itemString)), String.valueOf(read.get(itemString)))) {
|
||||
check = false;
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
while (var24.hasNext()) {
|
||||
String itemString = (String) var24.next();
|
||||
if (!ObjectUtl.isEquals(String.valueOf(itemValues.get(itemString)), String.valueOf(read.get(itemString)))) {
|
||||
check = false;
|
||||
}
|
||||
|
||||
if (check) {
|
||||
return ;
|
||||
}
|
||||
|
||||
if (i > 0) {
|
||||
ThreadUtl.sleep(100L);
|
||||
}
|
||||
|
||||
if (i >= 3) {
|
||||
// log.info("写入次数超过3次而失败");
|
||||
throw new RuntimeException("写入次数超过3次而失败");
|
||||
}
|
||||
++i;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Thread.currentThread().interrupt();
|
||||
throw new IllegalStateException("Interrupted", e);
|
||||
e.printStackTrace();
|
||||
check = false;
|
||||
}
|
||||
|
||||
if (check) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (i > 0) {
|
||||
ThreadUtl.sleep(100L);
|
||||
}
|
||||
|
||||
public boolean controlByNewConn (Map < String, Object > itemValues){
|
||||
if (i >= 3) {
|
||||
// log.info("写入次数超过3次而失败");
|
||||
throw new RuntimeException("写入次数超过3次而失败");
|
||||
}
|
||||
++i;
|
||||
}
|
||||
}
|
||||
|
||||
Iterator<Map.Entry<String, Object>> it = itemValues.entrySet().iterator();
|
||||
|
||||
ItemValue[] p2;
|
||||
p2 = new ItemValue[itemValues.size()];
|
||||
int i = 0;
|
||||
while (it.hasNext()) {
|
||||
Map.Entry<String, Object> entry = it.next();
|
||||
System.out.println("即将写入值:" + entry.getKey() + ":" + entry.getValue());
|
||||
p2[i] = new ItemValue();
|
||||
p2[i].setItem_code(entry.getKey());
|
||||
p2[i].setItem_value(entry.getValue());
|
||||
i++;
|
||||
public boolean controlByNewConn(Map<String, Object> itemValues) {
|
||||
|
||||
Iterator<Map.Entry<String, Object>> it = itemValues.entrySet().iterator();
|
||||
|
||||
ItemValue[] p2;
|
||||
p2 = new ItemValue[itemValues.size()];
|
||||
int i = 0;
|
||||
while (it.hasNext()) {
|
||||
Map.Entry<String, Object> entry = it.next();
|
||||
System.out.println("即将写入值:" + entry.getKey() + ":" + entry.getValue());
|
||||
p2[i] = new ItemValue();
|
||||
p2[i].setItem_code(entry.getKey());
|
||||
p2[i].setItem_value(entry.getValue());
|
||||
i++;
|
||||
}
|
||||
|
||||
return this.controlByNewConn(p2);
|
||||
}
|
||||
|
||||
public boolean control(Map<String, Object> itemValues) {
|
||||
|
||||
Iterator<Map.Entry<String, Object>> it = itemValues.entrySet().iterator();
|
||||
|
||||
ItemValue[] p2;
|
||||
p2 = new ItemValue[itemValues.size()];
|
||||
int i = 0;
|
||||
while (it.hasNext()) {
|
||||
Map.Entry<String, Object> entry = it.next();
|
||||
System.out.println("即将写入值:" + entry.getKey() + ":" + entry.getValue());
|
||||
p2[i] = new ItemValue();
|
||||
p2[i].setItem_code(entry.getKey());
|
||||
p2[i].setItem_value(entry.getValue());
|
||||
i++;
|
||||
}
|
||||
|
||||
return this.control(p2);
|
||||
}
|
||||
|
||||
|
||||
public boolean control(ItemValue[] itemValues) {
|
||||
if (itemValues != null && itemValues.length != 0) {
|
||||
String this_items = JsonUtl.parseWithoutException(itemValues);
|
||||
boolean need_write = false;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
ItemValue[] var5 = itemValues;
|
||||
int var6 = itemValues.length;
|
||||
|
||||
for (int var7 = 0; var7 < var6; ++var7) {
|
||||
ItemValue itemValue = var5[var7];
|
||||
String code = itemValue.getItem_code();
|
||||
Object udw_value = this.getUdwValue(code);
|
||||
Object write_value = itemValue.getItem_value();
|
||||
sb.append(code);
|
||||
sb.append(":");
|
||||
sb.append(JsonUtl.parseWithoutException(udw_value));
|
||||
sb.append(";");
|
||||
if (!need_write && !UnifiedDataAppService.isEquals(udw_value, write_value)) {
|
||||
need_write = true;
|
||||
} else {
|
||||
//log.warn("下发信号点位{} 当前写入值:{} 与系统内存值:{} 相同,不再写入 ", code, write_value, udw_value );
|
||||
}
|
||||
|
||||
return this.controlByNewConn(p2);
|
||||
}
|
||||
// need_write = true;
|
||||
|
||||
public boolean control (Map < String, Object > itemValues){
|
||||
|
||||
Iterator<Map.Entry<String, Object>> it = itemValues.entrySet().iterator();
|
||||
|
||||
ItemValue[] p2;
|
||||
p2 = new ItemValue[itemValues.size()];
|
||||
int i = 0;
|
||||
while (it.hasNext()) {
|
||||
Map.Entry<String, Object> entry = it.next();
|
||||
System.out.println("即将写入值:" + entry.getKey() + ":" + entry.getValue());
|
||||
p2[i] = new ItemValue();
|
||||
p2[i].setItem_code(entry.getKey());
|
||||
p2[i].setItem_value(entry.getValue());
|
||||
i++;
|
||||
}
|
||||
|
||||
return this.control(p2);
|
||||
}
|
||||
|
||||
|
||||
public boolean control (ItemValue[]itemValues){
|
||||
if (itemValues != null && itemValues.length != 0) {
|
||||
String this_items = JsonUtl.parseWithoutException(itemValues);
|
||||
boolean need_write = false;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
ItemValue[] var5 = itemValues;
|
||||
int var6 = itemValues.length;
|
||||
|
||||
for (int var7 = 0; var7 < var6; ++var7) {
|
||||
ItemValue itemValue = var5[var7];
|
||||
String code = itemValue.getItem_code();
|
||||
Object udw_value = this.getUdwValue(code);
|
||||
Object write_value = itemValue.getItem_value();
|
||||
sb.append(code);
|
||||
sb.append(":");
|
||||
sb.append(JsonUtl.parseWithoutException(udw_value));
|
||||
sb.append(";");
|
||||
if (!need_write && !UnifiedDataAppService.isEquals(udw_value, write_value)) {
|
||||
need_write = true;
|
||||
} else {
|
||||
//log.warn("下发信号点位{} 当前写入值:{} 与系统内存值:{} 相同,不再写入 ", code, write_value, udw_value );
|
||||
}
|
||||
}
|
||||
// need_write = true;
|
||||
|
||||
if (need_write) {
|
||||
Date date = new Date();
|
||||
if (need_write) {
|
||||
Date date = new Date();
|
||||
/*if (StringUtl.isEqual(this_items, this.last_items) && date.getTime() - this.sendTime.getTime() < (long) WcsConfig.opc_write_repeat_check) {
|
||||
log.trace("发送时间因为小于{}毫秒,而被无视", WcsConfig.opc_write_repeat_check);
|
||||
return false;
|
||||
}*/
|
||||
|
||||
this.last_items = this_items;
|
||||
this.sendTime = date;
|
||||
this.last_items = this_items;
|
||||
this.sendTime = date;
|
||||
/* this.execute_log.setResource(this.getDevice().getCode(), this.getDevice().getName());
|
||||
this.execute_log.log("原始记录{}->变更为{}", new Object[]{sb, this_items});
|
||||
OpcServerService opcServerService = OpcServerFactory.getOpcServerService();*/
|
||||
|
||||
OpcServerService opcServerService = SpringContextHolder.getBean(OpcServerServiceImpl.class);
|
||||
OpcServerService opcServerService = SpringContextHolder.getBean(OpcServerServiceImpl.class);
|
||||
|
||||
opcServerService.writeInteger(this.getOpcServer(), itemValues);
|
||||
UnifiedDataAccessor opcValueAccessor = this.getOpcValueAccessor();
|
||||
ItemValue[] var17 = itemValues;
|
||||
int var18 = itemValues.length;
|
||||
opcServerService.writeInteger(this.getOpcServer(), itemValues);
|
||||
UnifiedDataAccessor opcValueAccessor = this.getOpcValueAccessor();
|
||||
ItemValue[] var17 = itemValues;
|
||||
int var18 = itemValues.length;
|
||||
|
||||
for (int var19 = 0; var19 < var18; ++var19) {
|
||||
ItemValue itemValue = var17[var19];
|
||||
String code = itemValue.getItem_code();
|
||||
Object value = itemValue.getItem_value();
|
||||
opcValueAccessor.setValue(code, value);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
throw new RuntimeException("下发 无内容");
|
||||
for (int var19 = 0; var19 < var18; ++var19) {
|
||||
ItemValue itemValue = var17[var19];
|
||||
String code = itemValue.getItem_code();
|
||||
Object value = itemValue.getItem_value();
|
||||
opcValueAccessor.setValue(code, value);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
throw new RuntimeException("下发 无内容");
|
||||
}
|
||||
}
|
||||
|
||||
public boolean controlByNewConn (ItemValue[]itemValues){
|
||||
if (itemValues != null && itemValues.length != 0) {
|
||||
String this_items = JsonUtl.parseWithoutException(itemValues);
|
||||
boolean need_write = false;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
ItemValue[] var5 = itemValues;
|
||||
int var6 = itemValues.length;
|
||||
|
||||
public boolean controlByNewConn(ItemValue[] itemValues) {
|
||||
if (itemValues != null && itemValues.length != 0) {
|
||||
String this_items = JsonUtl.parseWithoutException(itemValues);
|
||||
boolean need_write = false;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
ItemValue[] var5 = itemValues;
|
||||
int var6 = itemValues.length;
|
||||
// for (int var7 = 0; var7 < var6; ++var7) {
|
||||
// ItemValue itemValue = var5[var7];
|
||||
// String code = itemValue.getItem_code();
|
||||
@@ -256,36 +246,36 @@ public class AbstractOpcDeviceDriver extends AbstractDeviceDriver implements Opc
|
||||
// log.warn("下发信号点位{} 当前写入值:{} 与系统内存值:{} 相同,不再写入 ", code, write_value, udw_value );
|
||||
// }
|
||||
// }
|
||||
need_write = true;
|
||||
if (need_write) {
|
||||
Date date = new Date();
|
||||
need_write = true;
|
||||
if (need_write) {
|
||||
Date date = new Date();
|
||||
/*if (StringUtl.isEqual(this_items, this.last_items) && date.getTime() - this.sendTime.getTime() < (long) WcsConfig.opc_write_repeat_check) {
|
||||
log.trace("发送时间因为小于{}毫秒,而被无视", WcsConfig.opc_write_repeat_check);
|
||||
return false;
|
||||
}*/
|
||||
|
||||
this.last_items = this_items;
|
||||
this.sendTime = date;
|
||||
OpcServerService opcServerService = SpringContextHolder.getBean(OpcServerServiceImpl.class);
|
||||
this.last_items = this_items;
|
||||
this.sendTime = date;
|
||||
OpcServerService opcServerService = SpringContextHolder.getBean(OpcServerServiceImpl.class);
|
||||
|
||||
opcServerService.writeIntegerByNewConn(this.getOpcServer(), itemValues);
|
||||
opcServerService.writeIntegerByNewConn(this.getOpcServer(), itemValues);
|
||||
|
||||
|
||||
UnifiedDataAccessor opcValueAccessor = this.getOpcValueAccessor();
|
||||
ItemValue[] var17 = itemValues;
|
||||
int var18 = itemValues.length;
|
||||
UnifiedDataAccessor opcValueAccessor = this.getOpcValueAccessor();
|
||||
ItemValue[] var17 = itemValues;
|
||||
int var18 = itemValues.length;
|
||||
|
||||
for (int var19 = 0; var19 < var18; ++var19) {
|
||||
ItemValue itemValue = var17[var19];
|
||||
String code = itemValue.getItem_code();
|
||||
Object value = itemValue.getItem_value();
|
||||
opcValueAccessor.setValue(code, value);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
throw new RuntimeException("下发 无内容");
|
||||
for (int var19 = 0; var19 < var18; ++var19) {
|
||||
ItemValue itemValue = var17[var19];
|
||||
String code = itemValue.getItem_code();
|
||||
Object value = itemValue.getItem_value();
|
||||
opcValueAccessor.setValue(code, value);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
throw new RuntimeException("下发 无内容");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ public class ItemProtocol {
|
||||
return this.getOpcIntegerValue(item_qty);
|
||||
}
|
||||
public int getItem_type(){
|
||||
return this.getItem_type();
|
||||
return this.getOpcIntegerValue(item_type);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
@Autowired
|
||||
LuceneExecuteLogService luceneExecuteLogService = SpringContextHolder.getBean(LuceneExecuteLogService.class);
|
||||
|
||||
final Executor EXECUTOR = ThreadPoolExecutorUtil.getPoll();
|
||||
// final Executor EXECUTOR = ThreadPoolExecutorUtil.getPoll();
|
||||
|
||||
//工作模式
|
||||
int mode = 0;
|
||||
@@ -856,9 +856,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver;
|
||||
if (device.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
|
||||
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) device.getDeviceDriver();
|
||||
EXECUTOR.execute(() -> {
|
||||
// EXECUTOR.execute(() -> {
|
||||
toOpenDoor(device);
|
||||
});
|
||||
// });
|
||||
int mode = hongXiangConveyorDeviceDriver.getMode();
|
||||
int door = hongXiangConveyorDeviceDriver.getDoor();
|
||||
int action = hongXiangConveyorDeviceDriver.getAction();
|
||||
@@ -922,9 +922,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver;
|
||||
if (device.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
|
||||
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) device.getDeviceDriver();
|
||||
EXECUTOR.execute(() -> {
|
||||
// EXECUTOR.execute(() -> {
|
||||
toCloseDoor(device);
|
||||
});
|
||||
// });
|
||||
int mode = hongXiangConveyorDeviceDriver.getMode();
|
||||
int door = hongXiangConveyorDeviceDriver.getDoor();
|
||||
int action = hongXiangConveyorDeviceDriver.getAction();
|
||||
@@ -1058,9 +1058,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
LampThreecolorDeviceDriver lampThreecolorDeviceDriver;
|
||||
if (nextDevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
|
||||
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextDevice.getDeviceDriver();
|
||||
EXECUTOR.execute(() -> {
|
||||
// EXECUTOR.execute(() -> {
|
||||
toCloseDoor(nextDevice);
|
||||
});
|
||||
// });
|
||||
if (StrUtil.isNotEmpty(taskDto.getOven_time())) {
|
||||
//下发烘箱时间
|
||||
int time = Integer.parseInt(taskDto.getOven_time());
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.nl.acs.device_driver.two_conveyor.plug_pull_device_site;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.http.HttpResponse;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.Data;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -264,6 +265,15 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
applyTask(mode);
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
if (!requireSucess) {
|
||||
//请求密集库出气胀轴,申请行架任务
|
||||
boolean b =applyQzz(mode);
|
||||
if(b){
|
||||
requireSucess = true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
log.info("未知模式");
|
||||
break;
|
||||
@@ -304,7 +314,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||
return;
|
||||
} else {
|
||||
logServer.deviceExecuteLog(this.device_code,"","","申请套管");
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "申请套管");
|
||||
ApplyPlugPullSiteRequest applyPlugPullSiteRequest = new ApplyPlugPullSiteRequest();
|
||||
ApplyPlugPullSitResponse applyPlugPullSitResponse;
|
||||
applyPlugPullSiteRequest.setDevice_code(device_code);
|
||||
@@ -346,19 +356,28 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
String to_spec2 = data.get("rightSpec");
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
//下发纸管信息
|
||||
if (ObjectUtil.isEmpty(to_material1) && ObjectUtil.isNotEmpty(to_material2)) {
|
||||
map.put("to_material1", to_material2);
|
||||
if (StrUtil.isNotEmpty(rightSize)) {
|
||||
map.put("to_size1", rightSize);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec1", to_spec2);
|
||||
}
|
||||
} else {
|
||||
map.put("to_material1", to_material1);
|
||||
map.put("to_material2", to_material2);
|
||||
|
||||
map.put("to_material1", to_material1);
|
||||
map.put("to_material2", to_material2);
|
||||
|
||||
if (StrUtil.isNotEmpty(leftSize)) {
|
||||
map.put("to_size1", leftSize);
|
||||
}
|
||||
if (StrUtil.isNotEmpty(rightSize)) {
|
||||
map.put("to_size2", rightSize);
|
||||
}
|
||||
map.put("to_spec1", to_spec1);
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec2", to_spec2);
|
||||
if (StrUtil.isNotEmpty(leftSize)) {
|
||||
map.put("to_size1", leftSize);
|
||||
}
|
||||
if (StrUtil.isNotEmpty(rightSize)) {
|
||||
map.put("to_size2", rightSize);
|
||||
}
|
||||
map.put("to_spec1", to_spec1);
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec2", to_spec2);
|
||||
}
|
||||
}
|
||||
map.put("to_command", mode);
|
||||
map.put("to_qty1", number);
|
||||
@@ -367,7 +386,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "申请套管成功,返回参数:" + applyPlugPullSitResponse.getData());
|
||||
message = "申请套管成功";
|
||||
}
|
||||
if (StrUtil.equals("2", is_bushing)){
|
||||
if (StrUtil.equals("2", is_bushing)) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("to_command", 97);
|
||||
this.writing(map);
|
||||
@@ -381,7 +400,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", message);
|
||||
}
|
||||
if (StrUtil.equals("0", is_bushing)){
|
||||
if (StrUtil.equals("0", is_bushing)) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("to_command", 98);
|
||||
this.writing(map);
|
||||
@@ -404,7 +423,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
message = "申请套管失败";
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("申请套管反馈失败,返回参数:"+applyPlugPullSitResponse)
|
||||
.content("申请套管反馈失败,返回参数:" + applyPlugPullSitResponse)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
@@ -484,7 +503,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||
return;
|
||||
} else {
|
||||
logServer.deviceExecuteLog(this.device_code,"","","拔轴完成");
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "拔轴完成");
|
||||
ApplyPlugPullSiteRequest applyPlugPullSiteRequest = new ApplyPlugPullSiteRequest();
|
||||
ApplyPlugPullSitResponse applyPlugPullSitResponse;
|
||||
applyPlugPullSiteRequest.setDevice_code(device_code);
|
||||
@@ -510,7 +529,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴完成任务,返回参数:" + applyPlugPullSitResponse.getData());
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("申请拔轴完成,返回参数:"+applyPlugPullSitResponse.getData())
|
||||
.content("申请拔轴完成,返回参数:" + applyPlugPullSitResponse.getData())
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
@@ -524,7 +543,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
message = "拔轴完成失败";
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("拔轴完成反馈失败,返回参数:"+applyPlugPullSitResponse.getData())
|
||||
.content("拔轴完成反馈失败,返回参数:" + applyPlugPullSitResponse.getData())
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
@@ -542,7 +561,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||
return;
|
||||
} else {
|
||||
logServer.deviceExecuteLog(this.device_code,"","","申请拔轴");
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴");
|
||||
ApplyPlugPullSiteRequest applyPlugPullSiteRequest = new ApplyPlugPullSiteRequest();
|
||||
ApplyPlugPullSitResponse applyPlugPullSitResponse;
|
||||
applyPlugPullSiteRequest.setDevice_code(device_code);
|
||||
@@ -576,17 +595,27 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
Object to_spec4 = data.get("currentRightSpec");
|
||||
Object to_qty2 = data.get("pullCount");
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("to_material3", to_material3);
|
||||
if (ObjectUtil.isNotEmpty(to_material4)) {
|
||||
map.put("to_material4", to_material4);
|
||||
}
|
||||
map.put("to_size3", to_size3);
|
||||
if (ObjectUtil.isNotEmpty(to_size4)) {
|
||||
map.put("to_size4", to_size4);
|
||||
}
|
||||
map.put("to_spec3", to_spec3);
|
||||
if (ObjectUtil.isNotEmpty(to_spec4)) {
|
||||
map.put("to_spec4", to_spec4);
|
||||
if (ObjectUtil.isEmpty(to_material3) && ObjectUtil.isNotEmpty(to_material4)) {
|
||||
map.put("to_material3", to_material4);
|
||||
if (ObjectUtil.isNotEmpty(to_size4)) {
|
||||
map.put("to_size3", to_size4);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(to_spec4)) {
|
||||
map.put("to_spec3", to_spec4);
|
||||
}
|
||||
} else {
|
||||
map.put("to_material3", to_material3);
|
||||
if (ObjectUtil.isNotEmpty(to_material4)) {
|
||||
map.put("to_material4", to_material4);
|
||||
}
|
||||
map.put("to_size3", to_size3);
|
||||
if (ObjectUtil.isNotEmpty(to_size4)) {
|
||||
map.put("to_size4", to_size4);
|
||||
}
|
||||
map.put("to_spec3", to_spec3);
|
||||
if (ObjectUtil.isNotEmpty(to_spec4)) {
|
||||
map.put("to_spec4", to_spec4);
|
||||
}
|
||||
}
|
||||
map.put("to_qty2", to_qty2);
|
||||
map.put("to_qzz_type", size);
|
||||
@@ -597,7 +626,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
message = "申请拔轴成功";
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("申请拔轴任务,返回参数:"+applyPlugPullSitResponse.getData())
|
||||
.content("申请拔轴任务,返回参数:" + applyPlugPullSitResponse.getData())
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
@@ -610,7 +639,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
message = "申请拔轴失败";
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("申请拔轴反馈失败,返回参数:"+applyPlugPullSitResponse.getData())
|
||||
.content("申请拔轴反馈失败,返回参数:" + applyPlugPullSitResponse.getData())
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
@@ -628,7 +657,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
log.trace("触发时间因为小于{}毫秒,而被无视", this.instruction_require_time_out);
|
||||
return;
|
||||
} else {
|
||||
logServer.deviceExecuteLog(this.device_code,"","","缓存线已满,生成行架任务");
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "缓存线已满,生成行架任务");
|
||||
ApplyPlugPullSiteRequest applyPlugPullSiteRequest = new ApplyPlugPullSiteRequest();
|
||||
ApplyPlugPullSitResponse applyPlugPullSitResponse;
|
||||
applyPlugPullSiteRequest.setDevice_code(device_code);
|
||||
@@ -674,6 +703,64 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 请求密集库出气胀轴,申请行架任务
|
||||
*/
|
||||
private boolean applyQzz(int mode) throws Exception {
|
||||
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 {
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("device_code",this.getDevice_code());
|
||||
jo.put("size",this.getSize());
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("请求密集库出气胀轴,请求参数:" + jo)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
logServer.deviceExecuteLog(this.device_code, "", "", "请求密集库出气胀轴,参数:" + jo);
|
||||
HttpResponse httpResponse = acsToWmsService.callShaftFromCache(jo);
|
||||
JSONObject jsonObject = null;
|
||||
if(ObjectUtil.isNotEmpty(httpResponse)){
|
||||
String body = httpResponse.body();
|
||||
jsonObject = JSONObject.parseObject(body);
|
||||
}
|
||||
if(ObjectUtil.isNotNull(jsonObject) && jsonObject.getInteger("status") == 200){
|
||||
Map map = new HashMap();
|
||||
map.put("to_command", 10);
|
||||
try {
|
||||
this.writing(map);
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("请求密集库出气胀轴,返回参数" + jsonObject)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
} catch (Exception e) {
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("请求密集库出气胀轴" + map)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
}
|
||||
return true;
|
||||
}else{
|
||||
LuceneLogDto logDto2 = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content("请求密集库出气胀轴" + httpResponse.body())
|
||||
.build();
|
||||
logDto2.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto2);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 下发电气信号
|
||||
*
|
||||
|
||||
@@ -48,6 +48,36 @@ public class ItemProtocol {
|
||||
|
||||
public static String item_to_barcode = "to_barcode";
|
||||
|
||||
//下发套管纸管1编号
|
||||
public static String item_to_material1 = "to_material1";
|
||||
//下发套管纸管2编号
|
||||
public static String item_to_material2 = "to_material2";
|
||||
//下发套管纸管1规格
|
||||
public static String item_to_spec1 = "to_spec1";
|
||||
//下发套管纸管2规格
|
||||
public static String item_to_spec2 = "to_spec2";
|
||||
//套管纸管数量
|
||||
public static String item_to_qty1 = "to_qty1";
|
||||
//套管纸管1尺寸
|
||||
public static String item_to_size1 = "to_size1";
|
||||
//套管纸管2尺寸
|
||||
public static String item_to_size2 = "to_size2";
|
||||
|
||||
//下发拔轴纸管1编号
|
||||
public static String item_to_material3 = "to_material3";
|
||||
//下发拔轴纸管2编号
|
||||
public static String item_to_material4 = "to_material4";
|
||||
//下发拔轴纸管1规格
|
||||
public static String item_to_spec3 = "to_spec3";
|
||||
//下发拔轴纸管2规格
|
||||
public static String item_to_spec4 = "to_spec4";
|
||||
//拔轴纸管数量
|
||||
public static String item_to_qty2 = "to_qty2";
|
||||
//拔轴纸管1尺寸
|
||||
public static String item_to_size3 = "to_size3";
|
||||
//套拔轴纸管2尺寸
|
||||
public static String item_to_size4 = "to_size4";
|
||||
|
||||
|
||||
private PullHeadManipulatorDeviceDriver driver;
|
||||
|
||||
@@ -194,6 +224,20 @@ public class ItemProtocol {
|
||||
list.add(new ItemDto(item_to_pull, "是否拔轴", "DB12.W8"));
|
||||
list.add(new ItemDto(item_to_sleeve, "是否套轴", "DB12.W10"));
|
||||
list.add(new ItemDto(item_to_size, "气涨轴尺寸", "DB12.W12"));
|
||||
list.add(new ItemDto(item_to_material1, "下发套管纸管1编号", "DB12.String603.60"));
|
||||
list.add(new ItemDto(item_to_material2, "下发套管纸管2编号", "DB12.String604.60"));
|
||||
list.add(new ItemDto(item_to_spec1, "套管纸管1规格", "DB12.String605.60"));
|
||||
list.add(new ItemDto(item_to_spec2, "套管纸管2规格", "DB12.String606.60"));
|
||||
list.add(new ItemDto(item_to_qty1, "套管纸管数量", "DB12.W14"));
|
||||
list.add(new ItemDto(item_to_size1, "套管纸管1尺寸", "DB12.W16"));
|
||||
list.add(new ItemDto(item_to_size2, "套管纸管2尺寸", "DB12.W18"));
|
||||
list.add(new ItemDto(item_to_material3, "下发套管纸管1编号", "DB12.String607.60"));
|
||||
list.add(new ItemDto(item_to_material4, "下发套管纸管2编号", "DB12.String608.60"));
|
||||
list.add(new ItemDto(item_to_spec3, "拔轴纸管1规格", "DB12.String609.60"));
|
||||
list.add(new ItemDto(item_to_spec4, "拔轴纸管2规格", "DB12.String610.60"));
|
||||
list.add(new ItemDto(item_to_qty2, "拔轴纸管数量", "DB12.W20"));
|
||||
list.add(new ItemDto(item_to_size3, "拔轴纸管1尺寸", "DB12.W22"));
|
||||
list.add(new ItemDto(item_to_size4, "拔轴纸管2尺寸", "DB12.W24"));
|
||||
return list;
|
||||
}
|
||||
|
||||
|
||||
@@ -127,7 +127,6 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
String lastToBarcode = null;
|
||||
|
||||
|
||||
|
||||
Boolean isonline = true;
|
||||
int hasGoods = 0;
|
||||
String message = null;
|
||||
@@ -248,7 +247,6 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (Exception var17) {
|
||||
var17.printStackTrace();
|
||||
// feedMessage = var17.getMessage();
|
||||
@@ -391,131 +389,139 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
List<TaskDto> taskDtoList = taskserver.findByTrappedManipulatorReady();
|
||||
if (ObjectUtil.isNotEmpty(taskDtoList)) {
|
||||
List<TaskDto> taskDtosReady = new ArrayList<>();
|
||||
for (TaskDto taskDto1 : taskDtoList) {
|
||||
if (getDeviceCodeList.contains(taskDto1.getStart_device_code())) {
|
||||
taskDtosReady.add(taskDto1);
|
||||
} else {
|
||||
List<TaskDto> taskDtoList = taskserver.findByTrappedManipulatorReady();
|
||||
if (ObjectUtil.isNotEmpty(taskDtoList)) {
|
||||
List<TaskDto> taskDtosReady = new ArrayList<>();
|
||||
for (TaskDto taskDto1 : taskDtoList) {
|
||||
if (getDeviceCodeList.contains(taskDto1.getStart_device_code())) {
|
||||
taskDtosReady.add(taskDto1);
|
||||
}
|
||||
}
|
||||
// task = taskDtosReady.get(0);
|
||||
List<TaskDto> readyTaskDtos = new ArrayList<>();
|
||||
for (int j = 0; j < taskDtosReady.size(); j++) {
|
||||
task = taskDtosReady.get(j);
|
||||
String firstDeviceCode = task.getStart_device_code();
|
||||
Device start_device = deviceAppService.findDeviceByCode(firstDeviceCode);
|
||||
if (start_device.getDeviceDriver() instanceof PlugPullDeviceSiteDeviceDriver) {
|
||||
plugPullDeviceSiteDeviceDriver = (PlugPullDeviceSiteDeviceDriver) start_device.getDeviceDriver();
|
||||
if (plugPullDeviceSiteDeviceDriver.getAction() != 1) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage12";
|
||||
continue;
|
||||
}
|
||||
}
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtosReady = this.sortTask(taskDtosReady);
|
||||
task = taskDtosReady.get(0);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(task)) {
|
||||
break;
|
||||
String nextDeviceCode = task.getNext_device_code();
|
||||
Device next_device = deviceAppService.findDeviceByCode(nextDeviceCode);
|
||||
if (next_device.getDeviceDriver() instanceof PlugPullDeviceSiteDeviceDriver) {
|
||||
plugPullDeviceSiteDeviceDriver = (PlugPullDeviceSiteDeviceDriver) next_device.getDeviceDriver();
|
||||
String remark = "";
|
||||
if (plugPullDeviceSiteDeviceDriver.getMode() != 2) {
|
||||
remark = "universal_notCreateInstMessage9";
|
||||
notCreateInstMessage = remark;
|
||||
continue;
|
||||
}
|
||||
if (plugPullDeviceSiteDeviceDriver.getMove() != 0) {
|
||||
remark = "universal_notCreateInstMessage9";
|
||||
notCreateInstMessage = remark;
|
||||
continue;
|
||||
}
|
||||
if (plugPullDeviceSiteDeviceDriver.getAction() != 2) {
|
||||
remark = "universal_notCreateInstMessage11";
|
||||
notCreateInstMessage = remark;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
readyTaskDtos.add(task);
|
||||
}
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
readyTaskDtos = this.sortTask(readyTaskDtos);
|
||||
task = readyTaskDtos.get(0);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(task)) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!ObjectUtil.isEmpty(task)) {
|
||||
String firstDeviceCode = task.getStart_device_code();
|
||||
Device start_device = deviceAppService.findDeviceByCode(firstDeviceCode);
|
||||
if (start_device.getDeviceDriver() instanceof PlugPullDeviceSiteDeviceDriver) {
|
||||
plugPullDeviceSiteDeviceDriver = (PlugPullDeviceSiteDeviceDriver) start_device.getDeviceDriver();
|
||||
if (plugPullDeviceSiteDeviceDriver.getAction() != 1) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage12";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
String nextDeviceCode = task.getNext_device_code();
|
||||
Device next_device = deviceAppService.findDeviceByCode(nextDeviceCode);
|
||||
if (next_device.getDeviceDriver() instanceof PlugPullDeviceSiteDeviceDriver) {
|
||||
plugPullDeviceSiteDeviceDriver = (PlugPullDeviceSiteDeviceDriver) next_device.getDeviceDriver();
|
||||
String remark = "";
|
||||
if (plugPullDeviceSiteDeviceDriver.getMode() != 2) {
|
||||
remark = "universal_notCreateInstMessage9";
|
||||
notCreateInstMessage = remark;
|
||||
return false;
|
||||
}
|
||||
if (plugPullDeviceSiteDeviceDriver.getMove() != 0) {
|
||||
remark = "universal_notCreateInstMessage9";
|
||||
notCreateInstMessage = remark;
|
||||
return false;
|
||||
}
|
||||
if (plugPullDeviceSiteDeviceDriver.getAction() != 2) {
|
||||
remark = "universal_notCreateInstMessage11";
|
||||
notCreateInstMessage = remark;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
String taskId = task.getTask_id();
|
||||
String taskCode = task.getTask_code();
|
||||
String vehicleCode = task.getVehicle_code();
|
||||
String priority = task.getPriority();
|
||||
String startPointCode = task.getStart_point_code();
|
||||
String routePlanCode = task.getRoute_plan_code();
|
||||
String nextPointCode = task.getNext_point_code();
|
||||
|
||||
Instruction instdto = new Instruction();
|
||||
instdto.setInstruction_id(IdUtil.simpleUUID());
|
||||
instdto.setRoute_plan_code(routePlanCode);
|
||||
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(SecurityUtils.getCurrentNickName());
|
||||
instdto.setStart_device_code(firstDeviceCode);
|
||||
instdto.setNext_device_code(nextDeviceCode);
|
||||
instdto.setStart_point_code(startPointCode);
|
||||
instdto.setNext_point_code(nextPointCode);
|
||||
instdto.setPriority(priority);
|
||||
instdto.setInstruction_status(InstructionStatusEnum.READY.getIndex());
|
||||
instdto.setExecute_device_code(startPointCode);
|
||||
try {
|
||||
instructionService.create(instdto);
|
||||
} catch (Exception e) {
|
||||
notCreateInstMessage = e.getMessage();
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content(device_code + "创建指令时出现异常:" + e.getMessage())
|
||||
.build();
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
return false;
|
||||
}
|
||||
//创建指令后修改任务状态
|
||||
task.setTask_status(TaskStatusEnum.BUSY.getIndex());
|
||||
task.setUpdate_time(DateUtil.now());
|
||||
taskserver.update(task);
|
||||
|
||||
Device startDevice = deviceAppService.findDeviceByCode(instdto.getStart_device_code());
|
||||
Device nextDevice = deviceAppService.findDeviceByCode(instdto.getNext_device_code());
|
||||
if (ObjectUtil.isEmpty(startDevice.getExtraValue().get("address"))) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage1";
|
||||
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "设备:" + startDevice.getDevice_code() + "未设置电气调度号!");
|
||||
throw new BadRequestException(LangProcess.msg("device_checkAdd", startDevice.getDevice_code()));
|
||||
}
|
||||
if (ObjectUtil.isEmpty(nextDevice.getExtraValue().get("address"))) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage1";
|
||||
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "设备:" + nextDevice.getDevice_code() + "未设置电气调度号!");
|
||||
throw new BadRequestException(LangProcess.msg("device_checkAdd", nextDevice.getDevice_code()));
|
||||
|
||||
}
|
||||
String startAddr = startDevice.getExtraValue().get("address").toString();
|
||||
String nextAddr = nextDevice.getExtraValue().get("address").toString();
|
||||
String interaction_json = task.getInteraction_json();
|
||||
Map<String, Object> map = toStringObjectMap(instdto, startAddr, nextAddr, interaction_json);
|
||||
this.writing(map);
|
||||
this.setRequireSucess(true);
|
||||
notCreateInstMessage = "";
|
||||
notCreateTaskMessage = "";
|
||||
} else {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage";
|
||||
}
|
||||
return true;
|
||||
}
|
||||
if (!ObjectUtil.isEmpty(task)) {
|
||||
String taskId = task.getTask_id();
|
||||
String taskCode = task.getTask_code();
|
||||
String vehicleCode = task.getVehicle_code();
|
||||
String priority = task.getPriority();
|
||||
String startPointCode = task.getStart_point_code();
|
||||
String routePlanCode = task.getRoute_plan_code();
|
||||
String nextPointCode = task.getNext_point_code();
|
||||
String firstDeviceCode = task.getStart_device_code();
|
||||
String nextDeviceCode = task.getNext_device_code();
|
||||
|
||||
Instruction instdto = new Instruction();
|
||||
instdto.setInstruction_id(IdUtil.simpleUUID());
|
||||
instdto.setRoute_plan_code(routePlanCode);
|
||||
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(SecurityUtils.getCurrentNickName());
|
||||
instdto.setStart_device_code(firstDeviceCode);
|
||||
instdto.setNext_device_code(nextDeviceCode);
|
||||
instdto.setStart_point_code(startPointCode);
|
||||
instdto.setNext_point_code(nextPointCode);
|
||||
instdto.setPriority(priority);
|
||||
instdto.setInstruction_status(InstructionStatusEnum.READY.getIndex());
|
||||
instdto.setExecute_device_code(startPointCode);
|
||||
try {
|
||||
instructionService.create(instdto);
|
||||
} catch (Exception e) {
|
||||
notCreateInstMessage = e.getMessage();
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code(device_code)
|
||||
.content(device_code + "创建指令时出现异常:" + e.getMessage())
|
||||
.build();
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
return false;
|
||||
}
|
||||
//创建指令后修改任务状态
|
||||
task.setTask_status(TaskStatusEnum.BUSY.getIndex());
|
||||
task.setUpdate_time(DateUtil.now());
|
||||
taskserver.update(task);
|
||||
|
||||
Device startDevice = deviceAppService.findDeviceByCode(instdto.getStart_device_code());
|
||||
Device nextDevice = deviceAppService.findDeviceByCode(instdto.getNext_device_code());
|
||||
if (ObjectUtil.isEmpty(startDevice.getExtraValue().get("address"))) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage1";
|
||||
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "设备:" + startDevice.getDevice_code() + "未设置电气调度号!");
|
||||
throw new BadRequestException(LangProcess.msg("device_checkAdd", startDevice.getDevice_code()));
|
||||
}
|
||||
if (ObjectUtil.isEmpty(nextDevice.getExtraValue().get("address"))) {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage1";
|
||||
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "设备:" + nextDevice.getDevice_code() + "未设置电气调度号!");
|
||||
throw new BadRequestException(LangProcess.msg("device_checkAdd", nextDevice.getDevice_code()));
|
||||
|
||||
}
|
||||
String startAddr = startDevice.getExtraValue().get("address").toString();
|
||||
String nextAddr = nextDevice.getExtraValue().get("address").toString();
|
||||
String interaction_json = task.getInteraction_json();
|
||||
Map<String, Object> map = toStringObjectMap(instdto, startAddr, nextAddr, interaction_json);
|
||||
this.writing(map);
|
||||
this.setRequireSucess(true);
|
||||
notCreateInstMessage = "";
|
||||
notCreateTaskMessage = "";
|
||||
} else {
|
||||
notCreateInstMessage = "universal_notCreateInstMessage";
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@NotNull
|
||||
private Map<String, Object> toStringObjectMap(Instruction instdto, String startAddr, String nextAddr, String interaction_json) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
if(StrUtil.isNotEmpty(interaction_json) && !"".equals(interaction_json)){
|
||||
if (StrUtil.isNotEmpty(interaction_json) && !"".equals(interaction_json)) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(interaction_json);
|
||||
//套管1物料
|
||||
Object to_material1 = jsonObject.get("left");
|
||||
@@ -556,17 +562,36 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
map.put("to_task", instdto.getInstruction_code());
|
||||
map.put("to_target", nextAddr);
|
||||
//toTranscription(taskDto,map);
|
||||
map.put("to_material1", to_material1);
|
||||
if (ObjectUtil.isNotEmpty(to_material2)) {
|
||||
map.put("to_material2", to_material2);
|
||||
if (ObjectUtil.isEmpty(to_material1) && ObjectUtil.isNotEmpty(to_material2)) {
|
||||
map.put("to_material1", to_material2);
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec1", to_spec2);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(to_size2)) {
|
||||
map.put("to_size1", to_size2);
|
||||
}
|
||||
} else {
|
||||
map.put("to_material1", to_material1);
|
||||
if (ObjectUtil.isNotEmpty(to_material2)) {
|
||||
map.put("to_material2", to_material2);
|
||||
}
|
||||
map.put("to_spec1", to_spec1);
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec2", to_spec2);
|
||||
}
|
||||
map.put("to_size1", to_size1);
|
||||
if (ObjectUtil.isNotEmpty(to_size2)) {
|
||||
map.put("to_size2", to_size2);
|
||||
}
|
||||
}
|
||||
map.put("to_spec1", to_spec1);
|
||||
if (ObjectUtil.isNotEmpty(to_spec2)) {
|
||||
map.put("to_spec2", to_spec2);
|
||||
}
|
||||
map.put("to_size1", to_size1);
|
||||
if (ObjectUtil.isNotEmpty(to_size2)) {
|
||||
map.put("to_size2", to_size2);
|
||||
if (ObjectUtil.isEmpty(to_material3) && ObjectUtil.isNotEmpty(to_material4)) {
|
||||
map.put("to_material3", to_material4);
|
||||
if (ObjectUtil.isNotEmpty(to_size4)) {
|
||||
map.put("to_size3", to_size4);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(to_spec4)) {
|
||||
map.put("to_spec3", to_spec4);
|
||||
}
|
||||
}
|
||||
map.put("to_material3", to_material3);
|
||||
if (ObjectUtil.isNotEmpty(to_material4)) {
|
||||
@@ -583,7 +608,7 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
map.put("to_qty1", to_qty1);
|
||||
map.put("to_qty2", to_qty2);
|
||||
return map;
|
||||
}else{
|
||||
} else {
|
||||
map.put("to_command", CommonFinalParam.ONE);
|
||||
map.put("to_onset", startAddr);
|
||||
map.put("to_task", instdto.getInstruction_code());
|
||||
@@ -592,33 +617,33 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
}
|
||||
}
|
||||
|
||||
private void toTranscription(TaskDto taskDto,Map map){
|
||||
private void toTranscription(TaskDto taskDto, Map map) {
|
||||
String interactionJson = taskDto.getInteraction_json();
|
||||
InteractionJsonDTO interactionJsonDTO = JSON.parseObject(interactionJson, InteractionJsonDTO.class);
|
||||
if(ObjectUtil.isNotEmpty(interactionJsonDTO)){
|
||||
toDevice(interactionJsonDTO.getToPull(),"to_pull",map);
|
||||
toDevice(interactionJsonDTO.getIsBushing(),"is_bushing",map);
|
||||
toDevice(interactionJsonDTO.getToSize(),"to_size",map);
|
||||
toDevice(interactionJsonDTO.getToBarcode(),"to_barcode",map);
|
||||
toDevice(interactionJsonDTO.getToMaterial1(),"to_material1",map);
|
||||
toDevice(interactionJsonDTO.getToMaterial2(),"to_material2",map);
|
||||
toDevice(interactionJsonDTO.getToSpec1(),"to_spec1",map);
|
||||
toDevice(interactionJsonDTO.getToSpec2(),"to_spec2",map);
|
||||
toDevice(interactionJsonDTO.getToQty1(),"to_qty1",map);
|
||||
toDevice(interactionJsonDTO.getToSize1(),"to_size1",map);
|
||||
toDevice(interactionJsonDTO.getToSize2(),"to_size2",map);
|
||||
toDevice(interactionJsonDTO.getToMaterial3(),"to_material3",map);
|
||||
toDevice(interactionJsonDTO.getToMaterial4(),"to_material4",map);
|
||||
toDevice(interactionJsonDTO.getToSpec3(),"to_spec3",map);
|
||||
toDevice(interactionJsonDTO.getToSpec4(),"to_spec4",map);
|
||||
toDevice(interactionJsonDTO.getToQty2(),"to_qty2",map);
|
||||
toDevice(interactionJsonDTO.getToSize3(),"to_size3",map);
|
||||
toDevice(interactionJsonDTO.getToSize4(),"to_size4",map);
|
||||
if (ObjectUtil.isNotEmpty(interactionJsonDTO)) {
|
||||
toDevice(interactionJsonDTO.getToPull(), "to_pull", map);
|
||||
toDevice(interactionJsonDTO.getIsBushing(), "is_bushing", map);
|
||||
toDevice(interactionJsonDTO.getToSize(), "to_size", map);
|
||||
toDevice(interactionJsonDTO.getToBarcode(), "to_barcode", map);
|
||||
toDevice(interactionJsonDTO.getToMaterial1(), "to_material1", map);
|
||||
toDevice(interactionJsonDTO.getToMaterial2(), "to_material2", map);
|
||||
toDevice(interactionJsonDTO.getToSpec1(), "to_spec1", map);
|
||||
toDevice(interactionJsonDTO.getToSpec2(), "to_spec2", map);
|
||||
toDevice(interactionJsonDTO.getToQty1(), "to_qty1", map);
|
||||
toDevice(interactionJsonDTO.getToSize1(), "to_size1", map);
|
||||
toDevice(interactionJsonDTO.getToSize2(), "to_size2", map);
|
||||
toDevice(interactionJsonDTO.getToMaterial3(), "to_material3", map);
|
||||
toDevice(interactionJsonDTO.getToMaterial4(), "to_material4", map);
|
||||
toDevice(interactionJsonDTO.getToSpec3(), "to_spec3", map);
|
||||
toDevice(interactionJsonDTO.getToSpec4(), "to_spec4", map);
|
||||
toDevice(interactionJsonDTO.getToQty2(), "to_qty2", map);
|
||||
toDevice(interactionJsonDTO.getToSize3(), "to_size3", map);
|
||||
toDevice(interactionJsonDTO.getToSize4(), "to_size4", map);
|
||||
}
|
||||
}
|
||||
|
||||
private void toDevice(String toOrder,String signal,Map map){
|
||||
if(ObjectUtil.isNotEmpty(toOrder)){
|
||||
private void toDevice(String toOrder, String signal, Map map) {
|
||||
if (ObjectUtil.isNotEmpty(toOrder)) {
|
||||
map.put(signal, toOrder);
|
||||
}
|
||||
}
|
||||
@@ -710,12 +735,12 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
|
||||
action = LangProcess.msg("universal_releasing");
|
||||
} else if (this.getAction() == 4) {
|
||||
action = LangProcess.msg("universal_releasing_completed");
|
||||
}else {
|
||||
} else {
|
||||
action = "无动作";
|
||||
}
|
||||
if(error == 0 && this.itemProtocol.isError){
|
||||
if (error == 0 && this.itemProtocol.isError) {
|
||||
iserror = true;
|
||||
}else if(error == 0 && !this.itemProtocol.isError){
|
||||
} else if (error == 0 && !this.itemProtocol.isError) {
|
||||
iserror = false;
|
||||
}
|
||||
map.put("device_name", this.getDevice().getDevice_name());
|
||||
|
||||
@@ -769,8 +769,8 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
|
||||
@Override
|
||||
public JSONObject getDeviceStatusName() {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
|
||||
// Map<String, Object> map = new LinkedHashMap<>();
|
||||
JSONObject jo = new JSONObject();
|
||||
String move_1 = "";
|
||||
String move_2 = "";
|
||||
String action = "";
|
||||
@@ -841,26 +841,25 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
iserror = false;
|
||||
}
|
||||
}
|
||||
map.put("device_name", this.getDevice().getDevice_name());
|
||||
map.put("mode", mode);
|
||||
map.put("action", action);
|
||||
map.put("walk_y", walk_y);
|
||||
map.put("error", ErrorUtil.getDictDetail("error_type", String.valueOf(this.getError())));
|
||||
map.put("task", this.getTask());
|
||||
map.put("isOnline", this.getIsonline());
|
||||
map.put("isError", this.getIserror());
|
||||
map.put("is_disable1", this.getIs_disable());
|
||||
map.put("is_disable", is_disable);
|
||||
map.put("is_click", true);
|
||||
map.put("driver_type", "slit_two_manipulator");
|
||||
map.put("requireSucess", requireSucess);
|
||||
map.put("move_1", move_1);
|
||||
map.put("move_2", move_2);
|
||||
map.put("message", message);
|
||||
map.put("notCreateTaskMessage", LangProcess.msg(notCreateTaskMessage));
|
||||
map.put("notCreateInstMessage", LangProcess.msg(notCreateInstMessage));
|
||||
map.put("feedMessage", LangProcess.msg(feedMessage));
|
||||
JSONObject jo = new JSONObject(map);
|
||||
jo.put("device_name", this.getDevice().getDevice_name());
|
||||
jo.put("mode", mode);
|
||||
jo.put("action", action);
|
||||
jo.put("walk_y", walk_y);
|
||||
jo.put("error", ErrorUtil.getDictDetail("error_type", String.valueOf(this.getError())));
|
||||
jo.put("task", this.getTask());
|
||||
jo.put("isOnline", this.getIsonline());
|
||||
jo.put("isError", this.getIserror());
|
||||
jo.put("is_disable1", this.getIs_disable());
|
||||
jo.put("is_disable", is_disable);
|
||||
jo.put("is_click", true);
|
||||
jo.put("driver_type", "slit_two_manipulator");
|
||||
jo.put("requireSucess", requireSucess);
|
||||
jo.put("move_1", move_1);
|
||||
jo.put("move_2", move_2);
|
||||
jo.put("message", message);
|
||||
jo.put("notCreateTaskMessage", LangProcess.msg(notCreateTaskMessage));
|
||||
jo.put("notCreateInstMessage", LangProcess.msg(notCreateInstMessage));
|
||||
jo.put("feedMessage", LangProcess.msg(feedMessage));
|
||||
return jo;
|
||||
}
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ public class WmsToAcsController {
|
||||
}
|
||||
|
||||
@PostMapping("/getTubeMsg")
|
||||
@Log("wms下发废箔重量")
|
||||
@Log("下发管芯信息")
|
||||
@SaIgnore
|
||||
public ResponseEntity<Object> getTubeMes(@RequestBody String whereJson) throws Exception {
|
||||
return new ResponseEntity<>(wmstoacsService.getTubeMes(whereJson), HttpStatus.OK);
|
||||
|
||||
@@ -200,6 +200,13 @@ public interface AcsToWmsService {
|
||||
*/
|
||||
HttpResponse feedbackDies(JSONObject param);
|
||||
|
||||
/**
|
||||
* 请求密集库出气胀轴,申请行架任务
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
HttpResponse callShaftFromCache(JSONObject param);
|
||||
|
||||
String secondaryAllocationPoint(JSONObject param);
|
||||
|
||||
/**
|
||||
|
||||
@@ -746,6 +746,40 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public HttpResponse callShaftFromCache(JSONObject param) {
|
||||
HttpResponse result2 = null;
|
||||
try {
|
||||
String wmsurl = paramService.findByCode(AcsConfig.WMSURL).getValue();
|
||||
AddressDto addressDto = addressService.findByCode("callShaftFromCache");
|
||||
String url = wmsurl + addressDto.getMethods_url();
|
||||
log.info("callShaftFromCache - 请求密集库出气胀轴,申请行架任务请求路径{}", param);
|
||||
try {
|
||||
result2 = HttpRequest.post(url)
|
||||
.header("Authorization", token)
|
||||
.body(String.valueOf(param))
|
||||
.execute();
|
||||
} catch (Exception e) {
|
||||
String msg = e.getMessage();
|
||||
log.info("callShaftFromCache-----请求密集库出气胀轴,申请行架任务输出参数{}", msg);
|
||||
//网络不通
|
||||
}
|
||||
log.info("callShaftFromCache - 请求密集库出气胀轴,申请行架任务{}", result2.body());
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4,"callShaftFromCache", String.valueOf(result2.getStatus()),
|
||||
String.valueOf(param),
|
||||
String.valueOf(result2.body()), "请求密集库出气胀轴,申请行架任务");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
return result2;
|
||||
} catch (Exception e) {
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4,"callShaftFromCache", String.valueOf(result2.getStatus()),
|
||||
JSON.toJSONString(result2.body()),
|
||||
String.valueOf(result2.body()), "请求密集库出气胀轴,申请行架任务报错");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public JSONObject queryStationState(Instruction inst) {
|
||||
try {
|
||||
|
||||
@@ -94,9 +94,13 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
public CreateTaskResponse crateTask(String param) {
|
||||
try {
|
||||
MDC.put(log_file_type, log_type);
|
||||
log.info("crateTask-----输入参数{}", param);
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4, param, "acs接收lms任务");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
log.info("ACS接收WMS任务-----输入参数{}", param);
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("ACS接收WMS任务")
|
||||
.content("ACS接收WMS任务-----输入参数:" + param)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray datas = JSONArray.parseArray(param);
|
||||
CreateTaskResponse response = new CreateTaskResponse();
|
||||
// ParamService paramService = SpringContextHolder.getBean(ParamService.class);
|
||||
@@ -391,7 +395,13 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
}
|
||||
response.setErrArr(errArr);
|
||||
}
|
||||
log.info("createFromWms--------------:输出参数:" + JSON.toJSONString(response));
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("ACS接收WMS任务")
|
||||
.content("ACS接收WMS任务-----返回参数:" + JSON.toJSONString(response))
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
log.info("ACS接收WMS任务--------------:输出参数:" + JSON.toJSONString(response));
|
||||
|
||||
return response;
|
||||
} finally {
|
||||
@@ -407,7 +417,13 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
@Override
|
||||
public Map<String, Object> updateTask(String whereJson) {
|
||||
JSONArray datas = JSONArray.parseArray(whereJson);
|
||||
log.info("updateTask--------------:输入参数" + datas.toString());
|
||||
log.info("WMS更新任务点位状态--------------:输入参数" + datas.toString());
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("WMS更新任务点位状态")
|
||||
.content("WMS更新任务点位状态-----输入参数:" + whereJson)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray errArr = new JSONArray();
|
||||
if (datas.size() > 0) {
|
||||
for (int i = 0; i < datas.size(); i++) {
|
||||
@@ -475,6 +491,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
resultJson.put("errArr", errArr);
|
||||
}
|
||||
}
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("WMS更新任务点位状态")
|
||||
.content("WMS更新任务点位状态-----返回参数:" + resultJson)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
return resultJson;
|
||||
}
|
||||
|
||||
@@ -495,10 +517,14 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
|
||||
@Override
|
||||
public PutActionResponse putAction(String jsonObject) throws Exception {
|
||||
log.info("putAction--------------:输入参数" + jsonObject);
|
||||
log.info("WMS下发点位信号--------------:输入参数" + jsonObject);
|
||||
String date = new Date().toString();
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4, jsonObject, date + "LMS反馈ACS动作信号");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("WMS下发点位信号")
|
||||
.content("WMS下发点位信号-----输入参数:" + jsonObject)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray datas = JSONArray.parseArray(jsonObject);
|
||||
PutActionResponse response = new PutActionResponse();
|
||||
JSONArray errArr = new JSONArray();
|
||||
@@ -555,19 +581,26 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
}
|
||||
response.setStatus(200);
|
||||
response.setMessage("success");
|
||||
LuceneLogDto luceneLogDto1 = new LuceneLogDto(4, "putAction", String.valueOf(response.getCode()),
|
||||
jsonObject, String.valueOf(response), "LMS下发动作");
|
||||
luceneExecuteLogService.interfaceExecuteLog(luceneLogDto);
|
||||
log.info("putAction--------------:输出参数:" + response);
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("WMS下发点位信号")
|
||||
.content("WMS下发点位信号-----返回参数:" + JSON.toJSONString(response))
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
log.info("WMS下发点位信号--------------:输出参数:" + JSON.toJSONString(response));
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> putWeightAction(String jsonObject) throws Exception {
|
||||
log.info("putWeightAction--------------:输入参数" + jsonObject);
|
||||
log.info("wms下发废箔重量--------------:输入参数" + jsonObject);
|
||||
String date = new Date().toString();
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4, jsonObject, date + "LMS反馈ACS废箔重量");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("wms下发废箔重量")
|
||||
.content("wms下发废箔重量-----输入参数:" + jsonObject)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray datas = JSONArray.parseArray(jsonObject);
|
||||
JSONObject jo = new JSONObject();
|
||||
for (int i = 0; i < datas.size(); i++) {
|
||||
@@ -619,17 +652,25 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
resultJson.put("status", HttpStatus.OK.value());
|
||||
resultJson.put("message", "操作成功");
|
||||
resultJson.put("data", jo);
|
||||
log.info("putWeightAction--------------:输出参数" + resultJson.toString());
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("wms下发废箔重量")
|
||||
.content("wms下发废箔重量-----返回参数:" + resultJson)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
log.info("wms下发废箔重量--------------:输出参数" + resultJson.toString());
|
||||
return resultJson;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getTubeMes(String jsonObject) throws Exception {
|
||||
log.info("getTubeMes--------------:输入参数" + jsonObject);
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4, "getTubeMes", "",
|
||||
String.valueOf(jsonObject),
|
||||
"", "下发管芯信息");
|
||||
luceneLogService.interfaceExecuteLog(luceneLogDto);
|
||||
log.info("下发管芯信息--------------:输入参数" + jsonObject);
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("下发管芯信息")
|
||||
.content("下发管芯信息-----输入参数:" + jsonObject)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray datas = JSONArray.parseArray(jsonObject);
|
||||
Map map = new HashMap();
|
||||
for (int i = 0; i < datas.size(); i++) {
|
||||
@@ -660,6 +701,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
JSONObject resultJson = new JSONObject();
|
||||
resultJson.put("status", HttpStatus.OK.value());
|
||||
resultJson.put("message", "操作成功");
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("下发管芯信息")
|
||||
.content("下发管芯信息-----返回参数:" + resultJson)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
return resultJson;
|
||||
}
|
||||
|
||||
@@ -667,6 +714,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
public Map<String, Object> queryDevice(String jsonObject) throws Exception {
|
||||
try {
|
||||
MDC.put(log_file_type, log_type);
|
||||
LuceneLogDto logDto = LuceneLogDto.builder()
|
||||
.device_code("WMS查询设备状态")
|
||||
.content("WMS查询设备状态-----输入参数:" + jsonObject)
|
||||
.build();
|
||||
logDto.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto);
|
||||
JSONArray backja = new JSONArray();
|
||||
JSONArray datas = JSONArray.parseArray(jsonObject);
|
||||
//表处下料行架机械手
|
||||
@@ -859,9 +912,12 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
resultJson.put("status", HttpStatus.OK.value());
|
||||
resultJson.put("message", "操作成功");
|
||||
resultJson.put("data", backja);
|
||||
LuceneLogDto luceneLogDto = new LuceneLogDto(4, "queryDevice", String.valueOf(resultJson.get("status")),
|
||||
jsonObject, String.valueOf(resultJson), "LMS查询设备状态");
|
||||
luceneExecuteLogService.interfaceExecuteLog(luceneLogDto);
|
||||
LuceneLogDto logDto1 = LuceneLogDto.builder()
|
||||
.device_code("WMS查询设备状态")
|
||||
.content("WMS查询设备状态-----返回参数:" + resultJson)
|
||||
.build();
|
||||
logDto1.setLog_level(4);
|
||||
luceneExecuteLogService.deviceExecuteLog(logDto1);
|
||||
return resultJson;
|
||||
} finally {
|
||||
MDC.remove(log_file_type);
|
||||
|
||||
@@ -29,7 +29,11 @@ public class SecurityUtils {
|
||||
return json.toBean(CurrentUser.class);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
return new CurrentUser();
|
||||
CurrentUser currentUser = new CurrentUser();
|
||||
currentUser.setId("2");
|
||||
currentUser.setPresonName("外部系统用户");
|
||||
currentUser.setUsername("default");
|
||||
return currentUser;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -65,7 +65,6 @@ public class UserController {
|
||||
}
|
||||
|
||||
@Log("新增用户")
|
||||
|
||||
@PostMapping
|
||||
// @SaCheckPermission("user:add")
|
||||
public ResponseEntity<Object> create(@RequestBody Map user){
|
||||
@@ -74,7 +73,6 @@ public class UserController {
|
||||
}
|
||||
|
||||
@Log("修改用户")
|
||||
|
||||
@PutMapping
|
||||
// @SaCheckPermission("user:edit")
|
||||
public ResponseEntity<Object> update( @RequestBody Map resources) throws Exception {
|
||||
@@ -83,7 +81,6 @@ public class UserController {
|
||||
}
|
||||
|
||||
@Log("修改用户:个人中心")
|
||||
|
||||
public ResponseEntity<Object> center(@RequestBody SysUser resources){
|
||||
if(!resources.getUser_id().equals(StpUtil.getLoginIdAsLong())){
|
||||
throw new BadRequestException(LangProcess.msg("error_sysAuth"));
|
||||
@@ -93,7 +90,6 @@ public class UserController {
|
||||
}
|
||||
|
||||
@Log("删除用户")
|
||||
|
||||
@DeleteMapping
|
||||
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
|
||||
userService.removeByIds(ids);
|
||||
|
||||
@@ -207,6 +207,7 @@ public class AutoCreateInst {
|
||||
}
|
||||
//创建指令后修改任务状态
|
||||
acsTask.setTask_status(TaskStatusEnum.BUSY.getIndex());
|
||||
acsTask.setUpdate_time(DateUtil.now());
|
||||
taskserver.update(acsTask);
|
||||
|
||||
}
|
||||
|
||||
@@ -78,6 +78,17 @@ public class ISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> imp
|
||||
@SneakyThrows
|
||||
public void create(Map userDetail) {
|
||||
SysUser sysUser = new SysUser();
|
||||
//userDetail 中 createTime是string类型BeanUtils.populate不支持解析或者使用MapStruct
|
||||
ConvertUtils.register((m, o) -> {
|
||||
try {
|
||||
if (o == null) {
|
||||
return null;
|
||||
}
|
||||
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(o.toString());
|
||||
} catch (Exception ex) {
|
||||
return new Date();
|
||||
}
|
||||
}, Date.class);
|
||||
BeanUtils.populate(sysUser,userDetail);
|
||||
// 默认密码 123456
|
||||
if (ObjectUtil.isEmpty(sysUser.getPassword())) {
|
||||
|
||||
@@ -577,78 +577,37 @@
|
||||
{{ getAgvSystemLabel(scope.row.agv_system_type) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="put_point_code" :label="$t('TaskRecord.table.Transit_point')"
|
||||
:min-width="flexWidth('put_point_code',crud.data,$t('TaskRecord.table.Transit_point'))"
|
||||
/>
|
||||
<el-table-column prop="remark" :label="$t('task.select.Remark')"
|
||||
:min-width="flexWidth('remark',crud.data,$t('task.select.Remark'))"
|
||||
/>
|
||||
<el-table-column prop="create_by" :label="$t('task.select.Creator')"
|
||||
:min-width="flexWidth('create_by',crud.data,$t('task.select.Creator'))"
|
||||
/>
|
||||
<el-table-column prop="create_time" :label="$t('task.select.Create_time')"
|
||||
:min-width="flexWidth('create_time',crud.data,$t('task.select.Create_time'))"
|
||||
/>
|
||||
<el-table-column v-permission="['admin','task:edit','task:del']" :label="$t('task.select.Operation')"
|
||||
width="200px" align="center"
|
||||
>
|
||||
<el-table-column prop="put_point_code" :label="$t('TaskRecord.table.Transit_point')" :min-width="flexWidth('put_point_code',crud.data,$t('TaskRecord.table.Transit_point'))" />
|
||||
<el-table-column prop="remark" :label="$t('task.select.Remark')" :min-width="flexWidth('remark',crud.data,$t('task.select.Remark'))" />
|
||||
<el-table-column prop="create_by" :label="$t('task.select.Creator')" :min-width="flexWidth('create_by',crud.data,$t('task.select.Creator'))" />
|
||||
<el-table-column prop="create_time" :label="$t('task.select.Create_time')" :min-width="flexWidth('create_time',crud.data,$t('task.select.Create_time'))" />
|
||||
<el-table-column prop="update_by" :label="$t('Inst.table.update_by')" :min-width="flexWidth('update_by',crud.data,$t('Inst.table.update_by'))" />
|
||||
<el-table-column prop="update_time" :label="$t('Inst.table.update_time')" :min-width="flexWidth('update_time',crud.data,$t('Inst.table.update_time'))" />
|
||||
<el-table-column v-permission="['admin','task:edit','task:del']" :label="$t('task.select.Operation')" width="150px" align="center" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-dropdown>
|
||||
<span class="el-dropdown-link">
|
||||
<i class="el-icon-setting">More</i>
|
||||
<el-icon class="el-icon--right">
|
||||
<arrow-down/>
|
||||
</el-icon>
|
||||
</span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-finished"
|
||||
@click="handleCommand(scope.$index, scope.row,'a')"
|
||||
>
|
||||
{{ $t('task.select.Completed') }}
|
||||
</el-button>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-circle-close"
|
||||
@click="handleCommand(scope.$index, scope.row,'b')"
|
||||
>
|
||||
{{ $t('task.select.Cancel') }}
|
||||
</el-button>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-folder-add"
|
||||
@click="handleCommand(scope.$index, scope.row,'c')"
|
||||
>
|
||||
{{ $t('task.select.Create_command') }}
|
||||
</el-button>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-finished"
|
||||
@click="handleCommand(scope.$index, scope.row,'d')"
|
||||
>
|
||||
{{ $t('task.select.Forced_Completed') }}
|
||||
</el-button>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-finished"
|
||||
@click="handleCommand(scope.$index, scope.row,'e')"
|
||||
>
|
||||
{{ $t('task.select.Cancel_Tasks_And_Commands') }}
|
||||
</el-button>
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
<el-button
|
||||
type="text"
|
||||
icon="el-icon-finished"
|
||||
@click="handleCommand(scope.$index, scope.row,'a')"
|
||||
>
|
||||
{{ $t('Inst.table.Finish') }}
|
||||
</el-button>
|
||||
<el-dropdown size="mini">
|
||||
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">{{ $t('user.other.More') }}</el-button>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item icon="el-icon-circle-close"><span @click="handleCommand(scope.$index, scope.row,'b')">
|
||||
{{ $t('auto.common.Cancel') }}</span>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item icon="el-icon-folder-add"><span @click="handleCommand(scope.$index, scope.row,'c')">
|
||||
{{ $t('task.select.Create_command') }}</span>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item icon="el-icon-finished"><span @click="handleCommand(scope.$index, scope.row,'d')">
|
||||
{{ $t('task.select.Forced_Completed') }}
|
||||
</span></el-dropdown-item>
|
||||
<el-dropdown-item icon="el-icon-circle-close"><span @click="handleCommand(scope.$index, scope.row,'e')">
|
||||
{{ $t('task.select.Cancel_Tasks_And_Commands') }}
|
||||
</span></el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
Reference in New Issue
Block a user