From a701d2fc7c3c822c581add45b6d4e0ff360fb053 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期六, 07 六月 2025 11:37:57 +0800
Subject: [PATCH] 修改问题
---
Web/src/views/device/deviceMonitor/index.vue | 61 ++++++++++++++++++++++++++----
1 files changed, 53 insertions(+), 8 deletions(-)
diff --git a/Web/src/views/device/deviceMonitor/index.vue b/Web/src/views/device/deviceMonitor/index.vue
index 03e945c..f66cf15 100644
--- a/Web/src/views/device/deviceMonitor/index.vue
+++ b/Web/src/views/device/deviceMonitor/index.vue
@@ -52,7 +52,6 @@
<div class="lineButtonfix">
<el-form label-position="left" label-width="80px">
<el-form-item>
- <el-button>鍐欏叆</el-button>
<el-button @click="openDialog">璁剧疆</el-button>
</el-form-item>
</el-form>
@@ -85,6 +84,9 @@
<el-form-item label="鐩殑宸ヤ綅">
<el-input v-model="deviceInfo.endLocatNo"></el-input>
</el-form-item>
+ <el-form-item label="鎵樼洏鐮�">
+ <el-input v-model="deviceInfo.palletNo"></el-input>
+ </el-form-item>
<el-form-item label="PLC">
<el-input v-model="deviceInfo.plc"></el-input>
</el-form-item>
@@ -99,24 +101,50 @@
<div class="otherButtonfix">
<el-form label-position="left">
<el-form-item>
- <el-button>鍐欏叆</el-button>
+ <el-button @click="write(deviceInfo)">鍐欏叆</el-button>
</el-form-item>
</el-form>
</div>
</el-card>
</div>
</el-main>
- <setting ref="settingDialogRef" :title="title" v-model:listStationsData="listStationsData" v-model:stationValue="stationValue" />
+ <setting ref="settingDialogRef" :title="title" v-model:listStationsData="listStationsData"
+ v-model:stationValue="stationValue" />
</el-container>
</template>
<script lang="ts" setup>
-import { ref, reactive } from 'vue';
-import { listWcsDevice } from '/@/api/wcs/wcsDevice';
+import { ref, onMounted } from 'vue';
+import { listWcsDevice, writeValue } from '/@/api/wcs/wcsDevice';
import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
import { listWcsPlc } from '/@/api/wcs/wcsPlc';
-
+import { ElMessageBox, ElMessage } from 'element-plus';
import setting from '/@/views/device/deviceMonitor/component/setting.vue'
+import { signalR,stopConnection } from './signalR';
+//杩炴帴signalR 鐩戝惉鍙樻洿
+onMounted(async () => {
+ signalR.off('PublicPlcDevice');
+ signalR.on('PublicPlcDevice', (data: any) => {
+ //todo 闇�瑕佹祴璇�
+ if (data.type == 0) {
+ var index = listStackingMachineData.value.findIndex(s => s.id == data.id);
+ if (index !== -1) {
+ listStackingMachineData.value.splice(index, 1, data);
+ }
+ }
+ else if (data.type == 1) {
+ lineOptions.value.forEach(s => {
+ var index = stations.value[s.id].findIndex(s => s.id == data.id);
+ if (index !== -1) {
+ stations.value[s.id].splice(index, 1, data);
+ }
+ });
+ if (stationValue.value.id == data.id) {
+ stationValue.value = data;
+ }
+ }
+ });
+});
const stations = ref<any>([]);
const listStationsData = ref<any>([]);
@@ -138,12 +166,16 @@
const openDialog = async () => {
settingDialogRef.value.openDialog(stationValue);
}
+const write = async (row: any) => {
+ await writeValue(row);
+ ElMessage.success('鍐欏叆鎴愬姛锛�');
+}
// 鏌ヨ鎿嶄綔
const handleQuery = async () => {
- var listplc = await listWcsPlc({ type: 1 });
+ const listplc = await listWcsPlc({ type: 1 });
lineOptions.value = listplc.data.result;
lineValue.value = listplc.data.result[0].id;
- var res = await listWcsDevice();
+ const res = await listWcsDevice();
listStackingMachineData.value = res.data.result.filter(s => s.type == 0);
const listConveyorLineData = res.data.result.filter(s => s.type == 1);
listplc.data.result.forEach(s => {
@@ -153,6 +185,19 @@
listStationsData.value = stations.value[lineValue.value];
stationValue.value = listStationsData.value[0];
}
+ else {
+ listStationsData.value = [];
+ stationValue.value = {
+ stationNum: '',
+ taskNo: '',
+ taskType: '',
+ startLocatNo: '',
+ endLocatNo: '',
+ plc: '',
+ wcs: '',
+ status: false
+ };
+ }
title.value = listStationsData.value[0].text;
};
--
Gitblit v1.8.0