| | |
| | | <el-dialog title="数据点" v-model="visible" :width="'80%'" destroy-on-close @closed="$emit('closed')"> |
| | | <p style="margin-bottom: 14px;"> |
| | | <span style="margin-right: 8px;">类型</span> |
| | | <el-select v-model="type" placeholder="Select" size="small" style="width: 240px" @change="changeType"> |
| | | <el-select v-model="type" placeholder="类型" size="small" style="width: 240px" @change="changeType"> |
| | | <el-option v-for="item in typeList" :key="item.id" :label="item.name" :value="item.id" /> |
| | | </el-select> |
| | | </p> |
| | |
| | | <template #default="scope"> |
| | | <el-button-group> |
| | | <el-button text type="primary" size="small" @click="table_edit(scope.row)">编辑</el-button> |
| | | <!-- <el-button text type="primary" size="small">复制</el-button> --> |
| | | <el-button text type="primary" size="small" @click="copy(scope.row)">复制</el-button> |
| | | <el-popconfirm width="220" title="确定将选择的数据删除" @confirm="del(scope.$index)"> |
| | | <template #reference> |
| | | <el-button text type="primary" size="small">删除</el-button> |
| | |
| | | }, |
| | | methods: { |
| | | changeType(val) { |
| | | this.$confirm(`切换类型将删除所有已配置数据点`, '提示', { |
| | | type: 'warning' |
| | | }).then(() => { |
| | | if (this.tabledata.length > 0) { |
| | | this.$confirm(`切换类型将删除所有已配置数据点`, '提示', { |
| | | type: 'warning' |
| | | }).then(() => { |
| | | try { |
| | | this.cols = JSON.parse(this.typeList.find(v => v.id === val).dpHeadFull) |
| | | this.tabledata = [] |
| | | } catch (error) { |
| | | this.cols = [] |
| | | } |
| | | }).catch(() => { |
| | | |
| | | }) |
| | | } else { |
| | | try { |
| | | this.cols = JSON.parse(this.typeList.find(v => v.id === val).dpHeadFull) |
| | | this.table = [] |
| | | } catch (error) { |
| | | this.cols = [] |
| | | } |
| | | }).catch(() => { |
| | | } |
| | | |
| | | }) |
| | | |
| | | }, |
| | | //显示 |
| | |
| | | this.$HTTP.get(`/api/blade-cps/workstation/listDatapointsByWorkstationId`, {}, { params }).then(res => { |
| | | try { |
| | | this.cols = JSON.parse(res.data.dpHead) |
| | | console.log(this.cols, 'cols') |
| | | if (this.cols.filter(v => v.prop === 'dplabel').length === 0) { |
| | | this.cols.unshift( |
| | | { |
| | | label: "显示名称", |
| | | prop: "dplabel", |
| | | isRequired: true, |
| | | } |
| | | ) |
| | | } |
| | | } catch (error) { |
| | | this.cols = [] |
| | | } |
| | |
| | | del(index) { |
| | | this.tabledata.splice(index, 1) |
| | | }, |
| | | copy(row) { |
| | | this.tabledata.push(Object.assign({}, row, { status: '1' })) |
| | | }, |
| | | //表单提交方法 |
| | | submit() { |
| | | let isRequiredKey = this.cols.filter(v => v.isRequired).map(v => v.prop) |