终端监测

This commit is contained in:
zhujiyan
2024-05-20 15:00:18 +08:00
parent 2f45334069
commit 2f1e3c97be
7 changed files with 83 additions and 187 deletions

View File

@@ -567,9 +567,7 @@ const monitoringTerminalList = ref([])
//获取关联设备 //获取关联设备
const findAllMonitoringTerminalList = () => { const findAllMonitoringTerminalList = () => {
getDeviceList().then(res => { getDeviceList().then(res => {
console.log(res, '-------------')
monitoringTerminalList.value = res.data monitoringTerminalList.value = res.data
console.log(monitoringTerminalList.value[0].monitoringTerminalCode, '++++++++++')
}) })
} }
//查询关联设备下拉框 //查询关联设备下拉框

View File

@@ -1,6 +1,15 @@
<template> <template>
<div class="default-main"> <div class="default-main">
666666
<el-descriptions :column="2" border> <el-descriptions :column="2" border>
<el-descriptions-item label="监测点台账信息" v-if="detailData.lineFilePath">
<el-icon>
<Link />
</el-icon>
<a :href="detailData?.lineFilePath.url">
{{ detailData?.lineFilePath.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="填报人"> <el-descriptions-item label="填报人">
{{ detailData.reporter }} {{ detailData.reporter }}
</el-descriptions-item> </el-descriptions-item>
@@ -33,7 +42,11 @@
{{ detailData.lineName }} {{ detailData.lineName }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="监测点电压等级"> <el-descriptions-item label="监测点电压等级">
{{ detailData.voltageLevel }} {{
voltageLevelList.find((item)=>{
return detailData.voltageLevel==item.id
})?.name
}}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="接入母线"> <el-descriptions-item label="接入母线">
{{ detailData.connectedBus }} {{ detailData.connectedBus }}
@@ -69,7 +82,7 @@
{{ detailData.businessType }} {{ detailData.businessType }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="监测点性质"> <el-descriptions-item label="监测点性质">
{{ detailData.pointNature }} {{ detailData.pointNature=='0'?'电网侧':'非电网侧' }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="是否参与统计"> <el-descriptions-item label="是否参与统计">
{{ detailData.isStatistical == '0' ? '是' : '否' }} {{ detailData.isStatistical == '0' ? '是' : '否' }}
@@ -90,17 +103,13 @@
{{ detailData.voltageDeviationLowerLimit }} {{ detailData.voltageDeviationLowerLimit }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="监测点运行状态"> <el-descriptions-item label="监测点运行状态">
{{ detailData.operationStatus }} {{
operationStatusList.find((item)=>{
return detailData.operationStatus==item.id
})?.name
}}
</el-descriptions-item> </el-descriptions-item>
<!--文件地址--> <!--文件地址-->
<el-descriptions-item label="监测点台账信息" v-if="detailData.lineFilePath">
<el-icon>
<Link />
</el-icon>
<a :href="detailData?.lineFilePath.url">
{{ detailData?.lineFilePath.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="主接线图" v-if="detailData?.mainWiringDiagram"> <el-descriptions-item label="主接线图" v-if="detailData?.mainWiringDiagram">
<el-icon> <el-icon>
<Link /> <Link />
@@ -220,13 +229,35 @@ const frontEndMachineList = dictData.getBasicData('Front_Type')
const terminalWiringMethodTypeList = dictData.getBasicData('Dev_Connect') const terminalWiringMethodTypeList = dictData.getBasicData('Dev_Connect')
//字典获取厂家 //字典获取厂家
const manufacturerList = dictData.getBasicData('Dev_Manufacturers') const manufacturerList = dictData.getBasicData('Dev_Manufacturers')
//定义监测点运行状态下拉框数据
const operationStatusList = [
{
id: '0',
name: '运行'
},
{
id: '1',
name: '检修'
},
{
id: '2',
name: '停运'
},
{
id: '3',
name: '调试'
},
{
id: '4',
name: '退运'
}
]
/** 获得数据 */ /** 获得数据 */
const getInfo = async () => { const getInfo = async () => {
detailLoading.value = true detailLoading.value = true
try { try {
await getTempLineDetailsById({ id: props.id || queryId }).then(res => { await getTempLineDetailsById({ id: props.id || queryId }).then(res => {
detailData.value = res.data detailData.value = res.data
console.log(detailData.value, '++++获取监测点详情数据+++++')
getFileName() getFileName()
}) })
} finally { } finally {
@@ -234,124 +265,27 @@ const getInfo = async () => {
} }
} }
const getFileName = async () => { const getFileName = async () => {
//验收检验报告
if (detailData.value.acceptanceInspectionReport) {
await getFileNamePath(detailData.value.acceptanceInspectionReport, 'acceptanceInspectionReport')
}
//验收检验报告单
if (detailData.value.acceptanceInspectionReportSingle) {
await getFileNamePath(detailData.value.acceptanceInspectionReportSingle, 'acceptanceInspectionReportSingle')
}
//出厂检验报告
if (detailData.value.factoryInspectionReport) {
await getFileNamePath(detailData.value.factoryInspectionReport, 'factoryInspectionReport')
}
//信息安全检测报告
if (detailData.value.informationSecurityTestReport) {
await getFileNamePath(detailData.value.informationSecurityTestReport, 'informationSecurityTestReport')
}
//监测点台账信息 //监测点台账信息
if (detailData.value.lineFilePath) { if (detailData.value.lineFilePath) {
await getFileNamePath(detailData.value.lineFilePath, 'lineFilePath') await getFileNamePath(detailData.value.lineFilePath, 'lineFilePath')
} }
//其他附件
if (detailData.value.otherAttachments) {
await getFileNamePath(detailData.value.otherAttachments, 'otherAttachments')
}
//性能检测报告
if (detailData.value.performanceTestReport) {
await getFileNamePath(detailData.value.performanceTestReport, 'performanceTestReport')
}
//型式实验报告
if (detailData.value.typeExperimentReport) {
await getFileNamePath(detailData.value.typeExperimentReport, 'typeExperimentReport')
}
//主接线图 //主接线图
if (detailData.value.mainWiringDiagram) { else if (detailData.value.mainWiringDiagram) {
await getFileNamePath(detailData.value.mainWiringDiagram, 'mainWiringDiagram') await getFileNamePath(detailData.value.mainWiringDiagram, 'mainWiringDiagram')
} }
//其他附件
// if (detailData.value.additionalAttachments) {
// getFileNamePath(detailData.value.additionalAttachments, 'additionalAttachments')
// }
} }
//根据文件名请求 //根据文件名请求
const getFileNamePath = async (val: any, pathName: any) => { const getFileNamePath = async (val: any, pathName: any) => {
await getFileNameAndFilePath({ filePath: val }).then(res => { await getFileNameAndFilePath({ filePath: val }).then(res => {
console.log(111111111)
if (res.data) { if (res.data) {
//可研报告 //监测点台账信息
if (pathName == 'acceptanceInspectionReport' && detailData.value.acceptanceInspectionReport) { if (pathName == 'lineFilePath' && detailData.value.lineFilePath) {
detailData.value.acceptanceInspectionReport = {
name: res.data.fileName,
url: res.data.url
}
}
//终端台账信息
else if (
pathName == 'acceptanceInspectionReportSingle' &&
detailData.value.acceptanceInspectionReportSingle
) {
detailData.value.acceptanceInspectionReportSingle = {
name: res.data.fileName,
url: res.data.url
}
}
//预测评估报告
else if (pathName == 'factoryInspectionReport' && detailData.value.factoryInspectionReport) {
detailData.value.factoryInspectionReport = {
name: res.data.fileName,
url: res.data.url
}
}
//预测评估评审意见报告
else if (pathName == 'informationSecurityTestReport' && detailData.value.informationSecurityTestReport) {
detailData.value.informationSecurityTestReport = {
name: res.data.fileName,
url: res.data.url
}
}
//用户接入变电站主接线示意图
else if (pathName == 'lineFilePath' && detailData.value.lineFilePath) {
detailData.value.lineFilePath = { detailData.value.lineFilePath = {
name: res.data.fileName, name: res.data.fileName,
url: res.data.url url: res.data.url
} }
} }
//主要敏感设备清单
else if (pathName == 'otherAttachments' && detailData.value.otherAttachments) {
detailData.value.otherAttachments = {
name: res.data.fileName,
url: res.data.url
}
}
//抗扰度测试报告
else if (pathName == 'performanceTestReport' && detailData.value.performanceTestReport) {
detailData.value.performanceTestReport = {
name: res.data.fileName,
url: res.data.url
}
}
//背景电能质量测试报告
else if (pathName == 'typeExperimentReport' && detailData.value.typeExperimentReport) {
detailData.value.typeExperimentReport = {
name: res.data.fileName,
url: res.data.url
}
}
//其他附件
else if (pathName == 'additionalAttachments' && detailData.value.additionalAttachments) {
detailData.value.additionalAttachments = {
name: res.data.fileName,
url: res.data.url
}
}
//主接线图 //主接线图
else if (pathName == 'mainWiringDiagram' && detailData.value.mainWiringDiagram) { else if (pathName == 'mainWiringDiagram' && detailData.value.mainWiringDiagram) {
detailData.value.mainWiringDiagram = { detailData.value.mainWiringDiagram = {

View File

@@ -48,9 +48,9 @@
<!-- 基础信息 --> <!-- 基础信息 -->
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="填报人:" prop="reporter"> <el-form-item label="填报人:" prop="reporterName">
<el-input <el-input
v-model="form.reporter" v-model="form.reporterName"
autocomplete="off" autocomplete="off"
place-holder="请输入填报人" place-holder="请输入填报人"
:disabled="true" :disabled="true"
@@ -369,7 +369,8 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12" class="required_position">
<span class="required_icon_white">*</span>
<el-form-item label="电网侧变电站:" prop="powerSubstationName"> <el-form-item label="电网侧变电站:" prop="powerSubstationName">
<el-input <el-input
v-model="form.powerSubstationName" v-model="form.powerSubstationName"
@@ -390,7 +391,8 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12" class="required_position">
<span class="required_icon_white">*</span>
<el-form-item label="电压偏差上限:" prop="voltageDeviationUpperLimit"> <el-form-item label="电压偏差上限:" prop="voltageDeviationUpperLimit">
<el-input <el-input
v-model="form.voltageDeviationUpperLimit" v-model="form.voltageDeviationUpperLimit"
@@ -400,7 +402,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" class="required_position">
<span class="required_icon_white">*</span>
<el-form-item label="电压偏差下限:" prop="voltageDeviationLowerLimit"> <el-form-item label="电压偏差下限:" prop="voltageDeviationLowerLimit">
<el-input <el-input
v-model="form.voltageDeviationLowerLimit" v-model="form.voltageDeviationLowerLimit"
@@ -553,6 +556,7 @@ const getSelectableList = () => {
...form.value, ...form.value,
city: obj.city, city: obj.city,
reporter: obj.reporter, reporter: obj.reporter,
reporterName:obj.reporterName,
reportDate: obj.reportDate, reportDate: obj.reportDate,
orgId: obj.orgId, orgId: obj.orgId,
orgName:obj.orgName, orgName:obj.orgName,
@@ -567,9 +571,7 @@ const monitoringTerminalList = ref([])
//获取关联设备 //获取关联设备
const findAllMonitoringTerminalList = () => { const findAllMonitoringTerminalList = () => {
getDeviceList().then(res => { getDeviceList().then(res => {
console.log(res, '-------------') monitoringTerminalList.value = res.data;
monitoringTerminalList.value = res.data
console.log(monitoringTerminalList.value[0].monitoringTerminalCode, '++++++++++')
}) })
} }
//查询关联设备下拉框 //查询关联设备下拉框
@@ -589,6 +591,7 @@ selectFormType.value = '0'
const resetForm = () => { const resetForm = () => {
form.value = { form.value = {
reporter: '', //填报人 reporter: '', //填报人
reporterName:'',//填报人名称
reportDate: '', //填报日期 reportDate: '', //填报日期
orgId: '', //填报部门id orgId: '', //填报部门id
orgName:'', //填报部门名称 orgName:'', //填报部门名称
@@ -628,9 +631,6 @@ const resetForm = () => {
// form.value.reporter = adminInfo.$state.name // form.value.reporter = adminInfo.$state.name
// form.value.orgId = adminInfo.$state.deptName // form.value.orgId = adminInfo.$state.deptName
} }
//初始化数据
resetForm()
getSelectableList()
findAllMonitoringTerminalList() findAllMonitoringTerminalList()
//获取树形图数据 //获取树形图数据
@@ -665,66 +665,27 @@ const changeLoadType = async () => {
//选择关联干扰源回显数据 //选择关联干扰源回显数据
const changeUserName = () => { const changeUserName = () => {
let obj = projectList.value.find(item => { let obj = projectList.value.find(item => {
return form.value.userName == item.projectName return form.value.reporter == item.reporter
}) })
form.value = { form.value = {
...form.value, ...form.value,
city: obj.city, city: obj?.city,
reporter: obj.reporter, reporter: obj?.reporter,
reportDate: obj.reportDate, reporterName:obj?.reporterName,
orgId: obj.orgId, reportDate: obj?.reportDate,
orgName: obj.orgName, orgId: obj?.orgId,
userName: obj.projectName, orgName: obj?.orgName,
userId: obj.id, userName: obj?.projectName,
expectedProductionDate: obj.expectedProductionDate userId: obj?.id,
expectedProductionDate: obj?.expectedProductionDate
} }
console.log(obj, '选择关联干扰源回显数据') console.log(obj, '选择关联干扰源回显数据')
} }
//监测点信息表单格式
const monitorPointForm = ref({
reporter: '', //填报人
reportDate: '', //填报日期
orgId: '', //填报部门
orgName:'',
expectedProductionDate: '', //工程投产日期
city: areaOptionList[0].name, //所属地市
userStatus: userStateList[1].id, //用户状态
userName: '', //工程名称
userId: '',
monitoringTerminalCode: '', //关联设备
monitoringTerminalName: '',
//监测点信息实体
// supervisionTempLineReportParam: {
businessType: '', // 干扰源类别
connectedBus: '', // 接入母线
ctRatio: '0', //CT变比
dealCapacity: '0', //协议容量
devCapacity: '0', //设备容量
isGridConnectionPoint: '0', //是否并网点
isStatistical: '0', // 是否参与统计
lineId: '', // 监测点编码
lineName: '', // 监测点名称
loadType: '', //干扰源类型
mainWiringDiagram: '', // 主接线图
objName: '', //监测点对象名称
operationStatus: '', //监测点运行状态
pointNature: '', //监测点性质
powerSubstationName: '', //电网侧变电站
ptRatio: '0', // PT变比
shortCapacity: '0', // 短路容量
standardCapacity: '0', //基准容量
timeInterval: '0', //测量间隔
voltageDeviationLowerLimit: '0', //电压偏差下限
voltageDeviationUpperLimit: '0', // 电压偏差上限
voltageLevel: '' //监测点电压等级
// }
})
//定义校验规则 //定义校验规则
const rules = ref({ const rules = ref({
//基础信息 //基础信息
reporter: [ reporterName: [
{ {
required: true, required: true,
message: '请输入填报人', message: '请输入填报人',
@@ -946,6 +907,9 @@ watch(
) )
const open = () => { const open = () => {
dialogFormVisible.value = true dialogFormVisible.value = true
//初始化数据
resetForm()
getSelectableList()
} }
const close = () => { const close = () => {
//重置表单内容 //重置表单内容
@@ -1088,18 +1052,21 @@ defineExpose({ open })
left: -10px; left: -10px;
margin-top: 8px; margin-top: 8px;
color: #f56c6c; color: #f56c6c;
margin-left: 20px;
margin-left: 10px; margin-left: 10px;
}
.required_icon_white {
color: #fff;
position: absolute;
left: -10px;
padding-left: 30px;
margin: 8px 10px 0 30px;
} }
.required_text { .required_text {
padding-left: 20px; // padding-left: 20px;
} }
} }
.no_required::v-deep .el-form-item__label {
padding-left: 10px !important;
width: 70px !important;
margin-left: 0px !important;
}
// ::v-deep .tabs_form{ // ::v-deep .tabs_form{
// height:300px !important; // height:300px !important;
// } // }

View File

@@ -277,7 +277,6 @@ const getFileName = async () => {
//根据文件名请求 //根据文件名请求
const getFileNamePath = async (val: any, pathName: any) => { const getFileNamePath = async (val: any, pathName: any) => {
await getFileNameAndFilePath({ filePath: val }).then(res => { await getFileNameAndFilePath({ filePath: val }).then(res => {
console.log(111111111)
if (res.data) { if (res.data) {
//监测点台账信息 //监测点台账信息
if (pathName == 'lineFilePath' && detailData.value.lineFilePath) { if (pathName == 'lineFilePath' && detailData.value.lineFilePath) {

View File

@@ -210,7 +210,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="测终端编码:" prop="monitoringTerminalCode"> <el-form-item label="测终端编码:" prop="monitoringTerminalCode">
<el-input <el-input
v-model="form.monitoringTerminalCode" v-model="form.monitoringTerminalCode"
autocomplete="off" autocomplete="off"
@@ -221,7 +221,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="测终端名称:" prop="monitoringTerminalName"> <el-form-item label="测终端名称:" prop="monitoringTerminalName">
<el-input <el-input
v-model="form.monitoringTerminalName" v-model="form.monitoringTerminalName"
autocomplete="off" autocomplete="off"

View File

@@ -402,7 +402,6 @@ const getFileName = async () => {
//根据文件名请求 //根据文件名请求
const getFileNamePath = async (val: any, pathName: any) => { const getFileNamePath = async (val: any, pathName: any) => {
await getFileNameAndFilePath({ filePath: val }).then(res => { await getFileNameAndFilePath({ filePath: val }).then(res => {
console.log(111111111)
if (res.data) { if (res.data) {
//可研报告 //可研报告
if (pathName == 'acceptanceInspectionReport' && detailData.value.acceptanceInspectionReport) { if (pathName == 'acceptanceInspectionReport' && detailData.value.acceptanceInspectionReport) {

View File

@@ -16,7 +16,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { onMounted, reactive, ref, provide } from 'vue' import { onMounted, reactive, ref, provide } from 'vue'
import undocumented from './components/undocumented/index.vue'
import { mainHeight } from '@/utils/layout' import { mainHeight } from '@/utils/layout'
import terminal from './components/terminainal/index.vue' import terminal from './components/terminainal/index.vue'
import monitorpoint from './components/monitorpoint/index.vue' import monitorpoint from './components/monitorpoint/index.vue'