全局添加输入框空格校验

This commit is contained in:
GGJ
2024-12-25 10:53:07 +08:00
parent 90efcc4ad2
commit aed771578a
98 changed files with 703 additions and 904 deletions

View File

@@ -13,7 +13,7 @@
></el-cascader>
</el-form-item>
<el-form-item label="级别">
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-select v-model.trim="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-option
v-for="item in rankOptions"
:key="item.value"
@@ -25,7 +25,7 @@
</template> -->
<template #select>
<el-form-item label="设备名称">
<el-input maxlength="32" clearable show-word-limit v-model="tableStore.table.params.searchValue"
<el-input maxlength="32" clearable show-word-limit v-model.trim="tableStore.table.params.searchValue"
placeholder="请输入设备名称" />
</el-form-item>
</template>

View File

@@ -2,13 +2,13 @@
<TableHeader datePicker ref="refheader">
<template v-slot:select>
<el-form-item label="数据来源">
<el-cascader v-model="tableStore.table.params.cascader" placeholder="请选择数据来源" @change="sourceChange"
:options="deviceTreeOptions" :show-all-levels="false" :props="{ checkStrictly: true }"
clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
<el-cascader v-model.trim="tableStore.table.params.cascader" placeholder="请选择数据来源"
@change="sourceChange" :options="deviceTreeOptions" :show-all-levels="false"
:props="{ checkStrictly: true }" clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
</el-form-item>
<el-form-item label="级别">
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-select v-model.trim="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-option v-for="item in rankOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
@@ -77,7 +77,7 @@ const tableStore = new TableStore({
title: '事件描述', field: 'showName',
},
{
title: '级别', field: 'level',formatter: (row: any) => {
title: '级别', field: 'level', formatter: (row: any) => {
return row.cellValue == 1 ? '1级' : row.cellValue == 2 ? '2级' : row.cellValue == 3 ? '3级' : '/'
}

View File

@@ -2,13 +2,13 @@
<TableHeader datePicker ref="refheader">
<template v-slot:select>
<el-form-item label="数据来源">
<el-cascader v-model="tableStore.table.params.cascader" placeholder="请选择数据来源" @change="sourceChange"
:options="deviceTreeOptions" :show-all-levels="false" :props="{ checkStrictly: true }"
clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
<el-cascader v-model.trim="tableStore.table.params.cascader" placeholder="请选择数据来源"
@change="sourceChange" :options="deviceTreeOptions" :show-all-levels="false"
:props="{ checkStrictly: true }" clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
</el-form-item>
<!-- <el-form-item label="级别">
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-select v-model.trim="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-option
v-for="item in rankOptions"
:key="item.value"

View File

@@ -3,13 +3,13 @@
<TableHeader datePicker>
<template v-slot:select>
<el-form-item label="数据来源">
<el-cascader placeholder="请选择数据来源" @change="sourceChange" v-model="tableStore.table.params.cascader"
:options="deviceTreeOptions" :show-all-levels="false" :props="{ checkStrictly: true }"
clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
<el-cascader placeholder="请选择数据来源" @change="sourceChange"
v-model.trim="tableStore.table.params.cascader" :options="deviceTreeOptions"
:show-all-levels="false" :props="{ checkStrictly: true }" clearable></el-cascader>
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
</el-form-item>
<!-- <el-form-item label="级别">
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-select v-model.trim="tableStore.table.params.level" placeholder="请选择级别" clearable>
<el-option v-for="item in rankOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
@@ -27,7 +27,7 @@
<el-row>
<el-col :span="12">
<div v-if="view2" style="display: flex">
<el-radio-group v-model="value" @change="changeView">
<el-radio-group v-model.trim="value" @change="changeView">
<el-radio-button label="一次值" :value="1" />
<el-radio-button label="二次值" :value="2" />
@@ -41,7 +41,7 @@
</el-button>
</el-col>
</el-row>
<el-tabs v-if="view2" v-model="bxactiveName" @tab-click="bxhandleClick">
<el-tabs v-if="view2" v-model.trim="bxactiveName" @tab-click="bxhandleClick">
<el-tab-pane label="瞬时波形" name="ssbx" class="boxbx pt10 pb10"
:style="'height:' + bxecharts + ';overflow-y: scroll;'">
<shushiboxi v-if="bxactiveName == 'ssbx' && showBoxi" :value="value" :boxoList="boxoList" :wp="wp">

View File

@@ -1,6 +1,6 @@
<template>
<div class="default-main">
<el-tabs v-model="activeName" type="border-card" class="demo-tabs">
<el-tabs v-model.trim="activeName" type="border-card" class="demo-tabs">
<el-tab-pane label="设备告警" name="1">
<Device v-if="activeName == '1'" :deviceTree="deviceTree" />
</el-tab-pane>
@@ -44,8 +44,8 @@ getDeviceTree().then(res => {
})
deviceTree.value = res.data
})
onMounted(() => {})
onMounted(() => { })
const addMenu = () => {}
const addMenu = () => { }
</script>
<style></style>

View File

@@ -7,13 +7,13 @@
<DatePicker ref="datePickerRef"></DatePicker>
</el-form-item>
<el-form-item label="统计指标:">
<el-select v-model="formInline.statisticalId" filterable placeholder="请选择">
<el-select v-model.trim="formInline.statisticalId" filterable placeholder="请选择">
<el-option v-for="item in zblist" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="值类型:">
<el-select v-model="formInline.valueType" filterable placeholder="请选择">
<el-select v-model.trim="formInline.valueType" filterable placeholder="请选择">
<el-option v-for="item in typelist" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>

View File

@@ -11,7 +11,7 @@
<el-row>
<el-col :span="12">
<div v-if="view2" style="display: flex">
<el-radio-group v-model="value" @change="changeView">
<el-radio-group v-model.trim="value" @change="changeView">
<el-radio-button label="一次值" :value="1" />
<el-radio-button label="二次值" :value="2" />
@@ -26,7 +26,7 @@
</el-col>
</el-row>
<el-tabs v-if="view2" class="default-main" v-model="bxactiveName" @tab-click="bxhandleClick">
<el-tabs v-if="view2" class="default-main" v-model.trim="bxactiveName" @tab-click="bxhandleClick">
<el-tab-pane label="瞬时波形" name="ssbx" class="boxbx pt10 pb10"
:style="'height:' + bxecharts + ';overflow-y: scroll;'">
<shushiboxi v-if="bxactiveName == 'ssbx' && showBoxi" :value="value" :boxoList="boxoList" :wp="wp">

View File

@@ -1,6 +1,7 @@
<!-- 补召日志 -->
<template>
<el-dialog modal-class="analysisList" v-model="dialogVisible" title="补召日志" width="70%" draggable @closed="close">
<el-dialog modal-class="analysisList" v-model.trim="dialogVisible" title="补召日志" width="70%" draggable
@closed="close">
<TableHeader date-picker :showReset="false">
<template #operation>
<el-button type="primary" icon="el-icon-Connection" @click="handleImport">
@@ -140,10 +141,10 @@ const handleaddDevice = () => {
push({
path: '/supplementaryRecruitment',
query: {
activeName: '0',
activeName: '0',
id: lineId.value,
ndid: deviceData.value?.ndid,
}
})
}
@@ -154,10 +155,10 @@ const handleImport = () => {
push({
path: '/supplementaryRecruitment',
query: {
activeName: '1',
activeName: '1',
lineId: lineId.value,
deviceId: deviceId.value,
}
})
}

View File

@@ -1,6 +1,6 @@
<!-- 解析列表 -->
<template>
<el-dialog v-model="dialogVisible" title="详情" width="70%" draggable @closed="close">
<el-dialog v-model.trim="dialogVisible" title="详情" width="70%" draggable @closed="close">
<div :style="tableHeight">
<vxe-table border auto-resize height="auto" :data="tableData" v-bind="defaultAttribute">
<vxe-column field="name" align="center" title="文件名称"></vxe-column>
@@ -36,9 +36,11 @@ const tableStore: any = new TableStore({
showPage: false,
column: [
{ width: '60', type: 'checkbox', fixed: 'left' },
{ title: '序号', width: 80,formatter: (row: any) => {
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
} },
{
title: '序号', width: 80, formatter: (row: any) => {
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
}
},
{ field: 'name', title: '文件名称', minWidth: 170 },
{ field: 'createTime', title: '导入时间', minWidth: 170 },
{ field: 'allCount', title: '数据总数(条)', minWidth: 170 },

View File

@@ -6,13 +6,13 @@
<DatePicker ref="datePickerRef"></DatePicker>
</el-form-item>
<el-form-item label="值类型">
<el-select v-model="form.dataLevel" :disabled="props.dataLevel == 'Primary'">
<el-select v-model.trim="form.dataLevel" :disabled="props.dataLevel == 'Primary'">
<el-option value="Primary" label="一次值"></el-option>
<el-option value="Secondary" label="二次值"></el-option>
</el-select>
</el-form-item>
<el-form-item label="数据类型" label-width="80px">
<el-select v-model="form.statMethod" placeholder="请选择数据类型">
<el-select v-model.trim="form.statMethod" placeholder="请选择数据类型">
<el-option v-for="item in typeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>

View File

@@ -31,7 +31,7 @@
</el-descriptions-item>
<el-descriptions-item label="接线方式" width="160">
{{ devData.conType == 0 ? '星型接线' : devData.conType == 1 ? '角型接线' : devData.conType == 2 ? 'V型接线' :
'/' }}
'/' }}
</el-descriptions-item>
<!-- <el-descriptions-item label="安装位置" width="160">
@@ -66,7 +66,7 @@
{{ devData.time ? devData.time : '/' }}
</el-descriptions-item> -->
</el-descriptions>
<el-tabs v-model="dataSet" type="border-card" class="device-control-box-card" @tab-click="handleClick">
<el-tabs v-model.trim="dataSet" type="border-card" class="device-control-box-card" @tab-click="handleClick">
<el-tab-pane lazy :label="item.name" :name="item.id" v-for="(item, index) in deviceData.dataSetList"
:key="index">
<template #label>
@@ -110,19 +110,19 @@
<DatePicker ref="datePickerRef"></DatePicker>
</el-form-item>
<el-form-item label="数据类型" v-if="!dataSet.includes('_')">
<el-select v-model="formInline.targetType" @change="handleTargetTypeChange">
<el-select v-model.trim="formInline.targetType" @change="handleTargetTypeChange">
<el-option v-for="item in queryList" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
</el-form-item>
<el-form-item v-if="!dataSet.includes('_items')">
<!-- <el-select style="min-width: 120px !important" v-model="formInline.dataLevel"
<!-- <el-select style="min-width: 120px !important" v-model.trim="formInline.dataLevel"
:disabled="dataLevel == 'Primary' && deviceType == '0'">
<el-option value="Primary" label="一次值"></el-option>
<el-option value="Secondary" label="二次值"></el-option>
</el-select> -->
<el-radio-group v-model="formInline.dataLevel" @change="handleClick">
<el-radio-group v-model.trim="formInline.dataLevel" @change="handleClick">
<el-radio-button label="一次值" value="Primary" />
<el-radio-button label="二次值" value="Secondary" />
@@ -130,21 +130,21 @@
</el-form-item>
<el-form-item label="谐波次数" v-show="oddAndEvenFlag && !dataSet.includes('_')">
<el-select v-model="oddAndEven" style="min-width: 120px !important">
<el-select v-model.trim="oddAndEven" style="min-width: 120px !important">
<el-option v-for="item in oddAndEvenList" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="数据来源" v-if="dataSet.includes('_items')">
<el-select v-model="formInline.dataSource" placeholder="请选择数据来源" clearable>
<el-select v-model.trim="formInline.dataSource" placeholder="请选择数据来源" clearable>
<el-option v-for="item in dataSourceList" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="关键字" v-if="!dataSet.includes('_')">
<el-input maxlength="32" show-word-limit v-model="searchValue" autocomplete="off" clearable
@input="handleSearch" placeholder="请输入关键词"></el-input>
<el-form-item label="关键字" v-if="!dataSet.includes('_')" >
<el-input maxlength="32" show-word-limit v-model.trim="searchValue" autocomplete="off"
clearable @input="handleSearch" placeholder="请输入关键词" style="width: 180px !important"></el-input>
</el-form-item>
</template>
<template #operation>

View File

@@ -1,6 +1,6 @@
<!-- 离线数据导入 -->
<template>
<!-- <el-dialog v-model="dialogVisible" title="文件列表" width="70%" :destroy-on-close="true" draggable @closed="close"> -->
<!-- <el-dialog v-model.trim="dialogVisible" title="文件列表" width="70%" :destroy-on-close="true" draggable @closed="close"> -->
<!-- 上传文件列表 -->
<div class=" ">
<!-- <div class="offline_data_btn">
@@ -78,7 +78,7 @@ import { ref } from 'vue'
import TableHeader from '@/components/table/header/index.vue'
import { uploadOffLineDataFile } from '@/api/cs-device-boot/EquipmentDelivery.ts'
import { defaultAttribute } from '@/components/table/defaultAttribute'
import {Back} from '@element-plus/icons-vue'
import { Back } from '@element-plus/icons-vue'
import { mainHeight } from '@/utils/layout'
import { useRouter, useRoute } from 'vue-router'
const { go } = useRouter() // 路由

View File

@@ -5,7 +5,7 @@
<DatePicker ref="datePickerRef"></DatePicker>
</el-form-item>
<el-form-item>
<el-checkbox-group style="width: 150px" v-model="checkList">
<el-checkbox-group style="width: 150px" v-model.trim="checkList">
<el-checkbox label="稳态" :value="0" />
<el-checkbox label="暂态" :value="1" />
</el-checkbox-group>
@@ -36,7 +36,7 @@
<div class="finish" v-if="row.status == 100">
<SuccessFilled style="width: 16px;" /><span class="ml5">补召完成</span>
</div>
<el-progress v-model="row.status" v-else :class="row.status == 100 ? 'progress' : ''"
<el-progress v-model.trim="row.status" v-else :class="row.status == 100 ? 'progress' : ''"
:format="format" :stroke-width="10" striped :percentage="row.status" :duration="30"
striped-flow />

View File

@@ -4,27 +4,28 @@
<TableHeader>
<template v-slot:select>
<el-form-item label="设备类型">
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model="tableStore.table.params.devType" clearable @change="devTypeChange"
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model.trim="tableStore.table.params.devType" clearable @change="devTypeChange"
placeholder="请选择设备类型">
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="设备型号">
<el-select v-model="tableStore.table.params.devModel" filterable clearable placeholder="请选择设备型号">
<el-select v-model.trim="tableStore.table.params.devModel" filterable clearable
placeholder="请选择设备型号">
<el-option v-for="item in devModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="通讯协议">
<el-select v-model="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-select v-model.trim="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-option label="MQTT" value="mqtt"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-select v-model.trim="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-option label="未注册" :value="1"></el-option>
<el-option label="注册" :value="2"></el-option>
<el-option label="接入" :value="3"></el-option>
@@ -44,38 +45,38 @@
</TableHeader>
<Table ref="tableRef"></Table>
<el-dialog :title="dialogTitle" v-model="dialogFormVisible" :close-on-click-modal="false"
<el-dialog :title="dialogTitle" v-model.trim="dialogFormVisible" :close-on-click-modal="false"
:before-close="resetForm" draggable width="40%">
<el-form :model="form" label-width="120px" :rules="rules" ref="ruleFormRef">
<el-form-item label="设备名称:" prop="name">
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
<el-input maxlength="32" show-word-limit v-model.trim="form.name" autocomplete="off" clearable
placeholder="请输入(项目名称+设备名称)"></el-input>
</el-form-item>
<el-form-item label="网络设备ID:" prop="ndid" class="top">
<el-input maxlength="32" show-word-limit v-model="form.ndid" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.ndid" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="设备类型:" prop="devType" class="top">
<el-select v-model="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-select v-model.trim="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备型号:" prop="devModel" class="top">
<el-select v-model="form.devModel" filterable placeholder="请选择" clearable>
<el-select v-model.trim="form.devModel" filterable placeholder="请选择" clearable>
<el-option v-for="item in formDevModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="通讯协议:" prop="devAccessMethod" class="top">
<el-select v-model="form.devAccessMethod" placeholder="请选择" clearable>
<el-select v-model.trim="form.devAccessMethod" placeholder="请选择" clearable>
<el-option label="MQTT" value="MQTT"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="合同号:" prop="cntractNo" class="top">
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.cntractNo" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
</el-form>

View File

@@ -4,7 +4,7 @@
<div class="harmonic_select" v-if="!loading">
<el-form :model="searchForm" id="history_select">
<el-form-item label="稳态指标">
<el-select multiple collapse-tags collapse-tags-tooltip v-model="searchForm.index"
<el-select multiple collapse-tags collapse-tags-tooltip v-model.trim="searchForm.index"
placeholder="请选择统计指标" :multiple-limit="3" value-key="id">
<el-option v-for="(item, index) in indexOptions" :label="item.name" :key="index"
:value="item"></el-option>

View File

@@ -3,11 +3,11 @@
<div class="realtrend" v-loading="loading">
<div class="select" v-if="!loading">
<div class="mr10">谐波次数 </div>
<el-select v-model="selectValue" style="width: 100px" @change="selectChange">
<el-select v-model.trim="selectValue" style="width: 100px" @change="selectChange">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div>
<el-tabs type="border-card" v-if="tabsList.length != 0" v-model="activeName" @tab-click="handleClick">
<el-tabs type="border-card" v-if="tabsList.length != 0" v-model.trim="activeName" @tab-click="handleClick">
<el-tab-pane v-for="(item, index) in tabsList" :label="item.groupName" :name="index" :key="index">
<div>
<div class="realtrend_top">
@@ -31,7 +31,7 @@
<div class="thead_left">
<p style=" font-weight: 700; background-color: #F3F6F9;">次数()</p>
<p>{{ item.groupName }}{{ item.unit ? '(' + item.unit + ')' : '' }}</p>
<p>国标限值{{ item.unit ? '(' + item.unit + ')' : '' }}</p>
<!-- <p>国标限值{{ item.unit ? '(' + item.unit + ')' : '' }}</p> -->
</div>
<div class="thead_right">
<div class="right_cell" v-for="(value, key, index) in tableData" :key="index">
@@ -50,7 +50,7 @@
{{ value }}
</span>
</p>
<p>
<!-- <p>
<span v-if="
String(key).includes('data') &&
String(key) != 'dataLevel' &&
@@ -58,7 +58,7 @@
">
{{ gbData[index]?.value || '/' }}
</span>
</p>
</p> -->
</div>
</div>
@@ -223,12 +223,13 @@ const init = () => {
trendData.map((item: any) => {
return item.value
}),
gbData.value.map((item: any) => {
return item.value
}),
// gbData.value.map((item: any) => {
// return item.value
// }),
]
let legendList = [tabsList.value[activeName.value]?.groupName, '国标限值',]
let legendList = [tabsList.value[activeName.value]?.groupName, ]
// let legendList = [tabsList.value[activeName.value]?.groupName, '国标限值',]
// echartsData.value.legend.data = legendList
list.map((item: any, index: any) => {
echartsData.value.series.push({
@@ -312,8 +313,8 @@ const setRealTrendData = (val: any) => {
emit('changeTrendType', activeName.value)
}
}
const selectChange=(val:any)=>{
loading.value=true
const selectChange = (val: any) => {
loading.value = true
// setTimeout(() => {
// loading.value=false
// },3000)
@@ -417,7 +418,8 @@ defineExpose({ open, setRealTrendData, setOverLimitData })
display: flex;
border: 2px solid #eee;
cursor: pointer;
font-size: 13px;
font-size: 13px;
.thead_left {
width: 150px;
height: 100%;
@@ -426,7 +428,7 @@ font-size: 13px;
justify-content: space-between;
align-items: center;
line-height: 50px;
padding-bottom: 5px;
p {
@@ -497,7 +499,7 @@ font-size: 13px;
.charts {
width: 100%;
margin-top: 10px;
height: calc(100vh - 560px);
height: calc(100vh - 535px);
}
}

View File

@@ -3,7 +3,7 @@
<div class="home">
<div class="home_header">
<!-- <el-form-item label="值类型选择">
<el-select @change="changeView" v-model="value" placeholder="请选择值类型">
<el-select @change="changeView" v-model.trim="value" placeholder="请选择值类型">
<el-option
v-for="(item, index) in options"
:key="index"
@@ -12,16 +12,18 @@
></el-option>
</el-select>
</el-form-item> -->
<el-radio-group v-model="value" @change="changeView">
<el-radio-group v-model.trim="theTypeOfValue" @change="changeView">
<el-radio-button label="一次值" :value="1" />
<el-radio-button label="二次值" :value="2" />
</el-radio-group>
<el-form-item label="">
<el-button @click="handleBack" :icon="Back">返回</el-button>
</el-form-item>
<el-button @click="handleBack" :icon="Back">返回</el-button>
</div>
<el-tabs class="home_body" type="border-card" v-model="activeName" @tab-click="handleClick">
<el-tabs class="home_body" type="border-card" v-model.trim="activeName1" @tab-click="handleClick"
v-loading="loading">
<el-tab-pane label="瞬时波形" name="ssbx" :style="'height:' + bxecharts + ';overflow-y: scroll;'">
<shushiboxi v-if="isWp && wp && activeName == 'ssbx' && showBoxi" :value="value" :boxoList="boxoList"
@@ -51,6 +53,7 @@ const searchForm = ref({
})
const emit = defineEmits(['handleHideCharts'])
const parentHeight = ref(0)
const loading = ref(false)
const tableList: any = ref([])
for (let i = 0; i < 300; i++) {
tableList.value.push({
@@ -87,19 +90,12 @@ const echartsData1: any = ref([]),
const view = ref(true)
const view2 = ref(false)
const showBoxi = ref(true)
const activeName1 = ref('ssbx')
const activeName = ref('ssbx')
const wp = ref({})
const theTypeOfValue = ref(1)
const value = ref(1)
const options = ref([
{
value: 1,
label: '一次值'
},
{
value: 2,
label: '二次值'
}
])
const isWp = ref(false)
const boxoList: any = ref([])
@@ -112,29 +108,35 @@ const getWpData = (val: any, list: any) => {
}
const changeView = () => {
showBoxi.value = false
loading.value = true
setTimeout(() => {
value.value = theTypeOfValue.value
showBoxi.value = true
}, 0)
}, 500)
setTimeout(() => {
loading.value = false
}, 1500)
}
const bxecharts: any = ref(mainHeight(190).height as any)
const handleClick = (tab: any, event: any) => {
// activeName.value = tab.index
if (tab.name == 'ssbx') {
activeName.value = 'ssbx'
} else if (tab.name == 'rmsbx') {
activeName.value = 'rmsbx'
}
loading.value = true
setTimeout(() => {
activeName.value = tab.paneName
}, 500)
setTimeout(() => {
loading.value = false
}, 1500)
}
const handleBack = () => {
emit('handleHideCharts')
}
const setHeight = (h: any,vh: any) => {
const setHeight = (h: any, vh: any) => {
parentHeight.value = h
setTimeout(() => {
bxecharts.value = mainHeight(vh).height
},100)
setTimeout(() => {
bxecharts.value = mainHeight(vh).height
}, 100)
}
onMounted(() => { })
defineExpose({ getWpData, setHeight })

View File

@@ -1,6 +1,6 @@
<template>
<div class="view" v-loading="loading">
<el-collapse v-model="activeNames">
<el-collapse v-model.trim="activeNames">
<el-collapse-item title="基础数据" name="1">
<div class="view_top">
<!-- 左侧仪表盘 -->
@@ -784,10 +784,12 @@ onMounted(() => {
.vxe-table--render-default .vxe-header--column:not(.col--ellipsis) {
padding: 5px !important;
}
.vxe-table--body-wrapper{
.vxe-table--body-wrapper {
min-height: 32px !important;
}
}
::v-deep .el-collapse-item__header {
font-size: 16px !important;
font-weight: 800 !important;

View File

@@ -15,10 +15,6 @@
</el-select>
</el-form-item>
<el-form-item>
<!-- <el-select style="min-width: 120px !important" v-model="searchForm.dataLevel">
<el-option value="Primary" label="一次值"></el-option>
<el-option value="Secondary" label="二次值"></el-option>
</el-select> -->
<el-radio-group v-model="searchForm.dataLevel" @change="init()">
<el-radio-button label="一次值" value="Primary" />
<el-radio-button label="二次值" value="Secondary" />
@@ -33,14 +29,16 @@
<el-option value="cp95" label="cp95"></el-option>
</el-select>
</el-form-item>
<el-form-item class="history_count" v-for="(item, index) in countData" :key="index"
:label="item.name.includes('次数') ? item.name : item.name + '谐波次数'"
v-show="item.countOptions.length != 0">
<el-select v-model="item.count" @change="onCountChange($event, index)" placeholder="请选择谐波次数"
style="width: 100px">
<el-option v-for="vv in item.countOptions" :key="vv" :label="vv" :value="vv"></el-option>
</el-select>
<el-form-item>
<div class="history_count" v-for="(item, index) in countData" :key="index"
v-show="item.countOptions.length != 0">
<span class="mr12">{{item.name.includes('次数') ? item.name : item.name + '谐波次数'}}</span>
<el-select v-model="item.count" @change="onCountChange($event, index)" placeholder="请选择谐波次数"
style="width: 100px" class="mr20">
<el-option v-for="vv in item.countOptions" :key="vv" :label="vv"
:value="vv"></el-option>
</el-select>
</div>
</el-form-item>
</template>
<template #operation>
@@ -344,7 +342,6 @@ const init = async () => {
color: ['#FFCC00', '#009900', '#CC0000', ...color],
xAxis: {
type: 'time',
name:'时间',
axisLabel: {
formatter: {
day: '{MM}-{dd}',

View File

@@ -29,8 +29,8 @@
</vxe-table>
</div>
</div>
<el-dialog v-model="dialogVisible" title="添加工程" class="cn-operate-dialog" :close-on-click-modal="false">
<el-input maxlength="32" show-word-limit v-model="filterText" icon="el-icon-Search" placeholder="请输入内容"
<el-dialog v-model.trim="dialogVisible" title="添加工程" class="cn-operate-dialog" :close-on-click-modal="false">
<el-input maxlength="32" show-word-limit v-model.trim="filterText" icon="el-icon-Search" placeholder="请输入内容"
clearable style="margin-bottom: 10px">
<template #prefix>
<Icon name="el-icon-Search" style="font-size: 16px" />

View File

@@ -21,7 +21,7 @@
<div class="filter" v-if="activePathList.length != 0">
<el-input maxlength="32" show-word-limit style="width: 200px; height: 32px" placeholder="请输入文件或文件夹名称"
clearable v-model="filterText" type="text"></el-input>
clearable v-model.trim="filterText" type="text"></el-input>
<el-button type="primary" @click="handleSearch" :icon="Search">搜索</el-button>
<!-- <el-button @click="handleRefresh" :icon="Refresh">重置</el-button> -->
<el-upload v-if="activePath != '/'" action="" :auto-upload="false" :show-file-list="false" :on-change="(file: any, fileList: any) => {
@@ -126,7 +126,7 @@
<!-- <el-empty v-if="dirList.length === 0" /> -->
</div>
<popup ref="fileRef"></popup>
<el-dialog v-model="addDeviceDirOpen" :destroy-on-close="true" title="新建文件夹目录" width="500" @closed="close">
<el-dialog v-model.trim="addDeviceDirOpen" :destroy-on-close="true" title="新建文件夹目录" width="500" @closed="close">
<el-form ref="formRef" :model="form"
:rules="{ path: [{ required: true, message: '请输入文件夹名称', trigger: 'blur' }] }">
<el-form-item label="文件夹名称" prop="path">

View File

@@ -1,7 +1,7 @@
<!-- 设备文件下载 -->
<template>
<div :class="downLoading ? 'all_disabled' : ''">
<el-dialog v-model="dialogVisible" title="文件信息" width="50%" @closed="handleClose">
<el-dialog v-model.trim="dialogVisible" title="文件信息" width="50%" @closed="handleClose">
<div v-loading="loading">
<div class="download_progress"
v-if="mqttFileName.includes(fileNameInfoMation) && status != 0 && status != 100">

View File

@@ -47,7 +47,7 @@
{{ deviceData.appCheck }}
</el-descriptions-item>
</el-descriptions>
<el-tabs v-model="dataSet" type="border-card" class="device-manage-box-card" @tab-click="handleClick">
<el-tabs v-model.trim="dataSet" type="border-card" class="device-manage-box-card" @tab-click="handleClick">
<el-tab-pane lazy :label="item.name" :name="item.id" v-for="(item, index) in deviceData.dataSetList"
:key="index"></el-tab-pane>
<div :style="{ height: tableHeight }" v-loading="tableLoading">
@@ -207,19 +207,19 @@ const handleRestartDevice = () => {
inputType: 'text',
beforeClose: (action, instance, done) => {
if (action === 'confirm') {
if (instance.inputValue == null) {
return ElMessage.warning('请输入密码')
} else if (instance.inputValue?.length > 32) {
return ElMessage.warning('密码长度不能超过32位,当前密码长度为' + instance.inputValue.length)
} else {
done();
}
if (action === 'confirm') {
if (instance.inputValue == null) {
return ElMessage.warning('请输入密码')
} else if (instance.inputValue?.length > 32) {
return ElMessage.warning('密码长度不能超过32位,当前密码长度为' + instance.inputValue.length)
} else {
done();
}
} else {
done();
}
}
} else {
done();
}
}
})
.then(({ value }) => {
if (!value) {

View File

@@ -1,5 +1,5 @@
<template>
<el-dialog class="cn-operate-dialog device-manage-popup" v-model="dialogVisible" title="设备模版分组">
<el-dialog class="cn-operate-dialog device-manage-popup" v-model.trim="dialogVisible" title="设备模版分组">
<el-descriptions class="mb10" :column="3" border>
<el-descriptions-item label="名称">
{{ popupData.deviceData.name }}
@@ -11,7 +11,7 @@
<el-descriptions :title="'数据集名称: ' + popupData.dataSetName" size="small" :column="2" border>
<template #extra>
<div v-if="newGroupVisible" style="display: flex; align-items: center">
<el-input maxlength="32" show-word-limit v-model="groupName" autocomplete="off" clearable
<el-input maxlength="32" show-word-limit v-model.trim="groupName" autocomplete="off" clearable
placeholder="请输入分组名称"></el-input>
<el-button class="ml10" ctype="primary" size="small" @click="newGroupVisible = false">取消</el-button>
<el-button class="ml10" type="primary" size="small" @click="addNewGroup">完成</el-button>
@@ -35,7 +35,7 @@
<Icon name="el-icon-Delete"></Icon>
</template>
</el-popconfirm>
<el-checkbox v-model="data.isShow" @click.stop.native="" class="ml5"></el-checkbox>
<el-checkbox v-model.trim="data.isShow" @click.stop.native="" class="ml5"></el-checkbox>
</div>
</div>
</template>

View File

@@ -1,47 +1,47 @@
<template>
<el-dialog v-model="dialogVisible" :title="title" draggable
<el-dialog v-model.trim="dialogVisible" :title="title" draggable
:style="{ width: popupType == 0 || popupType == 1 ? '500px' : '1100px' }">
<!-- 新增方案数据 -->
<el-form :model="form" scroll-to-error label-width="140px" :rules="rules1" ref="ruleFormRef1" class="form-one"
v-if="popupType == 0 || popupType == 1">
<el-form-item label="方案名称:" prop="itemName">
<el-input maxlength="32" show-word-limit v-model="form.itemName" placeholder="请输入方案名称" />
<el-input maxlength="32" show-word-limit v-model.trim="form.itemName" placeholder="请输入方案名称" />
</el-form-item>
<el-form-item label="方案描述:" prop="describe">
<el-input maxlength="300" show-word-limit type="textarea" v-model="form.describe"
<el-input maxlength="300" show-word-limit type="textarea" v-model.trim="form.describe"
placeholder="请输入方案描述" />
</el-form-item>
</el-form>
<!-- 测试项信息&数据绑定页面 -->
<el-tabs type="border-card" v-model="activeName" v-if="popupType != 0 && popupType != 1">
<el-tabs type="border-card" v-model.trim="activeName" v-if="popupType != 0 && popupType != 1">
<el-tab-pane label="测试项信息" :name="0" v-if="openType == 'tree'">
<el-form :model="form1" ref="ruleFormRef2" scroll-to-error class="form-two" label-width="140px"
:rules="rules2">
<el-form-item label="测试项名称:" prop="itemName">
<el-input maxlength="32" show-word-limit v-model="form1.itemName" placeholder="请输入测试项名称" />
<el-input maxlength="32" show-word-limit v-model.trim="form1.itemName" placeholder="请输入测试项名称" />
</el-form-item>
<el-form-item label="测量间隔:" prop="statisticalInterval">
<el-select v-model="form1.statisticalInterval" placeholder="请选择测量间隔" clearable
<el-select v-model.trim="form1.statisticalInterval" placeholder="请选择测量间隔" clearable
style="width: 100%">
<el-option v-for="(item, index) in statisticalIntervalList" :key="index" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="电压等级:" prop="voltageLevel">
<el-select v-model="form1.voltageLevel" placeholder="请选择电压等级" clearable style="width: 100%"
<el-select v-model.trim="form1.voltageLevel" placeholder="请选择电压等级" clearable style="width: 100%"
@change="changeVoltageLevel">
<el-option v-for="(item, index) in voltageLevelList" :key="index" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="接线方式:" prop="volConType">
<el-select v-model="form1.volConType" placeholder="请选择接线方式" clearable style="width: 100%">
<el-select v-model.trim="form1.volConType" placeholder="请选择接线方式" clearable style="width: 100%">
<el-option v-for="(item, index) in volConTypeList" :key="index" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="最小短路容量:" prop="capacitySscmin">
<el-input maxlength="32" show-word-limit v-model="form1.capacitySscmin" oninput="value=value.replace(/[^\-?\d.]/g,'')
<el-input maxlength="32" show-word-limit v-model.trim="form1.capacitySscmin" oninput="value=value.replace(/[^\-?\d.]/g,'')
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" autocomplete="off" placeholder="请选择最小短路容量">
<template #append>MVA</template>
@@ -49,7 +49,8 @@
</el-form-item>
<el-form-item label="用户协议容量:" prop="capacitySi">
<el-input maxlength="32" show-word-limit v-model="form1.capacitySi" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
<el-input maxlength="32" show-word-limit v-model.trim="form1.capacitySi" autocomplete="off"
oninput="value=value.replace(/[^\-?\d.]/g,'')
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入用户协议容量">
<template #append>MVA</template>
@@ -57,7 +58,7 @@
</el-form-item>
<el-form-item label="基准短路容量:" prop="capacitySscb">
<el-input maxlength="32" show-word-limit v-model="form1.capacitySscb" oninput="value=value.replace(/[^\-?\d.]/g,'')
<el-input maxlength="32" show-word-limit v-model.trim="form1.capacitySscb" oninput="value=value.replace(/[^\-?\d.]/g,'')
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入基准短路容量">
<template #append>MVA</template>
@@ -65,26 +66,26 @@
</el-form-item>
<el-form-item label="供电设备容量:" prop="capacitySt">
<el-input maxlength="32" show-word-limit v-model="form1.capacitySt" oninput="value=value.replace(/[^\-?\d.]/g,'')
<el-input maxlength="32" show-word-limit v-model.trim="form1.capacitySt" oninput="value=value.replace(/[^\-?\d.]/g,'')
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入供电设备容量">
<template #append>MVA</template>
</el-input>
</el-form-item>
<el-form-item label="PT变比" prop="pt">
<el-input maxlength="32" show-word-limit style="width: 48%" v-model="form1.pt"
<el-input maxlength="32" show-word-limit style="width: 48%" v-model.trim="form1.pt"
autocomplete="off" placeholder="请输入PT变比" oninput="value=value.replace(/[^0-9.]/g,'')" />
<el-input maxlength="32" show-word-limit style="width: 48%" v-model="form1.pt1"
<el-input maxlength="32" show-word-limit style="width: 48%" v-model.trim="form1.pt1"
autocomplete="off" placeholder="请输入PT变比" oninput="value=value.replace(/[^0-9.]/g,'')" />
</el-form-item>
<el-form-item label="CT变比" prop="ct">
<el-input maxlength="32" show-word-limit v-model="form1.ct" style="width: 48%"
<el-input maxlength="32" show-word-limit v-model.trim="form1.ct" style="width: 48%"
autocomplete="off" oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
<el-input maxlength="32" show-word-limit v-model="form1.ct1" style="width: 48%"
<el-input maxlength="32" show-word-limit v-model.trim="form1.ct1" style="width: 48%"
autocomplete="off" oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
</el-form-item>
<el-form-item label="监测位置:" prop="location" style="width: 100%">
<el-input maxlength="300" show-word-limit type="textarea" v-model="form1.location"
<el-input maxlength="300" show-word-limit type="textarea" v-model.trim="form1.location"
placeholder="请输入监测位置" />
</el-form-item>
</el-form>

View File

@@ -1,13 +1,12 @@
<template>
<div>
<div :style="{ width: menuCollapse ? '40px' : '280px' }"
style=" overflow: hidden; height: 100%">
<div :style="{ width: menuCollapse ? '40px' : '280px' }" style=" overflow: hidden; height: 100%">
<Icon v-show="menuCollapse" @click="onMenuCollapse" :name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
:class="menuCollapse ? 'unfold' : ''" size="18" class="fold ml10 mt20 menu-collapse"
style="cursor: pointer" />
<div class="cn-tree" :style="{ opacity: menuCollapse ? 0 : 1, display: menuCollapse ? 'none' : '' }">
<div style="display: flex; align-items: center" class="mb10">
<el-input maxlength="32" show-word-limit v-model="filterText" placeholder="请输入内容" clearable>
<el-input maxlength="32" show-word-limit v-model.trim="filterText" placeholder="请输入内容" clearable>
<template #prefix>
<Icon name="el-icon-Search" style="font-size: 16px" />
</template>
@@ -271,10 +270,10 @@ const edit = async (node: Node, data: any) => {
.catch(e => { })
}
/** 删除树节点 */
const del =async (node: Node, data: any) => {
const del = async (node: Node, data: any) => {
let titleList = ''
planId.value = data.id
await getDeviceList({
await getDeviceList({
id: data.id,
isTrueFlag: 1
}).then(res => {

View File

@@ -4,8 +4,8 @@
<div class="SelectBox">
<div class="boxTitle" @click="clickAllSelect">未绑定数据</div>
<div class="boxCenter">
<el-input maxlength="32" show-word-limit v-model="filterText" :suffix-icon="Search" style="width: 100%"
placeholder="请输入搜索内容" clearable></el-input>
<el-input maxlength="32" show-word-limit v-model.trim="filterText" :suffix-icon="Search"
style="width: 100%" placeholder="请输入搜索内容" clearable></el-input>
<el-tree ref="leftTree" default-expand-all :data="leftData" :props="defaultProps" show-checkbox
node-key="id" :filter-node-method="filterNode">
<template #default="{ node, data }">
@@ -36,8 +36,8 @@
<div class="SelectBox">
<div class="boxTitle" @click="clickCancelAllSelect">已绑定数据</div>
<div class="boxCenter">
<el-input maxlength="32" show-word-limit v-model="filterText1" :suffix-icon="Search" style="width: 100%"
placeholder="请输入搜索内容" clearable></el-input>
<el-input maxlength="32" show-word-limit v-model.trim="filterText1" :suffix-icon="Search"
style="width: 100%" placeholder="请输入搜索内容" clearable></el-input>
<el-tree ref="rightTree" default-expand-all :data="rightData" :props="defaultProps" show-checkbox
node-key="id" :filter-node-method="filterNode">
<template #default="{ node, data }">
@@ -198,8 +198,8 @@ export default {
}
},
// 过滤父节点 / 子节点 (如果输入的参数是父节点且能匹配则返回该节点以及其下的所有子节点如果参数是子节点则返回该节点的父节点。name是中文字符enName是英文字符.
chooseNode(value, data, node) {
// 过滤父节点 / 子节点 (如果输入的参数是父节点且能匹配则返回该节点以及其下的所有子节点如果参数是子节点则返回该节点的父节点。name是中文字符enName是英文字符.
chooseNode(value, data, node) {
if (data.name.indexOf(value) !== -1) {
return true

View File

@@ -16,13 +16,13 @@
{{ deviceData.describe ? deviceData.describe : '/' }}
</el-descriptions-item>
</el-descriptions>
<el-collapse v-model="activeColName" @change="handleChange" accordion>
<el-collapse v-model.trim="activeColName" @change="handleChange" accordion>
<el-collapse-item title="测试项信息" name="0">
<div class="monitor_info" v-if="deviceData.records && deviceData.records.length != 0">
<!-- <div class="history_title">
<p>测试项信息</p>
</div> -->
<el-tabs v-model="activeName" type="border-card" @tab-change="handleClickTabs">
<el-tabs v-model.trim="activeName" type="border-card" @tab-change="handleClickTabs">
<el-tab-pane v-for="(item, index) in deviceData?.records" :label="item.itemName"
:name="item.id" :key="index">
<template #label>
@@ -102,7 +102,7 @@
<div v-if="JSON.stringify(echartsData) != '{}' && deviceData?.records?.length != 0">
<!-- <h3 class="mt10 mb10">历史趋势</h3> -->
<el-tabs v-model="childTab" type="border-card" class="mt10">
<el-tabs v-model.trim="childTab" type="border-card" class="mt10">
<el-tab-pane label="历史趋势" name="0">
<div class="history_trend" v-if="titleList != '(未绑定数据)'">
<div class="history_header" ref="headerRef">
@@ -111,43 +111,43 @@
<template v-slot:select :key="num">
<el-form-item for="-" label="统计指标">
<el-select style="min-width: 200px" collapse-tags collapse-tags-tooltip
v-model="searchForm.index" placeholder="请选择统计指标"
v-model.trim="searchForm.index" placeholder="请选择统计指标"
@change="onIndexChange($event)" multiple :multiple-limit="3">
<el-option v-for="item in indexOptions" :key="item.id"
:label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<!-- <el-select style="width: 12px !important" v-model="searchForm.dataLevel">
<!-- <el-select style="width: 12px !important" v-model.trim="searchForm.dataLevel">
<el-option value="Primary" label="一次值"></el-option>
<el-option value="Secondary" label="二次值"></el-option>
</el-select> -->
<el-radio-group v-model="searchForm.dataLevel" @change="init(true)">
<el-radio-group v-model.trim="searchForm.dataLevel" @change="init(true)">
<el-radio-button label="一次值" value="Primary" />
<el-radio-button label="二次值" value="Secondary" />
</el-radio-group>
</el-form-item>
<el-form-item for="-" label="统计类型" label-width="80px">
<el-select style="width: 120px" v-model="searchForm.type"
<el-select style="width: 120px" v-model.trim="searchForm.type"
placeholder="请选择值类型">
<el-option v-for="item in typeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item for="-" v-for="(item, index) in countData" :key="index"
:label="item.name.includes('次数') ? item.name : item.name.includes('幅值') ? item.name.slice(0, -2) + '次数' : item.name + '谐波次数'"
v-show="item.countOptions.length != 0">
<el-select v-model="item.count" collapse-tags collapse-tags-tooltip
placeholder="请选择谐波次数" style="width: 120px">
<el-option v-for="vv in item.countOptions" :key="vv" :label="vv"
:value="vv"></el-option>
</el-select>
<el-form-item>
<div for="-" v-for="(item, index) in countData" :key="index"
v-show="item.countOptions.length != 0">
<span class="mr12">{{item.name.includes('次数') ? item.name : item.name.includes('幅值') ? item.name.slice(0, -2) + '次数' : item.name + '谐波次数'}}</span>
<el-select v-model.trim="item.count" class="mr20" collapse-tags collapse-tags-tooltip
placeholder="请选择谐波次数" style="width: 120px">
<el-option v-for="vv in item.countOptions" :key="vv" :label="vv"
:value="vv"></el-option>
</el-select>
</div>
</el-form-item>
</template>
<template v-slot:operation>
<!-- <el-button type="primary" icon="el-icon-Download" @click="handleExport">
@@ -170,7 +170,7 @@
<el-empty :style="EcharHeight" v-else description="未绑定数据" />
</el-tab-pane>
<el-tab-pane label="暂态数据" name="1">
<transient :activeName='activeName' ref="transientRef" :activeColName="activeColName"/>
<transient :activeName='activeName' ref="transientRef" :activeColName="activeColName" />
</el-tab-pane>
</el-tabs>

View File

@@ -3,7 +3,7 @@
<TableHeader datePicker>
<template v-slot:select>
<el-form-item label="设备名称">
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
<el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue"
placeholder="请输入设备名称" />
</el-form-item>
</template>

View File

@@ -3,21 +3,21 @@
<TableHeader>
<template #select>
<el-form-item label="数据分类">
<el-select v-model="tableStore.table.params.dataType" multiple filterable collapse-tags clearable
placeholder="请选择数据分类">
<el-select v-model.trim="tableStore.table.params.dataType" multiple filterable collapse-tags
clearable placeholder="请选择数据分类">
<el-option v-for="item in DataTypeSelect" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="数据存储">
<el-select v-model="tableStore.table.params.classId" multiple filterable collapse-tags clearable
placeholder="请选择数据存储">
<el-select v-model.trim="tableStore.table.params.classId" multiple filterable collapse-tags
clearable placeholder="请选择数据存储">
<el-option v-for="item in DataSelect" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="过滤筛选">
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
<el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue"
placeholder="数据名称、别名、名称" clearable></el-input>
</el-form-item>
</template>

View File

@@ -1,78 +1,78 @@
<template>
<el-dialog class="cn-operate-dialog" v-model="dialogVisible" :title="title">
<el-dialog class="cn-operate-dialog" v-model.trim="dialogVisible" :title="title">
<el-scrollbar>
<div style="padding-left: 50px">
<el-divider content-position="center">基础数据</el-divider>
</div>
<el-form :model="form" label-width="140px" ref="formRef" class="form-two" :rules="rules">
<el-form-item label="数据分类:" prop="dataType">
<el-select v-model="form.dataType" filterable clearable placeholder="请选择数据分类">
<el-select v-model.trim="form.dataType" filterable clearable placeholder="请选择数据分类">
<el-option v-for="item in DataTypeSelect" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="数据名称:" prop="name">
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.name" autocomplete="off"
placeholder="请输入数据名称"></el-input>
</el-form-item>
<el-form-item label="别名:" prop="otherName">
<el-input maxlength="32" show-word-limit v-model="form.otherName" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.otherName" autocomplete="off"
placeholder="请输入别名"></el-input>
</el-form-item>
<el-form-item label="展示名称:" prop="showName">
<el-input maxlength="32" show-word-limit v-model="form.showName" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.showName" autocomplete="off"
placeholder="请输入展示名称"></el-input>
</el-form-item>
<el-form-item label="相别:" prop="phase">
<el-select v-model="form.phase" filterable clearable placeholder="请选择相别">
<el-select v-model.trim="form.phase" filterable clearable placeholder="请选择相别">
<el-option v-for="item in phaseSelect" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="单位:" prop="unit">
<el-input maxlength="32" show-word-limit v-model="form.unit" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.unit" autocomplete="off"
placeholder="请输入单位"></el-input>
</el-form-item>
<el-form-item label="基础数据类型:" prop="type">
<el-input maxlength="32" show-word-limit v-model="form.type" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.type" autocomplete="off"
placeholder="请输入基础数据类型"></el-input>
</el-form-item>
<el-form-item label="开始结束次数:" prop="harmStart">
<el-slider v-model="form.harm" range show-stops :max="50" style="width: 95%" />
<el-slider v-model.trim="form.harm" range show-stops :max="50" style="width: 95%" />
</el-form-item>
<el-form-item label="统计方法:" prop="statMethod">
<el-select v-model="form.statMethod" multiple collapse-tags collapse-tags-tooltip filterable
<el-select v-model.trim="form.statMethod" multiple collapse-tags collapse-tags-tooltip filterable
clearable placeholder="请选择统计方法">
<el-option v-for="item in StatMethodSelect" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="数据存储:" prop="classId">
<el-select v-model="form.classId" filterable clearable placeholder="请选择数据存储">
<el-select v-model.trim="form.classId" filterable clearable placeholder="请选择数据存储">
<el-option v-for="item in DataSelect" :key="item.code" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="报表数据来源:" prop="resourcesId">
<el-select v-model="form.resourcesId" filterable clearable placeholder="请选择报表数据来源">
<el-select v-model.trim="form.resourcesId" filterable clearable placeholder="请选择报表数据来源">
<el-option v-for="item in ResourcesIdSelect" :key="item.code" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="序号:" prop="sort">
<el-input maxlength="32" show-word-limit type="number" v-model="form.sort" autocomplete="off"
<el-input maxlength="32" show-word-limit type="number" v-model.trim="form.sort" autocomplete="off"
placeholder="请输入序号"></el-input>
</el-form-item>
<el-form-item label="限值名称:" prop="limitName">
<el-input maxlength="32" show-word-limit type="text" v-model="form.limitName" autocomplete="off"
placeholder="请输入限值名称"></el-input>
<el-input maxlength="32" show-word-limit type="text" v-model.trim="form.limitName"
autocomplete="off" placeholder="请输入限值名称"></el-input>
</el-form-item>
<el-form-item label="限值表名:" prop="limitTable">
<el-input maxlength="32" show-word-limit type="text" v-model="form.limitTable" autocomplete="off"
placeholder="请输入限值表名"></el-input>
<el-input maxlength="32" show-word-limit type="text" v-model.trim="form.limitTable"
autocomplete="off" placeholder="请输入限值表名"></el-input>
</el-form-item>
<el-form-item label="超标判断方式:" prop="formula">
<el-select v-model="form.formula" filterable clearable placeholder="请选择超标判断方式">
<el-select v-model.trim="form.formula" filterable clearable placeholder="请选择超标判断方式">
<el-option v-for="item in FormulaSelect" :key="item.code" :label="item.name"
:value="item.id"></el-option>
</el-select>
@@ -83,53 +83,53 @@
</div>
<el-form class="form-two" :model="form" label-width="140px" ref="formRef2" :rules="rules">
<el-form-item label="参数缺省值:" prop="defaultValue">
<el-input maxlength="32" show-word-limit v-model="form.defaultValue" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.defaultValue" autocomplete="off"
placeholder="请输入参数缺省值"></el-input>
</el-form-item>
<el-form-item label="事件类别:" prop="eventType">
<el-input maxlength="32" show-word-limit v-model="form.eventType" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.eventType" autocomplete="off"
placeholder="请输入事件类别"></el-input>
</el-form-item>
<el-form-item label="设置最大值:" prop="maxNum">
<el-input maxlength="32" show-word-limit type="number" v-model="form.maxNum" autocomplete="off"
<el-input maxlength="32" show-word-limit type="number" v-model.trim="form.maxNum" autocomplete="off"
placeholder="请输入设置最大值"></el-input>
</el-form-item>
<el-form-item label="设置最小值:" prop="minNum">
<el-input maxlength="32" show-word-limit type="number" v-model="form.minNum" autocomplete="off"
<el-input maxlength="32" show-word-limit type="number" v-model.trim="form.minNum" autocomplete="off"
placeholder="请输入设置最小值"></el-input>
</el-form-item>
<el-form-item label="枚举序列:" prop="setValue">
<el-input maxlength="32" show-word-limit v-model="form.setValue" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.setValue" autocomplete="off"
placeholder="请输入枚举序列"></el-input>
</el-form-item>
<el-form-item label="字符串长度上限:" prop="strlen">
<el-input maxlength="32" show-word-limit type="number" v-model="form.strlen" autocomplete="off"
<el-input maxlength="32" show-word-limit type="number" v-model.trim="form.strlen" autocomplete="off"
placeholder="请输入字符串长度上限"></el-input>
</el-form-item>
<el-form-item label="上送规则:" prop="tranRule">
<el-input maxlength="32" show-word-limit v-model="form.tranRule" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.tranRule" autocomplete="off"
placeholder="请输入上送规则"></el-input>
</el-form-item>
<el-form-item label="是否可远程控制:" prop="ctlSts">
<el-radio v-model="form.ctlSts" :label="1"></el-radio>
<el-radio v-model="form.ctlSts" :label="0"></el-radio>
<el-radio v-model.trim="form.ctlSts" :label="1"></el-radio>
<el-radio v-model.trim="form.ctlSts" :label="0"></el-radio>
</el-form-item>
<el-form-item label="是否需遥控校验:" prop="curSts">
<el-radio v-model="form.curSts" :label="1"></el-radio>
<el-radio v-model="form.curSts" :label="0"></el-radio>
<el-radio v-model.trim="form.curSts" :label="1"></el-radio>
<el-radio v-model.trim="form.curSts" :label="0"></el-radio>
</el-form-item>
<el-form-item label="是否存储:" prop="storeFlag">
<el-radio v-model="form.storeFlag" :label="1"></el-radio>
<el-radio v-model="form.storeFlag" :label="0"></el-radio>
<el-radio v-model.trim="form.storeFlag" :label="1"></el-radio>
<el-radio v-model.trim="form.storeFlag" :label="0"></el-radio>
</el-form-item>
<el-form-item label="是否加密:" prop="storeFlag">
<el-radio v-model="form.storeFlag" :label="1"></el-radio>
<el-radio v-model="form.storeFlag" :label="0"></el-radio>
<el-radio v-model.trim="form.storeFlag" :label="1"></el-radio>
<el-radio v-model.trim="form.storeFlag" :label="0"></el-radio>
</el-form-item>
<el-form-item label="数据是否上送:" prop="tranFlag">
<el-radio v-model="form.tranFlag" :label="1"></el-radio>
<el-radio v-model="form.tranFlag" :label="0"></el-radio>
<el-radio v-model.trim="form.tranFlag" :label="1"></el-radio>
<el-radio v-model.trim="form.tranFlag" :label="0"></el-radio>
</el-form-item>
</el-form>
</el-scrollbar>

View File

@@ -1,41 +1,41 @@
<template>
<el-dialog class="cn-operate-dialog" width="800px" v-model="dialogVisible" :title="title">
<el-dialog class="cn-operate-dialog" width="800px" v-model.trim="dialogVisible" :title="title">
<el-form class="form-two" :model="form" label-width="120px" ref="formRef" :rules="rules">
<el-form-item label="装置类型:" prop="type">
<el-select v-model="form.type" filterable placeholder="请选择" @change="typeChange">
<el-select v-model.trim="form.type" filterable placeholder="请选择" @change="typeChange">
<el-option v-for="item in TypeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="装置型号:" prop="devType">
<el-select v-model="form.devType" placeholder="请选择" filterable @change="devTypeChange">
<el-select v-model.trim="form.devType" placeholder="请选择" filterable @change="devTypeChange">
<el-option v-for="item in DevTypeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="版本号:" prop="versionNo">
<el-input maxlength="32" show-word-limit v-model="form.versionNo" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.versionNo" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="版本类型:" prop="versionType">
<el-input maxlength="32" show-word-limit v-model="form.versionType" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.versionType" autocomplete="off"
placeholder="填写特殊类型(不填默认通用类型)"></el-input>
</el-form-item>
<el-form-item label="版本协议:" prop="versionAgreement">
<el-input maxlength="32" show-word-limit v-model="form.versionAgreement" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.versionAgreement" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="版本日期:" prop="versionDate">
<el-date-picker v-model="form.versionDate" type="date" value-format="yyyy-MM-dd" placeholder="选择日期时间"
style="width: 100%"></el-date-picker>
<el-date-picker v-model.trim="form.versionDate" type="date" value-format="yyyy-MM-dd"
placeholder="选择日期时间" style="width: 100%"></el-date-picker>
</el-form-item>
<el-form-item label="描述:" prop="description">
<el-input maxlength="32" show-word-limit v-model="form.description" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.description" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="CRC校验:" prop="crcInfo">
<el-input maxlength="32" show-word-limit v-model="form.crcInfo" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.crcInfo" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
</el-form>

View File

@@ -3,11 +3,11 @@
<TableHeader ref="tableHeaderRef">
<template #select>
<el-form-item label="模版名称">
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.name" clearable
<el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.name" clearable
placeholder="请输入名称"></el-input>
</el-form-item>
<el-form-item label="装置型号">
<el-select v-model="tableStore.table.params.devType" placeholder="请选择" clearable>
<el-select v-model.trim="tableStore.table.params.devType" placeholder="请选择" clearable>
<el-option v-for="item in DevTypeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>

View File

@@ -3,17 +3,9 @@
<TableHeader ref="tableHeaderRef">
<template #select>
<el-form-item label="装置型号:">
<el-select
v-model="tableStore.table.params.devType"
placeholder="请选择"
clearable
>
<el-option
v-for="item in DevTypeOptions"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
<el-select v-model.trim="tableStore.table.params.devType" placeholder="请选择" clearable>
<el-option v-for="item in DevTypeOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
</template>

View File

@@ -3,27 +3,28 @@
<TableHeader>
<template v-slot:select>
<el-form-item label="设备类型">
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model="tableStore.table.params.devType" clearable @change="devTypeChange"
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model.trim="tableStore.table.params.devType" clearable @change="devTypeChange"
placeholder="请选择设备类型">
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="设备型号">
<el-select v-model="tableStore.table.params.devModel" filterable clearable placeholder="请选择设备型号">
<el-select v-model.trim="tableStore.table.params.devModel" filterable clearable
placeholder="请选择设备型号">
<el-option v-for="item in devModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="通讯协议">
<el-select v-model="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-select v-model.trim="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-option label="MQTT" value="MQTT"></el-option>
<el-option label="CLD" value="CLD"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="状态">
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-select v-model.trim="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-option label="未注册" :value="1"></el-option>
<el-option label="注册" :value="2"></el-option>
<el-option label="接入" :value="3"></el-option>
@@ -43,7 +44,7 @@
</TableHeader>
<Table ref="tableRef"></Table>
<el-dialog :title="dialogTitle" v-model="dialogFormVisible" :close-on-click-modal="false"
<el-dialog :title="dialogTitle" v-model.trim="dialogFormVisible" :close-on-click-modal="false"
:before-close="resetForm" draggable width="800px">
<el-form :model="form" label-width="auto" :rules="rules" ref="ruleFormRef" class="form-two">
<el-form-item label="设备名称:" prop="name">
@@ -55,19 +56,19 @@
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="设备类型:" prop="devType" class="top">
<el-select v-model="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-select v-model.trim="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备型号:" prop="devModel" class="top">
<el-select v-model="form.devModel" filterable placeholder="请选择" clearable>
<el-select v-model.trim="form.devModel" filterable placeholder="请选择" clearable>
<el-option v-for="item in formDevModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="通讯协议:" prop="devAccessMethod" class="top">
<el-select v-model="form.devAccessMethod" placeholder="请选择" clearable>
<el-select v-model.trim="form.devAccessMethod" placeholder="请选择" clearable>
<el-option label="MQTT" value="MQTT"></el-option>
<el-option label="CLD" value="CLD"></el-option>
</el-select>
@@ -77,7 +78,7 @@
</el-form-item>
<!-- <el-form-item label="合同号:" prop="cntractNo" class="top">
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
<el-input maxlength="32" show-word-limit v-model.trim="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
</el-form-item> -->
</el-form>
<template #footer>
@@ -395,7 +396,7 @@ const tableStore = new TableStore({
// },
//便携式设备手动接入
{
title: '接5入',
title: '接入',
type: 'primary',
icon: 'el-icon-Grid',
render: 'basicButton',
@@ -403,7 +404,7 @@ const tableStore = new TableStore({
return (
(row.devType != '8b45cf6b7f5266e777d07c166ad5fa77' &&
row.devModel != 'a0d4da4b5c17b2172362a3f5a27bf217') ||
row.status != '5'
row.status != '6'
)
},
click: row => {
@@ -425,7 +426,7 @@ const tableStore = new TableStore({
}
},
{
title: '接3入',
title: '接入',
type: 'primary',
icon: 'el-icon-Grid',
render: 'basicButton',
@@ -433,7 +434,7 @@ const tableStore = new TableStore({
return (
(row.devType != '8b45cf6b7f5266e777d07c166ad5fa77' &&
row.devModel != 'a0d4da4b5c17b2172362a3f5a27bf217') ||
row.status != '3'
row.status != '5'
)
},
click: row => {

View File

@@ -3,8 +3,8 @@
<TableHeader datePicker>
<template v-slot:select>
<el-form-item label="关键词">
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" clearable
placeholder="请输入关键词" />
<el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue"
clearable placeholder="请输入关键词" />
</el-form-item>
</template>
</TableHeader>

View File

@@ -1,55 +1,29 @@
<template>
<el-dialog class="cn-operate-dialog" v-model="dialogVisible" title="编辑拓扑图信息">
<el-dialog class="cn-operate-dialog" v-model.trim="dialogVisible" title="编辑拓扑图信息">
<el-form :label-width="140">
<el-form-item label="拓扑图:" style="height: auto !important">
<div class="gplot-content">
<VueDraggableResizable
class-name-draggable="gplot-content-item"
class-name-active="gplot-content-item-active"
:active="editorIndex == index"
:resizable="false"
:parent="true"
:x="item.left"
:y="item.top"
:w="item.width"
:h="item.height"
@dragStart="editorIndex = index"
@dragging="resize"
v-for="(item, index) in pointList"
:key="index"
:isResizable="false"
>
<div
class="text"
style="line-height: 20px; white-space: nowrap"
:style="{ color: item.name === '监测点' ? 'red' : 'black' }"
>
<VueDraggableResizable class-name-draggable="gplot-content-item"
class-name-active="gplot-content-item-active" :active="editorIndex == index" :resizable="false"
:parent="true" :x="item.left" :y="item.top" :w="item.width" :h="item.height"
@dragStart="editorIndex = index" @dragging="resize" v-for="(item, index) in pointList"
:key="index" :isResizable="false">
<div class="text" style="line-height: 20px; white-space: nowrap"
:style="{ color: item.name === '监测点' ? 'red' : 'black' }">
{{ item.name }}
</div>
</VueDraggableResizable>
<img
:src="imgUrl"
class="gplot-content"
style="border: 1px solid #dcdfe6; position: unset; user-select: none"
draggable="false"
/>
<img :src="imgUrl" class="gplot-content"
style="border: 1px solid #dcdfe6; position: unset; user-select: none" draggable="false" />
<div>注意监测点不要移出圈</div>
</div>
</el-form-item>
<el-form-item label="监测点位置:" v-if="editorIndex > -1">
<div style="display: flex">
<el-select
v-model="pointList[editorIndex].position"
placeholder="请选择"
style="flex: 1"
@change="positionChange"
>
<el-option
v-for="item in linePosition"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
<el-select v-model.trim="pointList[editorIndex].position" placeholder="请选择" style="flex: 1"
@change="positionChange">
<el-option v-for="item in linePosition" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
<el-button class="ml20" type="danger" @click="deletePoint" icon="el-icon-Delete">删除</el-button>
</div>

View File

@@ -1,19 +1,19 @@
<template>
<el-dialog draggable :title="title" v-model="dialogVisible" width="500px" :before-close="handleClose"
<el-dialog draggable :title="title" v-model.trim="dialogVisible" width="500px" :before-close="handleClose"
:close-on-click-modal="false">
<el-form ref="formRef" :rules="rules" :model="form" label-width="90px" class="form">
<el-form-item label="项目名称:" prop="name">
<el-input maxlength="32" show-word-limit v-model.trim="form.name" placeholder="请输入项目名称"></el-input>
</el-form-item>
<el-form-item label="工程项目:" class="top" prop="projectIds">
<el-tree-select v-model="form.projectIds" default-expand-all show-checkbox node-key="id"
<el-tree-select v-model.trim="form.projectIds" default-expand-all show-checkbox node-key="id"
:props="defaultProps" multiple :data="Engineering" collapse-tags style="width: 100%" />
<!-- <el-cascader v-model="form.projectIds" :options="Engineering" :props="defaultProps"
<!-- <el-cascader v-model.trim="form.projectIds" :options="Engineering" :props="defaultProps"
:show-all-levels="false" collapse-tags collapse-tags-tooltip clearable style="width: 100%;"/> -->
</el-form-item>
<el-form-item label="项目排序:" prop="orderBy">
<el-input maxlength="32" show-word-limit-number v-model="form.orderBy" :min="0" :step="1" step-strictly
style="width: 100%" />
<el-input maxlength="32" show-word-limit-number v-model.trim="form.orderBy" :min="0" :step="1"
step-strictly style="width: 100%" />
</el-form-item>
<el-form-item label="备注:" class="top">

View File

@@ -3,7 +3,7 @@
<TableHeader>
<template v-slot:select>
<el-form-item label="项目名称">
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
<el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue"
placeholder="请输入项目名称"></el-input>
</el-form-item>
</template>

View File

@@ -10,7 +10,7 @@
<TableHeader ref="TableHeaderRef" datePicker>
<template v-slot:select>
<el-form-item label="模板策略">
<el-select v-model="Template" @change="changetype" placeholder="请选择模版" value-key="id">
<el-select v-model.trim="Template" @change="changetype" placeholder="请选择模版" value-key="id">
<el-option v-for="item in templatePolicy" :key="item.id" :label="item.name"
:value="item"></el-option>
</el-select>

View File

@@ -6,11 +6,11 @@
@Policy="stencil">
</pointTreeWx>
</pane>
<pane :size="(100-size)" style="background: #fff" :style="height">
<pane :size="(100 - size)" style="background: #fff" :style="height">
<TableHeader ref="TableHeaderRef" :showReset="false">
<template v-slot:select>
<el-form-item label="模板策略">
<el-select v-model="Template" @change="changetype" placeholder="请选择模版" value-key="id">
<el-select v-model.trim="Template" @change="changetype" placeholder="请选择模版" value-key="id">
<el-option v-for="item in templatePolicy" :key="item.id" :label="item.name"
:value="item"></el-option>
</el-select>

View File

@@ -1,68 +1,36 @@
<template>
<el-tabs v-model="activeName" class="demo-tabs">
<el-tabs v-model.trim="activeName" class="demo-tabs">
<el-tab-pane label="数据单位" name="0">
绑定数据单位:
<el-cascader
:popper-append-to-body="false"
ref="cascaderUnit"
placeholder="请选择数据单位"
v-model="value"
:options="options1"
filterable
@change="handleChange"
:props="{
<el-cascader :popper-append-to-body="false" ref="cascaderUnit" placeholder="请选择数据单位" v-model.trim="value"
:options="options1" filterable @change="handleChange" :props="{
value: 'code',
label: 'name'
}"
></el-cascader>
}"></el-cascader>
</el-tab-pane>
<el-tab-pane label="数据指标" name="1">
绑定数据指标:
<el-cascader
:popper-append-to-body="false"
ref="cascaderUnit"
placeholder="请选择数据指标"
v-model="value"
:options="options2"
filterable
@change="handleChange"
:props="{
<el-cascader :popper-append-to-body="false" ref="cascaderUnit" placeholder="请选择数据指标" v-model.trim="value"
:options="options2" filterable @change="handleChange" :props="{
value: 'name',
label: 'showName'
}"
></el-cascader>
}"></el-cascader>
</el-tab-pane>
<el-tab-pane label="合格率判定" name="2">
绑定合格率判定:
<el-cascader
:popper-append-to-body="false"
ref="cascaderhgl"
placeholder="请选择数据合格率"
v-model="value"
:options="options3"
filterable
@change="handleChange"
:props="{
<el-cascader :popper-append-to-body="false" ref="cascaderhgl" placeholder="请选择数据合格率" v-model.trim="value"
:options="options3" filterable @change="handleChange" :props="{
value: 'name',
label: 'showName'
}"
></el-cascader>
}"></el-cascader>
</el-tab-pane>
<el-tab-pane label="监测点台账指标" name="3">
绑定数据指标:
<el-cascader
:popper-append-to-body="false"
ref="cascaderjcd"
placeholder="请选择监测点台账"
v-model="value"
:options="options4"
filterable
@change="handleChange"
:props="{
<el-cascader :popper-append-to-body="false" ref="cascaderjcd" placeholder="请选择监测点台账" v-model.trim="value"
:options="options4" filterable @change="handleChange" :props="{
value: 'name',
label: 'showName'
}"
></el-cascader>
}"></el-cascader>
</el-tab-pane>
</el-tabs>
</template>
@@ -99,7 +67,7 @@ terminalChooseTree().then(res => {
options4.value = res.data
})
onMounted(() => {})
onMounted(() => { })
</script>
<style lang="scss" scoped>
:deep(.el-tab-pane) {

View File

@@ -1,24 +1,13 @@
<template>
<el-dialog draggable v-model="dialogVisible" title="模板绑定" width="500px" :before-close="handleClose">
<el-tree
default-expand-all
show-checkbox
node-key="id"
:data="dataTree"
:expand-on-click-node="false"
ref="tree"
style="height: 440px; overflow-y: auto"
>
<el-dialog draggable v-model.trim="dialogVisible" title="模板绑定" width="500px" :before-close="handleClose">
<el-tree default-expand-all show-checkbox node-key="id" :data="dataTree" :expand-on-click-node="false"
ref="tree" style="height: 440px; overflow-y: auto">
<template #default="{ node, data }">
<span class="custom-tree-node">
<span>{{ data.name }}</span>
<span>
<el-switch
v-model="data.activation"
active-value="1"
inactive-value="0"
:active-text="data.activation == 1 ? '激活 ' : '未激活'"
/>
<el-switch v-model.trim="data.activation" active-value="1" inactive-value="0"
:active-text="data.activation == 1 ? '激活 ' : '未激活'" />
</span>
</span>
</template>

View File

@@ -1,23 +1,23 @@
<template>
<el-dialog draggable :title="title" v-model="formVisible" width="30%" :before-close="closeDialog">
<el-dialog draggable :title="title" v-model.trim="formVisible" width="30%" :before-close="closeDialog">
<el-form :model="formdata" label-width="100px" :rules="rules" ref="ruleForm">
<el-form-item label="模板名称:" prop="name">
<el-input maxlength="32" show-word-limit placeholder="模板名称" v-model="formdata.name"
<el-input maxlength="32" show-word-limit placeholder="模板名称" v-model.trim="formdata.name"
style="width: 100%"></el-input>
</el-form-item>
<el-form-item label="部门:" prop="deptId">
<Area v-model="formdata.deptId" style="width: 100%" collapse-tags
<Area v-model.trim="formdata.deptId" style="width: 100%" collapse-tags
:props="{ multiple: true, label: 'name', value: 'id', emitPath: false }" />
</el-form-item>
<el-form-item label="模板类型:" prop="reportType">
<el-select style="width: 100%" v-model="formdata.reportType" placeholder="请选择模板类型">
<el-select style="width: 100%" v-model.trim="formdata.reportType" placeholder="请选择模板类型">
<el-option v-for="item in classificationData" :key="item.id" :label="item.label"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="报表类型:" prop="reportForm">
<el-select style="width: 100%" v-model="formdata.reportForm" placeholder="请选择报表类型">
<el-select style="width: 100%" v-model.trim="formdata.reportForm" placeholder="请选择报表类型">
<el-option v-for="item in reportFormList" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>

View File

@@ -1,16 +1,16 @@
<template>
<div class='default-main'>
<el-tabs v-model='activeName' type='border-card' @tab-click='init'>
<el-tabs v-model.trim='activeName' type='border-card' @tab-click='init'>
<el-tab-pane label='用户协议' name='User_Agreement'></el-tab-pane>
<el-tab-pane label='个人信息保护政策' name='Personal_Infor_Protect'></el-tab-pane>
<el-tab-pane label='系统介绍' name='introduction'></el-tab-pane>
<el-tab-pane label='使用手册' name='User_Manual'></el-tab-pane>
<el-tab-pane label='公司介绍' name='Company_Profile'></el-tab-pane>
<div class='agreement' :style='{height:height}'>
<div class='agreement' :style='{ height: height }'>
<div style='margin-top: 5px; right: 10px; position: absolute; z-index: 9999999'>
<el-button type='primary' @click='submit' icon='el-icon-Checked'>保存</el-button>
</div>
<WangEditor v-model='html' style='border-top: none' />
<WangEditor v-model.trim='html' style='border-top: none' />
</div>
</el-tabs>
</div>
@@ -45,7 +45,7 @@ const init = () => {
nextTick(() => {
dic.forEach((item: BasicDictData) => {
if (item.code == activeName.value) {
id.value = item.id
}

View File

@@ -1,24 +1,24 @@
<template>
<el-dialog width="500px" v-model="dialogVisible" :title="title">
<el-dialog width="500px" v-model.trim="dialogVisible" :title="title">
<el-form :model="form" class="form-one" label-width="auto">
<el-form-item label="名称">
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入名称" />
<el-input maxlength="32" show-word-limit v-model.trim="form.name" placeholder="请输入名称" />
</el-form-item>
<el-form-item label="编码">
<el-input maxlength="32" show-word-limit v-model="form.code" placeholder="请输入编码" />
<el-input maxlength="32" show-word-limit v-model.trim="form.code" placeholder="请输入编码" />
</el-form-item>
<!-- <el-form-item label="类型">
<el-select v-model="form.type" placeholder="请选择类型">
<el-select v-model.trim="form.type" placeholder="请选择类型">
<el-option v-for="item in options" :key="item.value" :label="item.name" :value="item.value" />
</el-select>
</el-form-item> -->
<el-form-item label="备注">
<el-input maxlength="32" show-word-limit v-model="form.remark" placeholder="请输入备注" />
<el-input maxlength="32" show-word-limit v-model.trim="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="排序">
<el-input maxlength="32" show-word-limit-number v-model="form.sort" :min="0" />
<el-input maxlength="32" show-word-limit-number v-model.trim="form.sort" :min="0" />
</el-form-item>
</el-form>

View File

@@ -1,18 +1,18 @@
<template>
<el-dialog class="cn-operate-dialog statistical-type-binding" v-model="dialogVisible" title="绑定指标"
<el-dialog class="cn-operate-dialog statistical-type-binding" v-model.trim="dialogVisible" title="绑定指标"
style="width: 1200px" @closed="close">
<el-scrollbar style="padding-right: 0">
<div class="box">
<div class="box-left">
<el-input maxlength="32" show-word-limit v-model="searchKey" size="small" placeholder="请输入搜索内容"
<el-input maxlength="32" show-word-limit v-model.trim="searchKey" size="small" placeholder="请输入搜索内容"
:suffix-icon="Search" @input="filterTree" style="margin-bottom: 10px"></el-input>
<el-cascader-panel v-model="fromDataValue" :props="{
<el-cascader-panel v-model.trim="fromDataValue" :props="{
multiple: true
}" :options="fromData"></el-cascader-panel>
</div>
<div class="box-center">
<el-button type="primary" icon="el-icon-Plus" @click="newGroup">新建分组</el-button>
<el-popover v-model="popoverVisible" placement="right" width="400" trigger="click"
<el-popover v-model.trim="popoverVisible" placement="right" width="400" trigger="click"
popper-style="width:auto">
<div class="statistical-type-binding-button-group">
<el-button type="primary" style="margin-left: 0" v-for="item in toData"
@@ -33,9 +33,10 @@
</el-button>
</div>
<div class="box-right">
<el-input maxlength="32" show-word-limit v-model="searchKey1" size="small" placeholder="请输入搜索内容"
:suffix-icon="Search" @input="filterTree1" style="margin-bottom: 10px"></el-input>
<el-cascader-panel v-model="toDataValue" :props="{
<el-input maxlength="32" show-word-limit v-model.trim="searchKey1" size="small"
placeholder="请输入搜索内容" :suffix-icon="Search" @input="filterTree1"
style="margin-bottom: 10px"></el-input>
<el-cascader-panel v-model.trim="toDataValue" :props="{
multiple: true,
checkStrictly: true,
expandTrigger: 'click'

View File

@@ -3,27 +3,27 @@
<TableHeader>
<template #select>
<el-form-item label="设备类型">
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model="tableStore.table.params.devType" clearable @change="devTypeChange"
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model.trim="tableStore.table.params.devType" clearable @change="devTypeChange"
placeholder="请选择设备类型">
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="设备型号">
<el-select v-model="tableStore.table.params.devModel" clearable placeholder="请选择设备型号">
<el-select v-model.trim="tableStore.table.params.devModel" clearable placeholder="请选择设备型号">
<el-option v-for="item in devModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="通讯协议">
<el-select v-model="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-select v-model.trim="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-option label="MQTT" value="mqtt"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-select v-model.trim="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-option label="未注册" :value="1"></el-option>
<el-option label="注册" :value="2"></el-option>
<el-option label="接入" :value="3"></el-option>
@@ -43,38 +43,38 @@
</TableHeader>
<Table ref="tableRef"></Table>
<el-dialog :title="dialogTitle" v-model="dialogFormVisible" :close-on-click-modal="false"
<el-dialog :title="dialogTitle" v-model.trim="dialogFormVisible" :close-on-click-modal="false"
:before-close="resetForm" draggable width="40%">
<el-form :model="form" label-width="120px" :rules="rules" ref="ruleFormRef">
<el-form-item label="设备名称:" prop="name">
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
<el-input maxlength="32" show-word-limit v-model.trim="form.name" autocomplete="off" clearable
placeholder="请输入(项目名称+设备名称)"></el-input>
</el-form-item>
<el-form-item label="网络设备ID:" prop="ndid" class="top">
<el-input maxlength="32" show-word-limit v-model="form.ndid" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.ndid" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="设备类型:" prop="devType" class="top">
<el-select v-model="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-select v-model.trim="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备型号:" prop="devModel" class="top">
<el-select v-model="form.devModel" filterable placeholder="请选择" clearable>
<el-select v-model.trim="form.devModel" filterable placeholder="请选择" clearable>
<el-option v-for="item in formDevModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="通讯协议:" prop="devAccessMethod" class="top">
<el-select v-model="form.devAccessMethod" placeholder="请选择" clearable>
<el-select v-model.trim="form.devAccessMethod" placeholder="请选择" clearable>
<el-option label="MQTT" value="MQTT"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="合同号:" prop="cntractNo" class="top">
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.cntractNo" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
</el-form>

View File

@@ -3,27 +3,28 @@
<TableHeader>
<template #select>
<el-form-item label="设备类型">
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model="tableStore.table.params.devType" clearable @change="devTypeChange"
<!-- <el-input maxlength="32" show-word-limit v-model.trim="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
<el-select v-model.trim="tableStore.table.params.devType" clearable @change="devTypeChange"
placeholder="请选择设备类型">
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="设备型号">
<el-select v-model="tableStore.table.params.devModel" filterable clearable placeholder="请选择设备型号">
<el-select v-model.trim="tableStore.table.params.devModel" filterable clearable
placeholder="请选择设备型号">
<el-option v-for="item in devModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="通讯协议">
<el-select v-model="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-select v-model.trim="tableStore.table.params.devAccessMethod" clearable placeholder="请选择通讯协议">
<el-option label="MQTT" value="mqtt"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-select v-model.trim="tableStore.table.params.status" clearable placeholder="请选择状态">
<el-option label="未注册" :value="1"></el-option>
<el-option label="注册" :value="2"></el-option>
<el-option label="接入" :value="3"></el-option>
@@ -43,38 +44,38 @@
</TableHeader>
<Table ref="tableRef"></Table>
<el-dialog :title="dialogTitle" v-model="dialogFormVisible" :close-on-click-modal="false"
<el-dialog :title="dialogTitle" v-model.trim="dialogFormVisible" :close-on-click-modal="false"
:before-close="resetForm" draggable width="40%">
<el-form :model="form" label-width="120px" :rules="rules" ref="ruleFormRef">
<el-form-item label="设备名称:" prop="name">
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
<el-input maxlength="32" show-word-limit v-model.trim="form.name" autocomplete="off" clearable
placeholder="请输入(项目名称+设备名称)"></el-input>
</el-form-item>
<el-form-item label="网络设备ID:" prop="ndid" class="top">
<el-input maxlength="32" show-word-limit v-model="form.ndid" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.ndid" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="设备类型:" prop="devType" class="top">
<el-select v-model="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-select v-model.trim="form.devType" placeholder="请选择" @change="formDevTypeChange" clearable>
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备型号:" prop="devModel" class="top">
<el-select v-model="form.devModel" filterable placeholder="请选择" clearable>
<el-select v-model.trim="form.devModel" filterable placeholder="请选择" clearable>
<el-option v-for="item in formDevModelOptionsFilter" :key="item.value" :label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="通讯协议:" prop="devAccessMethod" class="top">
<el-select v-model="form.devAccessMethod" placeholder="请选择" clearable>
<el-select v-model.trim="form.devAccessMethod" placeholder="请选择" clearable>
<el-option label="MQTT" value="MQTT"></el-option>
<el-option label="CLD" value="cloud"></el-option>
</el-select>
</el-form-item>
<el-form-item label="合同号:" prop="cntractNo" class="top">
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
<el-input maxlength="32" show-word-limit v-model.trim="form.cntractNo" autocomplete="off"
placeholder="请输入"></el-input>
</el-form-item>
</el-form>