diff --git a/jnpf-java-boot/jnpf-web/src/api/device.js b/jnpf-java-boot/jnpf-web/src/api/device.js index 6c595fb..65a9ecd 100644 --- a/jnpf-java-boot/jnpf-web/src/api/device.js +++ b/jnpf-java-boot/jnpf-web/src/api/device.js @@ -2,7 +2,7 @@ import request from "@/utils/request"; // 远程设备指令 export function recycleDeviceCmd(data) { - data.optTime = new Date(); + data.optTime = Date.now(); return request({ url: `/api/scm/RecycleDevice/command`, method: "POST", @@ -12,6 +12,30 @@ export function recycleDeviceCmd(data) { /* ** 设备指令 */ +// 申请控制 +export function cmdApply(deviceCode) { + let data = { + orderNo: "", + deviceCode: deviceCode, + cmd: "apply", + data: "", + optTime: "", + remark: "申请控制" + }; + return recycleDeviceCmd(data); +} +// 结束控制 +export function cmdExit(deviceCode) { + let data = { + orderNo: "", + deviceCode: deviceCode, + cmd: "exit", + data: "", + optTime: "", + remark: "结束控制" + }; + return recycleDeviceCmd(data); +} // 配置更新 export function cmdChange(deviceCode) { let data = { @@ -72,21 +96,15 @@ export function cmdSnapshot(deviceCode) { }; return recycleDeviceCmd(data); } -// 获取状态 -export function cmdStatus(deviceCode) { - let data = { - orderNo: "", - deviceCode: deviceCode, - cmd: "status", - data: "", - optTime: "", - remark: "获取状态" - }; - return recycleDeviceCmd(data); -} // 设备指令 export function cmdDevice(cmd, deviceCode) { switch (cmd) { + case "apply": + return cmdApply(deviceCode); + break; + case "exit": + return cmdExit(deviceCode); + break; case "change": return cmdChange(deviceCode); break; @@ -102,9 +120,6 @@ export function cmdDevice(cmd, deviceCode) { case "snapshot": return cmdSnapshot(deviceCode); break; - case "status": - return cmdStatus(deviceCode); - break; default: break; } @@ -172,6 +187,18 @@ export function cmdClear(deviceCode, bucketCode) { }; return recycleDeviceCmd(data); } +// 获取状态 +export function cmdStatus(deviceCode, bucketCode) { + let data = { + orderNo: "", + deviceCode: deviceCode, + cmd: "status", + data: bucketCode, + optTime: "", + remark: "获取状态" + }; + return recycleDeviceCmd(data); +} // 桶指令 export function cmdBucket(cmd, deviceCode, bucketCode) { switch (cmd) { @@ -190,6 +217,9 @@ export function cmdBucket(cmd, deviceCode, bucketCode) { case "clear": return cmdClear(deviceCode, bucketCode); break; + case "status": + return cmdStatus(deviceCode, bucketCode); + break; default: break; } diff --git a/jnpf-java-boot/jnpf-web/src/views/recycledevice/DeviceInfo.vue b/jnpf-java-boot/jnpf-web/src/views/recycledevice/DeviceInfo.vue index 9335517..948b4dd 100644 --- a/jnpf-java-boot/jnpf-web/src/views/recycledevice/DeviceInfo.vue +++ b/jnpf-java-boot/jnpf-web/src/views/recycledevice/DeviceInfo.vue @@ -11,7 +11,15 @@ -
投递柜({{ row.deviceCode }})
+
+ 投递柜({{ row.deviceCode }}) + 提醒:如不发起指令页面将在{{ countdown }}秒后退出 +
@@ -66,16 +74,6 @@
- - -
获取状态
-
-
-
@@ -165,6 +163,22 @@
+ + +
获取状态
+
+
+
@@ -183,15 +197,39 @@ export default { visible: false, detailVisible: false, loading: false, - row: {} + row: {}, + countdown: 60, + intervalId: null }; }, computed: {}, - watch: {}, - created() {}, + watch: { + visible: function(isShow) { + if (isShow) { + this.fnCmdDeviceDo('apply') + this.countdown = 60; + this.intervalId = setInterval(() => { + if (this.countdown < 1) { + this.visible = false; + } + this.countdown = this.countdown - 1; + }, 1000); + } else { + this.fnCmdDeviceDo('exit') + if (this.intervalId) { + clearInterval(this.intervalId); + this.countdown = 0; + } + } + } + }, + created() { + console.log("hi2"); + }, mounted() {}, methods: { fnCmdDeviceDo(cmdName) { + this.countdown = 60; cmdDevice(cmdName, this.row.deviceCode).then(res => { if (res.code == 200) { this.$message({ @@ -207,6 +245,7 @@ export default { }); }, fnCmdBucketDo(cmd, deviceCode, bucketCode) { + this.countdown = 60; cmdBucket(cmd, deviceCode, bucketCode).then(res => { if (res.code == 200) { this.$message({