opt:输送线分类优化

This commit is contained in:
2024-11-30 16:38:32 +08:00
parent 470a3641a7
commit 0e1f4eeec4

View File

@@ -94,7 +94,7 @@ public class SyncDeviceStatus {
}
private void device() {
long startTime = System.currentTimeMillis();
//long startTime = System.currentTimeMillis();
try {
JSONArray baoshijian = new JSONArray();
JSONArray guhuashi = new JSONArray();
@@ -152,9 +152,7 @@ public class SyncDeviceStatus {
json.put("action", siteDeviceDriver.getAction());
json.put("vehicle_type", siteDeviceDriver.getPallet_type());
json.put("error", siteDeviceDriver.getError());
//todo 检查mode值是否正常
json.put("device_status", siteDeviceDriver.getMode() == 0 ? 1 : 0);
// json.put("device_status", siteDeviceDriver.getError() == 0 ? 1 : 0);
json.put("device_status", siteDeviceDriver.getMode());
site.add(json);
} else if (device.getDeviceDriver() instanceof AgvNdcOneDeviceDriver) {
AgvNdcOneDeviceDriver agvNdcOneDeviceDriver = (AgvNdcOneDeviceDriver) device.getDeviceDriver();
@@ -185,22 +183,23 @@ public class SyncDeviceStatus {
.distinct()
.collect(Collectors.toList());
JSONArray siteJsonArray = new JSONArray();
for (String deviceCode : siteList) {
JSONArray siteJSONArray = site.stream()
.filter(obj -> ((JSONObject) obj).getString("device_code").startsWith(deviceCode))
.collect(Collectors.toCollection(JSONArray::new));
long siteCount = site.stream()
.filter(obj -> "0".equals(((JSONObject) obj).getString("device_status")))
.count();
JSONObject json = new JSONObject();
json.put("device_code", deviceCode);
json.put("device_status", siteCount > 0 ? 0 : 1);
if (!siteList.isEmpty()) {
JSONObject item = siteJSONArray.getJSONObject(0);
if (ObjectUtil.isNotEmpty(siteList)) {
for (String deviceCode : siteList) {
JSONArray filterJsonArray = site.stream()
.filter(obj -> ((JSONObject) obj).getString("device_code").startsWith(deviceCode))
.collect(Collectors.toCollection(JSONArray::new));
//有站点运行代表输送线运行
long siteCount = site.stream()
.filter(obj -> !"0".equals(((JSONObject) obj).getString("device_status")))
.count();
JSONObject json = new JSONObject();
json.put("device_code", deviceCode);
json.put("device_status", siteCount > 0 ? 1 : 0);
JSONObject item = filterJsonArray.getJSONObject(0);
json.put("vehicle_type", item.getString("vehicle_type"));
json.put("action", item.getString("action"));
siteJsonArray.add(json);
}
siteJsonArray.add(json);
}
JSONArray ptJsonArray = site.stream()
.filter(obj -> ((JSONObject) obj).getString("device_code").startsWith("PTHCW"))
@@ -247,7 +246,7 @@ public class SyncDeviceStatus {
redisUtils.set("agv", agv);
// log.trace("自动上报驱动状态,完毕耗时{}", System.currentTimeMillis() - startTime);
} catch (Exception e) {
log.error("自动线程开始查询AGV设备自动上报驱动状态失败{}{}", e, e.getMessage());
log.error("自动线程开始查询AGV设备自动上报驱动状态失败{}{}", e, e.getMessage());
}
}
}