2024-02-20 16:47:12 +08:00
|
|
|
|
<template>
|
|
|
|
|
|
<div class="default-main device-manage" :style="{ height: pageHeight.height }" v-loading="loading">
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<splitpanes style="height: 100%" class="default-theme" id="navigation-splitpanes">
|
|
|
|
|
|
<pane :size="size"><Terminal ref="TerminalRef" @node-click="nodeClick" @init="nodeClick"></Terminal></pane>
|
|
|
|
|
|
<pane style="background: #fff">
|
|
|
|
|
|
<div class="device-manage-right">
|
|
|
|
|
|
<el-form :inline="true" class="demo-form-inline">
|
|
|
|
|
|
<el-form-item style="position: relative; z-index: 2">
|
|
|
|
|
|
<el-button icon="el-icon-Plus" type="primary" @click="add">新 增</el-button>
|
|
|
|
|
|
<el-button icon="el-icon-Edit" type="primary" @click="update">修 改</el-button>
|
|
|
|
|
|
<el-button icon="el-icon-Close" type="danger" @click="remove">删 除</el-button>
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
icon="el-icon-Right"
|
|
|
|
|
|
:disabled="nextfalg"
|
|
|
|
|
|
type="primary"
|
|
|
|
|
|
@click="next"
|
|
|
|
|
|
v-if="nodeLevel <= 700 && pageStatus == 2"
|
|
|
|
|
|
>
|
|
|
|
|
|
下一步
|
|
|
|
|
|
</el-button>
|
|
|
|
|
|
<el-button
|
|
|
|
|
|
type="info"
|
|
|
|
|
|
@click="black"
|
|
|
|
|
|
icon="el-icon-Back"
|
|
|
|
|
|
v-if="nodeLevel <= 700 && (pageStatus == 2 || pageStatus == 3)"
|
|
|
|
|
|
>
|
|
|
|
|
|
撤 销
|
|
|
|
|
|
</el-button>
|
|
|
|
|
|
<el-button icon="el-icon-Check" type="primary" v-if="pageStatus == 2" @click="onsubmit">
|
|
|
|
|
|
确认提交
|
|
|
|
|
|
</el-button>
|
|
|
|
|
|
<el-button icon="el-icon-Check" type="primary" v-if="pageStatus == 3" @click="onsubmit">
|
|
|
|
|
|
修改提交
|
|
|
|
|
|
</el-button>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
</el-form-item>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-form-item style="right: 0; position: absolute">
|
|
|
|
|
|
<!-- <i style="font-size: 20px; color: #396" icon="el-icon-LocationInformation"></i> -->
|
|
|
|
|
|
<LocationInformation style="width: 16px; margin-right: 8px; color: #396" />
|
|
|
|
|
|
<span style="font-size: 16px; font-weight: bold; color: #396">当前操作节点:</span>
|
|
|
|
|
|
<div style="float: right">
|
|
|
|
|
|
<el-breadcrumb separator-icon="el-icon-ArrowRightBold" style="font-weight: bold">
|
|
|
|
|
|
<!-- <el-breadcrumb-item>台账管理</el-breadcrumb-item> -->
|
|
|
|
|
|
<el-breadcrumb-item v-for="item in titleList" :key="item">
|
|
|
|
|
|
{{ item }}
|
|
|
|
|
|
</el-breadcrumb-item>
|
|
|
|
|
|
</el-breadcrumb>
|
|
|
|
|
|
</div>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
</el-form-item>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
</el-form>
|
|
|
|
|
|
<div :style="{ height: Height.height }" style="overflow-y: auto">
|
|
|
|
|
|
<el-form
|
|
|
|
|
|
class="main-form overview_scroll"
|
|
|
|
|
|
:label-position="'right'"
|
|
|
|
|
|
:model="AddProjectBO"
|
|
|
|
|
|
label-width="120px"
|
|
|
|
|
|
:inline="true"
|
|
|
|
|
|
ref="mainForm"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id100"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="项目名称:"
|
|
|
|
|
|
:prop="'projectParam.name'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.projectParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
2024-02-21 15:15:35 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
:rules="{ required: true, message: '请输入项目名称', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="AddProjectBO.projectParam.name"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 100 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请选择项目类型"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="item in project"
|
|
|
|
|
|
:key="item.name"
|
|
|
|
|
|
:label="item.name"
|
|
|
|
|
|
:value="item.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id100"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="项目排序:"
|
|
|
|
|
|
:prop="'projectParam.sort'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.projectParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
2024-02-21 15:15:35 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
:rules="{ required: true, message: '请输入排序', trigger: 'blur' }"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.projectParam.sort"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 100 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id200"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="行政区域:"
|
|
|
|
|
|
:prop="'provinceParam.name'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.provinceParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 100 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
2024-02-21 15:15:35 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
:rules="[{ required: true, message: '请选择行政区域', trigger: 'change' }]"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="AddProjectBO.provinceParam.name"
|
|
|
|
|
|
placeholder="请选择行政区域"
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 200 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="item in treeOptions"
|
|
|
|
|
|
:key="item.id"
|
|
|
|
|
|
:label="item.name"
|
|
|
|
|
|
:value="item.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id200"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="区域排序:"
|
|
|
|
|
|
:prop="'provinceParam.sort'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.provinceParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 100 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入排序', trigger: 'change' }]"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.provinceParam.sort"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 200 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id300"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="供电公司:"
|
|
|
|
|
|
:prop="'gdInformationParam.name'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.gdInformationParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 100 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入供电公司', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.gdInformationParam.name"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 300 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入供电公司"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
id="id300"
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="公司排序:"
|
|
|
|
|
|
:prop="'gdInformationParam.sort'"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.gdInformationParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 200 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入排序', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.gdInformationParam.sort"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 300 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<!--变电站((pageStatus != 3 &&(nodeLevel > 300 && (nodeLevel < 700 || pageStatus == 2))) || (pageStatus == 3 && nodeLevel == 400))-->
|
2024-02-21 15:15:35 +08:00
|
|
|
|
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<div
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.subStationParam &&
|
|
|
|
|
|
((pageStatus != 3 && nodeLevel > 300 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(nodeLevel > 0 && (nodeLevel <= 700 || pageStatus == 3)))
|
|
|
|
|
|
"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="变电站:"
|
|
|
|
|
|
:prop="'subStationParam.name'"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入变电站名称', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.subStationParam.name"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
placeholder="请输入变电站名称"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="经度:"
|
|
|
|
|
|
:prop="'subStationParam.lng'"
|
|
|
|
|
|
:rules="[{ required: true, validator: lngff, trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.subStationParam.lng"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
placeholder="请输入经度"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
2024-08-21 16:05:06 +08:00
|
|
|
|
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="纬度:"
|
|
|
|
|
|
:prop="'subStationParam.lat'"
|
|
|
|
|
|
:rules="[{ required: true, validator: latff, trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.subStationParam.lat"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
placeholder="请输入纬度"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电压等级:"
|
|
|
|
|
|
:prop="'subStationParam.scale'"
|
|
|
|
|
|
:rules="[{ required: true, message: '选中电压等级', trigger: 'change' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="AddProjectBO.subStationParam.scale"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
placeholder="请选择电压等级"
|
2024-02-20 16:47:12 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="item in voltageLevelArr"
|
|
|
|
|
|
:key="item.name"
|
|
|
|
|
|
:label="item.name"
|
|
|
|
|
|
:value="item.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="排序:"
|
|
|
|
|
|
:prop="'subStationParam.sort'"
|
|
|
|
|
|
:rules="[{ required: true, message: '输入排序', trigger: 'change' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="AddProjectBO.subStationParam.sort"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
"
|
2024-09-06 15:10:30 +08:00
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<!--终端终端-->
|
|
|
|
|
|
<div
|
|
|
|
|
|
id="id500"
|
|
|
|
|
|
class="form-device"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
(pageStatus != 3 && nodeLevel > 300 && (nodeLevel <= 700 || pageStatus == 2)) ||
|
|
|
|
|
|
(pageStatus == 3 && 400 < nodeLevel && nodeLevel <= 700)
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tabs
|
|
|
|
|
|
v-if="AddProjectBO.deviceParam && AddProjectBO.deviceParam.length"
|
|
|
|
|
|
v-model="deviceIndex"
|
|
|
|
|
|
type="card"
|
|
|
|
|
|
:editable="pageStatus != 1"
|
|
|
|
|
|
@edit="handleDeviceTabsEdit"
|
|
|
|
|
|
@tab-click="tabChange('deviceIndex')"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tab-pane
|
|
|
|
|
|
v-for="(item, index) in AddProjectBO.deviceParam"
|
|
|
|
|
|
:key="index"
|
|
|
|
|
|
:label="item.name ? item.name : '新建终端' + index"
|
|
|
|
|
|
:name="index + ''"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<div class="flex">
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="名称:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.name'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入名称', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.name"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入名称"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="通讯状态:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.comFlag'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择通讯状态', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.comFlag"
|
|
|
|
|
|
placeholder="请选择通讯状态"
|
|
|
|
|
|
:disabled="true"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in comStatusArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="通讯类型:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.frontType'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择通讯类型', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.frontType"
|
|
|
|
|
|
placeholder="请选择通讯类型"
|
|
|
|
|
|
:popper-append-to-body="false"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in comTypeStatusArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="终端模型:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.devModel'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择终端模型', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.devModel"
|
|
|
|
|
|
placeholder="请选择终端模型"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in terminalModelArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="数据模型:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.devDataType'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择数据模型', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.devDataType"
|
|
|
|
|
|
placeholder="请选择数据模型"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in dataModelArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="厂家:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.manufacturer'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请选择厂家', trigger: 'change' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.manufacturer"
|
|
|
|
|
|
placeholder="请选择厂家"
|
|
|
|
|
|
:popper-append-to-body="false"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in factoryArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="所属前置机:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.nodeId'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择所属前置机', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.nodeId"
|
|
|
|
|
|
placeholder="请选择所属前置机"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in affiliatiedFrontArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="召唤标志:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.callFlag'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择召唤标志', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.callFlag"
|
|
|
|
|
|
placeholder="请选择召唤标志"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in summonSignArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="识别码:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.series'"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.series"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
show-password
|
|
|
|
|
|
placeholder="请输入识别码"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="密钥:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.devKey'"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.devKey"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
show-password
|
|
|
|
|
|
placeholder="请输入密钥"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电度功能"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.electroplate'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择电度功能', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.electroplate"
|
|
|
|
|
|
placeholder="请选择电度功能"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in electroplateCanArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="投运时间:">
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
:popper-append-to-body="false"
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
value-format="YYYY-MM-DD"
|
|
|
|
|
|
v-model="item.loginTime"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-date-picker>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="本次定检时间:">
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
:popper-append-to-body="false"
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
value-format="YYYY-MM-DD"
|
|
|
|
|
|
v-model="item.thisTimeCheck"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-date-picker>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="下次定检时间:">
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
:popper-append-to-body="false"
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
value-format="YYYY-MM-DD"
|
|
|
|
|
|
v-model="item.nextTimeCheck"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-date-picker>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item class="form-item" label="数据更新时间:">
|
|
|
|
|
|
<el-date-picker
|
|
|
|
|
|
type="date"
|
|
|
|
|
|
placeholder="选择日期"
|
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
|
value-format="YYYY-MM-DD"
|
|
|
|
|
|
v-model="item.updateTime"
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
:disabled="true"
|
|
|
|
|
|
></el-date-picker>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="终端型号:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.devType'"
|
|
|
|
|
|
:rules="[
|
|
|
|
|
|
{ required: true, message: '请选择终端型号', trigger: 'change' }
|
|
|
|
|
|
]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="item.devType"
|
|
|
|
|
|
placeholder="请选择终端型号"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in typeArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="IP/MAC地址:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.ip'"
|
|
|
|
|
|
:rules="[{ required: true, validator: arrdess, trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.ip"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
placeholder="请输入IP/MAC地址"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="端口号:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.port'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入端口号', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.port"
|
|
|
|
|
|
placeholder="请输入端口号"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="合同号:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.contract'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入合同号', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.contract"
|
|
|
|
|
|
placeholder="请输入合同号"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="ISM卡号:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.sim'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入ISM卡号', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.sim"
|
|
|
|
|
|
placeholder="请输入ISM卡号"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="排序:"
|
|
|
|
|
|
:prop="'deviceParam.' + index + '.sort'"
|
|
|
|
|
|
:rules="[{ required: true, message: '请输入排序', trigger: 'blur' }]"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="item.sort"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 500 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
</div>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<!--母线-->
|
|
|
|
|
|
<div
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
v-if="((pageStatus != 3 && (nodeLevel > 400 && (nodeLevel <= 700 || pageStatus == 2))) || (pageStatus == 3 && 400 < nodeLevel && nodeLevel <= 700))"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tabs
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.deviceParam &&
|
|
|
|
|
|
AddProjectBO.deviceParam.length &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex] &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam.length
|
|
|
|
|
|
"
|
|
|
|
|
|
v-model="busBarIndex"
|
|
|
|
|
|
type="card"
|
|
|
|
|
|
:editable="pageStatus != 1"
|
|
|
|
|
|
@edit="handleBusBarTabsEdit"
|
|
|
|
|
|
@tab-click="tabChange('busBarIndex')"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tab-pane
|
|
|
|
|
|
v-for="(busItem, bIndex) in AddProjectBO.deviceParam[deviceIndex]
|
|
|
|
|
|
.subVoltageParam"
|
|
|
|
|
|
:key="bIndex"
|
|
|
|
|
|
:label="busItem.name ? busItem.name : '新建母线' + bIndex"
|
|
|
|
|
|
:name="bIndex + ''"
|
2024-02-21 15:15:35 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<div class="flex">
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="母线名称:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
bIndex +
|
|
|
|
|
|
'.name'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入母线名称', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="busItem.name"
|
|
|
|
|
|
placeholder="请输入母线名称"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 600 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="母线编号:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
bIndex +
|
|
|
|
|
|
'.num'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入母线编号', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="busItem.num"
|
|
|
|
|
|
placeholder="请选择母线编号"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 600 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in optionarr"
|
|
|
|
|
|
:key="option.value"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电压等级:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
bIndex +
|
|
|
|
|
|
'.scale'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择电压等级', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="busItem.scale"
|
|
|
|
|
|
value-key="value"
|
|
|
|
|
|
placeholder="请选择电压等级"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 600 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
@change="selectChanged"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in voltageLevelArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="母线类型:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
bIndex +
|
|
|
|
|
|
'.model'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择母线类型', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="busItem.model"
|
|
|
|
|
|
placeholder="请选择母线类型"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 600 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in busBarType"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="排序:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
bIndex +
|
|
|
|
|
|
'.sort'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入排序', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="busItem.sort"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
:disabled="
|
|
|
|
|
|
nodeLevel > 600 && (pageStatus == 3 || pageStatus == 2)
|
|
|
|
|
|
? pageStatus == 3 || pageStatus == 2
|
|
|
|
|
|
: pageStatus == 1
|
|
|
|
|
|
"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
</div>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<!--监测点-->
|
|
|
|
|
|
<div
|
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
|
v-if="((pageStatus != 3 && (nodeLevel > 400 && (nodeLevel <= 700 || pageStatus == 2))) || (pageStatus == 3 && 400 < nodeLevel && nodeLevel <= 700))"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tabs
|
|
|
|
|
|
type="card"
|
|
|
|
|
|
v-if="
|
|
|
|
|
|
AddProjectBO.deviceParam &&
|
|
|
|
|
|
AddProjectBO.deviceParam.length &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex] &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam.length &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam[busBarIndex] &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam[busBarIndex].lineParam &&
|
|
|
|
|
|
AddProjectBO.deviceParam[deviceIndex].subVoltageParam[busBarIndex].lineParam
|
|
|
|
|
|
.length
|
|
|
|
|
|
"
|
|
|
|
|
|
v-model="lineIndex"
|
|
|
|
|
|
:editable="pageStatus != 1"
|
|
|
|
|
|
@edit="handleLineTabsEdit"
|
|
|
|
|
|
@tab-click="tabChange('lineIndex')"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-tab-pane
|
|
|
|
|
|
v-for="(lineItem, lIndex) in AddProjectBO.deviceParam[deviceIndex]
|
|
|
|
|
|
.subVoltageParam[busBarIndex].lineParam"
|
|
|
|
|
|
:key="lIndex"
|
|
|
|
|
|
:label="lineItem.name ? lineItem.name : '新建监测点' + lIndex"
|
|
|
|
|
|
:name="lIndex + ''"
|
2024-02-20 16:47:12 +08:00
|
|
|
|
>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<div class="flex">
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="监测点名称:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.name'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请输入监测点名称',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.name"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入监测点名称"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="监测点序号:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.num'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请选择监测点序号',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.num"
|
|
|
|
|
|
placeholder="请选择序号"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in pointNumArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item class="form-item" label="新能源场站:">
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.newStationId"
|
|
|
|
|
|
placeholder="请选择新能源场站"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
clearable
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in newStationIdArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item class="form-item" label="基准容量(MVA):">
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.standardCapacity"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入基准容量(MVA)"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="短路容量(MVA):"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.shortCapacity'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: false, message: '请输入短路容量', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.shortCapacity"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入短路容量(MVA)"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="终端容量(MVA):"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.devCapacity'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: false, message: '请输入终端容量', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.devCapacity"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入终端容量(MVA)"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="协议容量(MVA):"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.dealCapacity'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: false, message: '请输入协议容量', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.dealCapacity"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入协议容量(MVA)"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="测量点间隔:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.timeInterval'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择测点间隔', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.timeInterval"
|
|
|
|
|
|
placeholder="请选择测量点间隔"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in lineSpaceArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="PT变比:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.pt1'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入pt', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<div style="width: 100%; display: flex; justify-content: space-between">
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
style="width: 48%"
|
|
|
|
|
|
v-model="lineItem.pt1"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
style="width: 48%"
|
|
|
|
|
|
v-model="lineItem.pt2"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="CT变比:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.ct1'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入ct', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<div style="width: 100%; display: flex; justify-content: space-between">
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
style="width: 48%"
|
|
|
|
|
|
v-model="lineItem.ct1"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
style="width: 48%"
|
|
|
|
|
|
v-model="lineItem.ct2"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="接线类型:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.ptType'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择接线类型', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.ptType"
|
|
|
|
|
|
placeholder="请选择接线类型"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in wiringTypeArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="干扰源类型:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.loadType'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请选择干扰源类型',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.loadType"
|
|
|
|
|
|
placeholder="请选择干扰源类型"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in loadTypeArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="行业类型:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.businessType'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择行业类型', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.businessType"
|
|
|
|
|
|
placeholder="请选择行业类型"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in industryTypeArr"
|
|
|
|
|
|
:key="option.id"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.id"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="谐波监测号:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.monitorId'
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.monitorId"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入国网谐波监测号"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电压下偏差:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.uvoltageDev'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请输入电压下偏差',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.uvoltageDev"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入电压下偏差"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="对象名称:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.objName'
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.objName"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入对象名称"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="测量点性质:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.powerFlag'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请选择测量点性质',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.powerFlag"
|
|
|
|
|
|
placeholder="请选择测量点性质"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in lineNatureArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电压上偏差:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.voltageDev'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请输入电压上偏差',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.voltageDev"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入电压上偏差"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="备注:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.remark'
|
|
|
|
|
|
"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.remark"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入备注"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="分类等级:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.calssificationGrade'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请选择分类等级', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="lineItem.calssificationGrade"
|
|
|
|
|
|
placeholder="请选择分类等级"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
v-for="option in pointTypeArr"
|
|
|
|
|
|
:key="option.name"
|
|
|
|
|
|
:label="option.name"
|
|
|
|
|
|
:value="option.value"
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="监测点拥有者:">
|
|
|
|
|
|
<!-- :prop="
|
2024-02-21 15:15:35 +08:00
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.owner'
|
|
|
|
|
|
"
|
2024-06-27 20:29:44 +08:00
|
|
|
|
:rules="{ required: true, message: '请输入监测点拥有者', trigger: 'blur' }" -->
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.owner"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入监测点拥有者"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="拥有者职务:">
|
|
|
|
|
|
<!-- :prop="
|
2024-02-21 15:15:35 +08:00
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.ownerDuty'
|
|
|
|
|
|
"
|
2024-06-27 20:29:44 +08:00
|
|
|
|
:rules="{ required: true, message: '请输入拥有者职务', trigger: 'blur' }" -->
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.ownerDuty"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入拥有者职务"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="电网侧变电站:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.powerSubstationName'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
message: '请输入电网侧变电站',
|
|
|
|
|
|
trigger: 'blur'
|
|
|
|
|
|
}"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.powerSubstationName"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入电网侧变电站"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="form-item" label="上级变电站:">
|
|
|
|
|
|
<!-- :prop="
|
2024-02-21 15:15:35 +08:00
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.superiorsSubstation'
|
|
|
|
|
|
"
|
2024-06-27 20:29:44 +08:00
|
|
|
|
:rules="{ required: true, message: '请输入上级变电站', trigger: 'blur' }" -->
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.superiorsSubstation"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入上级变电站"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
|
class="form-item"
|
|
|
|
|
|
label="排序:"
|
|
|
|
|
|
:prop="
|
|
|
|
|
|
'deviceParam.' +
|
|
|
|
|
|
[deviceIndex] +
|
|
|
|
|
|
'.subVoltageParam.' +
|
|
|
|
|
|
[busBarIndex] +
|
|
|
|
|
|
'.lineParam.' +
|
|
|
|
|
|
lIndex +
|
|
|
|
|
|
'.sort'
|
|
|
|
|
|
"
|
|
|
|
|
|
:rules="{ required: true, message: '请输入排序', trigger: 'blur' }"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-input
|
|
|
|
|
|
v-model="lineItem.sort"
|
|
|
|
|
|
:disabled="pageStatus == 1"
|
|
|
|
|
|
placeholder="请输入排序"
|
|
|
|
|
|
></el-input>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-form>
|
2024-02-21 15:15:35 +08:00
|
|
|
|
</div>
|
2024-09-06 15:10:30 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</pane>
|
|
|
|
|
|
</splitpanes>
|
2024-02-20 16:47:12 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
|
|
|
defineOptions({
|
|
|
|
|
|
name: 'device-boot/deviceter'
|
|
|
|
|
|
})
|
2024-09-06 15:10:30 +08:00
|
|
|
|
import 'splitpanes/dist/splitpanes.css'
|
|
|
|
|
|
import { Splitpanes, Pane } from 'splitpanes'
|
2024-02-20 16:47:12 +08:00
|
|
|
|
import { LocationInformation } from '@element-plus/icons-vue'
|
2024-03-06 20:37:36 +08:00
|
|
|
|
import Terminal from '@/components/tree/pqs/Terminal.vue'
|
2024-02-20 16:47:12 +08:00
|
|
|
|
import { mainHeight } from '@/utils/layout'
|
|
|
|
|
|
import { areaTree } from '@/api/system-boot/dicData'
|
2024-08-21 16:05:06 +08:00
|
|
|
|
import {
|
|
|
|
|
|
queryTerminal,
|
|
|
|
|
|
nodeAllList,
|
|
|
|
|
|
delTerminal,
|
|
|
|
|
|
updateTerminal,
|
|
|
|
|
|
addTerminal,
|
|
|
|
|
|
selectDown
|
|
|
|
|
|
} from '@/api/device-boot/Business'
|
2024-02-20 16:47:12 +08:00
|
|
|
|
import { useDictData } from '@/stores/dictData'
|
2024-09-06 15:10:30 +08:00
|
|
|
|
import { ref, reactive, onMounted } from 'vue'
|
2024-02-20 16:47:12 +08:00
|
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
2024-09-06 15:10:30 +08:00
|
|
|
|
const size = ref(0)
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const TerminalRef = ref()
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const pageHeight = mainHeight(20)
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const Height = mainHeight(100)
|
|
|
|
|
|
const mainForm = ref()
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const loading = ref(false)
|
|
|
|
|
|
const nextfalg = ref(false)
|
|
|
|
|
|
const dictData = useDictData()
|
|
|
|
|
|
const nodeLevel = ref(0)
|
|
|
|
|
|
const pageStatus = ref(1)
|
|
|
|
|
|
const titleList: any = ref([])
|
|
|
|
|
|
const nodeData: any = ref([])
|
|
|
|
|
|
const treeOptions: any = ref([])
|
|
|
|
|
|
const deviceIndex: any = ref('0')
|
|
|
|
|
|
const busBarIndex: any = ref('0')
|
|
|
|
|
|
const lineIndex: any = ref('0')
|
|
|
|
|
|
|
|
|
|
|
|
const projectId: any = ref('0')
|
|
|
|
|
|
const provinceId: any = ref('0')
|
|
|
|
|
|
const gdId: any = ref('0')
|
|
|
|
|
|
const subId: any = ref('0')
|
|
|
|
|
|
const devId: any = ref('0')
|
|
|
|
|
|
const busBarId: any = ref('0')
|
|
|
|
|
|
const lineId: any = ref('0')
|
|
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const updateProject: any = ref(null)
|
|
|
|
|
|
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const currentGdName: any = ref('')
|
|
|
|
|
|
const affiliatiedFrontArr: any = ref([])
|
|
|
|
|
|
const comTypeStatusArr = dictData.getBasicData('Front_Type')
|
|
|
|
|
|
const factoryArr = dictData.getBasicData('Dev_Manufacturers')
|
|
|
|
|
|
const voltageLevelArr = dictData.getBasicData('Dev_Voltage_Stand')
|
|
|
|
|
|
const typeArr = dictData.getBasicData('Dev_Type')
|
|
|
|
|
|
const industryTypeArr = dictData.getBasicData('Business_Type')
|
|
|
|
|
|
const loadTypeArr = dictData.getBasicData('Interference_Source')
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const optionarr = ref([
|
|
|
|
|
|
{ name: '1号母线', value: 1 },
|
|
|
|
|
|
{ name: '2号母线', value: 2 },
|
|
|
|
|
|
{ name: '3号母线', value: 3 },
|
|
|
|
|
|
{ name: '4号母线', value: 4 },
|
|
|
|
|
|
{ name: '5号母线', value: 5 },
|
|
|
|
|
|
{ name: '6号母线', value: 6 }
|
|
|
|
|
|
])
|
|
|
|
|
|
/**母线类型 */
|
|
|
|
|
|
const busBarType = ref([
|
|
|
|
|
|
{ name: '实际母线', value: 0 },
|
|
|
|
|
|
{ name: '虚拟母线', value: 1 }
|
|
|
|
|
|
])
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const comStatusArr = ref([
|
|
|
|
|
|
{ name: '中断', value: 0 },
|
|
|
|
|
|
{ name: '正常', value: 1 }
|
|
|
|
|
|
])
|
|
|
|
|
|
|
|
|
|
|
|
/**终端模型选项 */
|
|
|
|
|
|
const terminalModelArr = ref([
|
|
|
|
|
|
{ name: '实际终端', value: 1 },
|
|
|
|
|
|
{ name: '虚拟终端', value: 0 },
|
|
|
|
|
|
{ name: '离线终端', value: 2 }
|
|
|
|
|
|
])
|
|
|
|
|
|
/**电镀功能选项 */
|
|
|
|
|
|
const electroplateCanArr = ref([
|
|
|
|
|
|
{ name: '开启', value: 0 },
|
|
|
|
|
|
{ name: '关闭', value: 1 }
|
|
|
|
|
|
])
|
|
|
|
|
|
/**数据模型选项 */
|
|
|
|
|
|
const dataModelArr = ref([
|
|
|
|
|
|
{ name: '双系统', value: 2 },
|
|
|
|
|
|
{ name: '暂降系统', value: 0 },
|
|
|
|
|
|
{ name: '稳态系统', value: 1 }
|
|
|
|
|
|
])
|
|
|
|
|
|
/**召唤标志选项 */
|
|
|
|
|
|
const summonSignArr = ref([
|
|
|
|
|
|
{ name: '变位触发', value: 0 },
|
|
|
|
|
|
{ name: '周期触发', value: 1 }
|
|
|
|
|
|
])
|
2024-02-21 15:15:35 +08:00
|
|
|
|
/**监测点序号 */
|
|
|
|
|
|
const pointNumArr = ref([
|
|
|
|
|
|
{ name: '1', value: 1 },
|
|
|
|
|
|
{ name: '2', value: 2 },
|
|
|
|
|
|
{ name: '3', value: 3 },
|
|
|
|
|
|
{ name: '4', value: 4 },
|
|
|
|
|
|
{ name: '5', value: 5 },
|
|
|
|
|
|
{ name: '6', value: 6 }
|
|
|
|
|
|
])
|
|
|
|
|
|
/**监测点间隔 */
|
|
|
|
|
|
const lineSpaceArr = ref([
|
|
|
|
|
|
{ name: '1分钟', value: 1 },
|
|
|
|
|
|
{ name: '3分钟', value: 3 },
|
|
|
|
|
|
{ name: '5分钟', value: 5 },
|
|
|
|
|
|
{ name: '10分钟', value: 10 }
|
|
|
|
|
|
])
|
|
|
|
|
|
const wiringTypeArr = ref([
|
|
|
|
|
|
{ name: '星型接线', value: 0 },
|
|
|
|
|
|
{ name: '三角型接线', value: 1 },
|
|
|
|
|
|
{ name: '开口三角型接线', value: 2 }
|
|
|
|
|
|
])
|
|
|
|
|
|
const lineNatureArr = ref([
|
|
|
|
|
|
{ name: '电网侧', value: 0 },
|
|
|
|
|
|
{ name: '非电网侧', value: 1 }
|
|
|
|
|
|
])
|
|
|
|
|
|
const pointTypeArr = ref([
|
|
|
|
|
|
{ name: 'Ⅰ', value: 1 },
|
|
|
|
|
|
{ name: 'Ⅱ', value: 2 },
|
|
|
|
|
|
{ name: 'Ⅲ', value: 3 },
|
|
|
|
|
|
{ name: 'Ⅳ', value: 4 },
|
|
|
|
|
|
{ name: 'Ⅴ', value: 5 }
|
|
|
|
|
|
])
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const busBarDetail = ref({
|
|
|
|
|
|
/**母线名称 */
|
|
|
|
|
|
name: '',
|
|
|
|
|
|
/**母线编号 */
|
|
|
|
|
|
num: 1,
|
|
|
|
|
|
/**电压等级 */
|
|
|
|
|
|
scale: '',
|
|
|
|
|
|
/**母线类型 */
|
|
|
|
|
|
model: 0,
|
|
|
|
|
|
/**母线id */
|
|
|
|
|
|
subvIndex: '',
|
|
|
|
|
|
/**监测点 */
|
|
|
|
|
|
lineParam: [],
|
|
|
|
|
|
/**排序 */
|
|
|
|
|
|
sort: 0
|
|
|
|
|
|
})
|
|
|
|
|
|
/**监测点详情 */
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const monitorPointDetail: any = ref({
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**行业类型 */
|
|
|
|
|
|
businessType: '',
|
|
|
|
|
|
/**CT变比 */
|
|
|
|
|
|
ct1: '',
|
|
|
|
|
|
/**CT变比 */
|
|
|
|
|
|
ct2: '',
|
|
|
|
|
|
/**所属部门 */
|
|
|
|
|
|
deptIndex: '',
|
2024-06-13 13:32:50 +08:00
|
|
|
|
/**终端容量 */
|
2024-02-20 16:47:12 +08:00
|
|
|
|
devCapacity: '',
|
|
|
|
|
|
/**短路容量 */
|
|
|
|
|
|
shortCapacity: '',
|
2024-08-21 16:05:06 +08:00
|
|
|
|
newStationId: '',
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**基准容量 */
|
|
|
|
|
|
standardCapacity: '',
|
|
|
|
|
|
/**监测点id */
|
|
|
|
|
|
lineIndex: '',
|
|
|
|
|
|
/**监测点序号 */
|
|
|
|
|
|
num: 1,
|
|
|
|
|
|
//分类等级
|
|
|
|
|
|
calssificationGrade: 1,
|
|
|
|
|
|
//电网测变电站
|
|
|
|
|
|
powerSubstationName: '',
|
|
|
|
|
|
//监测点拥有着
|
|
|
|
|
|
owner: '',
|
|
|
|
|
|
//拥有者职位
|
|
|
|
|
|
ownerDuty: '',
|
|
|
|
|
|
//上级变电站
|
|
|
|
|
|
superiorsSubstation: '',
|
|
|
|
|
|
/**负荷类型 */
|
|
|
|
|
|
loadType: '',
|
|
|
|
|
|
/**国网监测号 */
|
|
|
|
|
|
monitorId: '',
|
|
|
|
|
|
/**监测点名称 */
|
|
|
|
|
|
name: '',
|
|
|
|
|
|
/**对象名称 */
|
|
|
|
|
|
objName: '',
|
|
|
|
|
|
/**监测点性质 */
|
|
|
|
|
|
powerFlag: 0,
|
|
|
|
|
|
/**PT比 */
|
|
|
|
|
|
pt1: 0,
|
|
|
|
|
|
/**PT比 */
|
|
|
|
|
|
pt2: 0,
|
|
|
|
|
|
/**接线类型 */
|
|
|
|
|
|
ptType: 0,
|
|
|
|
|
|
/**测点间隔 */
|
|
|
|
|
|
timeInterval: 1,
|
|
|
|
|
|
/**协议容量 */
|
|
|
|
|
|
dealCapacity: '',
|
|
|
|
|
|
/**电压等级 */
|
|
|
|
|
|
scale: '',
|
|
|
|
|
|
/**备注 */
|
|
|
|
|
|
remark: '',
|
|
|
|
|
|
/**电压上偏差 */
|
|
|
|
|
|
voltageDev: 10,
|
|
|
|
|
|
/**电压下偏差 */
|
|
|
|
|
|
uvoltageDev: 10,
|
|
|
|
|
|
/**供电公司 */
|
|
|
|
|
|
gdName: currentGdName.value,
|
|
|
|
|
|
/**排序 */
|
|
|
|
|
|
sort: 0
|
|
|
|
|
|
})
|
|
|
|
|
|
const subStationParam = ref({
|
|
|
|
|
|
/**名称 */
|
|
|
|
|
|
name: '',
|
|
|
|
|
|
/**经度 */
|
|
|
|
|
|
lng: '0',
|
|
|
|
|
|
/**纬度 */
|
|
|
|
|
|
lat: '0',
|
|
|
|
|
|
/**电压等级 */
|
|
|
|
|
|
scale: '',
|
|
|
|
|
|
/**排序 */
|
|
|
|
|
|
sort: 0
|
|
|
|
|
|
})
|
|
|
|
|
|
const AddProjectBO: any = ref({
|
|
|
|
|
|
/**项目Id */
|
|
|
|
|
|
projectIndex: 0,
|
|
|
|
|
|
/**行政区域Id */
|
|
|
|
|
|
provinceIndex: 0,
|
|
|
|
|
|
/**供电公司Id*/
|
|
|
|
|
|
gdIndex: 0,
|
|
|
|
|
|
/**变电站Id*/
|
|
|
|
|
|
subIndex: 0,
|
2024-06-13 13:32:50 +08:00
|
|
|
|
/**终端Id */
|
2024-02-20 16:47:12 +08:00
|
|
|
|
devIndex: 0,
|
|
|
|
|
|
/**母线ID */
|
|
|
|
|
|
subvIndex: 0,
|
|
|
|
|
|
/**项目名称 */
|
2024-02-21 15:15:35 +08:00
|
|
|
|
projectParam: null,
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**行政区域 */
|
2024-02-21 15:15:35 +08:00
|
|
|
|
provinceParam: null,
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**供电公司 */
|
2024-02-21 15:15:35 +08:00
|
|
|
|
gdInformationParam: null,
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**变电站 */
|
2024-02-21 15:15:35 +08:00
|
|
|
|
subStationParam: null,
|
2024-06-13 13:32:50 +08:00
|
|
|
|
/**终端终端 母线 母线下面subVoltage是监测点*/
|
2024-02-20 16:47:12 +08:00
|
|
|
|
deviceParam: null
|
|
|
|
|
|
})
|
|
|
|
|
|
const deviceBODetail: any = ref({
|
|
|
|
|
|
/**名称 */
|
|
|
|
|
|
name: '',
|
2024-06-13 13:32:50 +08:00
|
|
|
|
/**终端id*/
|
2024-02-20 16:47:12 +08:00
|
|
|
|
devIndex: '',
|
2024-06-13 13:32:50 +08:00
|
|
|
|
/**终端型号 */
|
2024-02-20 16:47:12 +08:00
|
|
|
|
devType: '',
|
|
|
|
|
|
/**ip */
|
|
|
|
|
|
ip: '255.255.255.255',
|
|
|
|
|
|
/**通讯状态 */
|
|
|
|
|
|
comFlag: 0,
|
|
|
|
|
|
/**通讯类型 */
|
|
|
|
|
|
frontType: '',
|
|
|
|
|
|
/**投运时间 */
|
|
|
|
|
|
loginTime: '',
|
|
|
|
|
|
/**数据更新时间 */
|
|
|
|
|
|
updateTime: '',
|
|
|
|
|
|
/**所属变电站 */
|
|
|
|
|
|
zhan: '',
|
|
|
|
|
|
/**所属前置机 */
|
|
|
|
|
|
nodeId: '',
|
|
|
|
|
|
/**终端模型 */
|
|
|
|
|
|
devModel: 1,
|
|
|
|
|
|
/**本次定检时间 */
|
|
|
|
|
|
thisTimeCheck: '',
|
|
|
|
|
|
/**下次定检时间 */
|
|
|
|
|
|
nextTimeCheck: '',
|
|
|
|
|
|
/**厂家 */
|
|
|
|
|
|
manufacturer: '',
|
|
|
|
|
|
/**数据模型 */
|
|
|
|
|
|
devDataType: 2,
|
|
|
|
|
|
/**端口号 */
|
|
|
|
|
|
port: 102,
|
|
|
|
|
|
/**排序 */
|
|
|
|
|
|
sort: 0,
|
|
|
|
|
|
//合同号
|
|
|
|
|
|
contract: '',
|
|
|
|
|
|
//ISM卡号
|
|
|
|
|
|
sim: '',
|
|
|
|
|
|
/**电镀功能 */
|
|
|
|
|
|
electroplate: 0,
|
|
|
|
|
|
/**识别码 */
|
|
|
|
|
|
series: '',
|
|
|
|
|
|
/**召唤标志 */
|
|
|
|
|
|
callFlag: 0,
|
|
|
|
|
|
/**密钥 */
|
|
|
|
|
|
devKey: '',
|
|
|
|
|
|
/**母线*/
|
|
|
|
|
|
subVoltageParam: [],
|
|
|
|
|
|
/**供电公司 */
|
|
|
|
|
|
gdName: currentGdName.value
|
|
|
|
|
|
})
|
2024-08-21 16:05:06 +08:00
|
|
|
|
const newStationIdArr: any = ref([])
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const treeClickCount = ref(0)
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const project = ref([
|
|
|
|
|
|
{ name: '在线项目', value: '在线项目' },
|
|
|
|
|
|
{ name: '普测项目', value: '普测项目' }
|
|
|
|
|
|
])
|
|
|
|
|
|
const arrdess: any = ref((rule: any, value: any, callback: any) => {
|
|
|
|
|
|
let reg1 =
|
|
|
|
|
|
/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/
|
|
|
|
|
|
let reg2 =
|
|
|
|
|
|
/^[A-Fa-f0-9]{1,2}\-[A-Fa-f0-9]{1,2}\-[A-Fa-f0-9]{1,2}\-[A-Fa-f0-9]{1,2}\-[A-Fa-f0-9]{1,2}\-[A-Fa-f0-9]{1,2}$/
|
|
|
|
|
|
let reg3 =
|
|
|
|
|
|
/^[A-Fa-f0-9]{1,2}\:[A-Fa-f0-9]{1,2}\:[A-Fa-f0-9]{1,2}\:[A-Fa-f0-9]{1,2}\:[A-Fa-f0-9]{1,2}\:[A-Fa-f0-9]{1,2}$/
|
|
|
|
|
|
if (reg1.test(value)) {
|
|
|
|
|
|
return true
|
|
|
|
|
|
} else if (reg2.test(value)) {
|
|
|
|
|
|
return true
|
|
|
|
|
|
} else if (reg3.test(value)) {
|
|
|
|
|
|
return true
|
|
|
|
|
|
} else if (value == '') {
|
|
|
|
|
|
return callback(new Error('请输入IP/MAC地址'))
|
|
|
|
|
|
} else {
|
|
|
|
|
|
callback(new Error('请输入正确IP/MAC地址'))
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
2024-08-21 16:05:06 +08:00
|
|
|
|
selectDown().then(res => {
|
|
|
|
|
|
newStationIdArr.value = res.data
|
|
|
|
|
|
})
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**经度 */
|
|
|
|
|
|
const lngff: any = ref((rule: any, value: any, callback: any) => {
|
|
|
|
|
|
let reg1 = /^(([1-9]\d?)|(1[0-7]\d))(\.\d{1,6})|180|0(\.\d{1,6})?/
|
|
|
|
|
|
if (reg1.test(value)) {
|
|
|
|
|
|
return true
|
|
|
|
|
|
} else if (value == '') {
|
|
|
|
|
|
return callback(new Error('请输入经度'))
|
|
|
|
|
|
} else {
|
|
|
|
|
|
callback(new Error('请输入正确经度'))
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
/**纬度 */
|
|
|
|
|
|
const latff: any = ref((rule: any, value: any, callback: any) => {
|
|
|
|
|
|
let reg2 = /^(\-|\+)?([0-8]?\d{1}\.\d{0,6}|90\.0{0,6}|[0-8]?\d{1}|90)$/
|
|
|
|
|
|
if (reg2.test(value)) {
|
|
|
|
|
|
return true
|
|
|
|
|
|
} else if (value == '') {
|
|
|
|
|
|
return callback(new Error('请输入纬度'))
|
|
|
|
|
|
} else {
|
|
|
|
|
|
callback(new Error('请输入正确纬度'))
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
const nodeClick = (e: anyObj, data: any) => {
|
2024-02-21 15:15:35 +08:00
|
|
|
|
treeClickCount.value++
|
|
|
|
|
|
if (treeClickCount.value > 2) return
|
|
|
|
|
|
if (treeClickCount.value > 2) return
|
|
|
|
|
|
if (treeClickCount.value == 1) {
|
|
|
|
|
|
if (pageStatus.value == 2 || pageStatus.value == 3) {
|
|
|
|
|
|
if (pageStatus.value == 3 || pageStatus.value == 2) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '请先提交,再做操作'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-02-20 16:47:12 +08:00
|
|
|
|
titleList.value = []
|
|
|
|
|
|
getparentsNode(data)
|
|
|
|
|
|
pageStatus.value = 1
|
|
|
|
|
|
nodeLevel.value = data.data.level
|
|
|
|
|
|
nodeData.value = e
|
2024-02-21 15:15:35 +08:00
|
|
|
|
AddProjectBO.value.projectParam = null
|
|
|
|
|
|
AddProjectBO.value.provinceParam = null
|
|
|
|
|
|
AddProjectBO.value.gdInformationParam = null
|
|
|
|
|
|
AddProjectBO.value.subStationParam = null
|
|
|
|
|
|
AddProjectBO.value.deviceParam = null
|
|
|
|
|
|
evaluate(data)
|
2024-02-20 16:47:12 +08:00
|
|
|
|
if (data.level > 400) {
|
|
|
|
|
|
getNodeIndex()
|
|
|
|
|
|
}
|
|
|
|
|
|
/**不是根节点请求数据 */
|
|
|
|
|
|
if (nodeLevel.value) {
|
|
|
|
|
|
queryNodeContent()
|
|
|
|
|
|
} else {
|
|
|
|
|
|
/**清空数据 */
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
treeClickCount.value = 0
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
const getparentsNode = (node: any) => {
|
|
|
|
|
|
if (!node.parent) {
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
titleList.value.unshift(node.label)
|
|
|
|
|
|
getparentsNode(node.parent) //调用递归
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 新增
|
|
|
|
|
|
const add = () => {
|
|
|
|
|
|
if (pageStatus.value == 2 || pageStatus.value == 3) {
|
|
|
|
|
|
if (pageStatus.value == 3) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '请先提交修改,再新增'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
pageStatus.value = 2
|
|
|
|
|
|
/**删除Id属性 */
|
|
|
|
|
|
delete AddProjectBO.value.projectIndex
|
|
|
|
|
|
delete AddProjectBO.value.provinceIndex
|
|
|
|
|
|
delete AddProjectBO.value.gdIndex
|
|
|
|
|
|
delete AddProjectBO.value.subIndex
|
|
|
|
|
|
delete AddProjectBO.value.devIndex
|
|
|
|
|
|
delete AddProjectBO.value.subvIndex
|
2024-02-21 15:15:35 +08:00
|
|
|
|
// switch (nodeData.value.level) {
|
|
|
|
|
|
|
2024-02-20 16:47:12 +08:00
|
|
|
|
switch (nodeLevel.value) {
|
|
|
|
|
|
case 0:
|
|
|
|
|
|
addProject()
|
2024-02-21 15:15:35 +08:00
|
|
|
|
|
2024-02-20 16:47:12 +08:00
|
|
|
|
break
|
|
|
|
|
|
case 100:
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
2024-02-21 15:15:35 +08:00
|
|
|
|
|
2024-02-20 16:47:12 +08:00
|
|
|
|
addProvince()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 200:
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
addGdInformation()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 300:
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
AddProjectBO.value.gdIndex = gdId.value
|
|
|
|
|
|
addSubStation()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 400:
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
AddProjectBO.value.gdIndex = gdId.value
|
|
|
|
|
|
AddProjectBO.value.subIndex = subId.value
|
|
|
|
|
|
addDevice()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 500:
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
AddProjectBO.value.gdIndex = gdId.value
|
|
|
|
|
|
AddProjectBO.value.subIndex = subId.value
|
|
|
|
|
|
AddProjectBO.value.devIndex = devId.value
|
|
|
|
|
|
|
|
|
|
|
|
addSubVoltage()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 600:
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
AddProjectBO.value.gdIndex = gdId.value
|
|
|
|
|
|
AddProjectBO.value.subIndex = subId.value
|
|
|
|
|
|
AddProjectBO.value.devIndex = devId.value
|
|
|
|
|
|
AddProjectBO.value.subvIndex = busBarId.value
|
|
|
|
|
|
|
|
|
|
|
|
addLine()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 700:
|
|
|
|
|
|
AddProjectBO.value.projectIndex = projectId.value
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = provinceId.value
|
|
|
|
|
|
AddProjectBO.value.gdIndex = gdId.value
|
|
|
|
|
|
AddProjectBO.value.subIndex = subId.value
|
|
|
|
|
|
AddProjectBO.value.devIndex = devId.value
|
|
|
|
|
|
AddProjectBO.value.subvIndex = busBarId.value
|
|
|
|
|
|
|
|
|
|
|
|
addLine()
|
|
|
|
|
|
break
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
deviceBODetail.value.manufacturer = factoryArr[0].id
|
|
|
|
|
|
deviceBODetail.value.devType = typeArr[0].value
|
|
|
|
|
|
deviceBODetail.value.frontType = comTypeStatusArr[0].value
|
2024-02-21 15:15:35 +08:00
|
|
|
|
deviceBODetail.value.nodeId = affiliatiedFrontArr.value[0].id
|
2024-02-20 16:47:12 +08:00
|
|
|
|
busBarDetail.value.scale = voltageLevelArr[0].id
|
|
|
|
|
|
subStationParam.value.scale = voltageLevelArr[0].id
|
|
|
|
|
|
monitorPointDetail.value.businessType = industryTypeArr[0].value
|
|
|
|
|
|
monitorPointDetail.value.loadType = loadTypeArr[0].id
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
/**新增项目 */
|
|
|
|
|
|
const addProject = () => {
|
|
|
|
|
|
nodeLevel.value = 100
|
|
|
|
|
|
AddProjectBO.value.projectParam = { name: '', sort: 0 }
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
// 修改
|
|
|
|
|
|
const update = () => {
|
2024-02-21 15:15:35 +08:00
|
|
|
|
if (Object.keys(nodeData.value).length == 0) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '没有选中节点'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
if (nodeData.value.level == 0) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '不能修改根节点'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
if (pageStatus.value == 2 || pageStatus.value == 3) {
|
|
|
|
|
|
if (pageStatus.value == 2) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '请先新增完成在修改'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
pageStatus.value = 3
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
// 删除
|
|
|
|
|
|
const remove = () => {
|
2024-02-21 15:15:35 +08:00
|
|
|
|
if (Object.keys(nodeData.value).length == 0) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '没有选中节点'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
if (nodeData.value.level == 0) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'error',
|
|
|
|
|
|
message: '无法删除根节点'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
2024-09-11 20:37:40 +08:00
|
|
|
|
if (nodeData.value.id == null) {
|
|
|
|
|
|
ElMessage.warning('无法删除该节点')
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
ElMessageBox.confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
|
|
|
|
confirmButtonText: '确定',
|
|
|
|
|
|
cancelButtonText: '取消',
|
|
|
|
|
|
type: 'warning'
|
|
|
|
|
|
})
|
|
|
|
|
|
.then(() => {
|
|
|
|
|
|
let data = {
|
|
|
|
|
|
id: nodeData.value.id,
|
|
|
|
|
|
level: nodeData.value.level
|
|
|
|
|
|
}
|
|
|
|
|
|
delTerminal(data).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
reaseStatus()
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
|
|
|
|
|
treedata()
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(() => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'info',
|
|
|
|
|
|
message: '已取消删除'
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
// 下一步
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const next = async () => {
|
|
|
|
|
|
await mainForm.value.validate((valid: any) => {
|
|
|
|
|
|
if (valid) {
|
2024-09-11 20:37:40 +08:00
|
|
|
|
console.log("🚀 ~ awaitmainForm.value.validate ~ nodeLevel.value:", nodeLevel.value)
|
|
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
switch (nodeLevel.value) {
|
|
|
|
|
|
case 100:
|
|
|
|
|
|
addProvince()
|
|
|
|
|
|
nextfalg.value = false
|
2024-02-20 16:47:12 +08:00
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
break
|
|
|
|
|
|
case 200:
|
|
|
|
|
|
addGdInformation()
|
|
|
|
|
|
nextfalg.value = false
|
|
|
|
|
|
break
|
|
|
|
|
|
case 300:
|
|
|
|
|
|
addSubStation()
|
|
|
|
|
|
nextfalg.value = false
|
|
|
|
|
|
break
|
|
|
|
|
|
case 400:
|
|
|
|
|
|
addDevice()
|
|
|
|
|
|
nextfalg.value = false
|
2024-02-20 16:47:12 +08:00
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
break
|
|
|
|
|
|
case 500:
|
|
|
|
|
|
addSubVoltage()
|
|
|
|
|
|
nextfalg.value = false
|
2024-02-20 16:47:12 +08:00
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
break
|
|
|
|
|
|
case 600:
|
|
|
|
|
|
addLine()
|
|
|
|
|
|
nextfalg.value = false
|
|
|
|
|
|
break
|
|
|
|
|
|
case 700:
|
|
|
|
|
|
addLine()
|
|
|
|
|
|
nextfalg.value = true
|
|
|
|
|
|
break
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
// 撤销
|
|
|
|
|
|
const black = () => {
|
2024-02-21 15:15:35 +08:00
|
|
|
|
pageStatus.value = 1
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
// 确认提交
|
|
|
|
|
|
const onsubmit = () => {
|
2024-02-21 15:15:35 +08:00
|
|
|
|
// this.$refs["mainForm"].validate((valid) => {
|
|
|
|
|
|
/**验证通过 */
|
|
|
|
|
|
// if (valid) {
|
|
|
|
|
|
if (pageStatus.value == 2) {
|
|
|
|
|
|
// 新增
|
|
|
|
|
|
submitData()
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 修改
|
|
|
|
|
|
switch (nodeLevel.value) {
|
|
|
|
|
|
case 100:
|
|
|
|
|
|
updateProjectF()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 200:
|
|
|
|
|
|
updateProvince()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 300:
|
|
|
|
|
|
updateGdInformation()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 400:
|
|
|
|
|
|
updateSubStation()
|
|
|
|
|
|
break
|
|
|
|
|
|
case 500:
|
|
|
|
|
|
case 600:
|
|
|
|
|
|
case 700:
|
|
|
|
|
|
updateDevice()
|
|
|
|
|
|
break
|
|
|
|
|
|
}
|
|
|
|
|
|
updateDate()
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 提交数据
|
|
|
|
|
|
*/
|
|
|
|
|
|
const submitData = () => {
|
|
|
|
|
|
const project = JSON.parse(JSON.stringify(AddProjectBO.value))
|
2024-02-20 16:47:12 +08:00
|
|
|
|
|
2024-02-21 15:15:35 +08:00
|
|
|
|
// project: JSON.stringify(project)
|
|
|
|
|
|
addTerminal(project).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
reaseStatus()
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
|
|
|
|
|
treedata()
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 修改数据
|
|
|
|
|
|
*/
|
|
|
|
|
|
const updateDate = () => {
|
|
|
|
|
|
// console.log("updateProject:", this.updateProject);
|
|
|
|
|
|
let data = updateProject.value
|
|
|
|
|
|
updateTerminal(data).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
pageStatus.value = 1
|
|
|
|
|
|
treedata()
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
const updateProjectF = () => {
|
|
|
|
|
|
updateProject.value = {
|
|
|
|
|
|
projectUpdateParam: {
|
|
|
|
|
|
name: AddProjectBO.value.projectParam.name,
|
|
|
|
|
|
projectIndex: projectId.value,
|
|
|
|
|
|
sort: AddProjectBO.value.projectParam.sort,
|
|
|
|
|
|
updateFlag: 1
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 修改供电公司
|
|
|
|
|
|
*/
|
|
|
|
|
|
const updateGdInformation = () => {
|
|
|
|
|
|
updateProject.value = {
|
|
|
|
|
|
gdInformationUpdateParam: {
|
|
|
|
|
|
name: AddProjectBO.value.gdInformationParam.name,
|
|
|
|
|
|
sort: AddProjectBO.value.gdInformationParam.sort,
|
|
|
|
|
|
gdIndex: gdId.value,
|
|
|
|
|
|
updateFlag: 1
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 修改行政区域
|
|
|
|
|
|
*/
|
|
|
|
|
|
const updateProvince = () => {
|
|
|
|
|
|
updateProject.value = {
|
|
|
|
|
|
provinceUpdateParam: {
|
|
|
|
|
|
name: AddProjectBO.value.provinceParam.name,
|
|
|
|
|
|
provinceIndex: AddProjectBO.value.provinceIndex,
|
|
|
|
|
|
sort: AddProjectBO.value.provinceParam.sort,
|
|
|
|
|
|
updateFlag: 1
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 修改变电站
|
|
|
|
|
|
*/
|
|
|
|
|
|
const updateSubStation = () => {
|
|
|
|
|
|
updateProject.value = {
|
|
|
|
|
|
subStationUpdateParam: {
|
|
|
|
|
|
name: AddProjectBO.value.subStationParam.name,
|
|
|
|
|
|
lat: AddProjectBO.value.subStationParam.lat,
|
|
|
|
|
|
lng: AddProjectBO.value.subStationParam.lng,
|
|
|
|
|
|
scale: AddProjectBO.value.subStationParam.scale,
|
|
|
|
|
|
subIndex: subId.value,
|
|
|
|
|
|
sort: AddProjectBO.value.subStationParam.sort,
|
|
|
|
|
|
updateFlag: 1
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
2024-06-13 13:32:50 +08:00
|
|
|
|
* 修改变终端/母线/监测点
|
2024-02-21 15:15:35 +08:00
|
|
|
|
*/
|
|
|
|
|
|
const updateDevice = () => {
|
|
|
|
|
|
/**生成数据 */
|
|
|
|
|
|
const devices = JSON.parse(JSON.stringify(AddProjectBO.value.deviceParam))
|
|
|
|
|
|
devices.forEach((item: any) => {
|
|
|
|
|
|
item.updateFlag = 1
|
|
|
|
|
|
item.subVoltageParam = item.subVoltageParam
|
|
|
|
|
|
// delete item.subVoltageParam;
|
|
|
|
|
|
item.subVoltageParam.forEach((bus: any) => {
|
|
|
|
|
|
bus.updateFlag = 1
|
|
|
|
|
|
bus.lineParam = bus.lineParam
|
|
|
|
|
|
//delete bus.lineParam;
|
|
|
|
|
|
bus.lineParam.forEach((line: any) => {
|
|
|
|
|
|
line.updateFlag = 1
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
updateProject.value = {
|
|
|
|
|
|
deviceUpdateParamList: devices
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const addProvince = () => {
|
|
|
|
|
|
nodeLevel.value = 200
|
|
|
|
|
|
AddProjectBO.value.provinceParam = { name: '', sort: 0 }
|
|
|
|
|
|
}
|
|
|
|
|
|
const addGdInformation = () => {
|
|
|
|
|
|
nodeLevel.value = 300
|
|
|
|
|
|
AddProjectBO.value.gdInformationParam = { name: '', sort: 0 }
|
|
|
|
|
|
}
|
|
|
|
|
|
const addSubStation = () => {
|
|
|
|
|
|
nodeLevel.value = 400
|
|
|
|
|
|
AddProjectBO.value.subStationParam = {
|
|
|
|
|
|
name: '',
|
|
|
|
|
|
lng: '0',
|
|
|
|
|
|
lat: '0',
|
|
|
|
|
|
scale: '',
|
|
|
|
|
|
sort: 0
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
const addDevice = () => {
|
|
|
|
|
|
nodeLevel.value = 500
|
|
|
|
|
|
// 不存在,赋值
|
|
|
|
|
|
if (!AddProjectBO.value.deviceParam) {
|
|
|
|
|
|
AddProjectBO.value.deviceParam = []
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const device = JSON.parse(JSON.stringify(deviceBODetail.value))
|
|
|
|
|
|
device.gdName = currentGdName.value
|
|
|
|
|
|
|
|
|
|
|
|
AddProjectBO.value.deviceParam.push(JSON.parse(JSON.stringify(device)))
|
|
|
|
|
|
deviceIndex.value = AddProjectBO.value.deviceParam.length - 1 + ''
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const addSubVoltage = () => {
|
|
|
|
|
|
nodeLevel.value = 600
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam.push(
|
|
|
|
|
|
JSON.parse(JSON.stringify(busBarDetail.value))
|
|
|
|
|
|
)
|
|
|
|
|
|
busBarIndex.value = AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam.length - 1 + ''
|
|
|
|
|
|
}
|
|
|
|
|
|
const addLine = () => {
|
|
|
|
|
|
nodeLevel.value = 700
|
|
|
|
|
|
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam.push(
|
|
|
|
|
|
JSON.parse(JSON.stringify(monitorPointDetail.value))
|
|
|
|
|
|
)
|
|
|
|
|
|
lineIndex.value =
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam.length - 1 + ''
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const getNodeIndex = () => {
|
|
|
|
|
|
deviceIndex.value = '0'
|
|
|
|
|
|
busBarIndex.value = '0'
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
}
|
|
|
|
|
|
/**查询节点内容 */
|
|
|
|
|
|
const queryNodeContent = () => {
|
2024-09-11 20:37:40 +08:00
|
|
|
|
console.log("🚀 ~ queryNodeContent ~ nodeData.value:", nodeData.value)
|
|
|
|
|
|
|
|
|
|
|
|
if (nodeData.value.id == null) {
|
|
|
|
|
|
// ElMessage.warning('1111111')
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
let data = {
|
|
|
|
|
|
id: nodeData.value.id,
|
|
|
|
|
|
level: nodeLevel.value
|
|
|
|
|
|
}
|
|
|
|
|
|
queryTerminal(data).then(res => {
|
|
|
|
|
|
// console.log("内容详情", res);
|
|
|
|
|
|
if (nodeLevel.value === 500) {
|
|
|
|
|
|
var data = res.data
|
|
|
|
|
|
/**假数据 */
|
|
|
|
|
|
var arr = []
|
|
|
|
|
|
var arr1 = []
|
2024-06-13 13:32:50 +08:00
|
|
|
|
//取终端
|
2024-02-20 16:47:12 +08:00
|
|
|
|
for (var i = 0; i < data.deviceVO.length; i++) {}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**对接口再放开 */
|
|
|
|
|
|
AddProjectBO.value.projectIndex =
|
|
|
|
|
|
res.data.projectVO && res.data.projectVO.projectIndex ? res.data.projectVO.projectIndex : 0
|
|
|
|
|
|
AddProjectBO.value.provinceIndex =
|
|
|
|
|
|
res.data.provinceVO && res.data.provinceVO.provinceIndex ? res.data.provinceVO.provinceIndex : 0
|
|
|
|
|
|
AddProjectBO.value.gdIndex =
|
|
|
|
|
|
res.data.gdInformationVO && res.data.gdInformationVO.gdIndex ? res.data.gdInformationVO.gdIndex : 0
|
|
|
|
|
|
AddProjectBO.value.subIndex =
|
|
|
|
|
|
res.data.subStationVO && res.data.subStationVO.subIndex ? res.data.subStationVO.subIndex : 0
|
|
|
|
|
|
|
|
|
|
|
|
AddProjectBO.value.projectParam = {
|
|
|
|
|
|
name: res.data.projectVO.name,
|
|
|
|
|
|
sort: res.data.projectVO.sort
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (nodeLevel.value > 100) {
|
|
|
|
|
|
// AddProjectBO.value.provinceIndex = res.data.provinceVO.name
|
|
|
|
|
|
AddProjectBO.value.provinceParam = {
|
|
|
|
|
|
name: res.data.provinceVO.name,
|
|
|
|
|
|
sort: res.data.provinceVO.sort
|
|
|
|
|
|
}
|
|
|
|
|
|
AddProjectBO.value.provinceParam.name = res.data.provinceVO.name
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (nodeLevel.value > 200) {
|
|
|
|
|
|
AddProjectBO.value.gdInformationParam = {
|
|
|
|
|
|
name: res.data.gdInformationVO.name,
|
|
|
|
|
|
sort: res.data.gdInformationVO.sort
|
|
|
|
|
|
}
|
|
|
|
|
|
currentGdName.value = res.data.gdInformationVO.name
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (nodeLevel.value > 300) {
|
|
|
|
|
|
AddProjectBO.value.subStationParam = JSON.parse(JSON.stringify(res.data.subStationVO))
|
|
|
|
|
|
let deviceBO = JSON.parse(JSON.stringify(res.data.deviceVO))
|
|
|
|
|
|
deviceBO.forEach((item: any) => {
|
|
|
|
|
|
item.subVoltageParam = item.subVoltageVOList ? item.subVoltageVOList : []
|
|
|
|
|
|
delete item.subVoltageVOList
|
|
|
|
|
|
item.subVoltageParam.forEach((litem: any) => {
|
|
|
|
|
|
litem.lineParam = litem.lineVO ? litem.lineVO : []
|
|
|
|
|
|
delete litem.lineVO
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
AddProjectBO.value.deviceParam = JSON.parse(JSON.stringify(deviceBO))
|
|
|
|
|
|
deviceBO = null
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
const initAddProjectBo = () => {
|
|
|
|
|
|
AddProjectBO.value.deviceParam = null
|
|
|
|
|
|
}
|
|
|
|
|
|
/**AddProjectBo的Id恢复初始状态 */
|
|
|
|
|
|
const initAddProjectBoId = () => {
|
|
|
|
|
|
/**项目Id */
|
|
|
|
|
|
AddProjectBO.value.projectIndex = 0
|
|
|
|
|
|
AddProjectBO.value.provinceIndex = 0
|
|
|
|
|
|
AddProjectBO.value.gdIndex = 0
|
|
|
|
|
|
AddProjectBO.value.subIndex = 0
|
|
|
|
|
|
}
|
|
|
|
|
|
const tabChange = (type: string) => {
|
|
|
|
|
|
if (type == 'deviceIndex') {
|
|
|
|
|
|
busBarIndex.value = '0'
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
} else if (type == 'busBarIndex') {
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
2024-06-13 13:32:50 +08:00
|
|
|
|
* 新增/删除终端
|
2024-02-20 16:47:12 +08:00
|
|
|
|
*/
|
|
|
|
|
|
const handleDeviceTabsEdit = (targetName: any, action: any) => {
|
|
|
|
|
|
// console.log(targetName);
|
|
|
|
|
|
/**新增 */
|
|
|
|
|
|
if (action === 'add') {
|
|
|
|
|
|
addDevice()
|
|
|
|
|
|
}
|
|
|
|
|
|
/**删除 */
|
|
|
|
|
|
if (action === 'remove') {
|
|
|
|
|
|
ElMessageBox.confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
|
|
|
|
confirmButtonText: '确定',
|
|
|
|
|
|
cancelButtonText: '取消',
|
|
|
|
|
|
type: 'warning'
|
|
|
|
|
|
})
|
|
|
|
|
|
.then(() => {
|
|
|
|
|
|
if (AddProjectBO.value.deviceParam[deviceIndex.value].devIndex) {
|
|
|
|
|
|
let data = {
|
|
|
|
|
|
id: AddProjectBO.value.deviceParam[deviceIndex.value].devIndex,
|
|
|
|
|
|
level: 500
|
|
|
|
|
|
}
|
|
|
|
|
|
delTerminal(data).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
reaseStatus()
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
2024-02-21 15:15:35 +08:00
|
|
|
|
treedata()
|
2024-02-20 16:47:12 +08:00
|
|
|
|
})
|
|
|
|
|
|
} else {
|
|
|
|
|
|
AddProjectBO.value.deviceParam.splice(deviceIndex.value, 1)
|
|
|
|
|
|
deviceIndex.value = AddProjectBO.value.deviceParam.length
|
|
|
|
|
|
? AddProjectBO.value.deviceParam.length - 1 + ''
|
|
|
|
|
|
: '0'
|
|
|
|
|
|
busBarIndex.value = '0'
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: '删除成功'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(() => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'info',
|
|
|
|
|
|
message: '已取消删除'
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 新增/删除母线
|
|
|
|
|
|
*/
|
|
|
|
|
|
const handleBusBarTabsEdit = (targetName: any, action: any) => {
|
|
|
|
|
|
// console.log(targetName);
|
|
|
|
|
|
/**新增 */
|
|
|
|
|
|
if (action === 'add') {
|
|
|
|
|
|
addSubVoltage()
|
|
|
|
|
|
}
|
|
|
|
|
|
/**删除 */
|
|
|
|
|
|
if (action === 'remove') {
|
|
|
|
|
|
ElMessageBox.confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
|
|
|
|
confirmButtonText: '确定',
|
|
|
|
|
|
cancelButtonText: '取消',
|
|
|
|
|
|
type: 'warning'
|
|
|
|
|
|
})
|
|
|
|
|
|
.then(() => {
|
|
|
|
|
|
if (AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].subvIndex) {
|
|
|
|
|
|
let data = {
|
|
|
|
|
|
id: AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value]
|
|
|
|
|
|
.subvIndex,
|
|
|
|
|
|
level: 600
|
|
|
|
|
|
}
|
|
|
|
|
|
delTerminal(data).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
reaseStatus()
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
|
|
|
|
|
treedata()
|
|
|
|
|
|
})
|
|
|
|
|
|
} else {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam.splice(busBarIndex.value, 1)
|
|
|
|
|
|
busBarIndex.value = AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam.length
|
|
|
|
|
|
? AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam.length - 1 + ''
|
|
|
|
|
|
: '0'
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: '删除成功'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(() => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'info',
|
|
|
|
|
|
message: '已取消删除'
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 新增/删除监测点
|
|
|
|
|
|
*/
|
|
|
|
|
|
const handleLineTabsEdit = (targetName: any, action: any) => {
|
|
|
|
|
|
/**新增 */
|
|
|
|
|
|
if (action === 'add') {
|
|
|
|
|
|
if (
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam.length == 6
|
|
|
|
|
|
) {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'warning',
|
|
|
|
|
|
message: '不能新增更多的监测点了'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
addLine()
|
|
|
|
|
|
}
|
|
|
|
|
|
/**删除 */
|
|
|
|
|
|
if (action === 'remove') {
|
|
|
|
|
|
ElMessageBox.confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
|
|
|
|
confirmButtonText: '确定',
|
|
|
|
|
|
cancelButtonText: '取消',
|
|
|
|
|
|
type: 'warning'
|
|
|
|
|
|
})
|
|
|
|
|
|
.then(() => {
|
|
|
|
|
|
if (
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[
|
|
|
|
|
|
lineIndex.value
|
|
|
|
|
|
].lineIndex
|
|
|
|
|
|
) {
|
|
|
|
|
|
let data = {
|
|
|
|
|
|
id: AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value]
|
|
|
|
|
|
.lineParam[lineIndex.value].lineIndex,
|
|
|
|
|
|
level: 700
|
|
|
|
|
|
}
|
|
|
|
|
|
delTerminal(data).then((res: any) => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: res.message
|
|
|
|
|
|
})
|
|
|
|
|
|
reaseStatus()
|
|
|
|
|
|
initAddProjectBo()
|
|
|
|
|
|
initAddProjectBoId()
|
|
|
|
|
|
treedata()
|
|
|
|
|
|
})
|
|
|
|
|
|
} else {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam.splice(lineIndex.value, 1)
|
|
|
|
|
|
lineIndex.value = AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam.length
|
|
|
|
|
|
? AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam
|
|
|
|
|
|
.length -
|
|
|
|
|
|
1 +
|
|
|
|
|
|
''
|
|
|
|
|
|
: '0'
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'success',
|
|
|
|
|
|
message: '删除成功'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(() => {
|
|
|
|
|
|
ElMessage({
|
|
|
|
|
|
type: 'info',
|
|
|
|
|
|
message: '已取消删除'
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
const treedata = () => {
|
|
|
|
|
|
TerminalRef.value.info(nodeData.value.id)
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 重置初始状态
|
|
|
|
|
|
*/
|
|
|
|
|
|
const reaseStatus = () => {
|
|
|
|
|
|
nodeData.value = {}
|
|
|
|
|
|
nodeLevel.value = 0
|
|
|
|
|
|
pageStatus.value = 1
|
|
|
|
|
|
projectId.value = 0
|
|
|
|
|
|
provinceId.value = 0
|
|
|
|
|
|
gdId.value = 0
|
|
|
|
|
|
subId.value = 0
|
|
|
|
|
|
devId.value = 0
|
|
|
|
|
|
busBarId.value = 0
|
|
|
|
|
|
lineId.value = 0
|
|
|
|
|
|
deviceIndex.value = '0'
|
|
|
|
|
|
busBarIndex.value = '0'
|
|
|
|
|
|
lineIndex.value = '0'
|
|
|
|
|
|
currentGdName.value = ''
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
const evaluate = (node: any) => {
|
|
|
|
|
|
switch (node.data.level) {
|
|
|
|
|
|
case 100:
|
|
|
|
|
|
projectId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 200:
|
|
|
|
|
|
provinceId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 300:
|
|
|
|
|
|
gdId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 400:
|
|
|
|
|
|
subId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 500:
|
|
|
|
|
|
devId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 600:
|
|
|
|
|
|
busBarId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
case 700:
|
|
|
|
|
|
lineId.value = node.data.id
|
|
|
|
|
|
break
|
|
|
|
|
|
}
|
|
|
|
|
|
if (node.parent) {
|
|
|
|
|
|
evaluate(node.parent)
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
const selectChanged = (value: any) => {
|
|
|
|
|
|
if (value === '3d68ceef26a579efe2fe0cdc654911b7') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 10
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
0.38 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
0.38 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 10
|
|
|
|
|
|
//750kv
|
|
|
|
|
|
} else if (value === '4cf2d844c47a15a1c16a65b4bbfd1b0e') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 7000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
750 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
750 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 7000
|
|
|
|
|
|
//6kv
|
|
|
|
|
|
} else if (value === '37b81bf8aa0fd54098716da3fc0ee433') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 = 6 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 = 6 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 100
|
|
|
|
|
|
//10kv
|
|
|
|
|
|
} else if (value === 'e3da890104e3c4ae1f005021411a1fd7') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
10 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 = 10 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 100
|
|
|
|
|
|
//20kv
|
|
|
|
|
|
} else if (value === '87065e15765e5899114a6d6b9e4fb3cb') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 200
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
20 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 = 20 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 200
|
|
|
|
|
|
//35kv
|
|
|
|
|
|
} else if (value === '8529cfa11356a0666afd3f9fa4da09a4') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 250
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
35 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 = 35 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 250
|
|
|
|
|
|
//66kv
|
|
|
|
|
|
} else if (value === '9ce75596a3368da4adf3374b4fc3b619') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 500
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
66 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 = 66 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 500
|
|
|
|
|
|
//110kv
|
|
|
|
|
|
} else if (value === 'e96d74b79bd50ad0bc00a405246f1e1f') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 750
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
110 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
110 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 750
|
|
|
|
|
|
//220kv
|
|
|
|
|
|
} else if (value === '1b7b58ed8fcc2992b95334eaa9010c41') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 2000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
220 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
220 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 2000
|
|
|
|
|
|
//330kv
|
|
|
|
|
|
} else if (value === 'c1b37350a67f5e229a1f96ace0ad04dc') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 3000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
330 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
330 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 3000
|
|
|
|
|
|
//500kv
|
|
|
|
|
|
} else if (value === '1fa650685c77db1656c70f9db4a2edc6') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 4500
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
500 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
500 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 4500
|
|
|
|
|
|
//1000kv
|
|
|
|
|
|
} else if (value === '674cf02fb3fcfd9f99fd786cfca090df') {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 9000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt1 =
|
|
|
|
|
|
1000 * 1000
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[busBarIndex.value].lineParam[0].pt2 =
|
|
|
|
|
|
1000 * 100
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 9000
|
|
|
|
|
|
} else {
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].standardCapacity = 10
|
|
|
|
|
|
AddProjectBO.value.deviceParam[deviceIndex.value].subVoltageParam[
|
|
|
|
|
|
busBarIndex.value
|
|
|
|
|
|
].lineParam[0].shortCapacity = 10
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
const area = () => {
|
|
|
|
|
|
areaTree({ id: '', type: 0 }).then((res: any) => {
|
|
|
|
|
|
treeOptions.value = res.data
|
|
|
|
|
|
})
|
|
|
|
|
|
nodeAllList().then(res => {
|
|
|
|
|
|
// console.log("前置机", res);
|
|
|
|
|
|
affiliatiedFrontArr.value = res.data
|
|
|
|
|
|
deviceBODetail.value.nodeId = res.data[0].id
|
|
|
|
|
|
})
|
2024-02-21 15:15:35 +08:00
|
|
|
|
|
|
|
|
|
|
let data = new Date()
|
|
|
|
|
|
let year: any = data.getFullYear()
|
|
|
|
|
|
let month: any = data.getMonth()
|
|
|
|
|
|
if (month + 1 >= 10) {
|
|
|
|
|
|
month = month + 1
|
|
|
|
|
|
} else {
|
|
|
|
|
|
month = '0' + (month + 1)
|
|
|
|
|
|
}
|
|
|
|
|
|
let day: any = data.getDate()
|
|
|
|
|
|
if (day + 1 >= 10) {
|
|
|
|
|
|
day = day + 1
|
|
|
|
|
|
} else {
|
|
|
|
|
|
day = '0' + (day + 1)
|
|
|
|
|
|
}
|
|
|
|
|
|
deviceBODetail.value.thisTimeCheck = year + '-' + month + '-' + day
|
|
|
|
|
|
deviceBODetail.value.loginTime = year + '-' + month + '-' + day
|
|
|
|
|
|
deviceBODetail.value.updateTime = year + '-' + month + '-' + day
|
|
|
|
|
|
deviceBODetail.value.nextTimeCheck = year + 1 + '-' + month + '-' + (day - 1 > 10 ? day - 1 : '0' + (day - 1))
|
2024-02-20 16:47:12 +08:00
|
|
|
|
}
|
2024-09-06 15:10:30 +08:00
|
|
|
|
onMounted(() => {
|
|
|
|
|
|
const dom = document.getElementById('navigation-splitpanes')
|
|
|
|
|
|
if (dom) {
|
|
|
|
|
|
size.value = Math.round((180 / dom.offsetHeight) * 100)
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
2024-02-20 16:47:12 +08:00
|
|
|
|
area()
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
2024-09-06 15:10:30 +08:00
|
|
|
|
<style lang="scss" scoped>
|
2024-02-20 16:47:12 +08:00
|
|
|
|
.device-manage {
|
|
|
|
|
|
display: flex;
|
2024-09-06 15:10:30 +08:00
|
|
|
|
padding: 10px;
|
2024-02-20 16:47:12 +08:00
|
|
|
|
&-right {
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
padding: 10px 10px 10px 0;
|
|
|
|
|
|
.el-descriptions__header {
|
|
|
|
|
|
height: 36px;
|
|
|
|
|
|
margin-bottom: 7px;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.main-form {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
|
.form-top {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.el-form-item {
|
|
|
|
|
|
width: 30%;
|
|
|
|
|
|
margin-bottom: 15px;
|
|
|
|
|
|
.el-select {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
min-width: 0px;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-02-21 15:15:35 +08:00
|
|
|
|
.el-tabs__content {
|
|
|
|
|
|
margin-top: 15px;
|
|
|
|
|
|
}
|
2024-09-06 15:10:30 +08:00
|
|
|
|
.splitpanes.default-theme .splitpanes__pane {
|
|
|
|
|
|
background: #fff !important;
|
|
|
|
|
|
}
|
2024-02-20 16:47:12 +08:00
|
|
|
|
</style>
|