opt:优化秒级接口查询;
This commit is contained in:
@@ -88,7 +88,7 @@ public class SyncDeviceStatus {
|
|||||||
String deviceStatus = StringUtils.isNotBlank(Item.getString("status")) ? AcsDefineEnum.RGV_STATUS.check1(Item.getString("status")) : "4";
|
String deviceStatus = StringUtils.isNotBlank(Item.getString("status")) ? AcsDefineEnum.RGV_STATUS.check1(Item.getString("status")) : "4";
|
||||||
Item.put("device_status", deviceStatus);
|
Item.put("device_status", deviceStatus);
|
||||||
});
|
});
|
||||||
redisUtils.set("RGV", jsonArray);
|
redisUtils.set("rgv", jsonArray);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// log.error("自动上报驱动状态,查询浙大RGV设备状态失败{}{}", e, e.getMessage());
|
// log.error("自动上报驱动状态,查询浙大RGV设备状态失败{}{}", e, e.getMessage());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ spring:
|
|||||||
db-type: com.alibaba.druid.pool.DruidDataSource
|
db-type: com.alibaba.druid.pool.DruidDataSource
|
||||||
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||||
# url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:stand_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
# url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:stand_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3307}/${DB_NAME:acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
username: ${DB_USER:root}
|
username: ${DB_USER:root}
|
||||||
# password: ${DB_PWD:Root.123456}
|
# password: ${DB_PWD:Root.123456}
|
||||||
password: ${DB_PWD:123456}
|
password: ${DB_PWD:123456}
|
||||||
@@ -72,7 +72,8 @@ spring:
|
|||||||
redis:
|
redis:
|
||||||
#数据库索引
|
#数据库索引
|
||||||
database: ${REDIS_DB:2}
|
database: ${REDIS_DB:2}
|
||||||
host: ${REDIS_HOST:127.0.0.1}
|
host: ${REDIS_HOST:10.44.101.19}
|
||||||
|
# host: ${REDIS_HOST:127.0.0.1}
|
||||||
port: ${REDIS_PORT:6379}
|
port: ${REDIS_PORT:6379}
|
||||||
# password: ${REDIS_PWD:}
|
# password: ${REDIS_PWD:}
|
||||||
|
|
||||||
@@ -171,7 +172,7 @@ sa-token:
|
|||||||
# Redis数据库索引(默认为0)
|
# Redis数据库索引(默认为0)
|
||||||
database: 2
|
database: 2
|
||||||
# Redis服务器地址
|
# Redis服务器地址
|
||||||
host: 127.0.0.1
|
host: 10.44.101.19
|
||||||
# Redis服务器连接端口
|
# Redis服务器连接端口
|
||||||
port: 6379
|
port: 6379
|
||||||
# Redis服务器连接密码(默认为空)
|
# Redis服务器连接密码(默认为空)
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ https://juejin.cn/post/6844903775631572999
|
|||||||
<!--日志文件保留天数-->
|
<!--日志文件保留天数-->
|
||||||
<maxHistory>15</maxHistory>
|
<maxHistory>15</maxHistory>
|
||||||
<!--单个日志最大容量 至少10MB才能看得出来-->
|
<!--单个日志最大容量 至少10MB才能看得出来-->
|
||||||
<maxFileSize>100MB</maxFileSize>
|
<maxFileSize>50MB</maxFileSize>
|
||||||
<!--所有日志最多占多大容量-->
|
<!--所有日志最多占多大容量-->
|
||||||
<totalSizeCap>20GB</totalSizeCap>
|
<totalSizeCap>20GB</totalSizeCap>
|
||||||
</rollingPolicy>
|
</rollingPolicy>
|
||||||
@@ -71,46 +71,36 @@ https://juejin.cn/post/6844903775631572999
|
|||||||
<!--添加loki-->
|
<!--添加loki-->
|
||||||
<!--开发环境:打印控制台-->
|
<!--开发环境:打印控制台-->
|
||||||
<springProfile name="dev">
|
<springProfile name="dev">
|
||||||
<root level="debug">
|
<root level="info">
|
||||||
<appender-ref ref="asyncLuceneAppender"/>
|
<appender-ref ref="asyncLuceneAppender"/>
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</root>
|
</root>
|
||||||
<logger name="jdbc" level="ERROR" additivity="true">
|
<logger name="jdbc" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.springframework" level="ERROR" additivity="true">
|
<logger name="org.springframework" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.hibernate" level="ERROR" additivity="true">
|
<logger name="org.hibernate" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.quartz" level="ERROR" additivity="true">
|
<logger name="org.quartz" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="com.google" level="ERROR" additivity="true">
|
<logger name="com.google" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.redisson" level="ERROR" additivity="true">
|
<logger name="org.redisson" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.nl.modules.wql" level="ERROR" additivity="true">
|
<logger name="org.nl.modules.wql" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.springframework.data" level="ERROR" additivity="true">
|
<logger name="org.springframework.data" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.jinterop" level="ERROR" additivity="true">
|
<logger name="org.jinterop" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
<appender-ref ref="CONSOLE"/>
|
|
||||||
</logger>
|
</logger>
|
||||||
</springProfile>
|
</springProfile>
|
||||||
<!--测试环境:打印控制台-->
|
<!--测试环境:打印控制台-->
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
ENV = 'development'
|
ENV = 'development'
|
||||||
|
|
||||||
# 接口地址
|
# 接口地址
|
||||||
VUE_APP_BASE_API = 'http://localhost:8011'
|
VUE_APP_BASE_API = 'http://127.0.0.1:8011'
|
||||||
VUE_APP_WS_API = 'ws://localhost:8011'
|
VUE_APP_WS_API = 'ws://127.0.0.1:8011'
|
||||||
|
|
||||||
# 是否启用 babel-plugin-dynamic-import-node插件
|
# 是否启用 babel-plugin-dynamic-import-node插件
|
||||||
VUE_CLI_BABEL_TRANSPILE_MODULES = true
|
VUE_CLI_BABEL_TRANSPILE_MODULES = true
|
||||||
|
|||||||
@@ -501,38 +501,52 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
return item;
|
return item;
|
||||||
};
|
};
|
||||||
// AGV
|
// AGV
|
||||||
JSONArray agvInfos = (JSONArray) redisUtils.get("AGV1");
|
JSONArray agvInfos = (JSONArray) redisUtils.get("agv");
|
||||||
int agvFaultNum = (int) agvInfos.stream()
|
int agvFaultNum = 0;
|
||||||
.map(object -> (JSONObject) object)
|
int agvNormalNum = 0;
|
||||||
.filter(jsonObject -> AcsDefineEnum.AGV_STATUS.code("故障中").equals(jsonObject.getString("device_status")))
|
if (ObjectUtil.isNotEmpty(agvInfos)) {
|
||||||
.count();
|
agvFaultNum = (int) agvInfos.stream()
|
||||||
int agvNormalNum = agvInfos.size() - agvFaultNum;
|
.map(object -> (JSONObject) object)
|
||||||
|
.filter(jsonObject -> AcsDefineEnum.AGV_STATUS.code("故障中").equals(jsonObject.getString("device_status")))
|
||||||
|
.count();
|
||||||
|
agvNormalNum = agvInfos.size() - agvFaultNum;
|
||||||
|
}
|
||||||
List<Map<String, Object>> agv_info = Arrays.asList(
|
List<Map<String, Object>> agv_info = Arrays.asList(
|
||||||
createItem.apply("0").apply(agvNormalNum),
|
createItem.apply("0").apply(agvNormalNum),
|
||||||
createItem.apply("1").apply(agvFaultNum)
|
createItem.apply("1").apply(agvFaultNum)
|
||||||
);
|
);
|
||||||
// RGV
|
// RGV
|
||||||
JSONArray rgvInfos = (JSONArray) redisUtils.get("RGV1");
|
int rgvFaultNum = 0;
|
||||||
int rgvFaultNum = (int) rgvInfos.stream()
|
int rgvNormalNum = 0;
|
||||||
.map(object -> (JSONObject) object)
|
JSONArray rgvInfos = (JSONArray) redisUtils.get("rgv");
|
||||||
.filter(jsonObject -> StringUtils.isNotBlank(jsonObject.getString("Error")))
|
if (ObjectUtil.isNotEmpty(rgvInfos)) {
|
||||||
.count();
|
rgvFaultNum = (int) rgvInfos.stream()
|
||||||
int rgvNormalNum = rgvInfos.size() - rgvFaultNum;
|
.map(object -> (JSONObject) object)
|
||||||
|
.filter(jsonObject -> StringUtils.isNotBlank(jsonObject.getString("Error")))
|
||||||
|
.count();
|
||||||
|
rgvNormalNum = rgvInfos.size() - rgvFaultNum;
|
||||||
|
}
|
||||||
List<Map<String, Object>> rgv_info = Arrays.asList(
|
List<Map<String, Object>> rgv_info = Arrays.asList(
|
||||||
createItem.apply("0").apply(rgvNormalNum),
|
createItem.apply("0").apply(rgvNormalNum),
|
||||||
createItem.apply("1").apply(rgvFaultNum)
|
createItem.apply("1").apply(rgvFaultNum)
|
||||||
);
|
);
|
||||||
// 输送线
|
// 输送线
|
||||||
JSONArray conveyorInfos = (JSONArray) redisUtils.get("site1");
|
int ptConveyorNum = 0;
|
||||||
int ptConveyorNum = (int) conveyorInfos.stream()
|
int ltConveyorNum = 0;
|
||||||
.map(object -> (JSONObject) object)
|
int emptyConveyorNum = 0;
|
||||||
.filter(jsonObject -> AcsDefineEnum.VEHICLE_TYPE.code("普涂").equals(jsonObject.getString("pallet_type")))
|
|
||||||
.count();
|
JSONArray conveyorInfos = (JSONArray) redisUtils.get("site");
|
||||||
int ltConveyorNum = (int) conveyorInfos.stream()
|
if (ObjectUtil.isNotEmpty(conveyorInfos)) {
|
||||||
.map(object -> (JSONObject) object)
|
ptConveyorNum = (int) conveyorInfos.stream()
|
||||||
.filter(jsonObject -> AcsDefineEnum.VEHICLE_TYPE.code("连涂").equals(jsonObject.getString("pallet_type")))
|
.map(object -> (JSONObject) object)
|
||||||
.count();
|
.filter(jsonObject -> AcsDefineEnum.VEHICLE_TYPE.code("普涂").equals(jsonObject.getString("pallet_type")))
|
||||||
int emptyConveyorNum = conveyorInfos.size() - ptConveyorNum - ltConveyorNum;
|
.count();
|
||||||
|
ltConveyorNum = (int) conveyorInfos.stream()
|
||||||
|
.map(object -> (JSONObject) object)
|
||||||
|
.filter(jsonObject -> AcsDefineEnum.VEHICLE_TYPE.code("连涂").equals(jsonObject.getString("pallet_type")))
|
||||||
|
.count();
|
||||||
|
emptyConveyorNum = conveyorInfos.size() - ptConveyorNum - ltConveyorNum;
|
||||||
|
}
|
||||||
List<Map<String, Object>> conveyor_info = Arrays.asList(
|
List<Map<String, Object>> conveyor_info = Arrays.asList(
|
||||||
createItem.apply("2").apply(ltConveyorNum),
|
createItem.apply("2").apply(ltConveyorNum),
|
||||||
createItem.apply("3").apply(ptConveyorNum),
|
createItem.apply("3").apply(ptConveyorNum),
|
||||||
@@ -543,7 +557,7 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
device_status.put("conveyor_info", conveyor_info);
|
device_status.put("conveyor_info", conveyor_info);
|
||||||
//实时故障告警
|
//实时故障告警
|
||||||
List<Map<String, Object>> fault_alarm = cockpitMapper.faultAlarm();
|
List<Map<String, Object>> fault_alarm = cockpitMapper.faultAlarm();
|
||||||
faultAlarmDefault(fault_alarm, "AGV08");
|
//faultAlarmDefault(fault_alarm, "AGV08");
|
||||||
//近30日故障统计
|
//近30日故障统计
|
||||||
JSONArray monthly_fault_statistics = cockpitMapper.monthlyFaultStatistics();
|
JSONArray monthly_fault_statistics = cockpitMapper.monthlyFaultStatistics();
|
||||||
//测试数据,上线后删除
|
//测试数据,上线后删除
|
||||||
@@ -576,7 +590,7 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
switch (type) {
|
switch (type) {
|
||||||
case RegionCodeConstant.COATED_PLATE_LINE_AREA:
|
case RegionCodeConstant.COATED_PLATE_LINE_AREA:
|
||||||
// 涂板线区域,涂板线是作为一整台设备显示,point:设备点
|
// 涂板线区域,涂板线是作为一整台设备显示,point:设备点
|
||||||
JSONArray baoshijian = (JSONArray) redisUtils.get("baoshijian1");
|
JSONArray baoshijian = (JSONArray) redisUtils.get("baoshijian");
|
||||||
points = pointService.getSubSites(deviceCode);
|
points = pointService.getSubSites(deviceCode);
|
||||||
res.put("device_code", deviceCode);
|
res.put("device_code", deviceCode);
|
||||||
//todo 运行状态,信号缺失
|
//todo 运行状态,信号缺失
|
||||||
@@ -653,7 +667,7 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
case RegionCodeConstant.CURING_ZONE:
|
case RegionCodeConstant.CURING_ZONE:
|
||||||
//固化室,需要显示整个设备+内部位置明细
|
//固化室,需要显示整个设备+内部位置明细
|
||||||
points = pointService.getSubSites(deviceCode); // 小固化位置以及进出口(入口是不管的)
|
points = pointService.getSubSites(deviceCode); // 小固化位置以及进出口(入口是不管的)
|
||||||
JSONArray guhuashi = (JSONArray) redisUtils.get("guhuashi1");
|
JSONArray guhuashi = (JSONArray) redisUtils.get("guhuashi");
|
||||||
for (Object object : guhuashi) {
|
for (Object object : guhuashi) {
|
||||||
res.put("device_code", deviceCode);
|
res.put("device_code", deviceCode);
|
||||||
res.put("device_name", point.getPoint_name());
|
res.put("device_name", point.getPoint_name());
|
||||||
@@ -707,7 +721,7 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
res.put("device_name", point.getPoint_name());
|
res.put("device_name", point.getPoint_name());
|
||||||
res.put("material_type", ObjectUtil.isNotEmpty(point.getVehicle_type()) ? point.getVehicle_type() : "-");
|
res.put("material_type", ObjectUtil.isNotEmpty(point.getVehicle_type()) ? point.getVehicle_type() : "-");
|
||||||
res.put("end_time", "-");
|
res.put("end_time", "-");
|
||||||
JSONArray ssxInfos = (JSONArray) redisUtils.get("site1");
|
JSONArray ssxInfos = (JSONArray) redisUtils.get("site");
|
||||||
JSONArray ssxArray = new JSONArray();
|
JSONArray ssxArray = new JSONArray();
|
||||||
for (int i = 0; i < points.size(); i++) {
|
for (int i = 0; i < points.size(); i++) {
|
||||||
SchBasePoint pointObj = points.get(i);
|
SchBasePoint pointObj = points.get(i);
|
||||||
@@ -748,8 +762,11 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case RegionCodeConstant.VEHICLEINFO:
|
case RegionCodeConstant.VEHICLEINFO:
|
||||||
JSONArray agvInfos = (JSONArray) redisUtils.get("AGV1");
|
JSONArray agvInfos = (JSONArray) redisUtils.get("agv");
|
||||||
JSONArray rgvInfos = (JSONArray) redisUtils.get("RGV1");
|
JSONArray rgvInfos = (JSONArray) redisUtils.get("rgv");
|
||||||
|
if (ObjectUtil.isEmpty(agvInfos)) {
|
||||||
|
return res;
|
||||||
|
}
|
||||||
JSONObject vehicleInfo = agvInfos.stream()
|
JSONObject vehicleInfo = agvInfos.stream()
|
||||||
.map(object -> (JSONObject) object)
|
.map(object -> (JSONObject) object)
|
||||||
.filter(jsonObject -> deviceCode.equals(jsonObject.getString("device_code")))
|
.filter(jsonObject -> deviceCode.equals(jsonObject.getString("device_code")))
|
||||||
@@ -758,6 +775,9 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
if (ObjectUtil.isNotEmpty(vehicleInfo)) {
|
if (ObjectUtil.isNotEmpty(vehicleInfo)) {
|
||||||
vehicleInfo.put("type", "AGV");
|
vehicleInfo.put("type", "AGV");
|
||||||
} else {
|
} else {
|
||||||
|
if (ObjectUtil.isEmpty(rgvInfos)) {
|
||||||
|
return res;
|
||||||
|
}
|
||||||
vehicleInfo = rgvInfos.stream()
|
vehicleInfo = rgvInfos.stream()
|
||||||
.map(object -> (JSONObject) object)
|
.map(object -> (JSONObject) object)
|
||||||
.filter(jsonObject -> deviceCode.equals(jsonObject.getString("vehicle")))
|
.filter(jsonObject -> deviceCode.equals(jsonObject.getString("vehicle")))
|
||||||
@@ -893,8 +913,10 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
if (ObjectUtil.isNotEmpty(result)) {
|
if (ObjectUtil.isNotEmpty(result)) {
|
||||||
JSONObject ghsDetailInfo = new JSONObject();
|
JSONObject ghsDetailInfo = new JSONObject();
|
||||||
JSONArray ghsDetails = new JSONArray();
|
JSONArray ghsDetails = new JSONArray();
|
||||||
JSONArray guHuaShi = (JSONArray) redisUtils.get("guhuashi1");
|
JSONArray guHuaShi = (JSONArray) redisUtils.get("guhuashi");
|
||||||
array.add(guHuaShi);
|
if(ObjectUtil.isNotEmpty(guHuaShi)) {
|
||||||
|
array.add(guHuaShi);
|
||||||
|
}
|
||||||
// for (Object object : result) {
|
// for (Object object : result) {
|
||||||
// //设备状态 按照lms点位管理来 1-无货;2-有货;3-进料;4固化;5出料,6故障
|
// //设备状态 按照lms点位管理来 1-无货;2-有货;3-进料;4固化;5出料,6故障
|
||||||
// JSONObject d = (JSONObject) object;
|
// JSONObject d = (JSONObject) object;
|
||||||
@@ -917,13 +939,17 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
});
|
});
|
||||||
//查询保湿间信息
|
//查询保湿间信息
|
||||||
CompletableFuture<List<Map<String, Object>>> task2 = CompletableFuture.supplyAsync(() -> {
|
CompletableFuture<List<Map<String, Object>>> task2 = CompletableFuture.supplyAsync(() -> {
|
||||||
JSONArray baoShiJian = (JSONArray) redisUtils.get("baoshijian1");
|
JSONArray baoShiJian = (JSONArray) redisUtils.get("baoshijian");
|
||||||
//todo 设备状态待补充信号逻辑
|
//todo 设备状态待补充信号逻辑
|
||||||
for (Object object : baoShiJian) {
|
if (ObjectUtil.isNotEmpty(baoShiJian)) {
|
||||||
JSONObject jsonObject = (JSONObject) object;
|
for (Object object : baoShiJian) {
|
||||||
if (StringUtils.isBlank(jsonObject.getString("device_status"))) {
|
JSONObject jsonObject = (JSONObject) object;
|
||||||
jsonObject.put("device_status", "1");
|
if (StringUtils.isBlank(jsonObject.getString("device_status"))) {
|
||||||
|
jsonObject.put("device_status", "1");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
array.add(new JSONArray());
|
||||||
}
|
}
|
||||||
array.add(baoShiJian);
|
array.add(baoShiJian);
|
||||||
return null;
|
return null;
|
||||||
@@ -934,14 +960,18 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
});
|
});
|
||||||
//查询检测站点数据
|
//查询检测站点数据
|
||||||
CompletableFuture<List<Map<String, Object>>> task3 = CompletableFuture.supplyAsync(() -> {
|
CompletableFuture<List<Map<String, Object>>> task3 = CompletableFuture.supplyAsync(() -> {
|
||||||
JSONArray site = (JSONArray) redisUtils.get("site1");
|
JSONArray site = (JSONArray) redisUtils.get("site");
|
||||||
//todo 待补充信号逻辑
|
//todo 待补充信号逻辑
|
||||||
for (Object object : site) {
|
if (ObjectUtil.isNotEmpty(site)) {
|
||||||
JSONObject jsonObject = (JSONObject) object;
|
for (Object object : site) {
|
||||||
if (StringUtils.isBlank(jsonObject.getString("device_status"))) {
|
JSONObject jsonObject = (JSONObject) object;
|
||||||
//0故障1正常
|
if (StringUtils.isBlank(jsonObject.getString("device_status"))) {
|
||||||
jsonObject.put("device_status", "1");
|
//0故障1正常
|
||||||
|
jsonObject.put("device_status", "1");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
array.add(new JSONArray());
|
||||||
}
|
}
|
||||||
array.add(site);
|
array.add(site);
|
||||||
return null;
|
return null;
|
||||||
@@ -952,19 +982,23 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
});
|
});
|
||||||
//查询AGV数据
|
//查询AGV数据
|
||||||
CompletableFuture<List<Map<String, Object>>> task4 = CompletableFuture.supplyAsync(() -> {
|
CompletableFuture<List<Map<String, Object>>> task4 = CompletableFuture.supplyAsync(() -> {
|
||||||
JSONArray agv = (JSONArray) redisUtils.get("AGV1");
|
JSONArray agv = (JSONArray) redisUtils.get("agv");
|
||||||
//todo 待补充信号逻辑
|
if (ObjectUtil.isNotEmpty(agv)) {
|
||||||
for (Object object : agv) {
|
//todo 待补充信号逻辑
|
||||||
JSONObject jsonObject = (JSONObject) object;
|
for (Object object : agv) {
|
||||||
if (StringUtils.isBlank(jsonObject.getString("move"))) {
|
JSONObject jsonObject = (JSONObject) object;
|
||||||
jsonObject.put("move", "0");
|
if (StringUtils.isBlank(jsonObject.getString("move"))) {
|
||||||
}
|
jsonObject.put("move", "0");
|
||||||
if (StringUtils.isBlank(jsonObject.getString("full"))) {
|
}
|
||||||
jsonObject.put("full", "0");
|
if (StringUtils.isBlank(jsonObject.getString("full"))) {
|
||||||
}
|
jsonObject.put("full", "0");
|
||||||
if (StringUtils.isBlank(jsonObject.getString("vehicle_type"))) {
|
}
|
||||||
jsonObject.put("vehicle_type", "0");
|
if (StringUtils.isBlank(jsonObject.getString("vehicle_type"))) {
|
||||||
|
jsonObject.put("vehicle_type", "0");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
agv = new JSONArray();
|
||||||
}
|
}
|
||||||
array.add(agv);
|
array.add(agv);
|
||||||
return null;
|
return null;
|
||||||
@@ -975,22 +1009,26 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
});
|
});
|
||||||
//查询RGV设备信息
|
//查询RGV设备信息
|
||||||
CompletableFuture<List<Map<String, Object>>> task5 = CompletableFuture.supplyAsync(() -> {
|
CompletableFuture<List<Map<String, Object>>> task5 = CompletableFuture.supplyAsync(() -> {
|
||||||
JSONArray rgv = (JSONArray) redisUtils.get("RGV1");
|
JSONArray rgv = (JSONArray) redisUtils.get("rgv");
|
||||||
//todo 待补充信号逻辑
|
if (ObjectUtil.isNotEmpty(rgv)) {
|
||||||
for (Object object : rgv) {
|
//todo 待补充信号逻辑
|
||||||
JSONObject jsonObject = (JSONObject) object;
|
for (Object object : rgv) {
|
||||||
//todo 正式环境可以去除,在ACS端处理运行状态
|
JSONObject jsonObject = (JSONObject) object;
|
||||||
String device_status = StringUtils.isNotBlank(jsonObject.getString("status")) ? AcsDefineEnum.RGV_STATUS.check1(jsonObject.getString("status")) : "4";
|
//todo 正式环境可以去除,在ACS端处理运行状态
|
||||||
jsonObject.put("device_status", device_status);
|
String device_status = StringUtils.isNotBlank(jsonObject.getString("status")) ? AcsDefineEnum.RGV_STATUS.check1(jsonObject.getString("status")) : "4";
|
||||||
if (StringUtils.isBlank(jsonObject.getString("move"))) {
|
jsonObject.put("device_status", device_status);
|
||||||
jsonObject.put("move", "0");
|
if (StringUtils.isBlank(jsonObject.getString("move"))) {
|
||||||
}
|
jsonObject.put("move", "0");
|
||||||
if (StringUtils.isBlank(jsonObject.getString("full"))) {
|
}
|
||||||
jsonObject.put("full", "0");
|
if (StringUtils.isBlank(jsonObject.getString("full"))) {
|
||||||
}
|
jsonObject.put("full", "0");
|
||||||
if (StringUtils.isBlank(jsonObject.getString("vehicle_type"))) {
|
}
|
||||||
jsonObject.put("vehicle_type", "0");
|
if (StringUtils.isBlank(jsonObject.getString("vehicle_type"))) {
|
||||||
|
jsonObject.put("vehicle_type", "0");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
rgv = new JSONArray();
|
||||||
}
|
}
|
||||||
array.add(rgv);
|
array.add(rgv);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ spring:
|
|||||||
druid:
|
druid:
|
||||||
db-type: com.alibaba.druid.pool.DruidDataSource
|
db-type: com.alibaba.druid.pool.DruidDataSource
|
||||||
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||||
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3307}/${DB_NAME:lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
# url: jdbc:log4jdbc:mysql://${DB_HOST:47.111.78.178}:${DB_PORT:3306}/${DB_NAME:stand_lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
# url: jdbc:log4jdbc:mysql://${DB_HOST:47.111.78.178}:${DB_PORT:3306}/${DB_NAME:stand_lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
username: ${DB_USER:root}
|
username: ${DB_USER:root}
|
||||||
password: ${DB_PWD:123456}
|
password: ${DB_PWD:123456}
|
||||||
@@ -55,7 +55,8 @@ spring:
|
|||||||
redis:
|
redis:
|
||||||
#数据库索引
|
#数据库索引
|
||||||
database: ${REDIS_DB:2}
|
database: ${REDIS_DB:2}
|
||||||
host: ${REDIS_HOST:127.0.0.1}
|
# host: ${REDIS_HOST:10.44.101.112}
|
||||||
|
host: ${REDIS_HOST:10.44.101.19}
|
||||||
port: ${REDIS_PORT:6379}
|
port: ${REDIS_PORT:6379}
|
||||||
password: ${REDIS_PWD:}
|
password: ${REDIS_PWD:}
|
||||||
|
|
||||||
@@ -152,9 +153,9 @@ sa-token:
|
|||||||
token-session-check-login: false
|
token-session-check-login: false
|
||||||
alone-redis:
|
alone-redis:
|
||||||
# Redis数据库索引(默认为0)
|
# Redis数据库索引(默认为0)
|
||||||
database: 2
|
database: 5
|
||||||
# Redis服务器地址
|
# Redis服务器地址
|
||||||
host: 127.0.0.1
|
host: 10.44.101.19
|
||||||
# Redis服务器连接端口
|
# Redis服务器连接端口
|
||||||
port: 6379
|
port: 6379
|
||||||
# Redis服务器连接密码(默认为空)
|
# Redis服务器连接密码(默认为空)
|
||||||
|
|||||||
@@ -112,6 +112,6 @@ mybatis-plus:
|
|||||||
id-type: INPUT
|
id-type: INPUT
|
||||||
lucene:
|
lucene:
|
||||||
index:
|
index:
|
||||||
path: C:\lucene\index
|
path: D:\lucene\index
|
||||||
tlog:
|
tlog:
|
||||||
enable-invoke-time-print: true
|
enable-invoke-time-print: true
|
||||||
|
|||||||
Reference in New Issue
Block a user