修改输入框字段限制
This commit is contained in:
@@ -6,10 +6,10 @@
|
||||
</el-row>
|
||||
<el-row class="ba-array-item" v-for="(item, idx) in state.value" :gutter="10" :key="idx">
|
||||
<el-col :span="10">
|
||||
<el-input v-model="item.key"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="item.key"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="10">
|
||||
<el-input v-model="item.value"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="item.value"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-button @click="onDelArrayItem(idx)" size="small" icon="el-icon-Delete" circle />
|
||||
@@ -17,7 +17,8 @@
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="10" :offset="10">
|
||||
<el-button v-blur class="ba-add-array-item" @click="onAddArrayItem" icon="el-icon-Plus">{{ t('Add') }}</el-button>
|
||||
<el-button v-blur class="ba-add-array-item" @click="onAddArrayItem" icon="el-icon-Plus">{{ t('Add')
|
||||
}}</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@@ -76,9 +77,11 @@ watch(
|
||||
padding: 5px 0;
|
||||
color: var(--el-text-color-secondary);
|
||||
}
|
||||
|
||||
.ba-array-item {
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
|
||||
.ba-add-array-item {
|
||||
float: right;
|
||||
}
|
||||
|
||||
@@ -1,31 +1,17 @@
|
||||
<template>
|
||||
<el-popover
|
||||
:placement='placement'
|
||||
trigger='focus'
|
||||
:hide-after='0'
|
||||
:width='state.selectorWidth'
|
||||
:visible='state.popoverVisible'
|
||||
>
|
||||
<div
|
||||
@mouseover.stop='state.iconSelectorMouseover = true'
|
||||
@mouseout.stop='state.iconSelectorMouseover = false'
|
||||
class='icon-selector'
|
||||
>
|
||||
<el-popover :placement='placement' trigger='focus' :hide-after='0' :width='state.selectorWidth'
|
||||
:visible='state.popoverVisible'>
|
||||
<div @mouseover.stop='state.iconSelectorMouseover = true' @mouseout.stop='state.iconSelectorMouseover = false'
|
||||
class='icon-selector'>
|
||||
<transition name='el-zoom-in-center'>
|
||||
<div class='icon-selector-box'>
|
||||
<div class='selector-header'>
|
||||
<div class='selector-title'>{{ title ? title : '请选择图标' }}</div>
|
||||
<div class='selector-tab'>
|
||||
<span
|
||||
:title="'Element Puls ' + 'utils.Icon'"
|
||||
@click="onChangeTab('ele')"
|
||||
:class="state.iconType == 'ele' ? 'active' : ''"
|
||||
>ele</span>
|
||||
<span
|
||||
:title="'Font Awesome ' + 'utils.Icon'"
|
||||
@click="onChangeTab('awe')"
|
||||
:class="state.iconType == 'awe' ? 'active' : ''"
|
||||
>awe</span>
|
||||
<span :title="'Element Puls ' + 'utils.Icon'" @click="onChangeTab('ele')"
|
||||
:class="state.iconType == 'ele' ? 'active' : ''">ele</span>
|
||||
<span :title="'Font Awesome ' + 'utils.Icon'" @click="onChangeTab('awe')"
|
||||
:class="state.iconType == 'awe' ? 'active' : ''">awe</span>
|
||||
<!-- <span :title="'utils.Ali iconcont Icon'" @click="onChangeTab('ali')"-->
|
||||
<!-- :class="state.iconType == 'ali' ? 'active' : ''"-->
|
||||
<!-- >ali</span>-->
|
||||
@@ -40,13 +26,8 @@
|
||||
<div class='selector-body'>
|
||||
<el-scrollbar ref='selectorScrollbarRef'>
|
||||
<div v-if='renderFontIconNames.length > 0'>
|
||||
<div
|
||||
class='icon-selector-item'
|
||||
:title='item'
|
||||
@click='onIcon(item)'
|
||||
v-for='(item, key) in renderFontIconNames'
|
||||
:key='key'
|
||||
>
|
||||
<div class='icon-selector-item' :title='item' @click='onIcon(item)'
|
||||
v-for='(item, key) in renderFontIconNames' :key='key'>
|
||||
<Icon :name='item' />
|
||||
</div>
|
||||
</div>
|
||||
@@ -56,22 +37,13 @@
|
||||
</transition>
|
||||
</div>
|
||||
<template #reference>
|
||||
<el-input
|
||||
v-model='state.inputValue'
|
||||
:size='size'
|
||||
:disabled='disabled'
|
||||
placeholder='搜索图标'
|
||||
ref='selectorInput'
|
||||
@focus='onInputFocus'
|
||||
@blur='onInputBlur'
|
||||
:class="'size-' + size"
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit v-model='state.inputValue' :size='size' :disabled='disabled'
|
||||
placeholder='搜索图标' ref='selectorInput' @focus='onInputFocus' @blur='onInputBlur'
|
||||
:class="'size-' + size">
|
||||
<template #prepend>
|
||||
<div class='icon-prepend'>
|
||||
<Icon
|
||||
:key="'icon' + state.iconKey"
|
||||
:name='state.prependIcon ? state.prependIcon : state.defaultModelValue'
|
||||
/>
|
||||
<Icon :key="'icon' + state.iconKey"
|
||||
:name='state.prependIcon ? state.prependIcon : state.defaultModelValue' />
|
||||
<div v-if='showIconName' class='name'>
|
||||
{{ state.prependIcon ? state.prependIcon : state.defaultModelValue }}
|
||||
</div>
|
||||
@@ -87,7 +59,7 @@
|
||||
|
||||
<script setup lang='ts'>
|
||||
import { reactive, ref, onMounted, nextTick, watch, computed } from 'vue'
|
||||
import { getElementPlusIconfontNames,getAwesomeIconfontNames } from '@/utils/iconfont'
|
||||
import { getElementPlusIconfontNames, getAwesomeIconfontNames } from '@/utils/iconfont'
|
||||
import { useEventListener } from '@vueuse/core'
|
||||
import type { Placement } from 'element-plus'
|
||||
|
||||
@@ -169,7 +141,7 @@ const onChangeTab = (name: IconType) => {
|
||||
getAwesomeIconfontNames().then((res) => {
|
||||
state.fontIconNames = res.map((name) => `fa ${name}`)
|
||||
})
|
||||
}
|
||||
}
|
||||
// else if (name == 'ali') {
|
||||
// getIconfontNames().then((res) => {
|
||||
// state.fontIconNames = res.map((name) => `iconfont ${name}`)
|
||||
|
||||
@@ -1,59 +1,34 @@
|
||||
<!-- 设备管理使用折叠面板渲染多个tree -->
|
||||
<template>
|
||||
<div
|
||||
:style="{ width: menuCollapse ? '40px' : props.width }"
|
||||
style="display: flex; transition: all 0.3s; overflow: hidden"
|
||||
>
|
||||
<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 :style="{ width: menuCollapse ? '40px' : props.width }"
|
||||
style="display: flex; transition: all 0.3s; overflow: hidden">
|
||||
<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 }">
|
||||
<div style="display: flex; align-items: center" class="mb10">
|
||||
<!-- <el-form-item> -->
|
||||
<el-input v-model="filterText" autocomplete="off" placeholder="请输入内容" clearable>
|
||||
<el-input maxlength="32" show-word-limit v-model="filterText" autocomplete="off" placeholder="请输入内容"
|
||||
clearable>
|
||||
<template #prefix>
|
||||
<Icon name="el-icon-Search" style="font-size: 16px" />
|
||||
</template>
|
||||
</el-input>
|
||||
<!-- </el-form-item> -->
|
||||
<Icon
|
||||
@click="onMenuCollapse"
|
||||
:name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''"
|
||||
size="18"
|
||||
class="fold ml10 menu-collapse"
|
||||
style="cursor: pointer"
|
||||
v-if="props.canExpand"
|
||||
/>
|
||||
<Icon @click="onMenuCollapse" :name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''" size="18" class="fold ml10 menu-collapse"
|
||||
style="cursor: pointer" v-if="props.canExpand" />
|
||||
</div>
|
||||
<el-collapse :accordion="true" v-model="activeName" style="flex: 1; height: 100%" @change="changeDevice">
|
||||
<el-collapse-item title="治理设备" name="0" v-if="zlDeviceData.length != 0">
|
||||
<el-tree
|
||||
:style="{ height: bxsDeviceData.length != 0 ? 'calc(100vh - 300px)' : 'calc(100vh - 238px)' }"
|
||||
ref="treeRef1"
|
||||
:props="defaultProps"
|
||||
highlight-current
|
||||
:filter-node-method="filterNode"
|
||||
node-key="id"
|
||||
default-expand-all
|
||||
v-bind="$attrs"
|
||||
:data="zlDeviceData"
|
||||
style="overflow: auto"
|
||||
>
|
||||
ref="treeRef1" :props="defaultProps" highlight-current :filter-node-method="filterNode"
|
||||
node-key="id" default-expand-all v-bind="$attrs" :data="zlDeviceData" style="overflow: auto">
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -62,24 +37,13 @@
|
||||
<el-collapse-item title="便携式设备" name="1" v-if="bxsDeviceData.length != 0">
|
||||
<el-tree
|
||||
:style="{ height: zlDeviceData.length != 0 ? 'calc(100vh - 280px)' : 'calc(100vh - 238px)' }"
|
||||
ref="treeRef2"
|
||||
:props="defaultProps"
|
||||
highlight-current
|
||||
default-expand-all
|
||||
:filter-node-method="filterNode"
|
||||
node-key="id"
|
||||
:data="bxsDeviceData"
|
||||
v-bind="$attrs"
|
||||
style="overflow: auto"
|
||||
>
|
||||
ref="treeRef2" :props="defaultProps" highlight-current default-expand-all
|
||||
:filter-node-method="filterNode" node-key="id" :data="bxsDeviceData" v-bind="$attrs"
|
||||
style="overflow: auto">
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
<div class="cn-tree">
|
||||
<div style="display: flex; align-items: center" class="mb10">
|
||||
<el-input v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<el-input maxlength="32" show-word-limit v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<template #prefix>
|
||||
<Icon name="el-icon-Search" style="font-size: 16px" />
|
||||
</template>
|
||||
@@ -95,7 +95,7 @@ const defaultProps = {
|
||||
}
|
||||
|
||||
|
||||
const emit = defineEmits(['init', 'checkChange', 'nodeChange', 'editNode', 'getChart','Policy'])
|
||||
const emit = defineEmits(['init', 'checkChange', 'nodeChange', 'editNode', 'getChart', 'Policy'])
|
||||
const config = useConfig()
|
||||
const tree = ref()
|
||||
const treRef = ref()
|
||||
@@ -145,11 +145,13 @@ const clickNode = (e: anyObj) => {
|
||||
if (props.template) {
|
||||
getTemplateByDept({ id: dictData.state.area[0].id }).then((res: any) => {
|
||||
emit('Policy', res.data)
|
||||
getTreeList()
|
||||
getTreeList()
|
||||
}).catch(err => {
|
||||
getTreeList() })
|
||||
getTreeList()
|
||||
})
|
||||
} else {
|
||||
getTreeList()}
|
||||
getTreeList()
|
||||
}
|
||||
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -1,49 +1,25 @@
|
||||
<template>
|
||||
<div :style="{ width: menuCollapse ? '40px' : props.width }" style='transition: all 0.3s; overflow: hidden;'>
|
||||
<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 :style="{ width: menuCollapse ? '40px' : props.width }" style='transition: all 0.3s; overflow: hidden;'>
|
||||
<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 }'>
|
||||
<div style='display: flex; align-items: center' class='mb10'>
|
||||
<el-input v-model='filterText' placeholder='请输入内容' clearable>
|
||||
<el-input maxlength="32" show-word-limit v-model='filterText' placeholder='请输入内容' clearable>
|
||||
<template #prefix>
|
||||
<Icon name='el-icon-Search' style='font-size: 16px' />
|
||||
</template>
|
||||
</el-input>
|
||||
<Icon
|
||||
@click='onMenuCollapse'
|
||||
:name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''"
|
||||
size='18'
|
||||
class='fold ml10 menu-collapse'
|
||||
style='cursor: pointer'
|
||||
v-if='props.canExpand'
|
||||
/>
|
||||
<Icon @click='onMenuCollapse' :name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''" size='18' class='fold ml10 menu-collapse'
|
||||
style='cursor: pointer' v-if='props.canExpand' />
|
||||
</div>
|
||||
<el-tree
|
||||
style='flex: 1; overflow: auto;'
|
||||
ref='treeRef'
|
||||
:props='defaultProps'
|
||||
highlight-current
|
||||
@check-change="checkTreeNodeChange"
|
||||
:filter-node-method='filterNode'
|
||||
node-key='id'
|
||||
v-bind='$attrs'
|
||||
>
|
||||
<el-tree style='flex: 1; overflow: auto;' ref='treeRef' :props='defaultProps' highlight-current
|
||||
@check-change="checkTreeNodeChange" :filter-node-method='filterNode' node-key='id' v-bind='$attrs'>
|
||||
<template #default='{ node, data }'>
|
||||
<span class='custom-tree-node'>
|
||||
<Icon
|
||||
:name='data.icon'
|
||||
style='font-size: 16px'
|
||||
:style='{ color: data.color }'
|
||||
v-if='data.icon'
|
||||
/>
|
||||
<Icon :name='data.icon' style='font-size: 16px' :style='{ color: data.color }'
|
||||
v-if='data.icon' />
|
||||
<span style='margin-left: 4px'>{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -90,9 +66,9 @@ const filterNode = (value: string, data: any) => {
|
||||
if (!value) return true
|
||||
return data.name.includes(value)
|
||||
}
|
||||
const checkTreeNodeChange=()=>{
|
||||
console.log( treeRef.value?.getCheckedNodes(),"ikkkkkiisiiisis");
|
||||
emit('checkTreeNodeChange',treeRef.value?.getCheckedNodes())
|
||||
const checkTreeNodeChange = () => {
|
||||
console.log(treeRef.value?.getCheckedNodes(), "ikkkkkiisiiisis");
|
||||
emit('checkTreeNodeChange', treeRef.value?.getCheckedNodes())
|
||||
}
|
||||
const treeRef = ref<InstanceType<typeof ElTree>>()
|
||||
defineExpose({ treeRef })
|
||||
|
||||
@@ -1,58 +1,32 @@
|
||||
<!-- 设备监控使用折叠面板渲染多个tree -->
|
||||
<template>
|
||||
<div
|
||||
:style="{ width: menuCollapse ? '40px' : props.width }"
|
||||
style="display: flex; transition: all 0.3s; overflow: hidden"
|
||||
>
|
||||
<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"
|
||||
v-if="route.path != '/admin/govern/reportCore/statistics/index'"
|
||||
/>
|
||||
<div :style="{ width: menuCollapse ? '40px' : props.width }"
|
||||
style="display: flex; transition: all 0.3s; overflow: hidden">
|
||||
<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"
|
||||
v-if="route.path != '/admin/govern/reportCore/statistics/index'" />
|
||||
<div class="cn-tree" :style="{ opacity: menuCollapse ? 0 : 1 }">
|
||||
<div style="display: flex; align-items: center" class="mb10">
|
||||
<el-input v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<el-input maxlength="32" show-word-limit v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<template #prefix>
|
||||
<Icon name="el-icon-Search" style="font-size: 16px" />
|
||||
</template>
|
||||
</el-input>
|
||||
<Icon
|
||||
@click="onMenuCollapse"
|
||||
:name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''"
|
||||
size="18"
|
||||
class="fold ml10 menu-collapse"
|
||||
<Icon @click="onMenuCollapse" :name="menuCollapse ? 'el-icon-Expand' : 'el-icon-Fold'"
|
||||
:class="menuCollapse ? 'unfold' : ''" size="18" class="fold ml10 menu-collapse"
|
||||
style="cursor: pointer"
|
||||
v-if="props.canExpand && route.path != '/admin/govern/reportCore/statistics/index'"
|
||||
/>
|
||||
v-if="props.canExpand && route.path != '/admin/govern/reportCore/statistics/index'" />
|
||||
</div>
|
||||
<el-collapse :accordion="true" v-model="activeName" style="flex: 1; height: 100%" @change="changeDevice">
|
||||
<el-collapse-item title="治理设备" name="0" v-if="zlDeviceData.length != 0">
|
||||
<el-tree
|
||||
:style="{ height: bxsDeviceData.length != 0 ? 'calc(100vh - 300px)' : 'calc(100vh - 238px)' }"
|
||||
ref="treeRef1"
|
||||
:props="defaultProps"
|
||||
highlight-current
|
||||
:filter-node-method="filterNode"
|
||||
node-key="id"
|
||||
default-expand-all
|
||||
v-bind="$attrs"
|
||||
:data="zlDeviceData"
|
||||
style="overflow: auto"
|
||||
>
|
||||
ref="treeRef1" :props="defaultProps" highlight-current :filter-node-method="filterNode"
|
||||
node-key="id" default-expand-all v-bind="$attrs" :data="zlDeviceData" style="overflow: auto">
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -61,24 +35,13 @@
|
||||
<el-collapse-item title="便携式设备" name="1" v-if="bxsDeviceData.length != 0">
|
||||
<el-tree
|
||||
:style="{ height: zlDeviceData.length != 0 ? 'calc(100vh - 280px)' : 'calc(100vh - 238px)' }"
|
||||
ref="treeRef2"
|
||||
:props="defaultProps"
|
||||
highlight-current
|
||||
default-expand-all
|
||||
:filter-node-method="filterNode"
|
||||
node-key="id"
|
||||
:data="bxsDeviceData"
|
||||
v-bind="$attrs"
|
||||
style="overflow: auto"
|
||||
>
|
||||
ref="treeRef2" :props="defaultProps" highlight-current default-expand-all
|
||||
:filter-node-method="filterNode" node-key="id" :data="bxsDeviceData" v-bind="$attrs"
|
||||
style="overflow: auto">
|
||||
<template #default="{ node, data }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
|
||||
@@ -7,11 +7,9 @@
|
||||
<el-divider border-style="dashed">全局</el-divider>
|
||||
<div class="layout-config-global">
|
||||
<el-form-item label="后台页面切换动画">
|
||||
<el-select
|
||||
@change="onCommitState($event, 'mainAnimation')"
|
||||
<el-select @change="onCommitState($event, 'mainAnimation')"
|
||||
:model-value="configStore.layout.mainAnimation"
|
||||
:placeholder="'layouts.Please select an animation name'"
|
||||
>
|
||||
:placeholder="'layouts.Please select an animation name'">
|
||||
<el-option label="slide-right" value="slide-right"></el-option>
|
||||
<el-option label="slide-left" value="slide-left"></el-option>
|
||||
<el-option label="el-fade-in-linear" value="el-fade-in-linear"></el-option>
|
||||
@@ -22,75 +20,51 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="组件主题色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'elementUiPrimary')"
|
||||
:model-value="configStore.getColorVal('elementUiPrimary')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'elementUiPrimary')"
|
||||
:model-value="configStore.getColorVal('elementUiPrimary')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="表格标题栏背景颜色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'tableHeaderBackground')"
|
||||
:model-value="configStore.getColorVal('tableHeaderBackground')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'tableHeaderBackground')"
|
||||
:model-value="configStore.getColorVal('tableHeaderBackground')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="表格标题栏文字颜色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'tableHeaderColor')"
|
||||
:model-value="configStore.getColorVal('tableHeaderColor')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'tableHeaderColor')"
|
||||
:model-value="configStore.getColorVal('tableHeaderColor')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="表格激活栏颜色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'tableCurrent')"
|
||||
:model-value="configStore.getColorVal('tableCurrent')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'tableCurrent')"
|
||||
:model-value="configStore.getColorVal('tableCurrent')" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
<el-divider border-style="dashed">侧边栏</el-divider>
|
||||
<div class="layout-config-aside">
|
||||
<el-form-item label="侧边菜单栏背景色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'menuBackground')"
|
||||
:model-value="configStore.getColorVal('menuBackground')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'menuBackground')"
|
||||
:model-value="configStore.getColorVal('menuBackground')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="侧边菜单文字颜色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'menuColor')"
|
||||
:model-value="configStore.getColorVal('menuColor')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'menuColor')"
|
||||
:model-value="configStore.getColorVal('menuColor')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="侧边菜单激活项背景色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'menuActiveBackground')"
|
||||
:model-value="configStore.getColorVal('menuActiveBackground')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'menuActiveBackground')"
|
||||
:model-value="configStore.getColorVal('menuActiveBackground')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="侧边菜单激活项文字色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'menuActiveColor')"
|
||||
:model-value="configStore.getColorVal('menuActiveColor')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'menuActiveColor')"
|
||||
:model-value="configStore.getColorVal('menuActiveColor')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="显示侧边菜单顶栏(LOGO栏)">
|
||||
<el-switch
|
||||
@change="onCommitState($event, 'menuShowTopBar')"
|
||||
:model-value="configStore.layout.menuShowTopBar"
|
||||
></el-switch>
|
||||
<el-switch @change="onCommitState($event, 'menuShowTopBar')"
|
||||
:model-value="configStore.layout.menuShowTopBar"></el-switch>
|
||||
</el-form-item>
|
||||
<el-form-item label="侧边菜单顶栏背景色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'menuTopBarBackground')"
|
||||
:model-value="configStore.getColorVal('menuTopBarBackground')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'menuTopBarBackground')"
|
||||
:model-value="configStore.getColorVal('menuTopBarBackground')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="侧边菜单宽度(展开时)">
|
||||
<el-input
|
||||
@input="onCommitState($event, 'menuWidth')"
|
||||
type="number"
|
||||
:step="10"
|
||||
:model-value="configStore.layout.menuWidth"
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit @input="onCommitState($event, 'menuWidth')"
|
||||
type="number" :step="10" :model-value="configStore.layout.menuWidth">
|
||||
<template #append>px</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -117,16 +91,12 @@
|
||||
<el-divider border-style="dashed">顶栏</el-divider>
|
||||
<div class="layout-config-aside">
|
||||
<el-form-item label="顶栏背景色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'headerBarBackground')"
|
||||
:model-value="configStore.getColorVal('headerBarBackground')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'headerBarBackground')"
|
||||
:model-value="configStore.getColorVal('headerBarBackground')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="顶栏文字色">
|
||||
<el-color-picker
|
||||
@change="onCommitColorState($event, 'headerBarTabColor')"
|
||||
:model-value="configStore.getColorVal('headerBarTabColor')"
|
||||
/>
|
||||
<el-color-picker @change="onCommitColorState($event, 'headerBarTabColor')"
|
||||
:model-value="configStore.getColorVal('headerBarTabColor')" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="顶栏悬停时背景色">-->
|
||||
<!-- <el-color-picker-->
|
||||
@@ -215,8 +185,6 @@ const restoreDefault = () => {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.layout-config-drawer :deep(.el-input__inner) {
|
||||
padding: 0 0 0 6px;
|
||||
}
|
||||
|
||||
@@ -3,22 +3,22 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="120px">
|
||||
<el-form-item label="用户名称:">
|
||||
<el-input v-model="form.name" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="登录名称:" class="top">
|
||||
<el-input v-model="form.loginName" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.loginName" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="归属部门名称:" class="top">
|
||||
<el-input v-model="form.deptName" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.deptName" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="拥有的角色:" class="top">
|
||||
<el-input v-model="form.role" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.role" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="电话号码:" class="top">
|
||||
<el-input v-model="form.phone" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.phone" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="电子邮箱:" class="top">
|
||||
<el-input v-model="form.email" :disabled="true"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.email" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -3,13 +3,16 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="120px" :rules="rules" ref="formRef">
|
||||
<el-form-item label="校验密码:" prop="password">
|
||||
<el-input v-model="form.password" type="password" placeholder="请输入校验密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.password" type="password"
|
||||
placeholder="请输入校验密码" show-password />
|
||||
</el-form-item>
|
||||
<el-form-item label="新密码:" prop="newPwd" style="margin-top: 20px">
|
||||
<el-input v-model="form.newPwd" type="password" placeholder="请输入新密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.newPwd" type="password" placeholder="请输入新密码"
|
||||
show-password />
|
||||
</el-form-item>
|
||||
<el-form-item label="确认密码:" prop="confirmPwd" style="margin-top: 20px">
|
||||
<el-input v-model="form.confirmPwd" type="password" placeholder="请输入确认密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.confirmPwd" type="password"
|
||||
placeholder="请输入确认密码" show-password />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -69,13 +69,8 @@ const handleLock = async () => {
|
||||
</div>
|
||||
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="80px">
|
||||
<el-form-item :label="t('lock.lockPassword')" prop="password">
|
||||
<el-input
|
||||
type="password"
|
||||
v-model="formData.password"
|
||||
:placeholder="'请输入' + t('lock.lockPassword')"
|
||||
clearable
|
||||
show-password
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit type="password" v-model="formData.password"
|
||||
:placeholder="'请输入' + t('lock.lockPassword')" clearable show-password />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
|
||||
@@ -3,13 +3,14 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline='false' :model='form' label-width='120px' :rules='rules' ref='formRef'>
|
||||
<el-form-item label='角色名称'>
|
||||
<el-input v-model='form.name' placeholder='请输入菜单名称' />
|
||||
<el-input maxlength="32" show-word-limit v-model='form.name' placeholder='请输入菜单名称' />
|
||||
</el-form-item>
|
||||
<el-form-item label='角色编码'>
|
||||
<el-input v-model='form.code' placeholder='请输入菜单名称' />
|
||||
<el-input maxlength="32" show-word-limit v-model='form.code' placeholder='请输入菜单名称' />
|
||||
</el-form-item>
|
||||
<el-form-item label='角色描述'>
|
||||
<el-input v-model='form.remark' :rows='2' type='textarea' placeholder='请输入描述' />
|
||||
<el-input maxlength="32" show-word-limit v-model='form.remark' :rows='2' type='textarea'
|
||||
placeholder='请输入描述' />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -2,14 +2,8 @@
|
||||
<div>
|
||||
<div class="custom-table-header">
|
||||
<div class="title">接口权限列表</div>
|
||||
<el-input
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
style="width: 240px"
|
||||
placeholder="请输入菜单名称"
|
||||
class="ml10"
|
||||
clearable
|
||||
@input="search"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" style="width: 240px"
|
||||
placeholder="请输入菜单名称" class="ml10" clearable @input="search" />
|
||||
<el-button :icon="Plus" type="primary" @click="addMenu" class="ml10" :disabled="!props.id">新增</el-button>
|
||||
</div>
|
||||
<Table ref="tableRef" />
|
||||
|
||||
@@ -2,14 +2,8 @@
|
||||
<div>
|
||||
<div class="custom-table-header">
|
||||
<div class="title">菜单列表</div>
|
||||
<el-input
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
style="width: 240px"
|
||||
placeholder="请输入菜单名称"
|
||||
class="ml10"
|
||||
clearable
|
||||
@input="search"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" style="width: 310px"
|
||||
placeholder="请输入菜单名称" class="ml10" clearable @input="search" />
|
||||
<el-button :icon="Plus" type="primary" @click="addMenu" class="ml10">新增</el-button>
|
||||
</div>
|
||||
<Table @currentChange="currentChange" />
|
||||
|
||||
@@ -3,13 +3,13 @@
|
||||
<el-scrollbar>
|
||||
<el-form :mode="form" :inline="false" :model="form" label-width="120px" :rules="rules">
|
||||
<el-form-item prop="name" label="接口/按钮名称">
|
||||
<el-input v-model="form.name" placeholder="请输入接口名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入接口名称" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="code" label="接口/按钮标识">
|
||||
<el-input v-model="form.code" placeholder="请输入英文接口标识" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.code" placeholder="请输入英文接口标识" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="path" label="接口路径">
|
||||
<el-input v-model="form.path" placeholder="请输入接口路径" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.path" placeholder="请输入接口路径" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="type" label="接口类型">
|
||||
<el-radio-group v-model="form.type">
|
||||
@@ -18,10 +18,11 @@
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item prop="sort" label="排序">
|
||||
<el-input-number v-model="form.sort" :min="0" />
|
||||
<el-input maxlength="32" show-word-limit-number v-model="form.sort" :min="0" />
|
||||
</el-form-item>
|
||||
<el-form-item prop="remark" label="接口/按钮描述">
|
||||
<el-input v-model="form.remark" :rows="2" type="textarea" placeholder="请输入描述" />
|
||||
<el-input maxlength="300" show-word-limit v-model="form.remark" :rows="2" type="textarea"
|
||||
placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -3,30 +3,28 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="auto" class="form-one">
|
||||
<el-form-item label="上级菜单">
|
||||
<el-cascader
|
||||
v-model="form.pid"
|
||||
:options="tableStore.table.data"
|
||||
:props="cascaderProps"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-cascader v-model="form.pid" :options="tableStore.table.data" :props="cascaderProps"
|
||||
style="width: 100%" />
|
||||
</el-form-item>
|
||||
<el-form-item label="菜单名称">
|
||||
<el-input v-model="form.name" placeholder="请输入菜单名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="图标">
|
||||
<IconSelector v-model="form.icon" placeholder="请选择图标" />
|
||||
</el-form-item>
|
||||
<el-form-item label="菜单路由">
|
||||
<el-input v-model="form.path" placeholder="请输入菜单名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.path" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="组件路径">
|
||||
<el-input v-model="form.routeName" placeholder="请输入组件路径,如/src/views/dashboard/index.vue" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.routeName"
|
||||
placeholder="请输入组件路径,如/src/views/dashboard/index.vue" />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序">
|
||||
<el-input-number v-model="form.sort" :min="0" />
|
||||
<el-input maxlength="32" show-word-limit-number v-model="form.sort" :min="0" />
|
||||
</el-form-item>
|
||||
<el-form-item label="菜单描述">
|
||||
<el-input v-model="form.remark" :rows="2" type="textarea" placeholder="请输入描述" />
|
||||
<el-input maxlength="300" show-word-limit v-model="form.remark" :rows="2" type="textarea"
|
||||
placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
<template>
|
||||
<el-dialog class="cn-operate-dialog" width="700px" v-model="dialogVisible" :title="title">
|
||||
<el-form :inline="false" :model="form" label-width="auto" class="form-one" :rules="rules">
|
||||
<el-form-item label="角色名称">
|
||||
<el-input v-model="form.name" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色编码">
|
||||
<el-input v-model="form.code" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色描述">
|
||||
<el-input v-model="form.remark" :rows="2" type="textarea" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-form :inline="false" :model="form" label-width="auto" class="form-one" :rules="rules">
|
||||
<el-form-item label="角色名称">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色编码">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.code" placeholder="请输入菜单名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色描述">
|
||||
<el-input maxlength="300" show-word-limit v-model="form.remark" :rows="2" type="textarea"
|
||||
placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
|
||||
@@ -4,31 +4,19 @@
|
||||
<template v-slot:select>
|
||||
<el-form-item label="用户状态">
|
||||
<el-select v-model="tableStore.table.params.searchState" placeholder="选择用户状态">
|
||||
<el-option
|
||||
v-for="(item, index) in userState"
|
||||
:label="item.label"
|
||||
:key="index"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-option v-for="(item, index) in userState" :label="item.label" :key="index"
|
||||
:value="item.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户类型:">
|
||||
<el-select v-model="tableStore.table.params.casualUser" placeholder="选择用户类型">
|
||||
<el-option
|
||||
v-for="(item, index) in casualUser"
|
||||
:label="item.label"
|
||||
:key="index"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-option v-for="(item, index) in casualUser" :label="item.label" :key="index"
|
||||
:value="item.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="关键词:">
|
||||
<el-input
|
||||
style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
clearable
|
||||
placeholder="仅根据用户名/登录名"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue" clearable placeholder="仅根据用户名/登录名" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
|
||||
@@ -1,101 +1,77 @@
|
||||
<template>
|
||||
<el-dialog class="cn-operate-dialog" v-model="dialogVisible" :title="title">
|
||||
|
||||
<el-form :model="form" label-width="auto" class="form-two" :rules="rules">
|
||||
<el-form-item label="用户名" prop="name">
|
||||
<el-input v-model="form.name" placeholder="请输入昵称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="登录名" prop="loginName">
|
||||
<el-input v-model="form.loginName" placeholder="请输入登录名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="默认密码" prop="password" v-if="title === '新增用户'">
|
||||
<el-input v-model="form.password" placeholder="请输入密码" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="权限类型" prop="type">
|
||||
<el-select
|
||||
v-model="form.type"
|
||||
@change="changeValue"
|
||||
disabled
|
||||
placeholder="请选择权限类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="(item, index) in UserTypeOption"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:key="index"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户类型" prop="casualUser">
|
||||
<el-select v-model="form.casualUser" placeholder="请选择权限类型">
|
||||
<el-option
|
||||
v-for="(item, index) in TypeOptions"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:key="index"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属部门" prop="deptId">
|
||||
<Area v-model="form.deptId" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色" prop="role">
|
||||
<el-select v-model="form.role" placeholder="请选择角色" multiple collapse-tags>
|
||||
<el-option
|
||||
v-for="(item, index) in roleOptions"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
:key="index"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="手机号" prop="phone">
|
||||
<el-input v-model="form.phone" placeholder="请输入手机号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱" prop="email">
|
||||
<el-input v-model="form.email" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
<el-form-item label="时间段" prop="limitTime">
|
||||
<el-slider v-model="form.limitTime" style="width: 95%" range show-stops :max="24" />
|
||||
</el-form-item>
|
||||
<el-form-item label="起始IP" prop="limitIpStart">
|
||||
<el-input v-model="form.limitIpStart" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
<el-form-item label="结束IP" prop="limitIpEnd">
|
||||
<el-input v-model="form.limitIpEnd" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="短信通知" prop="smsNotice">
|
||||
<el-radio-group v-model="form.smsNotice" style="width: 200px">
|
||||
<el-radio-button :label="0">是</el-radio-button>
|
||||
<el-radio-button :label="1">否</el-radio-button>
|
||||
<el-form :model="form" label-width="auto" class="form-two" :rules="rules">
|
||||
<el-form-item label="用户名" prop="name">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入昵称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="登录名" prop="loginName">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.loginName" placeholder="请输入登录名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="默认密码" prop="password" v-if="title === '新增用户'">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.password" placeholder="请输入密码" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="权限类型" prop="type">
|
||||
<el-select v-model="form.type" @change="changeValue" disabled placeholder="请选择权限类型">
|
||||
<el-option v-for="(item, index) in UserTypeOption" :label="item.label" :value="item.value"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户类型" prop="casualUser">
|
||||
<el-select v-model="form.casualUser" placeholder="请选择权限类型">
|
||||
<el-option v-for="(item, index) in TypeOptions" :label="item.label" :value="item.value"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属部门" prop="deptId">
|
||||
<Area v-model="form.deptId" />
|
||||
</el-form-item>
|
||||
<el-form-item label="角色" prop="role">
|
||||
<el-select v-model="form.role" placeholder="请选择角色" multiple collapse-tags>
|
||||
<el-option v-for="(item, index) in roleOptions" :label="item.label" :value="item.value"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="手机号" prop="phone">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.phone" placeholder="请输入手机号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱" prop="email">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.email" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
<el-form-item label="时间段" prop="limitTime">
|
||||
<el-slider v-model="form.limitTime" style="width: 95%" range show-stops :max="24" />
|
||||
</el-form-item>
|
||||
<el-form-item label="起始IP" prop="limitIpStart">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.limitIpStart" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
<el-form-item label="结束IP" prop="limitIpEnd">
|
||||
<el-input maxlength="32" show-word-limit v-model="form.limitIpEnd" placeholder="请输入描述" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="短信通知" prop="smsNotice">
|
||||
<el-radio-group v-model="form.smsNotice" style="width: 200px">
|
||||
<el-radio-button :label="0">是</el-radio-button>
|
||||
<el-radio-button :label="1">否</el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="邮件通知" prop="emailNotice">
|
||||
<el-radio-group v-model="form.emailNotice" style="width: 200px">
|
||||
<el-radio-button :label="0">是</el-radio-button>
|
||||
<el-radio-button :label="1">否</el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户ID">
|
||||
<div style="display: flex; width: 100%">
|
||||
<el-radio-group v-model="useId">
|
||||
<el-radio-button :label="1">是</el-radio-button>
|
||||
<el-radio-button :label="0">否</el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="邮件通知" prop="emailNotice" >
|
||||
<el-radio-group v-model="form.emailNotice" style="width: 200px">
|
||||
<el-radio-button :label="0">是</el-radio-button>
|
||||
<el-radio-button :label="1">否</el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户ID">
|
||||
<div style="display: flex; width: 100%" >
|
||||
<el-radio-group v-model="useId">
|
||||
<el-radio-button :label="1">是</el-radio-button>
|
||||
<el-radio-button :label="0">否</el-radio-button>
|
||||
</el-radio-group>
|
||||
<el-input
|
||||
:disabled="title !== '新增用户'"
|
||||
v-model="form.id"
|
||||
placeholder="请输入用户id"
|
||||
|
||||
v-if="useId"
|
||||
style="flex: 1;"
|
||||
class="ml10"
|
||||
></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-input maxlength="32" show-word-limit :disabled="title !== '新增用户'" v-model="form.id"
|
||||
placeholder="请输入用户id" v-if="useId" style="flex: 1;" class="ml10"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
@@ -137,7 +113,7 @@ const form = reactive({
|
||||
emailNotice: 0,
|
||||
type: 0
|
||||
})
|
||||
const rules:Partial<Record<string, Arrayable<FormItemRule>>> = {
|
||||
const rules: Partial<Record<string, Arrayable<FormItemRule>>> = {
|
||||
name: [{ required: true, message: '用户名不能为空', trigger: 'blur' }],
|
||||
role: [{ required: true, message: '角色不能为空', trigger: 'blur' }],
|
||||
password: [{ required: true, message: '用户密码不能为空', trigger: 'blur' }],
|
||||
@@ -264,6 +240,6 @@ const submit = async () => {
|
||||
dialogVisible.value = false
|
||||
}
|
||||
|
||||
const changeValue = () => {}
|
||||
const changeValue = () => { }
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
|
||||
@@ -3,10 +3,12 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="120px" :rules="rules" ref="formRef">
|
||||
<el-form-item label="新密码" prop="newPwd">
|
||||
<el-input v-model="form.newPwd" type="password" placeholder="请输入新密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.newPwd" type="password" placeholder="请输入新密码"
|
||||
show-password />
|
||||
</el-form-item>
|
||||
<el-form-item label="确认密码" prop="confirmPwd">
|
||||
<el-input v-model="form.confirmPwd" type="password" placeholder="请输入确认密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.confirmPwd" type="password"
|
||||
placeholder="请输入确认密码" show-password />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
</template> -->
|
||||
<template #select>
|
||||
<el-form-item label="设备名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="请输入设备名称" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</TableHeader>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<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 v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
|
||||
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
|
||||
</el-form-item>
|
||||
<el-form-item label="级别">
|
||||
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
|
||||
@@ -67,11 +67,13 @@ const tableStore = new TableStore({
|
||||
{ title: '设备名称', field: 'equipmentName', align: 'center' },
|
||||
{ title: '工程名称', field: 'engineeringName', align: 'center' },
|
||||
{ title: '项目名称', field: 'projectName', align: 'center' },
|
||||
{ title: '告警代码', field: 'code', align: 'center',formatter: (row: any) => {
|
||||
console.log("🚀 ~ row:", row)
|
||||
|
||||
return row.cellValue ? row.cellValue : '/'
|
||||
}},
|
||||
{
|
||||
title: '告警代码', field: 'code', align: 'center', formatter: (row: any) => {
|
||||
console.log("🚀 ~ row:", row)
|
||||
|
||||
return row.cellValue ? row.cellValue : '/'
|
||||
}
|
||||
},
|
||||
{ title: '事件描述', field: 'showName', align: 'center' },
|
||||
{ title: '发生时刻', field: 'startTime', align: 'center' }
|
||||
],
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<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 v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
|
||||
<!-- <el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="级别">
|
||||
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
|
||||
@@ -75,7 +75,7 @@ const tableStore = new TableStore({
|
||||
{ title: '发生时刻', field: 'startTime', align: 'center' }
|
||||
],
|
||||
beforeSearchFun: () => {
|
||||
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@@ -104,9 +104,9 @@ deviceTreeOptions.value.map((item: any, index: any) => {
|
||||
})
|
||||
const sourceChange = (e: any) => {
|
||||
tableStore.table.params.deviceTypeId = ''
|
||||
tableStore.table.params.engineeringid = ''
|
||||
tableStore.table.params.projectId = ''
|
||||
tableStore.table.params.deviceId = ''
|
||||
tableStore.table.params.engineeringid = ''
|
||||
tableStore.table.params.projectId = ''
|
||||
tableStore.table.params.deviceId = ''
|
||||
if (e) {
|
||||
let name = deviceTreeOptions.value.filter((item: any) => {
|
||||
return item.id == e[0]
|
||||
|
||||
@@ -3,16 +3,10 @@
|
||||
<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 v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
|
||||
<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-form-item>
|
||||
<!-- <el-form-item label="级别">
|
||||
<el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
|
||||
@@ -31,54 +25,28 @@
|
||||
<div v-if="view2" style="display: flex">
|
||||
<span style="font-size: 14px; line-height: 30px">值类型选择</span>
|
||||
<el-select @change="changeView" style="width: 240px" v-model="value" placeholder="请选择值类型">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-option v-for="item in options" :key="item.value" :label="item.label"
|
||||
:value="item.value"></el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-button
|
||||
v-if="view2"
|
||||
@click="backbxlb"
|
||||
|
||||
class="el-icon-refresh-right"
|
||||
icon="el-icon-Back"
|
||||
style="float: right"
|
||||
>
|
||||
<el-button v-if="view2" @click="backbxlb" class="el-icon-refresh-right" icon="el-icon-Back"
|
||||
style="float: right">
|
||||
返回
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-tabs v-if="view2" v-model="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"
|
||||
></shushiboxi>
|
||||
<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">
|
||||
</shushiboxi>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane
|
||||
label="RMS波形"
|
||||
class="boxbx pt10 pb10"
|
||||
name="rmsbx"
|
||||
:style="'height:' + bxecharts + ';overflow-y: scroll;'"
|
||||
>
|
||||
<rmsboxi
|
||||
v-if="bxactiveName == 'rmsbx' && showBoxi"
|
||||
:value="value"
|
||||
:boxoList="boxoList"
|
||||
:wp="wp"
|
||||
></rmsboxi>
|
||||
<el-tab-pane label="RMS波形" class="boxbx pt10 pb10" name="rmsbx"
|
||||
:style="'height:' + bxecharts + ';overflow-y: scroll;'">
|
||||
<rmsboxi v-if="bxactiveName == 'rmsbx' && showBoxi" :value="value" :boxoList="boxoList" :wp="wp">
|
||||
</rmsboxi>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
<!-- <xiebofenxi ref="child" :bxshuju="bxshuju" @backfh="back"></xiebofenxi> -->
|
||||
@@ -332,6 +300,6 @@ setTimeout(() => {
|
||||
tableStore.table.height = mainHeight(200).height as any
|
||||
}, 0)
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
<style scoped lang="scss"></style>
|
||||
|
||||
@@ -110,15 +110,15 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据来源" v-if="dataSet.includes('_items')">
|
||||
<el-select v-model="formInline.targetType" >
|
||||
|
||||
<el-select v-model="formInline.targetType">
|
||||
|
||||
<el-option v-for="item in dataSource" :key="item.id" :label="item.name"
|
||||
:value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="关键字" v-if="!dataSet.includes('_')">
|
||||
<el-input style="width: 160px" v-model="searchValue" autocomplete="off" clearable
|
||||
@input="handleSearch" placeholder="请输入关键词"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="searchValue"
|
||||
autocomplete="off" clearable @input="handleSearch" placeholder="请输入关键词"></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
@@ -647,7 +647,7 @@ const handleaddDevice = () => {
|
||||
const deviceId: any = ref('')
|
||||
const lineId: any = ref('')
|
||||
const dataLevel: any = ref('')
|
||||
const dataSource=ref([])
|
||||
const dataSource = ref([])
|
||||
const nodeClick = async (e: anyObj) => {
|
||||
// console.log("🚀 ~ nodeClick ~ e:", e)
|
||||
if (e.level == 2) return
|
||||
@@ -661,7 +661,7 @@ const nodeClick = async (e: anyObj) => {
|
||||
formInline.targetType = res.data[0].id
|
||||
})
|
||||
|
||||
|
||||
|
||||
deviceId.value = e?.pid
|
||||
lineId.value = e?.id
|
||||
TrendList.value = e
|
||||
|
||||
@@ -43,6 +43,7 @@ const setData = (data: any, targetType: any) => {
|
||||
// dataList1.value = []
|
||||
let list1: any = []
|
||||
dataList.value = []
|
||||
dataList1.value = []
|
||||
flag.value = true
|
||||
flag1.value = true
|
||||
targetName.value = targetType[0].name
|
||||
|
||||
@@ -4,29 +4,17 @@
|
||||
<TableHeader>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="设备类型">
|
||||
<!-- <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select
|
||||
v-model="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-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select v-model="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-option
|
||||
v-for="item in devModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
<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="通讯协议">
|
||||
@@ -47,15 +35,8 @@
|
||||
<el-button type="primary" @click="downLoadFile" class="ml10" icon="el-icon-Download">
|
||||
模版下载
|
||||
</el-button>
|
||||
<el-upload
|
||||
style="display: inline-block"
|
||||
action=""
|
||||
accept=".xlsx"
|
||||
class="upload-demo"
|
||||
:show-file-list="false"
|
||||
:auto-upload="false"
|
||||
:on-change="bulkImport"
|
||||
>
|
||||
<el-upload style="display: inline-block" action="" accept=".xlsx" class="upload-demo"
|
||||
:show-file-list="false" :auto-upload="false" :on-change="bulkImport">
|
||||
<el-button type="primary" class="ml10" icon="el-icon-Tickets">批量导入</el-button>
|
||||
</el-upload>
|
||||
<el-button type="primary" class="ml10" @click="add" icon="el-icon-Plus">新增设备</el-button>
|
||||
@@ -63,44 +44,27 @@
|
||||
</TableHeader>
|
||||
<Table ref="tableRef"></Table>
|
||||
|
||||
<el-dialog
|
||||
:title="dialogTitle"
|
||||
v-model="dialogFormVisible"
|
||||
:close-on-click-modal="false"
|
||||
:before-close="resetForm"
|
||||
draggable
|
||||
width="40%"
|
||||
>
|
||||
<el-dialog :title="dialogTitle" v-model="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
|
||||
v-model="form.name"
|
||||
autocomplete="off"
|
||||
clearable
|
||||
placeholder="请输入(项目名称+设备名称)"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
|
||||
placeholder="请输入(项目名称+设备名称)"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="网络设备ID:" prop="ndid" class="top">
|
||||
<el-input v-model="form.ndid" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-option
|
||||
v-for="item in devTypeOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in formDevModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<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">
|
||||
@@ -111,7 +75,8 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="合同号:" prop="cntractNo" class="top">
|
||||
<el-input v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
|
||||
placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@@ -216,9 +181,11 @@ const tableStore = new TableStore({
|
||||
url: '/cs-device-boot/EquipmentDelivery/list',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ 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
|
||||
}
|
||||
},
|
||||
{ title: '设备名称', field: 'name' },
|
||||
{
|
||||
title: '设备类型',
|
||||
@@ -301,7 +268,7 @@ const tableStore = new TableStore({
|
||||
tableStore.onTableAction('search', {})
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
},
|
||||
//便携式设备注册
|
||||
@@ -334,7 +301,7 @@ const tableStore = new TableStore({
|
||||
tableStore.index()
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
},
|
||||
//直连设备接入
|
||||
@@ -366,7 +333,7 @@ const tableStore = new TableStore({
|
||||
tableStore.onTableAction('search', {})
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
},
|
||||
//便携式设备接入
|
||||
@@ -397,7 +364,7 @@ const tableStore = new TableStore({
|
||||
tableStore.index()
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -463,7 +430,7 @@ const tableStore = new TableStore({
|
||||
tableStore.onTableAction('search', {})
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -577,7 +544,7 @@ onMounted(() => {
|
||||
}, 100)
|
||||
})
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.qrcode-label {
|
||||
|
||||
@@ -21,12 +21,7 @@
|
||||
|
||||
<vxe-column title="操作" width="200px">
|
||||
<template v-slot:default="scoped">
|
||||
<el-button
|
||||
link
|
||||
size="small"
|
||||
type="danger"
|
||||
@click="deleteEngineering(scoped.row)"
|
||||
>
|
||||
<el-button link size="small" type="danger" @click="deleteEngineering(scoped.row)">
|
||||
移除
|
||||
</el-button>
|
||||
</template>
|
||||
@@ -35,29 +30,17 @@
|
||||
</div>
|
||||
</div>
|
||||
<el-dialog v-model="dialogVisible" title="添加工程" class="cn-operate-dialog" :close-on-click-modal="false">
|
||||
<el-input
|
||||
v-model="filterText"
|
||||
icon="el-icon-Search"
|
||||
placeholder="请输入内容"
|
||||
clearable
|
||||
style="margin-bottom: 10px"
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit v-model="filterText" icon="el-icon-Search" placeholder="请输入内容"
|
||||
clearable style="margin-bottom: 10px">
|
||||
<template #prefix>
|
||||
<Icon name="el-icon-Search" style="font-size: 16px" />
|
||||
</template>
|
||||
</el-input>
|
||||
|
||||
<vxe-table
|
||||
ref="tableRef"
|
||||
v-bind="defaultAttribute"
|
||||
:data="
|
||||
tableData2.filter((item:any) => {
|
||||
return item.name.includes(filterText)
|
||||
})
|
||||
"
|
||||
height="500px"
|
||||
style="width: 100%"
|
||||
>
|
||||
<vxe-table ref="tableRef" v-bind="defaultAttribute" :data="tableData2.filter((item: any) => {
|
||||
return item.name.includes(filterText)
|
||||
})
|
||||
" height="500px" style="width: 100%">
|
||||
<vxe-column type="checkbox" width="60"></vxe-column>
|
||||
<vxe-column field="name" title="工程名称"></vxe-column>
|
||||
</vxe-table>
|
||||
@@ -160,6 +143,7 @@ const addMarketData = () => {
|
||||
overflow: hidden;
|
||||
flex: 1;
|
||||
padding: 10px 10px 10px 0;
|
||||
|
||||
.el-descriptions__header {
|
||||
height: 36px;
|
||||
margin-bottom: 7px;
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
</div>
|
||||
|
||||
<div class="filter" v-if="activePathList.length != 0">
|
||||
<el-input style="width: 200px; height: 32px" placeholder="请输入文件或文件夹名称" clearable v-model="filterText"
|
||||
type="text"></el-input>
|
||||
<el-input maxlength="32" show-word-limit style="width: 200px; height: 32px" placeholder="请输入文件或文件夹名称"
|
||||
clearable v-model="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) => {
|
||||
@@ -130,7 +130,7 @@
|
||||
<el-form ref="formRef" :model="form"
|
||||
:rules="{ path: [{ required: true, message: '请输入文件夹名称', trigger: 'blur' }] }">
|
||||
<el-form-item label="文件夹名称" prop="path">
|
||||
<el-input v-model="form.path" placeholder="请输入文件夹名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.path" placeholder="请输入文件夹名称" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@@ -524,7 +524,7 @@ mqttRef.value.on('message', (topic: any, message: any) => {
|
||||
console.log('mqtt接收到消息', JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))))
|
||||
|
||||
let str = JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
|
||||
|
||||
|
||||
let regex = /fileName:(.*?),allStep/
|
||||
let regex1 = /allStep:(.*?),nowStep/
|
||||
let regex2 = /nowStep:(.*?),userId/
|
||||
@@ -536,7 +536,7 @@ mqttRef.value.on('message', (topic: any, message: any) => {
|
||||
nowStep: str.match(regex2)[1],
|
||||
userId: str.match(regex3)[1]
|
||||
}
|
||||
console.log("🚀 ~ str.match(regex3)[1]:", str.match(regex3)[1])
|
||||
console.log("🚀 ~ str.match(regex3)[1]:", str.match(regex3)[1])
|
||||
status.value = parseInt(Number((mqttMessage.value.nowStep / mqttMessage.value.allStep) * 100))
|
||||
fileRef.value.setStatus(mqttMessage.value)
|
||||
fileName.value = mqttMessage.value.fileName
|
||||
|
||||
@@ -11,8 +11,9 @@
|
||||
<el-descriptions :title="'数据集名称: ' + popupData.dataSetName" size="small" :column="2" border>
|
||||
<template #extra>
|
||||
<div v-if="newGroupVisible" style="display: flex; align-items: center">
|
||||
<el-input v-model="groupName" autocomplete="off" clearable placeholder="请输入分组名称"></el-input>
|
||||
<el-button class="ml10" ctype="primary" size="small" @click="newGroupVisible = false">取消</el-button>
|
||||
<el-input maxlength="32" show-word-limit v-model="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>
|
||||
</div>
|
||||
<template v-else>
|
||||
@@ -144,6 +145,7 @@ defineExpose({ open })
|
||||
font-size: 14px;
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.el-dialog__body {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
@@ -5,10 +5,11 @@
|
||||
<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 v-model="form.itemName" placeholder="请输入方案名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.itemName" placeholder="请输入方案名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="方案描述:" prop="describe">
|
||||
<el-input type="textarea" v-model="form.describe" placeholder="请输入方案描述" />
|
||||
<el-input maxlength="300" show-word-limit type="textarea" v-model="form.describe"
|
||||
placeholder="请输入方案描述" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<!-- 测试项信息&数据绑定页面 -->
|
||||
@@ -17,7 +18,7 @@
|
||||
<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 v-model="form1.itemName" placeholder="请输入测试项名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form1.itemName" placeholder="请输入测试项名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="测量间隔:" prop="statisticalInterval">
|
||||
<el-select v-model="form1.statisticalInterval" placeholder="请选择测量间隔" clearable
|
||||
@@ -40,7 +41,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="最小短路容量:" prop="capacitySscmin">
|
||||
<el-input v-model="form1.capacitySscmin" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-input maxlength="32" show-word-limit v-model="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>
|
||||
@@ -48,7 +49,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="用户协议容量:" prop="capacitySi">
|
||||
<el-input v-model="form1.capacitySi" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-input maxlength="32" show-word-limit v-model="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>
|
||||
@@ -56,7 +57,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="基准短路容量:" prop="capacitySscb">
|
||||
<el-input v-model="form1.capacitySscb" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-input maxlength="32" show-word-limit v-model="form1.capacitySscb" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入基准短路容量">
|
||||
<template #append>MVA</template>
|
||||
@@ -64,26 +65,27 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="供电设备容量:" prop="capacitySt">
|
||||
<el-input v-model="form1.capacitySt" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-input maxlength="32" show-word-limit v-model="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 style="width: 48%" v-model="form1.pt" autocomplete="off" placeholder="请输入PT变比"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" />
|
||||
<el-input style="width: 48%" v-model="form1.pt1" autocomplete="off" placeholder="请输入PT变比"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" />
|
||||
<el-input maxlength="32" show-word-limit style="width: 48%" v-model="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"
|
||||
autocomplete="off" placeholder="请输入PT变比" oninput="value=value.replace(/[^0-9.]/g,'')" />
|
||||
</el-form-item>
|
||||
<el-form-item label="CT变比:" prop="ct">
|
||||
<el-input v-model="form1.ct" style="width: 48%" autocomplete="off"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
|
||||
<el-input v-model="form1.ct1" style="width: 48%" autocomplete="off"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
|
||||
<el-input maxlength="32" show-word-limit v-model="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%"
|
||||
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 type="textarea" v-model="form1.location" placeholder="请输入监测位置" />
|
||||
<el-input maxlength="300" show-word-limit type="textarea" v-model="form1.location"
|
||||
placeholder="请输入监测位置" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
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 v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<el-input maxlength="32" show-word-limit v-model="filterText" placeholder="请输入内容" clearable>
|
||||
<template #prefix>
|
||||
<Icon name="el-icon-Search" style="font-size: 16px" />
|
||||
</template>
|
||||
</el-input>
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<template #content>
|
||||
<span>新增方案</span>
|
||||
</template>
|
||||
@@ -57,7 +57,7 @@
|
||||
</a>
|
||||
<a :style="{ marginRight: '0.5rem' }" v-else>
|
||||
<el-icon :style="{ color: '#0000FF' }">
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<template #content>
|
||||
<span>绑定测试项</span>
|
||||
</template>
|
||||
@@ -68,7 +68,7 @@
|
||||
</a>
|
||||
<a :style="{ marginRight: '0.5rem' }">
|
||||
<el-icon :style="{ color: '#0000FF' }">
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<template #content>
|
||||
<span>修改测试项</span>
|
||||
</template>
|
||||
@@ -78,7 +78,7 @@
|
||||
|
||||
|
||||
</el-icon>
|
||||
|
||||
|
||||
</a>
|
||||
<a :style="{ marginRight: '0.5rem' }">
|
||||
<el-icon :style="{ color: '#DA3434' }">
|
||||
|
||||
@@ -4,30 +4,14 @@
|
||||
<div class="SelectBox">
|
||||
<div class="boxTitle" @click="clickAllSelect">未绑定数据</div>
|
||||
<div class="boxCenter">
|
||||
<el-input
|
||||
v-model="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"
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit v-model="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 }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -38,40 +22,28 @@
|
||||
<div class="transferBtn">
|
||||
<el-button type="primary" @click="towardsRight">
|
||||
绑定
|
||||
<el-icon><ArrowRight /></el-icon>
|
||||
<el-icon>
|
||||
<ArrowRight />
|
||||
</el-icon>
|
||||
</el-button>
|
||||
<el-button type="primary" @click="towardsLeft">
|
||||
<el-icon><ArrowLeft /></el-icon>
|
||||
<el-icon>
|
||||
<ArrowLeft />
|
||||
</el-icon>
|
||||
解绑</el-button>
|
||||
</div>
|
||||
<!-- 右侧已选内容 -->
|
||||
<div class="SelectBox">
|
||||
<div class="boxTitle" @click="clickCancelAllSelect">已绑定数据</div>
|
||||
<div class="boxCenter">
|
||||
<el-input
|
||||
v-model="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"
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit v-model="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 }">
|
||||
<span class="custom-tree-node">
|
||||
<Icon
|
||||
:name="data.icon"
|
||||
style="font-size: 16px"
|
||||
:style="{ color: data.color }"
|
||||
v-if="data.icon"
|
||||
/>
|
||||
<Icon :name="data.icon" style="font-size: 16px" :style="{ color: data.color }"
|
||||
v-if="data.icon" />
|
||||
<span style="margin-left: 4px">{{ node.label }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -254,6 +226,7 @@ export default {
|
||||
background: #fff;
|
||||
padding: 0 10px;
|
||||
border: 1px solid #eee;
|
||||
|
||||
.el-input {
|
||||
margin: 10px 0;
|
||||
}
|
||||
@@ -266,7 +239,7 @@ export default {
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100px;
|
||||
flex:1;
|
||||
flex: 1;
|
||||
|
||||
.pickBtn {
|
||||
height: 40px;
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
<TableHeader datePicker>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="设备名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="请输入设备名称" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</TableHeader>
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="过滤筛选">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="数据名称、别名、名称"
|
||||
clearable></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="数据名称、别名、名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
@@ -52,9 +52,11 @@ const tableStore = new TableStore({
|
||||
url: '/system-boot/csDictData/list',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ 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
|
||||
}
|
||||
},
|
||||
{ title: '数据分类', field: 'dataTypeName', minWidth: 170 },
|
||||
{ title: '数据名称', field: 'name', minWidth: 220 },
|
||||
{ title: '别名', field: 'otherName', minWidth: 220 },
|
||||
|
||||
@@ -7,107 +7,74 @@
|
||||
<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-option
|
||||
v-for="item in DataTypeSelect"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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 v-model="form.name" autocomplete="off" placeholder="请输入数据名称"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off"
|
||||
placeholder="请输入数据名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="别名:" prop="otherName">
|
||||
<el-input v-model="form.otherName" autocomplete="off" placeholder="请输入别名"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.otherName" autocomplete="off"
|
||||
placeholder="请输入别名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="展示名称:" prop="showName">
|
||||
<el-input v-model="form.showName" autocomplete="off" placeholder="请输入展示名称"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-option
|
||||
v-for="item in phaseSelect"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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 v-model="form.unit" autocomplete="off" placeholder="请输入单位"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.unit" autocomplete="off"
|
||||
placeholder="请输入单位"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="基础数据类型:" prop="type">
|
||||
<el-input v-model="form.type" autocomplete="off" placeholder="请输入基础数据类型"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-form-item>
|
||||
<el-form-item label="统计方法:" prop="statMethod">
|
||||
<el-select
|
||||
v-model="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 v-model="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-option
|
||||
v-for="item in DataSelect"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in ResourcesIdSelect"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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 type="number" v-model="form.sort" autocomplete="off" placeholder="请输入序号"></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="number" v-model="form.sort" autocomplete="off"
|
||||
placeholder="请输入序号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="限值名称:" prop="limitName">
|
||||
<el-input
|
||||
type="text"
|
||||
v-model="form.limitName"
|
||||
autocomplete="off"
|
||||
placeholder="请输入限值名称"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="text" v-model="form.limitName" autocomplete="off"
|
||||
placeholder="请输入限值名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="限值表名:" prop="limitTable">
|
||||
<el-input
|
||||
type="text"
|
||||
v-model="form.limitTable"
|
||||
autocomplete="off"
|
||||
placeholder="请输入限值表名"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="text" v-model="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-option
|
||||
v-for="item in FormulaSelect"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<el-option v-for="item in FormulaSelect" :key="item.code" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -116,41 +83,33 @@
|
||||
</div>
|
||||
<el-form class="form-two" :model="form" label-width="140px" ref="formRef2" :rules="rules">
|
||||
<el-form-item label="参数缺省值:" prop="defaultValue">
|
||||
<el-input v-model="form.defaultValue" autocomplete="off" placeholder="请输入参数缺省值"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.defaultValue" autocomplete="off"
|
||||
placeholder="请输入参数缺省值"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="事件类别:" prop="eventType">
|
||||
<el-input v-model="form.eventType" autocomplete="off" placeholder="请输入事件类别"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.eventType" autocomplete="off"
|
||||
placeholder="请输入事件类别"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="设置最大值:" prop="maxNum">
|
||||
<el-input
|
||||
type="number"
|
||||
v-model="form.maxNum"
|
||||
autocomplete="off"
|
||||
placeholder="请输入设置最大值"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="number" v-model="form.maxNum" autocomplete="off"
|
||||
placeholder="请输入设置最大值"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="设置最小值:" prop="minNum">
|
||||
<el-input
|
||||
type="number"
|
||||
v-model="form.minNum"
|
||||
autocomplete="off"
|
||||
placeholder="请输入设置最小值"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="number" v-model="form.minNum" autocomplete="off"
|
||||
placeholder="请输入设置最小值"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="枚举序列:" prop="setValue">
|
||||
<el-input v-model="form.setValue" autocomplete="off" placeholder="请输入枚举序列"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.setValue" autocomplete="off"
|
||||
placeholder="请输入枚举序列"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="字符串长度上限:" prop="strlen">
|
||||
<el-input
|
||||
type="number"
|
||||
v-model="form.strlen"
|
||||
autocomplete="off"
|
||||
placeholder="请输入字符串长度上限"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit type="number" v-model="form.strlen" autocomplete="off"
|
||||
placeholder="请输入字符串长度上限"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上送规则:" prop="tranRule">
|
||||
<el-input v-model="form.tranRule" autocomplete="off" placeholder="请输入上送规则"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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>
|
||||
|
||||
@@ -1,69 +1,52 @@
|
||||
<template>
|
||||
<el-dialog class="cn-operate-dialog" width="800px" v-model="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-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-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 v-model="form.versionNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="版本类型:" prop="versionType">
|
||||
<el-input
|
||||
v-model="form.versionType"
|
||||
autocomplete="off"
|
||||
placeholder="填写特殊类型(不填默认通用类型)"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="版本协议:" prop="versionAgreement">
|
||||
<el-input v-model="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-form-item>
|
||||
<el-form-item label="描述:" prop="description">
|
||||
<el-input v-model="form.description" autocomplete="off" placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="CRC校验:" prop="crcInfo">
|
||||
<el-input v-model="form.crcInfo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-form :inline="true" :model="form" label-width="120px" class="mt10">
|
||||
<el-form-item label="升级文件:" prop="file">
|
||||
<el-upload
|
||||
:limit="1"
|
||||
:auto-upload="false"
|
||||
:on-change="fileChange"
|
||||
:on-exceed="fileExceed"
|
||||
:file-list="fileList"
|
||||
>
|
||||
<el-button size="small" type="primary">点击上传</el-button>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<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-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-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"
|
||||
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"
|
||||
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"
|
||||
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-form-item>
|
||||
<el-form-item label="描述:" prop="description">
|
||||
<el-input maxlength="32" show-word-limit v-model="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"
|
||||
placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-form :inline="true" :model="form" label-width="120px" class="mt10">
|
||||
<el-form-item label="升级文件:" prop="file">
|
||||
<el-upload :limit="1" :auto-upload="false" :on-change="fileChange" :on-exceed="fileExceed"
|
||||
:file-list="fileList">
|
||||
<el-button size="small" type="primary">点击上传</el-button>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<template #footer>
|
||||
<span class="dialog-footer">
|
||||
|
||||
@@ -3,27 +3,19 @@
|
||||
<TableHeader ref="tableHeaderRef">
|
||||
<template #select>
|
||||
<el-form-item label="模版名称">
|
||||
<el-input v-model="tableStore.table.params.name" clearable placeholder="请输入名称"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-option
|
||||
v-for="item in DevTypeOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<el-option v-for="item in DevTypeOptions" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-upload
|
||||
action=""
|
||||
class="upload-demo"
|
||||
:show-file-list="false"
|
||||
:auto-upload="false"
|
||||
:on-change="chooseFile"
|
||||
>
|
||||
<el-upload action="" class="upload-demo" :show-file-list="false" :auto-upload="false"
|
||||
:on-change="chooseFile">
|
||||
<el-button :icon="Plus" type="primary" class="ml10">新增模版</el-button>
|
||||
</el-upload>
|
||||
</template>
|
||||
@@ -103,13 +95,13 @@ const chooseFile = (e: any) => {
|
||||
console.warn(e)
|
||||
loading.value = true
|
||||
addDevModel(e.raw).then((res: any) => {
|
||||
if(res.code=='A0000'){
|
||||
loading.value=false
|
||||
if (res.code == 'A0000') {
|
||||
loading.value = false
|
||||
tableStore.index()
|
||||
}
|
||||
|
||||
}).catch((e)=>{
|
||||
loading.value=false
|
||||
|
||||
}).catch((e) => {
|
||||
loading.value = false
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<TableHeader>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="设备类型">
|
||||
<!-- <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<!-- <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"
|
||||
placeholder="请选择设备类型">
|
||||
<el-option v-for="item in devTypeOptions" :key="item.value" :label="item.label"
|
||||
@@ -47,10 +47,12 @@
|
||||
: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">
|
||||
<el-input v-model="form.name" autocomplete="off" clearable placeholder="请输入(项目名称+设备名称)"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
|
||||
placeholder="请输入(项目名称+设备名称)"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="网络设备ID:" prop="ndid" class="top">
|
||||
<el-input v-model="form.ndid" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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>
|
||||
@@ -72,7 +74,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<!-- <el-form-item label="合同号:" prop="cntractNo" class="top">
|
||||
<el-input v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@@ -187,9 +189,11 @@ const tableStore = new TableStore({
|
||||
url: '/cs-device-boot/EquipmentDelivery/list',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ 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
|
||||
}
|
||||
},
|
||||
{ title: '设备名称', field: 'name' },
|
||||
{
|
||||
title: '设备类型',
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
<TableHeader datePicker>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="关键词">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入关键词" />
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" clearable
|
||||
placeholder="请输入关键词" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</TableHeader>
|
||||
@@ -79,7 +80,7 @@ const tableStore = new TableStore({
|
||||
}
|
||||
],
|
||||
|
||||
loadCallback: () => {}
|
||||
loadCallback: () => { }
|
||||
})
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
@@ -92,5 +93,5 @@ onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
|
||||
@@ -1,37 +1,24 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
draggable
|
||||
:title="title"
|
||||
v-model="dialogVisible"
|
||||
width="500px"
|
||||
:before-close="handleClose"
|
||||
:close-on-click-modal="false"
|
||||
>
|
||||
<el-dialog draggable :title="title" v-model="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 v-model.trim="form.name" placeholder="请输入项目名称"></el-input>
|
||||
<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"
|
||||
:props="defaultProps"
|
||||
multiple
|
||||
:data="Engineering"
|
||||
collapse-tags
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-tree-select v-model="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"
|
||||
:show-all-levels="false" collapse-tags collapse-tags-tooltip clearable style="width: 100%;"/> -->
|
||||
</el-form-item>
|
||||
<el-form-item label="项目排序:" prop="orderBy">
|
||||
<el-input-number v-model="form.orderBy" :min="0" :step="1" step-strictly style="width: 100%" />
|
||||
<el-input maxlength="32" show-word-limit-number v-model="form.orderBy" :min="0" :step="1" step-strictly
|
||||
style="width: 100%" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="备注:" class="top">
|
||||
<el-input type="textarea" :rows="2" placeholder="请输入内容" v-model.trim="form.remark"></el-input>
|
||||
<el-input maxlength="300" show-word-limit type="textarea" :rows="2" placeholder="请输入内容"
|
||||
v-model.trim="form.remark"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
<TableHeader>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="项目名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入项目名称"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="请输入项目名称"></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
|
||||
@@ -2,35 +2,24 @@
|
||||
<el-dialog draggable :title="title" v-model="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 placeholder="模板名称" v-model="formdata.name" style="width: 100%"></el-input>
|
||||
<el-input maxlength="32" show-word-limit placeholder="模板名称" v-model="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
|
||||
:props="{ multiple: true, label: 'name', value: 'id', emitPath: false }"
|
||||
/>
|
||||
<Area v-model="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-option
|
||||
v-for="item in classificationData"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in reportFormList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-option v-for="item in reportFormList" :key="item.value" :label="item.label"
|
||||
:value="item.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
|
||||
<el-form :model="form" class="form-one" label-width="auto">
|
||||
<el-form-item label="名称">
|
||||
<el-input v-model="form.name" placeholder="请输入名称" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="编码">
|
||||
<el-input v-model="form.code" placeholder="请输入编码" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.code" placeholder="请输入编码" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="类型">
|
||||
<el-select v-model="form.type" placeholder="请选择类型">
|
||||
@@ -14,11 +14,11 @@
|
||||
</el-select>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="备注">
|
||||
<el-input v-model="form.remark" placeholder="请输入备注" />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.remark" placeholder="请输入备注" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="排序">
|
||||
<el-input-number v-model="form.sort" :min="0" />
|
||||
<el-input maxlength="32" show-word-limit-number v-model="form.sort" :min="0" />
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
<el-scrollbar style="padding-right: 0">
|
||||
<div class="box">
|
||||
<div class="box-left">
|
||||
<el-input v-model="searchKey" size="small" placeholder="请输入搜索内容" :suffix-icon="Search"
|
||||
@input="filterTree" style="margin-bottom: 10px"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="searchKey" size="small" placeholder="请输入搜索内容"
|
||||
:suffix-icon="Search" @input="filterTree" style="margin-bottom: 10px"></el-input>
|
||||
<el-cascader-panel v-model="fromDataValue" :props="{
|
||||
multiple: true
|
||||
}" :options="fromData"></el-cascader-panel>
|
||||
@@ -33,8 +33,8 @@
|
||||
</el-button>
|
||||
</div>
|
||||
<div class="box-right">
|
||||
<el-input v-model="searchKey1" size="small" placeholder="请输入搜索内容" :suffix-icon="Search"
|
||||
@input="filterTree1" style="margin-bottom: 10px"></el-input>
|
||||
<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="{
|
||||
multiple: true,
|
||||
checkStrictly: true,
|
||||
@@ -42,14 +42,14 @@
|
||||
}" :options="toData">
|
||||
<template #default="{ node, data }">
|
||||
<div style="display: flex; align-items: center">
|
||||
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<template #content>
|
||||
<span>{{ data.label}}</span>
|
||||
</template>
|
||||
|
||||
<div class="hide-txt">{{ data.label }}</div>
|
||||
</el-tooltip>
|
||||
<el-tooltip placement="bottom" :hide-after="0">
|
||||
<template #content>
|
||||
<span>{{ data.label }}</span>
|
||||
</template>
|
||||
|
||||
<div class="hide-txt">{{ data.label }}</div>
|
||||
</el-tooltip>
|
||||
<template v-if="node.level === 1">
|
||||
<div class="ml5">({{ data.children.length }})</div>
|
||||
<div style="flex: 1"></div>
|
||||
@@ -458,7 +458,8 @@ defineExpose({ open })
|
||||
}
|
||||
}
|
||||
}
|
||||
.box-right{
|
||||
|
||||
.box-right {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -3,29 +3,17 @@
|
||||
<TableHeader>
|
||||
<template #select>
|
||||
<el-form-item label="设备类型">
|
||||
<!-- <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select
|
||||
v-model="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-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select v-model="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-option
|
||||
v-for="item in devModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
<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="通讯协议">
|
||||
@@ -46,15 +34,8 @@
|
||||
<el-button type="primary" @click="downLoadFile" class="ml10" icon="el-icon-Download">
|
||||
模版下载
|
||||
</el-button>
|
||||
<el-upload
|
||||
style="display: inline-block"
|
||||
action=""
|
||||
accept=".xlsx"
|
||||
class="upload-demo"
|
||||
:show-file-list="false"
|
||||
:auto-upload="false"
|
||||
:on-change="bulkImport"
|
||||
>
|
||||
<el-upload style="display: inline-block" action="" accept=".xlsx" class="upload-demo"
|
||||
:show-file-list="false" :auto-upload="false" :on-change="bulkImport">
|
||||
<el-button type="primary" class="ml10" icon="el-icon-Tickets">批量导入</el-button>
|
||||
</el-upload>
|
||||
<el-button type="primary" class="ml10" @click="add" icon="el-icon-Plus">新增设备</el-button>
|
||||
@@ -62,44 +43,27 @@
|
||||
</TableHeader>
|
||||
<Table ref="tableRef"></Table>
|
||||
|
||||
<el-dialog
|
||||
:title="dialogTitle"
|
||||
v-model="dialogFormVisible"
|
||||
:close-on-click-modal="false"
|
||||
:before-close="resetForm"
|
||||
draggable
|
||||
width="40%"
|
||||
>
|
||||
<el-dialog :title="dialogTitle" v-model="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
|
||||
v-model="form.name"
|
||||
autocomplete="off"
|
||||
clearable
|
||||
placeholder="请输入(项目名称+设备名称)"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
|
||||
placeholder="请输入(项目名称+设备名称)"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="网络设备ID:" prop="ndid" class="top">
|
||||
<el-input v-model="form.ndid" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-option
|
||||
v-for="item in devTypeOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in formDevModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<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">
|
||||
@@ -110,7 +74,8 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="合同号:" prop="cntractNo" class="top">
|
||||
<el-input v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
|
||||
placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@@ -300,7 +265,7 @@ const tableStore = new TableStore({
|
||||
tableStore.onTableAction('search', {})
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -414,7 +379,7 @@ onMounted(() => {
|
||||
}, 100)
|
||||
})
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.qrcode-label {
|
||||
|
||||
@@ -3,29 +3,17 @@
|
||||
<TableHeader>
|
||||
<template #select>
|
||||
<el-form-item label="设备类型">
|
||||
<!-- <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select
|
||||
v-model="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-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue" placeholder="请输入设备类型" /> -->
|
||||
<el-select v-model="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-option
|
||||
v-for="item in devModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
<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="通讯协议">
|
||||
@@ -46,15 +34,8 @@
|
||||
<el-button type="primary" @click="downLoadFile" class="ml10" icon="el-icon-Download">
|
||||
模版下载
|
||||
</el-button>
|
||||
<el-upload
|
||||
style="display: inline-block"
|
||||
action=""
|
||||
accept=".xlsx"
|
||||
class="upload-demo"
|
||||
:show-file-list="false"
|
||||
:auto-upload="false"
|
||||
:on-change="bulkImport"
|
||||
>
|
||||
<el-upload style="display: inline-block" action="" accept=".xlsx" class="upload-demo"
|
||||
:show-file-list="false" :auto-upload="false" :on-change="bulkImport">
|
||||
<el-button type="primary" class="ml10" icon="el-icon-Tickets">批量导入</el-button>
|
||||
</el-upload>
|
||||
<el-button type="primary" class="ml10" @click="add" icon="el-icon-Plus">新增设备</el-button>
|
||||
@@ -62,44 +43,27 @@
|
||||
</TableHeader>
|
||||
<Table ref="tableRef"></Table>
|
||||
|
||||
<el-dialog
|
||||
:title="dialogTitle"
|
||||
v-model="dialogFormVisible"
|
||||
:close-on-click-modal="false"
|
||||
:before-close="resetForm"
|
||||
draggable
|
||||
width="40%"
|
||||
>
|
||||
<el-dialog :title="dialogTitle" v-model="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
|
||||
v-model="form.name"
|
||||
autocomplete="off"
|
||||
clearable
|
||||
placeholder="请输入(项目名称+设备名称)"
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" autocomplete="off" clearable
|
||||
placeholder="请输入(项目名称+设备名称)"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="网络设备ID:" prop="ndid" class="top">
|
||||
<el-input v-model="form.ndid" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="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-option
|
||||
v-for="item in devTypeOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in formDevModelOptionsFilter"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-select v-model="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">
|
||||
@@ -110,7 +74,8 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="合同号:" prop="cntractNo" class="top">
|
||||
<el-input v-model="form.cntractNo" autocomplete="off" placeholder="请输入"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.cntractNo" autocomplete="off"
|
||||
placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@@ -300,7 +265,7 @@ const tableStore = new TableStore({
|
||||
tableStore.onTableAction('search', {})
|
||||
})
|
||||
})
|
||||
.catch(e => {})
|
||||
.catch(e => { })
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -414,7 +379,7 @@ onMounted(() => {
|
||||
}, 100)
|
||||
})
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.qrcode-label {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="操作类型">
|
||||
<el-input v-model="tableStore.table.params.loginName" placeholder="Please input" />
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.loginName" placeholder="Please input" />
|
||||
</el-form-item> -->
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
@@ -36,7 +36,7 @@ const tableStore = new TableStore({
|
||||
{ title: '操作时间', field: 'time', align: 'center', width: 200 },
|
||||
{ title: '操作人员', field: 'userName', align: 'center', width: 120 },
|
||||
{ title: '操作类型', field: 'operate', align: 'center', width: 220 },
|
||||
{ title: '事件描述', field: 'describe', align: 'center', showOverflow: true,minWidth: 200 },
|
||||
{ title: '事件描述', field: 'describe', align: 'center', showOverflow: true, minWidth: 200 },
|
||||
{ title: '事件类型', field: 'type', align: 'center', width: 160 },
|
||||
{ title: '操作结果', field: 'type', align: 'center', width: 100 },
|
||||
{ title: '操作IP', field: 'ip', align: 'center', width: 160 },
|
||||
@@ -57,5 +57,5 @@ onMounted(() => {
|
||||
// tableStore.index()
|
||||
})
|
||||
|
||||
const addMenu = () => {}
|
||||
const addMenu = () => { }
|
||||
</script>
|
||||
|
||||
@@ -2,49 +2,31 @@
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area>
|
||||
<template v-slot:select>
|
||||
|
||||
|
||||
<el-form-item label="终端状态">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="tableStore.table.params.runFlag"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-select multiple clearable collapse-tags v-model="tableStore.table.params.runFlag"
|
||||
placeholder="请选择">
|
||||
<el-option label="投运" value="0" />
|
||||
<el-option label="热备用" value="1" />
|
||||
<el-option label="停运" value="2" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="通讯状态">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="tableStore.table.params.comFlag"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-select multiple clearable collapse-tags v-model="tableStore.table.params.comFlag"
|
||||
placeholder="请选择">
|
||||
<el-option label="正常" value="1" />
|
||||
<el-option label="中断" value="0" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="厂家">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="manufacturerForm"
|
||||
placeholder="请选择"
|
||||
@change="onManufacturerChange"
|
||||
>
|
||||
<el-select multiple clearable collapse-tags v-model="manufacturerForm" placeholder="请选择"
|
||||
@change="onManufacturerChange">
|
||||
<el-option v-for="item in manufacturer" :key="item.id" :label="item.name" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
placeholder="根据变电站,终端编号,型号或网络参数查询"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="根据变电站,终端编号,型号或网络参数查询" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</TableHeader>
|
||||
@@ -70,9 +52,11 @@ const tableStore = new TableStore({
|
||||
url: '/device-boot/runManage/getRuntimeData',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ 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
|
||||
}
|
||||
},
|
||||
{ title: '区域', field: 'areaName', align: 'center', width: 120 },
|
||||
{ title: '供电公司', field: 'gdName', align: 'center', width: 120 },
|
||||
{ title: '变电站', field: 'bdName', align: 'center', showOverflow: true, minWidth: 100 },
|
||||
|
||||
@@ -3,51 +3,28 @@
|
||||
<TableHeader date-picker area>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="干扰源类型">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="interferenceSourceForm"
|
||||
placeholder="请选择"
|
||||
@change="onLoadTypeChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in interferenceSource"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
<el-select multiple clearable collapse-tags v-model="interferenceSourceForm" placeholder="请选择"
|
||||
@change="onLoadTypeChange">
|
||||
<el-option v-for="item in interferenceSource" :key="item.id" :label="item.name"
|
||||
:value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="电压等级">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="scaleForm"
|
||||
placeholder="请选择"
|
||||
@change="onScaleChange"
|
||||
>
|
||||
<el-select multiple clearable collapse-tags v-model="scaleForm" placeholder="请选择"
|
||||
@change="onScaleChange">
|
||||
<el-option v-for="item in level" :key="item.id" :label="item.name" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="通讯状态">
|
||||
<el-select
|
||||
multiple
|
||||
clearable
|
||||
collapse-tags
|
||||
v-model="tableStore.table.params.comFlag"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-select multiple clearable collapse-tags v-model="tableStore.table.params.comFlag"
|
||||
placeholder="请选择">
|
||||
<el-option label="正常" value="1" />
|
||||
<el-option label="中断" value="0" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
placeholder="根据变电站,终端编号,型号或网络参数查询"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit v-model="tableStore.table.params.searchValue"
|
||||
placeholder="根据变电站,终端编号,型号或网络参数查询" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</TableHeader>
|
||||
|
||||
@@ -10,12 +10,8 @@
|
||||
</el-page-header>
|
||||
</el-form-item>
|
||||
<el-form-item label="过滤筛选">
|
||||
<el-input
|
||||
style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
clearable
|
||||
placeholder="请输入名称或编码筛选"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue" clearable placeholder="请输入名称或编码筛选" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
|
||||
@@ -3,12 +3,8 @@
|
||||
<TableHeader>
|
||||
<template #select>
|
||||
<el-form-item label="过滤筛选">
|
||||
<el-input
|
||||
style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue"
|
||||
clearable
|
||||
placeholder="请输入名称或编码筛选"
|
||||
/>
|
||||
<el-input maxlength="32" show-word-limit style="width: 240px"
|
||||
v-model="tableStore.table.params.searchValue" clearable placeholder="请输入名称或编码筛选" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
@@ -40,9 +36,11 @@ const tableStore = new TableStore({
|
||||
url: '/system-boot/dictType/list',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ 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
|
||||
}
|
||||
},
|
||||
{ title: '名称', field: 'name' },
|
||||
{ title: '编码', field: 'code' },
|
||||
{ title: '开启等级', field: 'openLevelName' },
|
||||
|
||||
@@ -3,34 +3,24 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline='false' :model='form' label-width='120px' :rules='rules' ref='formRef'>
|
||||
<el-form-item label='名称:' class='top' prop='name'>
|
||||
<el-input v-model='form.name'></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.name'></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label='计算值:' class='top'>
|
||||
<el-input v-model='form.value'></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.value'></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item class='top' label='对应算法:' prop='algoDescribe' v-if='form.openDescribe == 1'>
|
||||
<el-input v-model='form.algoDescribe' placeholder='请输入数字'></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.algoDescribe' placeholder='请输入数字'></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item class='top'
|
||||
label='编码:'
|
||||
prop='code'
|
||||
>
|
||||
<el-input v-model='form.code'></el-input>
|
||||
<el-form-item class='top' label='编码:' prop='code'>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.code'></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label='排序:' prop='sort' class='top'>
|
||||
<el-input-number v-model='form.sort' :min='0' />
|
||||
<el-input maxlength="32" show-word-limit-number v-model='form.sort' :min='0' />
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if='form.openLevel === 1'
|
||||
label='事件等级:'
|
||||
>
|
||||
<el-form-item v-if='form.openLevel === 1' label='事件等级:'>
|
||||
<el-select v-model='form.level' placeholder='选择开启等级'>
|
||||
<el-option
|
||||
v-for='item in EventOpenLevel'
|
||||
:key='item.value'
|
||||
:label='item.label'
|
||||
:value='item.value'
|
||||
>
|
||||
<el-option v-for='item in EventOpenLevel' :key='item.value' :label='item.label'
|
||||
:value='item.value'>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
@@ -3,49 +3,30 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline='false' :model='form' label-width='120px' :rules='rules' ref='formRef'>
|
||||
<el-form-item label='名称' prop='name'>
|
||||
<el-input v-model='form.name'></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.name'></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label='编码' class='top' prop='code'>
|
||||
<el-input v-model='form.code'></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.code'></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label='排序' class='top' prop='sort'>
|
||||
<el-input-number v-model="form.sort" :min="0" />
|
||||
<el-input maxlength="32" show-word-limit-number v-model="form.sort" :min="0" />
|
||||
</el-form-item>
|
||||
<el-form-item label='开启等级' class='top'>
|
||||
<el-select
|
||||
v-model='form.openLevel'
|
||||
placeholder='选择开启等级'
|
||||
>
|
||||
<el-option
|
||||
v-for='item in OpenLevel'
|
||||
:key='item.value'
|
||||
:label='item.label'
|
||||
:value='item.value'
|
||||
>
|
||||
<el-select v-model='form.openLevel' placeholder='选择开启等级'>
|
||||
<el-option v-for='item in OpenLevel' :key='item.value' :label='item.label' :value='item.value'>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label='开启算法' class='top'>
|
||||
<el-select
|
||||
v-model='form.openDescribe'
|
||||
placeholder='选择开启算法'
|
||||
>
|
||||
<el-option
|
||||
v-for='item in OpenDescribe'
|
||||
:key='item.value'
|
||||
:label='item.label'
|
||||
:value='item.value'
|
||||
>
|
||||
<el-select v-model='form.openDescribe' placeholder='选择开启算法'>
|
||||
<el-option v-for='item in OpenDescribe' :key='item.value' :label='item.label'
|
||||
:value='item.value'>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label='字典描述' class='top'>
|
||||
<el-input
|
||||
v-model='form.remark'
|
||||
type='textarea'
|
||||
:rows='2'
|
||||
></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model='form.remark' type='textarea' :rows='2'></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -3,16 +3,16 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="120px" :rules="rules">
|
||||
<el-form-item label="字典名称:" prop="name">
|
||||
<el-input v-model="form.name" placeholder="请输入字典名称"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.name" placeholder="请输入字典名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="序号:" prop="sort" class="top">
|
||||
<el-input v-model="form.sort" placeholder="请输入序号"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.sort" placeholder="请输入序号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="编码:" prop="code" class="top">
|
||||
<el-input v-model="form.code" placeholder="请输入字典编码"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.code" placeholder="请输入字典编码"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="描述:" class="top">
|
||||
<el-input v-model="form.remark" placeholder="请输入字典描述"></el-input>
|
||||
<el-input maxlength="32" show-word-limit v-model="form.remark" placeholder="请输入字典描述"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
@@ -2,35 +2,24 @@
|
||||
<el-dialog draggable :title="title" v-model="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 placeholder="模板名称" v-model="formdata.name" style="width: 100%"></el-input>
|
||||
<el-input maxlength="32" show-word-limit placeholder="模板名称" v-model="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
|
||||
:props="{ multiple: true, label: 'name', value: 'id', emitPath: false }"
|
||||
/>
|
||||
<Area v-model="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-option
|
||||
v-for="item in classificationData"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
<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-option
|
||||
v-for="item in reportFormList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
<el-option v-for="item in reportFormList" :key="item.value" :label="item.label"
|
||||
:value="item.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
@@ -12,16 +12,16 @@
|
||||
</div>
|
||||
<el-form :rules="rules" ref="formRef" size="large" class="login-form" :model="form">
|
||||
<el-form-item prop="username">
|
||||
<el-input ref="usernameRef" v-model="form.username" type="text" clearable style="width: 368px"
|
||||
placeholder="用户名" autocomplete="off">
|
||||
<el-input maxlength="32" show-word-limit ref="usernameRef" v-model="form.username" type="text"
|
||||
clearable style="width: 368px" placeholder="用户名" autocomplete="off">
|
||||
<template #prefix>
|
||||
<span class="iconfont icon-yonghu" style="color: #003078"></span>
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="password">
|
||||
<el-input ref="passwordRef" v-model="form.password" type="password" placeholder="密码" show-password
|
||||
style="width: 368px" autocomplete="off">
|
||||
<el-input maxlength="32" show-word-limit ref="passwordRef" v-model="form.password" type="password"
|
||||
placeholder="密码" show-password style="width: 368px" autocomplete="off">
|
||||
<template #prefix>
|
||||
<span class="iconfont icon-mima" style="color: #003078"></span>
|
||||
</template>
|
||||
|
||||
@@ -13,42 +13,26 @@
|
||||
<div class='content'>
|
||||
<el-form @keyup.enter='onSubmit()' ref='formRef' size='large' :model='form'>
|
||||
<el-form-item prop='username'>
|
||||
<el-input
|
||||
ref='usernameRef'
|
||||
type='text'
|
||||
clearable
|
||||
v-model='form.username'
|
||||
placeholder='请输入账号'
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit ref='usernameRef' type='text' clearable
|
||||
v-model='form.username' placeholder='请输入账号'>
|
||||
<template #prefix>
|
||||
<Icon name='fa fa-user' class='form-item-icon' size='16'
|
||||
color='var(--el-input-icon-color)' />
|
||||
color='var(--el-input-icon-color)' />
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop='password'>
|
||||
<el-input
|
||||
ref='passwordRef'
|
||||
v-model='form.password'
|
||||
type='password'
|
||||
placeholder='请输入密码'
|
||||
show-password
|
||||
>
|
||||
<el-input maxlength="32" show-word-limit ref='passwordRef' v-model='form.password'
|
||||
type='password' placeholder='请输入密码' show-password>
|
||||
<template #prefix>
|
||||
<Icon name='fa fa-unlock-alt' class='form-item-icon' size='16'
|
||||
color='var(--el-input-icon-color)' />
|
||||
color='var(--el-input-icon-color)' />
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
:loading='state.submitLoading'
|
||||
class='submit-button'
|
||||
round
|
||||
type='primary'
|
||||
size='large'
|
||||
@click='onSubmit()'
|
||||
>
|
||||
<el-button :loading='state.submitLoading' class='submit-button' round type='primary'
|
||||
size='large' @click='onSubmit()'>
|
||||
登录
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
|
||||
@@ -3,10 +3,12 @@
|
||||
<el-scrollbar>
|
||||
<el-form :inline="false" :model="form" label-width="120px" :rules="rules" ref="formRef">
|
||||
<el-form-item label="新密码:" prop="newPwd" style="margin-top: 20px">
|
||||
<el-input v-model="form.newPwd" type="password" placeholder="请输入新密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.newPwd" type="password" placeholder="请输入新密码"
|
||||
show-password />
|
||||
</el-form-item>
|
||||
<el-form-item label="确认密码:" prop="confirmPwd" style="margin-top: 20px">
|
||||
<el-input v-model="form.confirmPwd" type="password" placeholder="请输入确认密码" show-password />
|
||||
<el-input maxlength="32" show-word-limit v-model="form.confirmPwd" type="password"
|
||||
placeholder="请输入确认密码" show-password />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-scrollbar>
|
||||
|
||||
Reference in New Issue
Block a user