From 792236ef78c2cdd3a989fb40a7f2e2487c4e17b6 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期三, 26 十一月 2025 17:06:11 +0800
Subject: [PATCH] 添加各个设备基础可配置参数
---
mes-web/src/views/device/components/DeviceLogicConfig/WorkstationTransferConfig.vue | 91 ++++++++++++++++++++++++++++-----------------
1 files changed, 57 insertions(+), 34 deletions(-)
diff --git a/mes-web/src/views/device/components/DeviceLogicConfig/WorkstationTransferConfig.vue b/mes-web/src/views/device/components/DeviceLogicConfig/WorkstationTransferConfig.vue
index 6b1f9d8..a765d95 100644
--- a/mes-web/src/views/device/components/DeviceLogicConfig/WorkstationTransferConfig.vue
+++ b/mes-web/src/views/device/components/DeviceLogicConfig/WorkstationTransferConfig.vue
@@ -2,27 +2,27 @@
<div class="workstation-transfer-config">
<el-row :gutter="20">
<el-col :span="12">
- <el-form-item label="鎵爜闂撮殧(ms)">
+ <el-form-item label="鎵爜闂撮殧(绉�)">
<el-input-number
- v-model="config.scanIntervalMs"
- :min="1000"
- :max="60000"
- :step="1000"
+ v-model="scanIntervalSeconds"
+ :min="1"
+ :max="60"
+ :step="1"
style="width: 100%;"
/>
- <span class="form-tip">瀹氭椂鏌ヨ鏈�杩戞壂鐮佺幓鐠冪殑鏃堕棿闂撮殧锛岄粯璁�10000ms锛�10绉掞級</span>
+ <span class="form-tip">瀹氭椂鏌ヨ鏈�杩戞壂鐮佺幓鐠冪殑鏃堕棿闂撮殧锛岄粯璁�10绉�</span>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="缂撳啿鍒ゅ畾鏃堕棿(ms)">
+ <el-form-item label="缂撳啿鍒ゅ畾鏃堕棿(绉�)">
<el-input-number
- v-model="config.transferDelayMs"
- :min="5000"
- :max="120000"
- :step="1000"
+ v-model="transferDelaySeconds"
+ :min="5"
+ :max="120"
+ :step="1"
style="width: 100%;"
/>
- <span class="form-tip">30绉掑唴鏃犳柊鐜荤拑鎵爜鍒欏垽瀹氫负鏈�鍚庝竴鐗囷紝榛樿30000ms锛�30绉掞級</span>
+ <span class="form-tip">30绉掑唴鏃犳柊鐜荤拑鎵爜鍒欏垽瀹氫负鏈�鍚庝竴鐗囷紝榛樿30绉�</span>
</el-form-item>
</el-col>
</el-row>
@@ -41,15 +41,15 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鐩戞帶闂撮殧(ms)">
+ <el-form-item label="鐩戞帶闂撮殧(绉�)">
<el-input-number
- v-model="config.monitorIntervalMs"
- :min="1000"
- :max="60000"
- :step="1000"
+ v-model="monitorIntervalSeconds"
+ :min="1"
+ :max="60"
+ :step="1"
style="width: 100%;"
/>
- <span class="form-tip">鎵规澶勭悊鐩戞帶闂撮殧锛岄粯璁や娇鐢╯canIntervalMs</span>
+ <span class="form-tip">鎵规澶勭悊鐩戞帶闂撮殧锛岄粯璁や娇鐢ㄦ壂鐮侀棿闅�</span>
</el-form-item>
</el-col>
</el-row>
@@ -80,15 +80,6 @@
</el-form-item>
</el-col>
</el-row>
-
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="鑷姩纭">
- <el-switch v-model="config.autoAck" />
- <span class="form-tip">鏄惁鑷姩纭MES鍙戦�佺殑鐜荤拑淇℃伅</span>
- </el-form-item>
- </el-col>
- </el-row>
</div>
</template>
@@ -111,9 +102,13 @@
vehicleCapacity: 6000,
monitorIntervalMs: 10000,
workLine: null,
- inPosition: null,
- autoAck: true
+ inPosition: null
})
+
+// 鏃堕棿瀛楁锛堢锛�- 鐢ㄤ簬鍓嶇鏄剧ず鍜岃緭鍏�
+const scanIntervalSeconds = ref(10)
+const transferDelaySeconds = ref(30)
+const monitorIntervalSeconds = ref(10)
// 鐩戝惉props鍙樺寲
watch(() => props.modelValue, (newVal) => {
@@ -124,15 +119,43 @@
vehicleCapacity: newVal.vehicleCapacity ?? 6000,
monitorIntervalMs: newVal.monitorIntervalMs ?? newVal.scanIntervalMs ?? 10000,
workLine: newVal.workLine ?? null,
- inPosition: newVal.inPosition ?? null,
- autoAck: newVal.autoAck ?? true
+ inPosition: newVal.inPosition ?? null
}
+ // 灏嗘绉掕浆鎹负绉掔敤浜庢樉绀�
+ scanIntervalSeconds.value = (config.value.scanIntervalMs ?? 10000) / 1000
+ transferDelaySeconds.value = (config.value.transferDelayMs ?? 30000) / 1000
+ monitorIntervalSeconds.value = (config.value.monitorIntervalMs ?? 10000) / 1000
}
}, { immediate: true, deep: true })
-// 鐩戝惉config鍙樺寲锛屽悓姝ュ埌鐖剁粍浠�
-watch(config, (newVal) => {
- emit('update:modelValue', { ...newVal })
+// 鐩戝惉绉掑瓧娈靛彉鍖栵紝杞崲涓烘绉掑苟鏇存柊config
+watch(scanIntervalSeconds, (val) => {
+ config.value.scanIntervalMs = Math.round(val * 1000)
+ // 濡傛灉monitorIntervalMs鏈缃紝鍒欎娇鐢╯canIntervalMs
+ if (!props.modelValue?.monitorIntervalMs) {
+ config.value.monitorIntervalMs = config.value.scanIntervalMs
+ monitorIntervalSeconds.value = val
+ }
+ emit('update:modelValue', { ...config.value })
+})
+
+watch(transferDelaySeconds, (val) => {
+ config.value.transferDelayMs = Math.round(val * 1000)
+ emit('update:modelValue', { ...config.value })
+})
+
+watch(monitorIntervalSeconds, (val) => {
+ config.value.monitorIntervalMs = Math.round(val * 1000)
+ emit('update:modelValue', { ...config.value })
+})
+
+// 鐩戝惉config鍏朵粬瀛楁鍙樺寲锛屽悓姝ュ埌鐖剁粍浠�
+watch(() => [
+ config.value.vehicleCapacity,
+ config.value.workLine,
+ config.value.inPosition
+], () => {
+ emit('update:modelValue', { ...config.value })
}, { deep: true })
</script>
--
Gitblit v1.8.0