From 5237d75a9c44b033c72120d41382a3906fd5cd1c Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期四, 02 五月 2024 22:24:46 +0800
Subject: [PATCH] 1
---
src/views/mdc/configuration.vue | 151 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 146 insertions(+), 5 deletions(-)
diff --git a/src/views/mdc/configuration.vue b/src/views/mdc/configuration.vue
index b45fff0..8a93091 100644
--- a/src/views/mdc/configuration.vue
+++ b/src/views/mdc/configuration.vue
@@ -1,24 +1,165 @@
<!--
* @Date: 2024-04-09 22:11:21
* @LastEditors: Sneed
- * @LastEditTime: 2024-04-13 22:15:00
+ * @LastEditTime: 2024-04-18 00:00:27
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/configuration.vue
* 搴旂敤璁剧疆
-->
<template>
<el-main>
<el-card shadow="never">
- 搴旂敤璁剧疆
+ <el-tabs :tab-position="'left'" class="demo-tabs">
+ <el-tab-pane label="瀹炴椂鐪嬫澘鏌ヨ缁勮缃�">
+ <Board />
+ </el-tab-pane>
+ <el-tab-pane label="鐘舵�佸拰缁╂晥鏃堕棿璁剧疆">
+ <Status />
+ </el-tab-pane>
+ <el-tab-pane label="鏁堢巼缁熻璁剧疆">
+ <Efficiency />
+ </el-tab-pane>
+ <el-tab-pane label="閲囬泦鏁版嵁鏍囩璁剧疆">
+ <scFormTable ref="table1" v-model="Tabledata" stripe hideDelete :addTemplate="addTemplate">
+ <el-table-column label="鏁版嵁鏍囩" prop="usageName">
+ <template #default="scope">
+ <el-input v-if="scope.row.isEdit" v-model="scope.row.usageName"></el-input>
+ <span v-else>{{ scope.row.usageName }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鏁版嵁鏍囩鏍囪瘑" prop="usageCode">
+ <template #default="scope">
+ <el-input v-if="scope.row.isEdit" v-model="scope.row.usageCode"></el-input>
+ <span v-else>{{ scope.row.usageCode }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="璁$畻鏂规硶" prop="dataTypeDesc">
+ <template #default="scope">
+ <el-select v-if="scope.row.isEdit" v-model="scope.row.collectType" style="width: 100%;"
+ @change="update(scope.row)">
+ <el-option v-for="(item, index) in options" :key="index" :label="item.label"
+ :value="item.value"></el-option>
+ </el-select>
+ <span v-else>{{ scope.row.dataTypeDesc }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鑴夊啿璁℃暟鍊嶇巼" prop="value">
+ <template #default="scope">
+ <el-input-number v-if="scope.row.isEdit && scope.row.collectType == 9" :min="1"
+ :max="10" />
+ <span>{{ scope?.row?.parameter?.value }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" prop="state">
+ <template #default="scope">
+ <el-button v-show="!scope.row.id || scope.row.isEdit"
+ @click="add(scope.row)">淇濆瓨</el-button>
+ <el-button v-show="!scope.row.isEdit" @click="edit(scope.row)">缂栬緫</el-button>
+ </template>
+ </el-table-column>
+ </scFormTable>
+ </el-tab-pane>
+ </el-tabs>
</el-card>
</el-main>
</template>
<script>
- export default {
-
+import Board from './configComp/Board.vue'
+import Status from './configComp/Status.vue'
+import Efficiency from './configComp/Efficiency.vue'
+export default {
+ components: {
+ Board,
+ Status,
+ Efficiency
+ },
+ data() {
+ return {
+ Tabledata: [],
+ addTemplate: {
+ collectType: '',
+ dataTypeDesc: '',
+ id: null,
+ parameter: {
+ value: ''
+ },
+ usageCode: '',
+ usageName: '',
+ isEdit: true,
+ },
+ options: [{
+ label: '宸�艰绠�',
+ value: 8
+ }, {
+ label: '鑴夊啿璁$畻',
+ value: 9
+ }]
+ }
+ },
+ created() {
+ this.getList()
+ },
+ methods: {
+ getList() {
+ this.$HTTP.get('/api/blade-cps/workstation-wcs-usage/list').then(res => {
+ if (res.code === 200) {
+ this.Tabledata = res.data.map(item => {
+ return {
+ ...item,
+ parameter: item.parameter ? JSON.parse(item.parameter) : null
+ }
+ })
+ }
+ })
+ },
+ edit(row) {
+ row.isEdit = true
+ },
+ update(row) {
+ row.dataTypeDesc = this.options.find(item => item.value === row.collectType)?.label
+ if (row.collectType === 9) {
+ row.parameter = { value: 0 }
+ } else {
+ row.parameter = null
+ }
+ },
+ add(row) {
+ let url = '/api/blade-cps/workstation-wcs-usage'
+ let data = {
+ ...row
+ }
+ if (row.id) {
+ try {
+ delete data.isEdit
+ } catch (error) {
+
+ }
+ if (data.parameter) data.parameter = JSON.stringify(row.parameter)
+ this.$HTTP.post(url, data).then(res => {
+ if (res.code === 200) {
+ this.getList()
+ }
+ })
+ } else {
+ this.$HTTP.post(url, data).then(res => {
+ if (res.code === 200) {
+ this.getList()
+ }
+ })
+ }
+ //
+ // collectType
+ // usageCode
+ // usageName
+
+ }
}
+}
</script>
<style lang="scss" scoped>
-
+.label {
+ display: flex;
+ align-items: center;
+}
</style>
\ No newline at end of file
--
Gitblit v1.9.3