From 92338ab006f0e23f286a0914e4456c4f3a1c1b7b Mon Sep 17 00:00:00 2001
From: hwh <332078369@qq.com>
Date: 星期五, 06 九月 2024 10:48:50 +0800
Subject: [PATCH] 日志
---
Web/src/views/device/deviceMonitor/index.vue | 117 ++++++++++++++++++++++++++++------------------------------
1 files changed, 57 insertions(+), 60 deletions(-)
diff --git a/Web/src/views/device/deviceMonitor/index.vue b/Web/src/views/device/deviceMonitor/index.vue
index 6f2883e..8865fab 100644
--- a/Web/src/views/device/deviceMonitor/index.vue
+++ b/Web/src/views/device/deviceMonitor/index.vue
@@ -4,43 +4,48 @@
<el-card class="box-card">
<div slot="header" class="linefix">
<span>杈撻�佺嚎</span>
- <div class="lineStatus"></div>
+ <div :class="['lineStatus', stationValue.status ? 'device-status-0' : 'device-status-1']"></div>
</div>
<div class="choosefix">
- <el-select v-model="lineValue" placeholder="璇烽�夋嫨">
- <el-option v-for="item in lineOptions" :key="item.value" :label="item.label"
- :value="item.value"></el-option>
- </el-select>
- <el-select v-model="stationValue" placeholder="璇烽�夋嫨" style="margin-top: 10px;">
- <el-option v-for="item in stations" :key="item.id" :label="item.stationNum"
+ <el-select v-model="lineValue" placeholder="璇烽�夋嫨" @change="handleLineChange('item', $event)">
+ <el-option v-for="item in lineOptions" :key="item.id" :label="item.text"
:value="item.id"></el-option>
+ </el-select>
+ <el-select v-model="stationValue" placeholder="璇烽�夋嫨" style="margin-top: 10px;"
+ value-key="stationNum">
+ <el-option v-for="item in listStationsData" :key="item.id" :label="item.stationNum"
+ :value="item">
+ </el-option>
</el-select>
</div>
<div class="lineValuefix">
<el-form label-position="left" label-width="80px">
<el-form-item label="浠诲姟鍙�">
- <el-input></el-input>
+ <el-input v-model="stationValue.taskNo"></el-input>
</el-form-item>
<el-form-item label="浠诲姟绫诲瀷">
- <el-input></el-input>
+ <el-select clearable v-model="stationValue.taskType" placeholder="璇烽�夋嫨浠诲姟绫诲瀷">
+ <el-option v-for="(item, index) in dl('TaskTypeEnum')" :key="index"
+ :value="Number(item.value)" :label="`${item.name} [${item.value}]`"></el-option>
+ </el-select>
</el-form-item>
<el-form-item label="璧峰宸ヤ綅">
- <el-input></el-input>
+ <el-input v-model="stationValue.startLocatNo"></el-input>
</el-form-item>
<el-form-item label="鐩殑宸ヤ綅">
- <el-input></el-input>
+ <el-input v-model="stationValue.endLocatNo"></el-input>
</el-form-item>
<el-form-item label="鎵樼洏鐮�">
- <el-input></el-input>
+ <el-input v-model="stationValue.palletNo"></el-input>
</el-form-item>
<el-form-item label="PLC">
- <el-input></el-input>
+ <el-input v-model="stationValue.plc"></el-input>
</el-form-item>
<el-form-item label="WCS">
- <el-input></el-input>
+ <el-input v-model="stationValue.wcs"></el-input>
</el-form-item>
<el-form-item label="鐘舵��">
- <el-input></el-input>
+ <el-input :value="stationValue.status ? '鍦ㄧ嚎' : '绂荤嚎'" readonly></el-input>
</el-form-item>
</el-form>
</div>
@@ -71,8 +76,14 @@
<el-form-item label="浠诲姟绫诲瀷">
<el-select clearable="" v-model="deviceInfo.taskType" placeholder="璇烽�夋嫨鐘舵��">
<el-option v-for="(item, index) in dl('TaskTypeEnum')" :key="index"
- :value="Number(item.value)" :label="`${item.name} (${item.code}) [${item.value}] `" />
+ :value="Number(item.value)" :label="`${item.name} [${item.value}] `" />
</el-select>
+ </el-form-item>
+ <el-form-item label="璧峰宸ヤ綅">
+ <el-input v-model="deviceInfo.startLocatNo"></el-input>
+ </el-form-item>
+ <el-form-item label="鐩殑宸ヤ綅">
+ <el-input v-model="deviceInfo.endLocatNo"></el-input>
</el-form-item>
<el-form-item label="PLC">
<el-input v-model="deviceInfo.plc"></el-input>
@@ -103,61 +114,47 @@
import { ref, reactive } from 'vue';
import { listWcsDevice } from '/@/api/wcs/wcsDevice';
import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
-import { getDictLabelByVal as dv } from '/@/utils/dict-utils';
+import { listWcsPlc } from '/@/api/wcs/wcsPlc';
const stations = ref<any>([]);
+const listStationsData = ref<any>([]);
const listStackingMachineData = ref<any>([]);
-
-const lineValue = ref('1');
-const stationValue = ref();
+const lineOptions = ref<any>([]);
+const lineValue = ref(1);
+const stationValue = ref<any>({
+ taskNo: '',
+ taskType: '',
+ startLocatNo: '',
+ endLocatNo: '',
+ plc: '',
+ wcs: '',
+ status: false
+});
// 鏌ヨ鎿嶄綔
const handleQuery = async () => {
+ var listplc = await listWcsPlc({ type: 1 });
+ lineOptions.value = listplc.data.result;
+ lineValue.value = listplc.data.result[0].id;
var res = await listWcsDevice();
listStackingMachineData.value = res.data.result.filter(s => s.type == 0);
- const listConveyorLineData = res.data.result.filter(s => s.type == 1 || s.type == 4);
- stations.value = {
- '1': listConveyorLineData.filter(s => s.text = '1灞傛墭鐩樿緭閫佺嚎'),
- '2': listConveyorLineData.filter(s => s.text = '2灞傛墭鐩樿緭閫佺嚎'),
- '3': listConveyorLineData.filter(s => s.text = '3灞傛墭鐩樿緭閫佺嚎')
+ const listConveyorLineData = res.data.result.filter(s => s.type == 1);
+ listplc.data.result.forEach(s => {
+ stations.value[s.id] = listConveyorLineData.filter(c => c.plcId === s.id)
+ });
+ if (stations.value[lineValue.value].length > 0) {
+ listStationsData.value = stations.value[lineValue.value];
+ stationValue.value = listStationsData.value[0];
}
- if (stations.value.length > 0)
- stationValue.value = stations.value[0][0].id;
- debugger;
};
handleQuery();
-
-const lineOptions = [
- { value: '1', label: '涓�妤艰緭閫佺嚎' },
- { value: '2', label: '浜屾ゼ杈撻�佺嚎' },
- { value: '3', label: '涓夋ゼ杈撻�佺嚎' }
-];
-
-const deviceList = reactive([
- { id: 1, name: '1鍙风爜鍨涙満鍣ㄤ汉', taskNumber: 'T000001', taskType: '', plc: '', wcs: '', status: 0 },
- { id: 2, name: '2鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 1 },
- { id: 3, name: '3鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 0 },
- { id: 4, name: '4鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 1 },
- { id: 5, name: '5鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 0 },
- { id: 6, name: '6鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 0 },
- { id: 7, name: '7鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: '' },
- { id: 8, name: '8鍙风爜鍨涙満鍣ㄤ汉', taskNumber: '', taskType: '', plc: '', wcs: '', status: 0 }
-]);
-
-const deviceTypeText = (taskType: number) => {
- switch (taskType) {
- case 0:
- return '鍏ュ簱浠诲姟'
- case 1:
- return '鍑哄簱浠诲姟'
- case 2:
- return '绉诲簱浠诲姟'
- case 3:
- return 'PLC鐢宠鍏ュ簱'
- }
- return ''
+const handleLineChange = (field: string, value: number) => {
+ listStationsData.value = stations.value[value];
+ if (listStationsData.value.length > 0)
+ stationValue.value = listStationsData.value[0];
};
+
</script>
<style scoped>
@@ -165,8 +162,8 @@
font-size: 14px;
}
-.item {
- margin-bottom: 18px;
+.el-form-item--small {
+ margin-bottom: 10px;
}
.linefix {
--
Gitblit v1.8.0