Browse Source

设备里机构数左移做筛选,视图配置界面和监控界面优化

develop
ljlong_2630 1 year ago
parent
commit
7b3ba63fc9
  1. 80
      src/views/model/device/index.vue
  2. 9
      src/views/transerver/kingcodetransform/index.vue
  3. 54
      src/views/transerver/viewConfig/index.vue

80
src/views/model/device/index.vue

@ -1,5 +1,36 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-row>
<el-col :span="4" class="card-box">
<div class="head-container">
<el-input
v-model="deptName"
placeholder="请输入部门名称"
clearable
prefix-icon="Search"
style="margin-bottom: 20px"
/>
</div>
<div class="head-container">
<el-tree
:data="deptOptions"
:props="{ label: 'label', children: 'children' }"
:expand-on-click-node="false"
:filter-node-method="filterNode"
ref="deptTreeRef"
node-key="id"
highlight-current
default-expand-all
@node-click="handleNodeClick"
/>
</div>
<!-- <el-form-item label="所属组织名称" prop="orgName">
<el-tree-select v-model="queryParams.orgName" :data="deptOptions"
:props="{ value: 'label', label: 'label', children: 'children' }" value-key="id" placeholder="请选择组织名称"
check-strictly :default-expand-all="true" clearable/>
</el-form-item> -->
</el-col>
<el-col :span="20" class="card-box">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="100px" class="my-custom-form"> <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="100px" class="my-custom-form">
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
@ -36,13 +67,6 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="所属组织名称" prop="orgName">
<el-tree-select v-model="queryParams.orgName" :data="deptOptions"
:props="{ value: 'label', label: 'label', children: 'children' }" value-key="id" placeholder="请选择组织名称"
check-strictly :default-expand-all="true" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" v-show="collapseVisible">
<el-form-item label="是否可用" prop="enabledFlag"> <el-form-item label="是否可用" prop="enabledFlag">
<el-select v-model="queryParams.enabledFlag" placeholder="请选择是否可用" clearable> <el-select v-model="queryParams.enabledFlag" placeholder="请选择是否可用" clearable>
<el-option <el-option
@ -157,11 +181,23 @@
</el-col> </el-col>
<el-col :span="4" v-show="collapseVisible"> <el-col :span="4" v-show="collapseVisible">
<el-form-item label="设备分组" prop="deviceGroupName"> <el-form-item label="设备分组" prop="deviceGroupName">
<el-select v-model="queryParams.deviceGroupName" placeholder="请选择设备分组ID" clearable> <el-select v-model="queryParams.deviceGroupName" placeholder="请选择设备分组" clearable>
<el-option label="请添加设备分组" value="" /> <el-option label="请添加设备分组" value="" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4" v-show="collapseVisible">
<el-form-item label="组态图片名称" prop="imgConfiguration">
<el-select v-model="queryParams.imgConfiguration" placeholder="请选择组态图片名称" clearable>
<el-option
v-for="dict in dc_img_configuration"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="2"> <el-col :span="2">
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
@ -245,6 +281,12 @@
<el-table-column label="设备分组" align="center" prop="deviceGroupName" :width="150" column-key="deviceGroupName" filter-placement="bottom-end" <el-table-column label="设备分组" align="center" prop="deviceGroupName" :width="150" column-key="deviceGroupName" filter-placement="bottom-end"
:filters="getfilterNameItem('deviceGroupName')" :filter-method="filterMethod" sortable/> :filters="getfilterNameItem('deviceGroupName')" :filter-method="filterMethod" sortable/>
<el-table-column label="设备排序" align="center" prop="sort" :width="120" sortable/> <el-table-column label="设备排序" align="center" prop="sort" :width="120" sortable/>
<el-table-column label="组态图片名称" align="center" prop="imgConfiguration" :width="150" column-key="imgConfiguration" filter-placement="bottom-end"
:filters="getfilterNameItem('imgConfiguration')" :filter-method="filterMethod" sortable>
<template #default="scope">
<dict-tag :options="dc_img_configuration" :value="scope.row.imgConfiguration"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" :width="300" :fixed="fixedColumns?'right':false"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" :width="300" :fixed="fixedColumns?'right':false">
<template #header> <template #header>
<div class="fixed-column-header" style="text-align: center;display: block;" @dblclick="toggleFixedColumns"> <div class="fixed-column-header" style="text-align: center;display: block;" @dblclick="toggleFixedColumns">
@ -278,6 +320,8 @@
@pagination="getList" @pagination="getList"
class="paddingBothLeftRight" class="paddingBothLeftRight"
/> />
</el-col>
</el-row>
<!-- 添加或修改设备信息对话框 --> <!-- 添加或修改设备信息对话框 -->
<el-dialog :title="title" v-model="open" width="800px" append-to-body> <el-dialog :title="title" v-model="open" width="800px" append-to-body>
<el-form ref="deviceRef" :model="form" :rules="rules" label-width="125px"> <el-form ref="deviceRef" :model="form" :rules="rules" label-width="125px">
@ -421,6 +465,18 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="组态图片名称" prop="imgConfiguration">
<el-select v-model="form.imgConfiguration" placeholder="请选择组态图片名称" clearable>
<el-option
v-for="dict in dc_img_configuration"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="设备排序" prop="sort"> <el-form-item label="设备排序" prop="sort">
<el-input v-model="form.sort" placeholder="请输入设备排序" /> <el-input v-model="form.sort" placeholder="请输入设备排序" />
@ -467,7 +523,7 @@ import lock from "@/assets/icons/svg/lock.svg";
import { ref,onMounted,onUnmounted } from "vue"; import { ref,onMounted,onUnmounted } from "vue";
import { ElMessageBox } from 'element-plus'; import { ElMessageBox } from 'element-plus';
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const { dc_device_type, dc_device_source } = proxy.useDict('dc_device_type','dc_device_source'); const {dc_img_configuration, dc_device_type, dc_device_source } = proxy.useDict('dc_img_configuration','dc_device_type','dc_device_source');
const router = useRouter(); const router = useRouter();
const deviceList = ref([]); const deviceList = ref([]);
const open = ref(false); const open = ref(false);
@ -963,6 +1019,12 @@ function sortChange({column, prop, order }){
getList(); getList();
} }
/** 节点单击事件 */
function handleNodeClick(data) {
queryParams.value.orgCode = data.id;
handleQuery();
};
getDeptTree(); getDeptTree();
getList(); getList();
</script> </script>

9
src/views/transerver/kingcodetransform/index.vue

@ -96,7 +96,11 @@
<el-table-column label="端口号" align="center" prop="issRestport" /> <el-table-column label="端口号" align="center" prop="issRestport" />
<el-table-column label="组名称" align="center" prop="issGroupName" /> <el-table-column label="组名称" align="center" prop="issGroupName" />
<el-table-column label="变量名称" align="center" prop="issVarName" /> <el-table-column label="变量名称" align="center" prop="issVarName" />
<el-table-column label="变量类型" align="center" prop="issVarType" /> <el-table-column label="变量类型" align="center" prop="issVarType" >
<template #default="scope">
<dict-tag :options="dc_param_value_type" :value="scope.row.issVarType"/>
</template>
</el-table-column>
<el-table-column label="中台设备" align="center" prop="centerDeviceuuid" /> <el-table-column label="中台设备" align="center" prop="centerDeviceuuid" />
<el-table-column label="中台参数" align="center" prop="centerParamcode" /> <el-table-column label="中台参数" align="center" prop="centerParamcode" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" :width="300" :fixed="fixedColumns?'right':false"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" :width="300" :fixed="fixedColumns?'right':false">
@ -159,7 +163,8 @@
<el-select v-model="form.issVarType" placeholder="请选择变量类型"> <el-select v-model="form.issVarType" placeholder="请选择变量类型">
<el-option v-for="dict in dc_param_value_type" <el-option v-for="dict in dc_param_value_type"
:key="dict.value" :key="dict.value"
:label="dict.label" /> :label="dict.label"
:value="dict.value"/>
</el-select> </el-select>
</el-form-item> </el-form-item>

54
src/views/transerver/viewConfig/index.vue

@ -4,9 +4,12 @@
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="模型编码" prop="colCode"> <el-form-item label="模型编码" prop="colCode">
<el-select v-model="queryParams.colCode" placeholder="请选择模型编码" clearable> <el-input
<el-option label="请选择字典生成" value="" /> v-model="queryParams.colCode"
</el-select> placeholder="请输入模型编码"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
@ -55,7 +58,7 @@
<el-form-item label="显示状态" prop="flagVisible"> <el-form-item label="显示状态" prop="flagVisible">
<el-select v-model="queryParams.flagVisible" placeholder="请选择是否显示" clearable> <el-select v-model="queryParams.flagVisible" placeholder="请选择是否显示" clearable>
<el-option <el-option
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
@ -67,7 +70,7 @@
<el-form-item label="固定位置" prop="flagLocked"> <el-form-item label="固定位置" prop="flagLocked">
<el-select v-model="queryParams.flagLocked" placeholder="请选择是否固定位置" clearable> <el-select v-model="queryParams.flagLocked" placeholder="请选择是否固定位置" clearable>
<el-option <el-option
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
@ -79,19 +82,7 @@
<el-form-item label="是否可控" prop="flagControl"> <el-form-item label="是否可控" prop="flagControl">
<el-select v-model="queryParams.flagControl" placeholder="请选择是否可控" clearable> <el-select v-model="queryParams.flagControl" placeholder="请选择是否可控" clearable>
<el-option <el-option
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" v-show="collapseVisible">
<el-form-item label="控制类型" prop="controlType">
<el-select v-model="queryParams.controlType" placeholder="请选择控制类型" clearable>
<el-option
v-for="dict in dc_param_control_type"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
@ -209,17 +200,17 @@
<el-table-column label="字段顺序" align="center" prop="colSort" /> <el-table-column label="字段顺序" align="center" prop="colSort" />
<el-table-column label="是否显示" align="center" prop="flagVisible"> <el-table-column label="是否显示" align="center" prop="flagVisible">
<template #default="scope"> <template #default="scope">
<dict-tag :options="sys_yes_no" :value="scope.row.flagVisible"/> <dict-tag :options="dc_yes_no" :value="scope.row.flagVisible"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="固定位置" align="center" prop="flagLocked"> <el-table-column label="固定位置" align="center" prop="flagLocked">
<template #default="scope"> <template #default="scope">
<dict-tag :options="sys_yes_no" :value="scope.row.flagLocked"/> <dict-tag :options="dc_yes_no" :value="scope.row.flagLocked"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="是否可控" align="center" prop="flagControl"> <el-table-column label="是否可控" align="center" prop="flagControl">
<template #default="scope"> <template #default="scope">
<dict-tag :options="sys_yes_no" :value="scope.row.flagControl"/> <dict-tag :options="dc_yes_no" :value="scope.row.flagControl"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="控制类型" align="center" prop="controlType" /> <el-table-column label="控制类型" align="center" prop="controlType" />
@ -303,9 +294,9 @@
<el-form-item label="是否显示"> <el-form-item label="是否显示">
<el-radio-group v-model="form.flagVisible"> <el-radio-group v-model="form.flagVisible">
<el-radio <el-radio
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.value"
>{{dict.label}}</el-radio> >{{dict.label}}</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
@ -314,9 +305,9 @@
<el-form-item label="固定位置"> <el-form-item label="固定位置">
<el-radio-group v-model="form.flagLocked"> <el-radio-group v-model="form.flagLocked">
<el-radio <el-radio
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.value"
>{{dict.label}}</el-radio> >{{dict.label}}</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
@ -325,7 +316,7 @@
<el-form-item label="是否可控"> <el-form-item label="是否可控">
<el-radio-group v-model="form.flagControl"> <el-radio-group v-model="form.flagControl">
<el-radio <el-radio
v-for="dict in sys_yes_no" v-for="dict in dc_yes_no"
:key="dict.value" :key="dict.value"
:label="dict.value" :label="dict.value"
>{{dict.label}}</el-radio> >{{dict.label}}</el-radio>
@ -393,7 +384,7 @@
import { listViewConfig, getViewConfig, delViewConfig, addViewConfig, updateViewConfig } from "@/api/transerver/viewConfig"; import { listViewConfig, getViewConfig, delViewConfig, addViewConfig, updateViewConfig } from "@/api/transerver/viewConfig";
import lock from "@/assets/icons/svg/lock.svg"; import lock from "@/assets/icons/svg/lock.svg";
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const { sys_yes_no, dc_param_value_type,dc_monitor_view_type,dc_param_control_type} = proxy.useDict('sys_yes_no', 'dc_param_value_type', 'dc_monitor_view_type', 'dc_param_control_type'); const { dc_yes_no, dc_param_value_type,dc_monitor_view_type,dc_param_control_type} = proxy.useDict('dc_yes_no', 'dc_param_value_type', 'dc_monitor_view_type', 'dc_param_control_type');
const viewConfigList = ref([]); const viewConfigList = ref([]);
const open = ref(false); const open = ref(false);
@ -411,7 +402,14 @@ const queryParamFilter = ref({});
const sortProps = ref([]); const sortProps = ref([]);
const collapseVisible = ref(false); const collapseVisible = ref(false);
const editName = ref("更多筛选项"); const editName = ref("更多筛选项");
// const dc_yes_no = ref([
// {label: '', value: true, elTagType: 'default', elTagClass: null},
// {label: '', value: false, elTagType: 'default', elTagClass: null}
// ]);
// const dc_yes_no_table = ref([
// {label: '', value: 'true', elTagType: 'default', elTagClass: null},
// {label: '', value: 'false', elTagType: 'default', elTagClass: null}
// ]);
const data = reactive({ const data = reactive({
form: {}, form: {},
queryParams: { queryParams: {

Loading…
Cancel
Save