|
@@ -1,20 +1,20 @@
|
|
<template>
|
|
<template>
|
|
- <el-dialog title="绑定设备" v-model="isShowDialog" width="1200">
|
|
|
|
- <el-divider content-position="left" style="margin-top: 0;">设备数据过滤器模板信息</el-divider>
|
|
|
|
|
|
+ <el-dialog :title="$t('message.projects.filter.bindDevice.dialog.title')" v-model="isShowDialog" width="1200">
|
|
|
|
+ <el-divider content-position="left" style="margin-top: 0;">{{ $t('message.projects.filter.bindDevice.sections.templateInfo') }}</el-divider>
|
|
<el-descriptions :column="3" border>
|
|
<el-descriptions :column="3" border>
|
|
- <el-descriptions-item label="模板名称">{{ data.name }}</el-descriptions-item>
|
|
|
|
- <el-descriptions-item label="模板编码">{{ data.code }}</el-descriptions-item>
|
|
|
|
- <el-descriptions-item label="更新时间">{{ data.updatedAt }}</el-descriptions-item>
|
|
|
|
|
|
+ <el-descriptions-item :label="$t('message.projects.filter.bindDevice.descriptions.templateName')">{{ data.name }}</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item :label="$t('message.projects.filter.bindDevice.descriptions.templateCode')">{{ data.code }}</el-descriptions-item>
|
|
|
|
+ <el-descriptions-item :label="$t('message.projects.filter.bindDevice.descriptions.updatedAt')">{{ data.updatedAt }}</el-descriptions-item>
|
|
</el-descriptions>
|
|
</el-descriptions>
|
|
- <el-divider content-position="left" style="margin-top: 30px;">绑定设备</el-divider>
|
|
|
|
- <div class="flex-row"><span></span> <el-button type="primary" size="small" v-auth="'add'" @click="addOrEdit(data.code)">绑定设备</el-button></div>
|
|
|
|
|
|
+ <el-divider content-position="left" style="margin-top: 30px;">{{ $t('message.projects.filter.bindDevice.sections.bindDevice') }}</el-divider>
|
|
|
|
+ <div class="flex-row"><span></span> <el-button type="primary" size="small" v-auth="'add'" @click="addOrEdit(data.code)">{{ $t('message.projects.filter.bindDevice.actions.bindDevice') }}</el-button></div>
|
|
<el-table :data="tableData" style="width: 100%;margin-top: 20px;" max-height="50vh" v-loading="loading">
|
|
<el-table :data="tableData" style="width: 100%;margin-top: 20px;" max-height="50vh" v-loading="loading">
|
|
- <el-table-column prop="name" label="设备名称" show-overflow-tooltip></el-table-column>
|
|
|
|
- <el-table-column prop="key" label="设备编码" align="center" show-overflow-tooltip></el-table-column>
|
|
|
|
- <el-table-column prop="productName" label="所属产品" align="center"></el-table-column>
|
|
|
|
- <el-table-column label="操作" width="120" align="center" fixed="right">
|
|
|
|
|
|
+ <el-table-column prop="name" :label="$t('message.projects.filter.bindDevice.table.columns.name')" show-overflow-tooltip></el-table-column>
|
|
|
|
+ <el-table-column prop="key" :label="$t('message.projects.filter.bindDevice.table.columns.key')" align="center" show-overflow-tooltip></el-table-column>
|
|
|
|
+ <el-table-column prop="productName" :label="$t('message.projects.filter.bindDevice.table.columns.productName')" align="center"></el-table-column>
|
|
|
|
+ <el-table-column :label="$t('message.projects.filter.bindDevice.table.columns.actions')" width="120" align="center" fixed="right">
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
- <el-button size="small" text type="danger" v-auth="'del'" @click="del(row.key)">解绑</el-button>
|
|
|
|
|
|
+ <el-button size="small" text type="danger" v-auth="'del'" @click="del(row.key)">{{ $t('message.projects.filter.bindDevice.table.actions.unbind') }}</el-button>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
@@ -25,19 +25,21 @@
|
|
|
|
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
import { computed, ref } from 'vue';
|
|
import { computed, ref } from 'vue';
|
|
|
|
+import { useI18n } from 'vue-i18n';
|
|
import api from '/@/api/projects';
|
|
import api from '/@/api/projects';
|
|
import bindDeviceForm from './bindDeviceForm.vue';
|
|
import bindDeviceForm from './bindDeviceForm.vue';
|
|
import { useSearch } from '/@/hooks/useCommon';
|
|
import { useSearch } from '/@/hooks/useCommon';
|
|
-import { ElMessageBox, ElMessage } from 'element-plus';
|
|
|
|
|
|
+import { ElMessage } from 'element-plus';
|
|
|
|
|
|
const { params, tableData, getList, loading } = useSearch<any[]>(api.template.getBindDevices, '', { code: '' });
|
|
const { params, tableData, getList, loading } = useSearch<any[]>(api.template.getBindDevices, '', { code: '' });
|
|
|
|
+const { t } = useI18n();
|
|
|
|
|
|
const isShowDialog = ref(false);
|
|
const isShowDialog = ref(false);
|
|
const editFormRef = ref();
|
|
const editFormRef = ref();
|
|
const data = ref<any>({});
|
|
const data = ref<any>({});
|
|
|
|
|
|
const hasBindKeys = computed(() => {
|
|
const hasBindKeys = computed(() => {
|
|
- return tableData.value.map(item => item.key);
|
|
|
|
|
|
+ return tableData.value.map((item: any) => item.key);
|
|
});
|
|
});
|
|
|
|
|
|
function show(row: any) {
|
|
function show(row: any) {
|
|
@@ -51,27 +53,11 @@ const addOrEdit = (code: string, row?: any) => {
|
|
editFormRef.value.open(code, row);
|
|
editFormRef.value.open(code, row);
|
|
};
|
|
};
|
|
|
|
|
|
-const handleStatusChange = (row: any) => {
|
|
|
|
- let text = row.isVisible === 1 ? '设置可见' : '设置不可见';
|
|
|
|
- ElMessageBox.confirm('确认要' + text + '属性:【' + row.name + '】吗?', '警告', {
|
|
|
|
- confirmButtonText: '确定',
|
|
|
|
- cancelButtonText: '取消',
|
|
|
|
- type: 'warning',
|
|
|
|
- })
|
|
|
|
- .then(function () {
|
|
|
|
- return api.template.attr.editIsVisible({ id: row.id, isVisible: row.isVisible });
|
|
|
|
- })
|
|
|
|
- .then(() => {
|
|
|
|
- ElMessage.success(text + '成功');
|
|
|
|
- })
|
|
|
|
- .catch(function () {
|
|
|
|
- row.isVisible = row.isVisible === 0 ? 1 : 0;
|
|
|
|
- });
|
|
|
|
-};
|
|
|
|
|
|
+
|
|
|
|
|
|
const del = async (code: string) => {
|
|
const del = async (code: string) => {
|
|
await api.template.unBindDevices({ code: params.code, deviceKeys: [code] });
|
|
await api.template.unBindDevices({ code: params.code, deviceKeys: [code] });
|
|
- ElMessage.success('删除成功');
|
|
|
|
|
|
+ ElMessage.success(t('message.projects.filter.bindDevice.messages.unbindSuccess'));
|
|
getList(1);
|
|
getList(1);
|
|
};
|
|
};
|
|
|
|
|