rev:设备监控优化

This commit is contained in:
2024-03-11 14:08:36 +08:00
parent 4d18c231b9
commit e19fa045a3
13 changed files with 87 additions and 45 deletions

View File

@@ -608,7 +608,7 @@ public class BlankManipulatorDeviceDriver extends AbstractOpcDeviceDriver implem
action = LangProcess.msg("universal_releasing_completed"); action = LangProcess.msg("universal_releasing_completed");
} }
if(error == 0 && iserror){ if(error == 0 && iserror){
message = "信号连接异常!"; message = "universal_message11";
} }
jo.put("device_name", this.getDevice().getDevice_name()); jo.put("device_name", this.getDevice().getDevice_name());
jo.put("mode", mode); jo.put("mode", mode);

View File

@@ -165,7 +165,7 @@ public class HongXiangStationDeviceDriver extends AbstractOpcDeviceDriver implem
public JSONObject getDeviceStatusName() { public JSONObject getDeviceStatusName() {
JSONObject jo = new JSONObject(); JSONObject jo = new JSONObject();
if(error == 0 && iserror){ if(error == 0 && iserror){
message = "信号连接异常!"; message = "universal_message11";
} }
jo.put("device_name", this.getDevice().getDevice_name()); jo.put("device_name", this.getDevice().getDevice_name());
jo.put("mode", mode ==2 ? "待机": "脱机"); jo.put("mode", mode ==2 ? "待机": "脱机");

View File

@@ -308,7 +308,7 @@ public class HongXiangConveyorDeviceDriver extends AbstractOpcDeviceDriver imple
jo.put("hasGoods", true); jo.put("hasGoods", true);
} }
if(error == 0 && iserror){ if(error == 0 && iserror){
message = "信号连接异常!"; message = "universal_message11";
} }
jo.put("device_name", this.getDevice().getDevice_name()); jo.put("device_name", this.getDevice().getDevice_name());
jo.put("temperature", temperature); jo.put("temperature", temperature);

View File

@@ -187,7 +187,7 @@ public class ManipulatorAgvStationDeviceDriver extends AbstractOpcDeviceDriver i
String mode = ""; String mode = "";
String action = ""; String action = "";
if(iserror){ if(iserror){
message = "信号连接异常!"; message = "universal_message11";
} }
jo.put("device_name", this.getDevice().getDevice_name()); jo.put("device_name", this.getDevice().getDevice_name());
jo.put("mode", "联机"); jo.put("mode", "联机");

View File

@@ -304,8 +304,8 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
break; break;
case 7: case 7:
if (!requireSucess && task > 0) { if (!requireSucess && task > 0) {
//套管失败无库存 //申请拔轴
//todo applyPullShaft(mode);
} }
break; break;
case 8: case 8:
@@ -439,6 +439,38 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
} }
} }
/**
* 申请拔轴
*/
private synchronized void applyPullShaft(int mode) {
ApplyPlugPullSiteRequest applyPlugPullSiteRequest = new ApplyPlugPullSiteRequest();
ApplyPlugPullSitResponse applyPlugPullSitResponse;
Instruction inst1 = instructionService.findByCode(String.valueOf(task));
String task_code1 = inst1.getTask_code();
TaskDto taskDto = taskserver.findByCode(task_code1);
if (ObjectUtil.isNotEmpty(taskDto)){
}
applyPlugPullSiteRequest.setDevice_code(device_code);
applyPlugPullSiteRequest.setTask_code(task_code1);
applyPlugPullSiteRequest.setBarcode(String.valueOf(barcode));
applyPlugPullSiteRequest.setType("4");
applyPlugPullSitResponse = acsToWmsService.applyPlugPullSiteRequest(applyPlugPullSiteRequest);
if (applyPlugPullSitResponse.getCode() == 200) {
this.writeSignal(mode);
logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴,返回参数:" + applyPlugPullSitResponse);
message = "拔轴完成成功";
} else {
message = applyPlugPullSitResponse.getMessage();
Map<String, Object> map = new LinkedHashMap<>();
map.put("to_command", 99);
this.writing(map);
requireSucess = true;
message = "申请拔轴失败";
logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴反馈失败,返回参数:" + applyPlugPullSitResponse);
}
}
/** /**
* 缓存线已满,生成行架任务 * 缓存线已满,生成行架任务
*/ */
@@ -449,7 +481,7 @@ public class PlugPullDeviceSiteDeviceDriver extends AbstractOpcDeviceDriver impl
String task_code1 = inst1.getTask_code(); String task_code1 = inst1.getTask_code();
applyPlugPullSiteRequest.setDevice_code(device_code); applyPlugPullSiteRequest.setDevice_code(device_code);
applyPlugPullSiteRequest.setTask_code(task_code1); applyPlugPullSiteRequest.setTask_code(task_code1);
applyPlugPullSiteRequest.setType("4"); applyPlugPullSiteRequest.setType("5");
applyPlugPullSitResponse = acsToWmsService.applyPlugPullSiteRequest(applyPlugPullSiteRequest); applyPlugPullSitResponse = acsToWmsService.applyPlugPullSiteRequest(applyPlugPullSiteRequest);
if (applyPlugPullSitResponse.getCode() == 200) { if (applyPlugPullSitResponse.getCode() == 200) {
logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴,返回参数:" + applyPlugPullSitResponse); logServer.deviceExecuteLog(this.device_code, "", "", "申请拔轴,返回参数:" + applyPlugPullSitResponse);

View File

@@ -339,12 +339,12 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
} else { } else {
if (mode == 2) { if (mode == 2) {
//if (!requireSucess) { //if (!requireSucess) {
String remark = "";; String remark = "";
if (mode != 2) { if (mode != 2) {
remark = remark + "工作模式(mode)不是待机状态,"; remark = remark + "universal_remark2";
} }
if (move != 0) { if (move != 0) {
remark = remark + "光电信号(move)为有货状态,"; remark = remark + "universal_remark3";
} }
if (task != 0) { if (task != 0) {
remark = remark + "universal_remark4"; remark = remark + "universal_remark4";
@@ -417,10 +417,12 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
Device startDevice = deviceAppService.findDeviceByCode(start_device_code); Device startDevice = deviceAppService.findDeviceByCode(start_device_code);
Device nextDevice = deviceAppService.findDeviceByCode(next_device_code); Device nextDevice = deviceAppService.findDeviceByCode(next_device_code);
if (ObjectUtil.isEmpty(startDevice.getExtraValue().get("address"))) { if (ObjectUtil.isEmpty(startDevice.getExtraValue().get("address"))) {
throw new BadRequestException(LangProcess.msg("device_checkAdd", startDevice.getDevice_code())); notCreateInstMessage = "universal_notCreateInstMessage1";
throw new BadRequestException("设备:" + startDevice.getDevice_code() + "未设置电气调度号!");
} }
if (ObjectUtil.isEmpty(nextDevice.getExtraValue().get("address"))) { if (ObjectUtil.isEmpty(nextDevice.getExtraValue().get("address"))) {
throw new BadRequestException(LangProcess.msg("device_checkAdd", nextDevice.getDevice_code())); notCreateInstMessage = "universal_notCreateInstMessage1";
throw new BadRequestException("设备:" + nextDevice.getDevice_code() + "未设置电气调度号!");
} }
String start_addr = startDevice.getExtraValue().get("address").toString(); String start_addr = startDevice.getExtraValue().get("address").toString();
String next_addr = nextDevice.getExtraValue().get("address").toString(); String next_addr = nextDevice.getExtraValue().get("address").toString();
@@ -512,7 +514,7 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
notCreateInstMessage = ""; notCreateInstMessage = "";
notCreateTaskMessage = ""; notCreateTaskMessage = "";
} else { } else {
notCreateInstMessage = "未找到关联设备的任务,指令无法创建"; notCreateInstMessage = "universal_notCreateInstMessage";
} }
return true; return true;
} }
@@ -571,19 +573,19 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
String action = ""; String action = "";
String walk_y = ""; String walk_y = "";
if (this.getMode() == 0) { if (this.getMode() == 0) {
mode = "脱机"; mode = LangProcess.msg("universal_off-line");
} else if (this.getMode() == 1) { } else if (this.getMode() == 1) {
mode = "单机"; mode = LangProcess.msg("universal_stand-alone");
} else if (this.getMode() == 2) { } else if (this.getMode() == 2) {
mode = "待机"; mode = LangProcess.msg("universal_standby");
} else if (this.getMode() == 3) { } else if (this.getMode() == 3) {
mode = "运行中"; mode = LangProcess.msg("universal_operation");
} }
if (this.getMove() == 0) { if (this.getMove() == 0) {
move = "无货"; move = LangProcess.msg("universal_no");
} else if (this.getMove() == 1) { } else if (this.getMove() == 1) {
move = "有货"; move = LangProcess.msg("universal_yes");
} }
String requireSucess = "0"; String requireSucess = "0";
@@ -592,16 +594,15 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
} }
jo.put("requireSucess", requireSucess); jo.put("requireSucess", requireSucess);
if (this.getAction() == 1) { if (this.getAction() == 1) {
action = "取货中"; action = LangProcess.msg("universal_delivery");
} else if (this.getAction() == 2) { } else if (this.getAction() == 2) {
action = "取货完成"; action = LangProcess.msg("universal_completed");
} else if (this.getAction() == 3) { } else if (this.getAction() == 3) {
action = "放货中"; action = LangProcess.msg("universal_releasing");
} else if (this.getAction() == 4) { } else if (this.getAction() == 4) {
action = "放货完成"; action = LangProcess.msg("universal_releasing_completed");
} }
if(error == 0 && this.itemProtocol.isError){ if(error == 0 && this.itemProtocol.isError){
message = "信号连接异常!";
iserror = true; iserror = true;
}else if(error == 0 && !this.itemProtocol.isError){ }else if(error == 0 && !this.itemProtocol.isError){
iserror = false; iserror = false;

View File

@@ -10,7 +10,8 @@ public class ApplyPlugPullSiteRequest extends BaseRequest {
* 1-申请套管 * 1-申请套管
* 2-套管完成 * 2-套管完成
* 3-拔轴完成 * 3-拔轴完成
* 4-缓存线已满,生成行架任务 * 4-申请拔轴
* 5-缓存线已满,生成行架任务
*/ */
private String type; private String type;

View File

@@ -27,11 +27,20 @@ public class SecurityUtils {
JSONObject json = (JSONObject) StpUtil.getExtra("loginInfo"); JSONObject json = (JSONObject) StpUtil.getExtra("loginInfo");
if (ObjectUtil.isNotEmpty(json)) { if (ObjectUtil.isNotEmpty(json)) {
return json.toBean(CurrentUser.class); return json.toBean(CurrentUser.class);
} else {
CurrentUser currentUser = new CurrentUser();
currentUser.setId("2");
currentUser.setPresonName("LMS系统用户");
currentUser.setUsername("LMS");
return currentUser;
} }
} catch (Exception e) { } catch (Exception e) {
return new CurrentUser(); CurrentUser currentUser = new CurrentUser();
currentUser.setId("2");
currentUser.setPresonName("LMS系统用户");
currentUser.setUsername("LMS");
return currentUser;
} }
return null;
} }
/** /**

View File

@@ -27,6 +27,7 @@ universal_message7=\u4EFB\u52A1\u5B8C\u6210...
universal_message8=\u8BFB\u53D6\u4FE1\u53F7\u503C\u65F6\u51FA\u73B0\u5F02\u5E38: universal_message8=\u8BFB\u53D6\u4FE1\u53F7\u503C\u65F6\u51FA\u73B0\u5F02\u5E38:
universal_message9=\u521B\u5EFA\u6307\u4EE4\u65F6\u51FA\u73B0\u5F02\u5E38: universal_message9=\u521B\u5EFA\u6307\u4EE4\u65F6\u51FA\u73B0\u5F02\u5E38:
universal_message10=\u4E0B\u53D1\u591A\u4E2A\u7535\u6C14\u4FE1\u53F7: universal_message10=\u4E0B\u53D1\u591A\u4E2A\u7535\u6C14\u4FE1\u53F7:
universal_message11=\u4FE1\u53F7\u8FDE\u63A5\u5F02\u5E38\uFF01
universal_feedMessage1=\u5DE5\u4F5C\u6A21\u5F0F(mode)\u4E0D\u4E3A\u8FD0\u884C\u4E2D\u72B6\u6001 universal_feedMessage1=\u5DE5\u4F5C\u6A21\u5F0F(mode)\u4E0D\u4E3A\u8FD0\u884C\u4E2D\u72B6\u6001
universal_feedMessage2=\u52A8\u4F5C\u4FE1\u53F7(action)\u4E0D\u4E3A\u653E\u8D27\u5B8C\u6210\u72B6\u6001 universal_feedMessage2=\u52A8\u4F5C\u4FE1\u53F7(action)\u4E0D\u4E3A\u653E\u8D27\u5B8C\u6210\u72B6\u6001
universal_feedMessage3=\u5149\u7535\u4FE1\u53F7(move)\u4E0D\u4E3A\u65E0\u8D27\u72B6\u6001 universal_feedMessage3=\u5149\u7535\u4FE1\u53F7(move)\u4E0D\u4E3A\u65E0\u8D27\u72B6\u6001

View File

@@ -26,6 +26,7 @@ universal_message7=Mission accomplished...
universal_message8=An exception occurred when reading the signal value: universal_message8=An exception occurred when reading the signal value:
universal_message9=An exception occurred while creating the directive universal_message9=An exception occurred while creating the directive
universal_message10=Multiple electrical signals are issued universal_message10=Multiple electrical signals are issued
universal_message11=The signal connection is abnormal!
universal_feedMessage1=mode is not in the running state universal_feedMessage1=mode is not in the running state
universal_feedMessage2=action signal (action signal) is not a release completed status universal_feedMessage2=action signal (action signal) is not a release completed status
universal_feedMessage3=Photoelectric signal (move) is not out of stock universal_feedMessage3=Photoelectric signal (move) is not out of stock

View File

@@ -26,6 +26,7 @@ universal_message7=Misi tercapai ...
universal_message8=Pengecualian terjadi saat membaca nilai sinyal: universal_message8=Pengecualian terjadi saat membaca nilai sinyal:
universal_message9=Pengecualian terjadi saat membuat direktif universal_message9=Pengecualian terjadi saat membuat direktif
universal_message10=Beberapa sinyal listrik dikeluarkan universal_message10=Beberapa sinyal listrik dikeluarkan
universal_message11=Koneksi sinyal tidak normal!
universal_feedMessage1=Mode kerja tidak untuk mode dalam mode universal_feedMessage1=Mode kerja tidak untuk mode dalam mode
universal_feedMessage2=Sinyal aksi tidak lengkap untuk penempatan universal_feedMessage2=Sinyal aksi tidak lengkap untuk penempatan
universal_feedMessage3=tidak ada status pengiriman universal_feedMessage3=tidak ada status pengiriman

View File

@@ -26,6 +26,7 @@ universal_message7=\u4EFB\u52A1\u5B8Cuniversal_releasing_completed\u6210...
universal_message8=\u8BFB\u53D6\u4FE1\u53F7\u503C\u65F6\u51FA\u73B0\u5F02\u5E38: universal_message8=\u8BFB\u53D6\u4FE1\u53F7\u503C\u65F6\u51FA\u73B0\u5F02\u5E38:
universal_message9=\u521B\u5EFA\u6307\u4EE4\u65F6\u51FA\u73B0\u5F02\u5E38: universal_message9=\u521B\u5EFA\u6307\u4EE4\u65F6\u51FA\u73B0\u5F02\u5E38:
universal_message10=\u4E0B\u53D1\u591A\u4E2A\u7535\u6C14\u4FE1\u53F7 universal_message10=\u4E0B\u53D1\u591A\u4E2A\u7535\u6C14\u4FE1\u53F7
universal_message11=\u4FE1\u53F7\u8FDE\u63A5\u5F02\u5E38\uFF01
universal_feedMessage1=\u5DE5\u4F5C\u6A21\u5F0F(mode)\u4E0D\u4E3A\u8FD0\u884C\u4E2D\u72B6\u6001 universal_feedMessage1=\u5DE5\u4F5C\u6A21\u5F0F(mode)\u4E0D\u4E3A\u8FD0\u884C\u4E2D\u72B6\u6001
universal_feedMessage2=\u52A8\u4F5C\u4FE1\u53F7(action)\u4E0D\u4E3A\u653E\u8D27\u5B8C\u6210\u72B6\u6001 universal_feedMessage2=\u52A8\u4F5C\u4FE1\u53F7(action)\u4E0D\u4E3A\u653E\u8D27\u5B8C\u6210\u72B6\u6001
universal_feedMessage3=\u5149\u7535\u4FE1\u53F7(move)\u4E0D\u4E3A\u65E0\u8D27\u72B6\u6001 universal_feedMessage3=\u5149\u7535\u4FE1\u53F7(move)\u4E0D\u4E3A\u65E0\u8D27\u72B6\u6001

View File

@@ -1,11 +1,11 @@
<template> <template>
<div style="overflow: hidden"> <div style="overflow: hidden">
<el-select v-model="value" :placeholder="$t('auto.common.please')" @change="initStageData(value)"> <el-select v-model="stage_code" :placeholder="$t('auto.common.please')" @change="changeStage">
<el-option <el-option
v-for="item in stageParam" v-for="item in Stages"
:key="item.value" :key="item.stage_code"
:label="item.label" :label="item.stage_name"
:value="item.value" :value="item.stage_code"
/> />
</el-select> </el-select>
<el-row> <el-row>
@@ -233,6 +233,7 @@ import '@logicflow/extension/lib/style/index.css'
import { LogicFlow } from '@logicflow/core' import { LogicFlow } from '@logicflow/core'
import { registerCustomElement } from '@/views/system/logicflow/editor/components/node' import { registerCustomElement } from '@/views/system/logicflow/editor/components/node'
import i18n from '@/i18n' import i18n from '@/i18n'
import { selectStageList } from '@/api/acs/stage/stage'
let data = {} let data = {}
let lf = '' let lf = ''
@@ -257,14 +258,7 @@ export default {
dialogFormVisible8: false, dialogFormVisible8: false,
dialogFormVisible9: false, dialogFormVisible9: false,
dialogFormVisible10: false, dialogFormVisible10: false,
stageParam: [{// 舞台参数 Stages: [],
value: 'age',
label: '一楼监控'
}, {
value: 'stage_code',
label: '二楼监控'
}],
value: 'age',
stage_code: '', stage_code: '',
form: { form: {
device_code: '', device_code: '',
@@ -287,6 +281,11 @@ export default {
msgLeft: '200px' msgLeft: '200px'
} }
}, },
created() {
selectStageList().then(data => {
this.Stages = data
})
},
mounted() { mounted() {
this.init() this.init()
}, },
@@ -361,13 +360,9 @@ export default {
lf.render(data) lf.render(data)
this.initStageData() this.initStageData()
}, },
initStageData(var1) { changeStage(var1) {
// 获取舞台数据 // 获取舞台数据
this.stage_code = var1 this.stage_code = var1
if (!this.stage_code) {
// 可以在这里设置一个默认的stage_code或者直接返回
this.stage_code = 'age'
}
crudStage.getNewStageDataByCode(this.stage_code).then(res => { // 通过舞台编码获取舞台数据并且赋值到lf对象 crudStage.getNewStageDataByCode(this.stage_code).then(res => { // 通过舞台编码获取舞台数据并且赋值到lf对象
data = JSON.parse(res.stage_data) data = JSON.parse(res.stage_data)
lf.render(data) lf.render(data)