From 7bb43fd6a2d62060c2f622e8d9396329ebaf4794 Mon Sep 17 00:00:00 2001
From: hwh <332078369@qq.com>
Date: 星期四, 05 九月 2024 11:17:02 +0800
Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/WCSNet6
---
Web/src/views/device/deviceInfo/index.vue | 102 ++++++++++++++++++++++++++++++++++++---------------
1 files changed, 72 insertions(+), 30 deletions(-)
diff --git a/Web/src/views/device/deviceInfo/index.vue b/Web/src/views/device/deviceInfo/index.vue
index 3d13bff..28b3860 100644
--- a/Web/src/views/device/deviceInfo/index.vue
+++ b/Web/src/views/device/deviceInfo/index.vue
@@ -37,9 +37,9 @@
</el-col>
<el-col :span="21">
<div class="card-page">
- <el-button type="primary" :plain="isPlain1" @click="floorTogglePlain(1)">涓�灞傚钩闈�</el-button>
- <el-button type="primary" :plain="isPlain2" @click="floorTogglePlain(2)">浜屽眰骞抽潰</el-button>
- <el-button type="primary" :plain="isPlain3" @click="floorTogglePlain(3)">涓夊眰骞抽潰</el-button>
+ <el-button type="primary" :plain="floorStates.isPlain1" @click="floorTogglePlain(1)">涓�灞傚钩闈�</el-button>
+ <el-button type="primary" :plain="floorStates.isPlain2" @click="floorTogglePlain(2)">浜屽眰骞抽潰</el-button>
+ <el-button type="primary" :plain="floorStates.isPlain3" @click="floorTogglePlain(3)">涓夊眰骞抽潰</el-button>
</div>
<div style="margin: 40px; height: 50%;">
<div class="grid-container-line">
@@ -71,7 +71,7 @@
<script lang="ts" setup>
import { ref, reactive, onMounted } from 'vue';
-import { listStatus } from '/@/api/wcs/wcsPlc';
+import { listStatus, listPosition } from '/@/api/wcs/wcsPlc';
import { signalR } from './signalR';
const state = ref<any>({});
@@ -83,6 +83,24 @@
state.value = res.data.result.modService;
stackers.value = res.data.result.listPlc.filter(s => s.type == 0);
conveyors.value = res.data.result.listPlc.filter(s => s.type == 1 || s.type == 4);
+
+ var res2 = await listPosition();
+ res2.data.result.forEach(s => {
+ if (s.type == 0) {
+ // 鏇存柊鍫嗗灈鏈烘暟鎹�
+ const foundCell = cellsDataLine.value.find(cell => cell.Code === s.stationNum);
+ if (foundCell) {
+ //淇敼楂樺害
+ foundCell.BoxHeight = s.boxHeight;
+ }
+ }
+ else if (s.type == 1) {
+ // 鏇存柊杈撻�佺嚎鏁版嵁
+ updateCellData(cellsDataOne, s);
+ updateCellData(cellsDataTwo, s);
+ updateCellData(cellsDataThree, s);
+ }
+ });
};
handleQuery();
@@ -110,19 +128,46 @@
signalR.on('UpdateService', (data: any) => {
state.value = data;
});
+ signalR.off('PublicPosition');
+ signalR.on('PublicPosition', (data: any) => {
+
+ if (data.type == 1) {
+ // 鏇存柊杈撻�佺嚎鏁版嵁
+ updateCellData(cellsDataOne, data);
+ updateCellData(cellsDataTwo, data);
+ updateCellData(cellsDataThree, data);
+ }
+ else if (data.type == 0) {
+ // 鏇存柊鍫嗗灈鏈烘暟鎹�
+ const foundCell = cellsDataLine.value.find(cell => cell.Code === data.stationNum);
+ if (foundCell) {
+ //淇敼楂樺害
+ foundCell.BoxHeight = data.boxHeight;
+ }
+ }
+ });
});
const handleSwitchChange = (field: string, value: boolean) => {
- signalR.invoke('UpdateService',state.value);
+ signalR.invoke('UpdateService', state.value);
};
+// 鏇存柊杈撻�佺嚎鏁版嵁鐨勯�氱敤鍑芥暟
+function updateCellData(cellsData: any[], data: any) {
+ const foundCell = cellsData.find(cell => cell.Code === data.stationNum);
+ if (foundCell) {
+ if (data.boHaveItem) {
+ foundCell.IsUse = 1;
+ }
+ else {
+ foundCell.IsUse = 0;
+ }
+ }
+}
const activeName = ['1', '2', '3'];
-const value1 = ref(false);
-const value2 = ref(false);
-const value3 = ref(false);
//鍫嗗灈鏈烘暟鎹�
-const cellsDataLine = [
+const cellsDataLine = ref([
{ Id: 1, Code: '001', LineCode: '', EndLocat: '', IsShow: 1, IsUse: 0, BoxHeight: 10 },
{ Id: 2, Code: '002', LineCode: '01', EndLocat: '01010101', IsShow: 0, IsUse: 0, BoxHeight: 10 },
{ Id: 3, Code: '003', LineCode: '', EndLocat: '', IsShow: 1, IsUse: 0, BoxHeight: 10 },
@@ -174,7 +219,7 @@
{ Id: 49, Code: '049', LineCode: '', EndLocat: '', IsShow: 1, IsUse: 0, BoxHeight: 10 },
{ Id: 50, Code: '050', LineCode: '10', EndLocat: '', IsShow: 0, IsUse: 0, BoxHeight: 10 },
{ Id: 51, Code: '051', LineCode: '', EndLocat: '', IsShow: 1, IsUse: 0, BoxHeight: 10 },
-];
+]);
//涓�灞傝緭閫佺嚎鏁版嵁
const cellsDataOne = [
@@ -1924,29 +1969,26 @@
//杈撻�佺嚎鏁版嵁
let cellsData = ref(cellsDataOne);
-const isPlain1 = ref(false);//涓�灞�
-const isPlain2 = ref(true);//浜屽眰
-const isPlain3 = ref(true);//涓夊眰
+
+// 灞傚钩闈㈢姸鎬�
+const floorStates = ref({
+ isPlain1: false,
+ isPlain2: true,
+ isPlain3: true
+});
+
//鍒囨崲灞傚钩闈�
function floorTogglePlain(buttonNumber) {
- if (buttonNumber === 1) {
- isPlain1.value = !isPlain1.value;
- isPlain2.value = true;
- isPlain3.value = true;
+ const floorData = [cellsDataOne, cellsDataTwo, cellsDataThree];
- cellsData.value = cellsDataOne;
- } else if (buttonNumber === 2) {
- isPlain2.value = !isPlain2.value;
- isPlain1.value = true;
- isPlain3.value = true;
-
- cellsData.value = cellsDataTwo;
- } else if (buttonNumber === 3) {
- isPlain3.value = !isPlain3.value;
- isPlain1.value = true;
- isPlain2.value = true;
-
- cellsData.value = cellsDataThree;
+ if (buttonNumber >= 1 && buttonNumber <= 3) {
+ const index = buttonNumber - 1;
+ floorStates.value = {
+ isPlain1: index !== 0,
+ isPlain2: index !== 1,
+ isPlain3: index !== 2
+ };
+ cellsData.value = floorData[index];
}
}
</script>
--
Gitblit v1.8.0