bug调整
This commit is contained in:
@@ -22,19 +22,20 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="报表类型">
|
||||
<el-select
|
||||
:disabled="true"
|
||||
v-model="reportForm"
|
||||
:popper-append-to-body="false"
|
||||
placeholder="请选择报表类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in reportFormList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
<el-input readonly type='text' value='分析报表'></el-input>
|
||||
<!-- <el-select-->
|
||||
<!-- :disabled="true"-->
|
||||
<!-- v-model="reportForm"-->
|
||||
<!-- :popper-append-to-body="false"-->
|
||||
<!-- placeholder="请选择报表类型"-->
|
||||
<!-- >-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in reportFormList"-->
|
||||
<!-- :key="item.value"-->
|
||||
<!-- :label="item.label"-->
|
||||
<!-- :value="item.value"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<el-input v-model="tableStore.table.params.crmName" maxlength="32" show-word-limit clearable placeholder="请输入客户名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="报表编号">
|
||||
<el-input v-model="tableStore.table.params.reportNumber" clearable placeholder="请输入报表编号" />
|
||||
<el-input v-model="tableStore.table.params.reportNumber" clearable placeholder="请输入报表编号" maxlength="12" show-word-limit />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
@@ -46,7 +46,7 @@ import TableHeader from '@/components/table/header/index.vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { mainHeight } from '@/utils/layout'
|
||||
import { exportModel } from '@/api/process-boot/reportForms'
|
||||
import { genFileId, ElMessage } from 'element-plus'
|
||||
import { genFileId, ElMessage, ElNotification } from 'element-plus'
|
||||
import type { UploadProps, UploadUserFile } from 'element-plus'
|
||||
defineOptions({
|
||||
// name: 'harmonic-boot/report/word'
|
||||
@@ -114,6 +114,12 @@ const exportEvent = () => {
|
||||
form.append('file', uploadList.value?.raw ||'')
|
||||
|
||||
exportModel(form).then((res: any) => {
|
||||
if(res.size == 79){
|
||||
ElNotification({
|
||||
type: 'error',
|
||||
message: '包含特殊字符,请注意修改!'
|
||||
})
|
||||
}else{
|
||||
let blob = new Blob([res], {
|
||||
type: "application/vnd.openxmlformats-officedocument.wordprocessingml.document;charset=UTF-8",
|
||||
})
|
||||
@@ -125,6 +131,7 @@ const exportEvent = () => {
|
||||
document.body.appendChild(link)
|
||||
link.click() //执行下载
|
||||
document.body.removeChild(link)
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="cancelFn">取消</el-button>
|
||||
|
||||
<el-button type="primary" @click="submitFn(true)" :loading="loading">保存</el-button>
|
||||
<!-- <el-button type="primary" @click="submitFn(true)" :loading="loading">保存</el-button>-->
|
||||
<el-button type="primary" @click="submitFn(false)" :loading="loading">提交审批</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -1,303 +1,318 @@
|
||||
<template>
|
||||
<el-dialog v-model="dialogFormVisible" :title="title" width="65%" :append-to-body="true" :before-close="close"
|
||||
:close-on-click-modal="false" draggable>
|
||||
<el-dialog v-model='dialogFormVisible' :title='title' width='65%' :append-to-body='true' :before-close='close'
|
||||
:close-on-click-modal='false' draggable>
|
||||
<!-- 用户档案录入 新建1 -->
|
||||
<el-form :model="form" class="form-two" :validate-on-rule-change="false" :rules="rules" :scroll-to-error="true"
|
||||
ref="ruleFormRef" label-width="auto">
|
||||
<el-form-item for="-" label="填报人:" prop="reporter">
|
||||
<el-input v-model.trim="form.reporter" autocomplete="off" :disabled="true" placeholder="请输入填报人" />
|
||||
<el-form :model='form' class='form-two' :validate-on-rule-change='false' :rules='rules' :scroll-to-error='true'
|
||||
ref='ruleFormRef' label-width='auto'>
|
||||
<el-form-item for='-' label='填报人:' prop='reporter'>
|
||||
<el-input v-model.trim='form.reporter' autocomplete='off' :disabled='true' placeholder='请输入填报人' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="填报日期:" prop="reportDate">
|
||||
<el-date-picker :disabled="true" style="width: 100%" v-model="form.reportDate" type="date"
|
||||
placeholder="请选择填报日期" />
|
||||
<el-form-item for='-' label='填报日期:' prop='reportDate'>
|
||||
<el-date-picker :disabled='true' style='width: 100%' v-model='form.reportDate' type='date'
|
||||
placeholder='请选择填报日期' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="填报部门:" prop="orgId">
|
||||
<el-input v-model.trim="form.orgId" :disabled="true" autocomplete="off" />
|
||||
<el-form-item for='-' label='填报部门:' prop='orgId'>
|
||||
<el-input v-model.trim='form.orgId' :disabled='true' autocomplete='off' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="工程预期投产日期:" prop="expectedProductionDate">
|
||||
<el-date-picker style="width: 100%" v-model="form.expectedProductionDate" type="date"
|
||||
format="YYYY-MM-DD" value-format="YYYY-MM-DD" :disabled-date="disabledDate"
|
||||
placeholder="请选择工程预期投产日期" />
|
||||
<el-form-item for='-' label='工程预期投产日期:' prop='expectedProductionDate'>
|
||||
<el-date-picker style='width: 100%' v-model='form.expectedProductionDate' type='date'
|
||||
format='YYYY-MM-DD' value-format='YYYY-MM-DD' :disabled-date='disabledDate'
|
||||
placeholder='请选择工程预期投产日期' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="用户性质:" prop="userType">
|
||||
<el-form-item for='-' label='用户性质:' prop='userType'>
|
||||
<!-- :disabled="resendId != '' && title != '编辑'" -->
|
||||
<el-select v-model="form.userType" placeholder="请选择用户性质">
|
||||
<el-option v-for="(item, index) in userTypeList" :label="item.label" :value="item.value"
|
||||
:key="index" />
|
||||
<el-select v-model='form.userType' placeholder='请选择用户性质'>
|
||||
<el-option v-for='(item, index) in userTypeList' :label='item.label' :value='item.value'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="所在地市:" prop="city">
|
||||
<el-select v-model="form.city" clearable placeholder="请选择所在地市">
|
||||
<el-option v-for="item in areaOptionList" :key="item.id" :label="item.name"
|
||||
:value="item.name"></el-option>
|
||||
<el-form-item for='-' label='所在地市:' prop='city'>
|
||||
<el-select v-model='form.city' clearable placeholder='请选择所在地市'>
|
||||
<el-option v-for='item in areaOptionList' :key='item.id' :label='item.name'
|
||||
:value='item.name'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="归口管理部门:" prop="responsibleDepartment">
|
||||
<el-input v-model.trim="form.responsibleDepartment" autocomplete="off" placeholder="请输入归口管理部门" />
|
||||
<el-form-item for='-' label='归口管理部门:' prop='responsibleDepartment'>
|
||||
<el-input v-model.trim='form.responsibleDepartment' autocomplete='off'
|
||||
placeholder='请输入归口管理部门' maxlength='32' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="项目名称:" prop="projectName">
|
||||
<el-input v-model.trim="form.projectName" autocomplete="off" placeholder="请输入项目名称" />
|
||||
<el-form-item for='-' label='项目名称:' prop='projectName'>
|
||||
<el-input v-model.trim='form.projectName' autocomplete='off' placeholder='请输入项目名称' maxlength='64' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="用户状态:" prop="userStatus">
|
||||
<el-select v-model="form.userStatus" placeholder="请选择用户状态">
|
||||
<el-option v-for="(item, index) in userStateList" :label="item.label" :value="item.value"
|
||||
:disabled="item.disabled" :key="index" />
|
||||
<el-form-item for='-' label='用户状态:' prop='userStatus'>
|
||||
<el-select v-model='form.userStatus' placeholder='请选择用户状态'>
|
||||
<el-option v-for='(item, index) in userStateList' :label='item.label' :value='item.value'
|
||||
:disabled='item.disabled' :key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="厂站名称:" prop="substation">
|
||||
<el-input v-model.trim="form.substation" autocomplete="off" placeholder="请输入厂站名称" />
|
||||
<el-form-item for='-' label='厂站名称:' prop='substation'>
|
||||
<el-input v-model.trim='form.substation' autocomplete='off' placeholder='请输入厂站名称' maxlength='64' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '0' || form.userType == '1'" label="用户协议容量:"
|
||||
prop="agreementCapacity">
|
||||
<el-input v-model.trim="form.agreementCapacity" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-form-item for='-' v-if="form.userType == '0' || form.userType == '1'" label='用户协议容量:'
|
||||
prop='agreementCapacity'>
|
||||
<el-input v-model.trim='form.agreementCapacity' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" autocomplete="off" placeholder="请输入用户协议容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" autocomplete='off' placeholder='请输入用户协议容量' maxlength="6" show-word-limit>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '0' || form.userType == '1'" label="非线性终端类型:"
|
||||
prop="nonlinearDeviceType">
|
||||
<el-tree-select accordion ref="treeRef" :default-expand-all="false" show-checkbox check-strictly
|
||||
:highlight-current="true" readonly node-key="id" :props="defaultProps"
|
||||
v-model="form.nonlinearDeviceType" :data="nonlinearDeviceTypeList" :render-after-expand="false" />
|
||||
<el-form-item for='-' v-if="form.userType == '0' || form.userType == '1'" label='非线性终端类型:'
|
||||
prop='nonlinearDeviceType'>
|
||||
<el-tree-select accordion ref='treeRef' :default-expand-all='false' show-checkbox check-strictly
|
||||
:highlight-current='true' readonly node-key='id' :props='defaultProps'
|
||||
v-model='form.nonlinearDeviceType' :data='nonlinearDeviceTypeList'
|
||||
:render-after-expand='false' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="电压等级:" prop="voltageLevel">
|
||||
<el-select v-model="form.voltageLevel" placeholder="请选择电压等级" node-key="id">
|
||||
<el-option v-for="(item, index) in voltageLevelList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' label='电压等级:' prop='voltageLevel'>
|
||||
<el-select v-model='form.voltageLevel' placeholder='请选择电压等级' node-key='id'>
|
||||
<el-option v-for='(item, index) in voltageLevelList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="预测评估单位:" prop="evaluationDept">
|
||||
<el-select v-model="form.evaluationDept" allow-create filterable placeholder="请选择预测评估单位">
|
||||
<el-option v-for="(item, index) in evaluationDeptList" :label="item.name" :value="item.name"
|
||||
:key="index" />
|
||||
<el-form-item for='-' label='预测评估单位:' prop='evaluationDept'>
|
||||
<el-select v-model='form.evaluationDept' allow-create filterable placeholder='请选择预测评估单位'>
|
||||
<el-option v-for='(item, index) in evaluationDeptList' :label='item.name' :value='item.name'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="是否需要治理:" prop="needGovernance">
|
||||
<el-radio-group v-model="form.needGovernance">
|
||||
<el-radio :value="1">是</el-radio>
|
||||
<el-radio :value="0">否</el-radio>
|
||||
<el-form-item for='-' label='是否需要治理:' prop='needGovernance'>
|
||||
<el-radio-group v-model='form.needGovernance'>
|
||||
<el-radio :value='1'>是</el-radio>
|
||||
<el-radio :value='0'>否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="是否开展背景测试:" prop="backgroundTestPerformed">
|
||||
<el-radio-group v-model="form.backgroundTestPerformed">
|
||||
<el-radio :value="1">是</el-radio>
|
||||
<el-radio :value="0">否</el-radio>
|
||||
<el-form-item for='-' label='是否开展背景测试:' prop='backgroundTestPerformed'>
|
||||
<el-radio-group v-model='form.backgroundTestPerformed'>
|
||||
<el-radio :value='1'>是</el-radio>
|
||||
<el-radio :value='0'>否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="关联终端" prop="devId" v-if="props.openType != 'create'">
|
||||
<el-select v-model="form.devId" filterable placeholder="请选择关联终端" @change="changeDevId">
|
||||
<el-option v-for="(item, index) in devIdList" :label="item.devName" :value="item.devId"
|
||||
:key="index" />
|
||||
<el-form-item label='关联终端' prop='devId' v-if="props.openType != 'create'">
|
||||
<el-select v-model='form.devId' filterable placeholder='请选择关联终端' @change='changeDevId'>
|
||||
<el-option v-for='(item, index) in devIdList' :label='item.devName' :value='item.devId'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="关联监测点" prop="lineId" v-if="props.openType != 'create'">
|
||||
<el-select v-model="form.lineId" placeholder="请选择关联监测点">
|
||||
<el-option v-for="(item, index) in lineIdList" :label="item.lineName" :value="item.lineId"
|
||||
:key="index" />
|
||||
<el-form-item label='关联监测点' prop='lineId' v-if="props.openType != 'create'">
|
||||
<el-select v-model='form.lineId' placeholder='请选择关联监测点'>
|
||||
<el-option v-for='(item, index) in lineIdList' :label='item.lineName' :value='item.lineId'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item for="-" v-if="form.userType != '0' && form.userType != '1'" label="评估类型:"
|
||||
prop="evaluationType">
|
||||
<el-select v-model="form.evaluationType" placeholder="请选择评估类型">
|
||||
<el-option v-for="(item, index) in evaluationTypeList" :key="index" :label="item.name"
|
||||
:value="item.id" />
|
||||
<el-form-item for='-' v-if="form.userType != '0' && form.userType != '1'" label='评估类型:'
|
||||
prop='evaluationType'>
|
||||
<el-select v-model='form.evaluationType' placeholder='请选择评估类型'>
|
||||
<el-option v-for='(item, index) in evaluationTypeList' :key='index' :label='item.name'
|
||||
:value='item.id' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType != '0' && form.userType != '1'" label="PCC点:" prop="pccPoint">
|
||||
<el-input v-model.trim="form.pccPoint" autocomplete="off" placeholder="请输入PCC点" />
|
||||
<el-form-item for='-' v-if="form.userType != '0' && form.userType != '1'" label='PCC点:' prop='pccPoint'>
|
||||
<el-input v-model.trim='form.pccPoint' autocomplete='off' placeholder='请输入PCC点' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-"
|
||||
<el-form-item for='-'
|
||||
v-if="form.userType == '2' || form.userType == '3' || form.userType == '4' || form.userType == '5'"
|
||||
label="基准短路容量:" prop="baseShortCircuitCapacity">
|
||||
<el-input v-model.trim="form.baseShortCircuitCapacity" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
label='基准短路容量:' prop='baseShortCircuitCapacity'>
|
||||
<el-input v-model.trim='form.baseShortCircuitCapacity' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入基准短路容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入基准短路容量'>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-"
|
||||
<el-form-item for='-'
|
||||
v-if="form.userType == '2' || form.userType == '3' || form.userType == '4' || form.userType == '5'"
|
||||
label="系统最小短路容量:" prop="minShortCircuitCapacity">
|
||||
<el-input v-model.trim="form.minShortCircuitCapacity" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
label='系统最小短路容量:' prop='minShortCircuitCapacity'>
|
||||
<el-input v-model.trim='form.minShortCircuitCapacity' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" autocomplete="off" placeholder="请选择系统最小短路容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" autocomplete='off' placeholder='请选择系统最小短路容量'>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-"
|
||||
<el-form-item for='-'
|
||||
v-if="form.userType == '2' || form.userType == '3' || form.userType == '4' || form.userType == '5'"
|
||||
label="PCC供电终端容量:" prop="pccEquipmentCapacity">
|
||||
<el-input v-model.trim="form.pccEquipmentCapacity" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
label='PCC供电终端容量:' prop='pccEquipmentCapacity'>
|
||||
<el-input v-model.trim='form.pccEquipmentCapacity' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入PCC供电终端容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入PCC供电终端容量'>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-"
|
||||
<el-form-item for='-'
|
||||
v-if="form.userType == '2' || form.userType == '3' || form.userType == '4' || form.userType == '5'"
|
||||
label="用户用电协议容量:" prop="userAgreementCapacity">
|
||||
<el-input v-model.trim="form.userAgreementCapacity" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
label='用户用电协议容量:' prop='userAgreementCapacity'>
|
||||
<el-input v-model.trim='form.userAgreementCapacity' autocomplete='off' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入用户用电协议容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入用户用电协议容量'>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6'" label="行业:" prop="industry">
|
||||
<el-select v-model="form.industry" placeholder="请选择行业">
|
||||
<el-option v-for="(item, index) in industryList" :label="item.name" :value="item.id" :key="index" />
|
||||
<el-form-item for='-' v-if="form.userType == '6'" label='行业:' prop='industry'>
|
||||
<el-select v-model='form.industry' placeholder='请选择行业'>
|
||||
<el-option v-for='(item, index) in industryList' :label='item.name' :value='item.id' :key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6'" label="敏感终端名称:" prop="deviceName">
|
||||
<el-input v-model.trim="form.deviceName" autocomplete="off" placeholder="请输入敏感终端名称" />
|
||||
<el-form-item for='-' v-if="form.userType == '6'" label='敏感终端名称:' prop='deviceName'>
|
||||
<el-input v-model.trim='form.deviceName' autocomplete='off' placeholder='请输入敏感终端名称' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6'" label="供电电源数量:" prop="powerSupplyCount">
|
||||
<el-input-number style="width: 100%" v-model="form.powerSupplyCount" :min="0" placeholder="请输入供电电源数量" />
|
||||
<el-form-item for='-' v-if="form.userType == '6'" label='供电电源数量:' prop='powerSupplyCount'>
|
||||
<el-input-number style='width: 100%' v-model='form.powerSupplyCount' :min='0'
|
||||
placeholder='请输入供电电源数量' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6'" label="敏感电能质量指标:" prop="energyQualityIndex">
|
||||
<el-select v-model="form.energyQualityIndex" multiple collapse-tags collapse-tags-tooltip
|
||||
placeholder="请选择敏感电能质量指标">
|
||||
<el-option v-for="(item, index) in energyQualityIndexList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' v-if="form.userType == '6'" label='敏感电能质量指标:' prop='energyQualityIndex'>
|
||||
<el-select v-model='form.energyQualityIndex' multiple collapse-tags collapse-tags-tooltip
|
||||
placeholder='请选择敏感电能质量指标'>
|
||||
<el-option v-for='(item, index) in energyQualityIndexList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-"
|
||||
<el-form-item for='-'
|
||||
v-if="form.userType == '2' || form.userType == '3' || form.userType == '4' || form.userType == '5'"
|
||||
:label="form.userType == '4' || form.userType == '5' ? '非线性设备类型: ' : '非线性负荷类型:'"
|
||||
prop="nonlinearLoadType">
|
||||
<el-tree-select accordion ref="treeRef" :default-expand-all="false" show-checkbox check-strictly
|
||||
:highlight-current="true" readonly node-key="id" :props="defaultProps" filterable
|
||||
v-model="form.nonlinearLoadType" :data="nonlinearDeviceTypeList" :render-after-expand="false"
|
||||
placeholder="请选择" />
|
||||
prop='nonlinearLoadType'>
|
||||
<el-tree-select accordion ref='treeRef' :default-expand-all='false' show-checkbox check-strictly
|
||||
:highlight-current='true' readonly node-key='id' :props='defaultProps' filterable
|
||||
v-model='form.nonlinearLoadType' :data='nonlinearDeviceTypeList'
|
||||
:render-after-expand='false'
|
||||
placeholder='请选择' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6'" label="是否开展抗扰度测试:" prop="antiInterferenceTest">
|
||||
<el-radio-group v-model="form.antiInterferenceTest">
|
||||
<el-radio value="1">是</el-radio>
|
||||
<el-radio value="0">否</el-radio>
|
||||
<el-form-item for='-' v-if="form.userType == '6'" label='是否开展抗扰度测试:' prop='antiInterferenceTest'>
|
||||
<el-radio-group v-model='form.antiInterferenceTest'>
|
||||
<el-radio value='1'>是</el-radio>
|
||||
<el-radio value='0'>否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6' && isInterferencemanagement" label="负荷级别:"
|
||||
prop="loadLevel">
|
||||
<el-select v-model="form.loadLevel" collapse-tags collapse-tags-tooltip placeholder="请选择负荷级别">
|
||||
<el-option v-for="(item, index) in loadLevelOptionList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' v-if="form.userType == '6' && isInterferencemanagement" label='负荷级别:'
|
||||
prop='loadLevel'>
|
||||
<el-select v-model='form.loadLevel' collapse-tags collapse-tags-tooltip placeholder='请选择负荷级别'>
|
||||
<el-option v-for='(item, index) in loadLevelOptionList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType == '6' && isInterferencemanagement" label="供电电源情况:"
|
||||
prop="powerSupplyInfo">
|
||||
<el-select v-model="form.powerSupplyInfo" collapse-tags collapse-tags-tooltip placeholder="请选择供电电源情况">
|
||||
<el-option v-for="(item, index) in powerSupplyInfoOptionList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' v-if="form.userType == '6' && isInterferencemanagement" label='供电电源情况:'
|
||||
prop='powerSupplyInfo'>
|
||||
<el-select v-model='form.powerSupplyInfo' collapse-tags collapse-tags-tooltip
|
||||
placeholder='请选择供电电源情况'>
|
||||
<el-option v-for='(item, index) in powerSupplyInfoOptionList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" v-if="form.userType != '0' && form.userType != '1'" label="预测评估评审单位:"
|
||||
prop="evaluationChekDept">
|
||||
<el-input v-model.trim="form.evaluationChekDept" autocomplete="off" placeholder="请输入预测评估评审单位" />
|
||||
<el-form-item for='-' v-if="form.userType != '0' && form.userType != '1'" label='预测评估评审单位:'
|
||||
prop='evaluationChekDept'>
|
||||
<el-input v-model.trim='form.evaluationChekDept' autocomplete='off'
|
||||
placeholder='请输入预测评估评审单位' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="预测评估结论:" prop="evaluationConclusion" style="width: 100%">
|
||||
<el-input type="textarea" v-model.trim="form.evaluationConclusion" autocomplete="off"
|
||||
placeholder="请输入预测评估结论" />
|
||||
<el-form-item for='-' label='预测评估结论:' prop='evaluationConclusion' style='width: 100%'>
|
||||
<el-input type='textarea' v-model.trim='form.evaluationConclusion' autocomplete='off'
|
||||
placeholder='请输入预测评估结论' maxlength='300' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="可研报告:" prop="feasibilityReport">
|
||||
<el-upload v-model:file-list="form.feasibilityReport" ref="uploadRef" action="" :accept="acceptType"
|
||||
:limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='可研报告:' prop='feasibilityReport'>
|
||||
<el-upload v-model:file-list='form.feasibilityReport' ref='uploadRef' action='' :accept='acceptType'
|
||||
:limit='1' :on-change='choose' :auto-upload='false' :on-remove='removeFile'
|
||||
:on-progress="uploadFileName('feasibilityReport')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="项目初步设计说明书:" prop="preliminaryDesignDescription">
|
||||
<el-upload v-model:file-list="form.preliminaryDesignDescription" ref="uploadRef" action=""
|
||||
:accept="acceptType" :limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='项目初步设计说明书:' prop='preliminaryDesignDescription'>
|
||||
<el-upload v-model:file-list='form.preliminaryDesignDescription' ref='uploadRef' action=''
|
||||
:accept='acceptType' :limit='1' :on-change='choose' :auto-upload='false'
|
||||
:on-remove='removeFile'
|
||||
:on-progress="uploadFileName('preliminaryDesignDescription')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="预测评估报告:" prop="predictionEvaluationReport">
|
||||
<el-upload v-model:file-list="form.predictionEvaluationReport" ref="uploadRef" action=""
|
||||
:accept="acceptType" :limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='预测评估报告:' prop='predictionEvaluationReport'>
|
||||
<el-upload v-model:file-list='form.predictionEvaluationReport' ref='uploadRef' action=''
|
||||
:accept='acceptType' :limit='1' :on-change='choose' :auto-upload='false'
|
||||
:on-remove='removeFile'
|
||||
:on-progress="uploadFileName('predictionEvaluationReport')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="预测评估评审意见报告:" prop="predictionEvaluationReviewOpinions">
|
||||
<el-upload v-model:file-list="form.predictionEvaluationReviewOpinions" ref="uploadRef" action=""
|
||||
:accept="acceptType" :limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='预测评估评审意见报告:'
|
||||
prop='predictionEvaluationReviewOpinions'>
|
||||
<el-upload v-model:file-list='form.predictionEvaluationReviewOpinions' ref='uploadRef' action=''
|
||||
:accept='acceptType' :limit='1' :on-change='choose' :auto-upload='false'
|
||||
:on-remove='removeFile'
|
||||
:on-progress="uploadFileName('predictionEvaluationReviewOpinions')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="其他附件:" prop="additionalAttachments">
|
||||
<el-upload v-model:file-list="form.additionalAttachments" ref="uploadRef" action="" :accept="acceptType"
|
||||
:limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='其他附件:' prop='additionalAttachments'>
|
||||
<el-upload v-model:file-list='form.additionalAttachments' ref='uploadRef' action='' :accept='acceptType'
|
||||
:limit='1' :on-change='choose' :auto-upload='false' :on-remove='removeFile'
|
||||
:on-progress="uploadFileName('additionalAttachments')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" class="uploadFile" v-if="form.userType != '0' && form.userType != '1'"
|
||||
label="用户接入变电站主接线示意图:" prop="substationMainWiringDiagram">
|
||||
<el-upload v-model:file-list="form.substationMainWiringDiagram" ref="uploadRef" action=""
|
||||
:accept="acceptType" :limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item for='-' class='uploadFile' v-if="form.userType != '0' && form.userType != '1'"
|
||||
label='用户接入变电站主接线示意图:' prop='substationMainWiringDiagram'>
|
||||
<el-upload v-model:file-list='form.substationMainWiringDiagram' ref='uploadRef' action=''
|
||||
:accept='acceptType' :limit='1' :on-change='choose' :auto-upload='false'
|
||||
:on-remove='removeFile'
|
||||
:on-progress="uploadFileName('substationMainWiringDiagram')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" label="主要敏感终端清单:" v-if="form.userType == '6'"
|
||||
prop="sensitiveDevices">
|
||||
<el-upload v-model:file-list="form.sensitiveDevices" ref="uploadRef" action="" :accept="acceptType"
|
||||
:limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' label='主要敏感终端清单:' v-if="form.userType == '6'"
|
||||
prop='sensitiveDevices'>
|
||||
<el-upload v-model:file-list='form.sensitiveDevices' ref='uploadRef' action='' :accept='acceptType'
|
||||
:limit='1' :on-change='choose' :auto-upload='false' :on-remove='removeFile'
|
||||
:on-progress="uploadFileName('sensitiveDevices')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" v-if="form.userType == '6'" label="抗扰度测试报告:"
|
||||
prop="antiInterferenceReport">
|
||||
<el-upload v-model:file-list="form.antiInterferenceReport" ref="uploadRef" action=""
|
||||
:accept="acceptType" :limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' v-if="form.userType == '6'" label='抗扰度测试报告:'
|
||||
prop='antiInterferenceReport'>
|
||||
<el-upload v-model:file-list='form.antiInterferenceReport' ref='uploadRef' action=''
|
||||
:accept='acceptType' :limit='1' :on-change='choose' :auto-upload='false'
|
||||
:on-remove='removeFile'
|
||||
:on-progress="uploadFileName('antiInterferenceReport')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item class="uploadFile" for="-" v-if="form.userType == '6'" label="背景电能质量测试报告:"
|
||||
prop="powerQualityReport">
|
||||
<el-upload v-model:file-list="form.powerQualityReport" ref="uploadRef" action="" :accept="acceptType"
|
||||
:limit="1" :on-change="choose" :auto-upload="false" :on-remove="removeFile"
|
||||
<el-form-item class='uploadFile' for='-' v-if="form.userType == '6'" label='背景电能质量测试报告:'
|
||||
prop='powerQualityReport'>
|
||||
<el-upload v-model:file-list='form.powerQualityReport' ref='uploadRef' action='' :accept='acceptType'
|
||||
:limit='1' :on-change='choose' :auto-upload='false' :on-remove='removeFile'
|
||||
:on-progress="uploadFileName('powerQualityReport')">
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<addUpload ref="addUploadRef" v-if="props.openType == 'sourcesOfInterference'" />
|
||||
<addUpload ref='addUploadRef' v-if="props.openType == 'sourcesOfInterference'" />
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="close()">取消</el-button>
|
||||
<el-button type="primary" @click="confirmForm(true)" :loading="loading">保存</el-button>
|
||||
<el-button type="primary" v-if="props.submissionControl" @click="confirmForm(false)" :loading="loading">
|
||||
<div class='dialog-footer'>
|
||||
<el-button @click='close()'>取消</el-button>
|
||||
<!-- <el-button type='primary' @click='confirmForm(true)' :loading='loading'>保存</el-button>-->
|
||||
<!-- <el-button type='primary' v-if='props.submissionControl' @click='confirmForm(false)' :loading='loading'>-->
|
||||
<el-button type='primary' @click='confirmForm(false)' :loading='loading'>
|
||||
提交审批
|
||||
</el-button>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
<script lang='ts' setup>
|
||||
import { ref, onMounted, reactive, defineExpose, defineProps, defineEmits, watch, onUnmounted } from 'vue'
|
||||
// import { upload, insertTerminal, updateTerminal } from '@/api/process-boot/terminal'
|
||||
import type { UploadInstance, UploadProps, UploadRawFile } from 'element-plus'
|
||||
@@ -318,6 +333,7 @@ import {
|
||||
import { getUserReportUpdateById } from '@/api/supervision-boot/userReport/form'
|
||||
import addUpload from './addUpload.vue'
|
||||
import { useRoute } from 'vue-router'
|
||||
|
||||
const route = useRoute()
|
||||
const isInterferencemanagement: any = ref(false)
|
||||
if (route.path.includes('interferencemanagement')) {
|
||||
@@ -618,7 +634,8 @@ const subForm: any = ref({
|
||||
substationMainWiringDiagram: [] //用户接入变电站主接线示意图地址
|
||||
}
|
||||
})
|
||||
|
||||
// 特殊字符正则表达式
|
||||
const specialCharRegex = /[<>\"'\%;()&+\-———|@*_?#$!,.html<script>]/
|
||||
//定义校验规则
|
||||
const rules = ref({
|
||||
reporter: [{ required: true, message: '请输入填报人', trigger: 'blur' }],
|
||||
@@ -627,16 +644,58 @@ const rules = ref({
|
||||
expectedProductionDate: [{ required: true, message: '请选择工程预期投产日期', trigger: 'change' }],
|
||||
userType: [{ required: true, message: '清选择用户性质', trigger: 'change' }],
|
||||
city: [{ required: true, message: '请选择所在地市', trigger: 'change' }],
|
||||
responsibleDepartment: [{ required: true, message: '请输入归口管理部门', trigger: 'blur' }],
|
||||
responsibleDepartment: [{ required: true, message: '请输入归口管理部门', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}],
|
||||
userStatus: [{ required: true, message: '请选择用户状态', trigger: 'change' }],
|
||||
projectName: [{ required: true, message: '请输入项目名称', trigger: 'blur' }],
|
||||
substation: [{ required: true, message: '请输入变电站', trigger: 'blur' }],
|
||||
projectName: [{ required: true, message: '请输入项目名称', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}],
|
||||
substation: [{ required: true, message: '请输入厂站名称', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}],
|
||||
voltageLevel: [{ required: true, message: '请选择电压等级', trigger: 'change' }],
|
||||
evaluationDept: [{ required: true, message: '请选择预测评估单位', trigger: 'change' }],
|
||||
evaluationConclusion: [{ required: true, message: '请输入预测评估结论', trigger: 'blur' }],
|
||||
evaluationConclusion: [{ required: true, message: '请输入预测评估结论', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}],
|
||||
devId: [{ required: true, message: '请选择关联终端', trigger: 'change' }],
|
||||
lineId: [{ required: true, message: '请选择关联监测点', trigger: 'change' }],
|
||||
agreementCapacity: [{ required: true, message: '请选择用户协议容量', trigger: 'blur' }],
|
||||
agreementCapacity: [
|
||||
{ required: true, message: '请选择用户协议容量', trigger: 'blur' }
|
||||
],
|
||||
nonlinearDeviceType: [{ required: true, message: '请选择非线性终端类型', trigger: 'change' }],
|
||||
needGovernance: [{ required: true, message: '请选择是否需要治理', trigger: 'change' }],
|
||||
backgroundTestPerformed: [{ required: true, message: '请选择是否开展背景测试', trigger: 'change' }],
|
||||
@@ -784,6 +843,8 @@ watch(
|
||||
deep: true
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
const resendId = ref('')
|
||||
const status = ref('')
|
||||
const open = async (row: any) => {
|
||||
@@ -819,6 +880,7 @@ const open = async (row: any) => {
|
||||
})
|
||||
}, 10)
|
||||
}
|
||||
|
||||
async function handleResponse(data: any) {
|
||||
// userType logic is commented out; if needed, implement accordingly
|
||||
if (data.userReportProjectPO) {
|
||||
@@ -884,7 +946,8 @@ const close = () => {
|
||||
emits('onSubmit')
|
||||
resetForm()
|
||||
}
|
||||
onMounted(() => { })
|
||||
onMounted(() => {
|
||||
})
|
||||
|
||||
// 上传报告
|
||||
const uploadRef = ref()
|
||||
@@ -1050,7 +1113,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
addUploadRef.value?.submitForm(res.data)
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
} else {
|
||||
await submitFormData(confirmFormData).then(res => {
|
||||
ElMessage({
|
||||
@@ -1061,7 +1126,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
addUploadRef.value?.submitForm(res.data)
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
}
|
||||
} else {
|
||||
await ruleFormRef.value.validate(async (valid: any) => {
|
||||
@@ -1202,7 +1269,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
addUploadRef.value?.submitForm(res.data)
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
} else {
|
||||
confirmFormData.id = resendId.value
|
||||
if (controFlag.value) confirmFormData.dataType = 1
|
||||
@@ -1219,7 +1288,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
addUploadRef.value?.submitForm(res.data)
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
} else {
|
||||
await resend(confirmFormData).then(res => {
|
||||
ElMessage({
|
||||
@@ -1229,7 +1300,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
ruleFormRef.value.resetFields()
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
}
|
||||
} else {
|
||||
await updateFormData(confirmFormData).then(res => {
|
||||
@@ -1241,7 +1314,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
ruleFormRef.value.resetFields()
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -1268,8 +1343,9 @@ const setcontroFlag = () => {
|
||||
}
|
||||
defineExpose({ open, filterUsers, setcontroFlag })
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.el-form {}
|
||||
<style lang='scss' scoped>
|
||||
.el-form {
|
||||
}
|
||||
|
||||
.form-label-left-align {
|
||||
text-align: left;
|
||||
|
||||
@@ -1,203 +1,213 @@
|
||||
<template>
|
||||
<el-dialog v-model="dialogFormVisible" :title="title" width="65%" :append-to-body="true" :before-close="close"
|
||||
:close-on-click-modal="false" :lazy="true" draggable>
|
||||
<el-dialog v-model='dialogFormVisible' :title='title' width='65%' :append-to-body='true' :before-close='close'
|
||||
:close-on-click-modal='false' :lazy='true' draggable>
|
||||
<!--监测点信息录入 基础信息+监测点信息 监测点信息要有用户名称、用户状态 -->
|
||||
<el-form :model="form" :validate-on-rule-change="false" :scroll-to-error="true" :rules="rules" ref="ruleFormRef"
|
||||
label-width="auto" label-position="right" class="form-two">
|
||||
<div class="fixed_upload" v-if="false">
|
||||
<el-upload v-model:file-list="form.lineFilePath" ref="uploadRef" action="" accept=".xls,.xlsx"
|
||||
:limit="1" :on-exceed="handleExceed" :on-change="choose" :auto-upload="false"
|
||||
:on-progress="uploadFileName('lineFilePath')" :on-remove="removeFile">
|
||||
<el-form :model='form' :validate-on-rule-change='false' :scroll-to-error='true' :rules='rules' ref='ruleFormRef'
|
||||
label-width='auto' label-position='right' class='form-two'>
|
||||
<div class='fixed_upload' v-if='false'>
|
||||
<el-upload v-model:file-list='form.lineFilePath' ref='uploadRef' action='' accept='.xls,.xlsx'
|
||||
:limit='1' :on-exceed='handleExceed' :on-change='choose' :auto-upload='false'
|
||||
:on-progress="uploadFileName('lineFilePath')" :on-remove='removeFile'>
|
||||
<template #trigger>
|
||||
<el-button type="primary">监测点台账信息</el-button>
|
||||
<el-button type='primary'>监测点台账信息</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</div>
|
||||
<!-- 基础信息 -->
|
||||
<el-form-item v-if="false" for="-" label="填报人:" prop="reporterName">
|
||||
<el-input v-model.trim="form.reporterName" autocomplete="off" placeholder="请输入填报人" :disabled="true" />
|
||||
<el-form-item v-if='false' for='-' label='填报人:' prop='reporterName'>
|
||||
<el-input v-model.trim='form.reporterName' autocomplete='off' placeholder='请输入填报人'
|
||||
:disabled='true' />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="false" for="-" label="填报日期:" prop="reportDate">
|
||||
<el-date-picker style="width: 100%" v-model="form.reportDate" :disabled="true" type="date"
|
||||
format="YYYY-MM-DD" value-format="YYYY-MM-DD" placeholder="请选择填报日期" />
|
||||
<el-form-item v-if='false' for='-' label='填报日期:' prop='reportDate'>
|
||||
<el-date-picker style='width: 100%' v-model='form.reportDate' :disabled='true' type='date'
|
||||
format='YYYY-MM-DD' value-format='YYYY-MM-DD' placeholder='请选择填报日期' />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="false" for="-" label="填报部门:" prop="orgId">
|
||||
<el-input v-model.trim="form.orgName" :disabled="true" autocomplete="off" />
|
||||
<el-form-item v-if='false' for='-' label='填报部门:' prop='orgId'>
|
||||
<el-input v-model.trim='form.orgName' :disabled='true' autocomplete='off' />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="false" for="-" label="工程投产日期:" prop="expectedProductionDate">
|
||||
<el-date-picker style="width: 100%" v-model="form.expectedProductionDate" type="date"
|
||||
format="YYYY-MM-DD" value-format="YYYY-MM-DD" :disabled="true" :disabled-date="disabledDate"
|
||||
placeholder="请选择工程投产日期" />
|
||||
<el-form-item v-if='false' for='-' label='工程投产日期:' prop='expectedProductionDate'>
|
||||
<el-date-picker style='width: 100%' v-model='form.expectedProductionDate' type='date'
|
||||
format='YYYY-MM-DD' value-format='YYYY-MM-DD' :disabled='true'
|
||||
:disabled-date='disabledDate'
|
||||
placeholder='请选择工程投产日期' />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="false" for="-" label="所在地市:" prop="city">
|
||||
<el-select v-model="form.city" clearable style="width: 100%" :disabled="true" placeholder="请选择所在地市">
|
||||
<el-option v-for="item in areaOptionList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item v-if='false' for='-' label='所在地市:' prop='city'>
|
||||
<el-select v-model='form.city' clearable style='width: 100%' :disabled='true'
|
||||
placeholder='请选择所在地市'>
|
||||
<el-option v-for='item in areaOptionList' :key='item.id' :label='item.name'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="false" for="-" label="用户状态:" prop="userStatus">
|
||||
<el-select v-model="form.userStatus" placeholder="请选择用户状态" :disabled="true" style="width: 100%">
|
||||
<el-option v-for="(item, index) in userStateList" :label="item.name" :value="item.id"
|
||||
:disabled="item.name != '建设'" :key="index" />
|
||||
<el-form-item v-if='false' for='-' label='用户状态:' prop='userStatus'>
|
||||
<el-select v-model='form.userStatus' placeholder='请选择用户状态' :disabled='true' style='width: 100%'>
|
||||
<el-option v-for='(item, index) in userStateList' :label='item.name' :value='item.id'
|
||||
:disabled="item.name != '建设'" :key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="关联干扰源:" prop="userName">
|
||||
<el-select v-model="form.userName" clearable style="width: 100%" placeholder="请选择关联干扰源"
|
||||
@change="changeUserName">
|
||||
<el-option v-for="(item, index) in userNameList" :key="index" :label="item.projectName"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item for='-' label='关联干扰源:' prop='userName'>
|
||||
<el-select v-model='form.userName' clearable style='width: 100%' placeholder='请选择关联干扰源'
|
||||
@change='changeUserName'>
|
||||
<el-option v-for='(item, index) in userNameList' :key='index' :label='item.projectName'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="关联终端:" prop="monitoringTerminalCode">
|
||||
<el-select v-model="form.monitoringTerminalCode" clearable style="width: 100%" filterable
|
||||
placeholder="请选择关联终端" @change="changeDevice">
|
||||
<el-option v-for="(item, index) in monitoringTerminalList" :key="index"
|
||||
:label="item.monitoringTerminalCode" :value="item.id"></el-option>
|
||||
<el-form-item for='-' label='关联终端:' prop='monitoringTerminalCode'>
|
||||
<el-select v-model='form.monitoringTerminalCode' clearable style='width: 100%' filterable
|
||||
placeholder='请选择关联终端' @change='changeDevice'>
|
||||
<el-option v-for='(item, index) in monitoringTerminalList' :key='index'
|
||||
:label='item.monitoringTerminalCode' :value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="接入母线:" prop="connectedBus">
|
||||
<el-input v-model.trim="form.connectedBus" autocomplete="off" placeholder="请输入接入母线 如:110kV4母线" />
|
||||
<el-form-item for='-' label='接入母线:' prop='connectedBus'>
|
||||
<el-input v-model.trim='form.connectedBus' autocomplete='off' placeholder='请输入接入母线 如:110kV4母线'
|
||||
maxlength='32' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="监测点运行状态:" prop="operationStatus">
|
||||
<el-select v-model="form.operationStatus" placeholder="请选择运行状态">
|
||||
<el-option v-for="(item, index) in operationStatusList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' label='监测点运行状态:' prop='operationStatus'>
|
||||
<el-select v-model='form.operationStatus' placeholder='请选择运行状态'>
|
||||
<el-option v-for='(item, index) in operationStatusList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="监测点名称:" prop="lineName">
|
||||
<el-input v-model.trim="form.lineName" autocomplete="off" placeholder="请输入监测点名称" />
|
||||
<el-form-item for='-' label='监测点名称:' prop='lineName'>
|
||||
<el-input v-model.trim='form.lineName' autocomplete='off' placeholder='请输入监测点名称' maxlength='32'
|
||||
show-word-limit />
|
||||
</el-form-item>
|
||||
<!-- {{ voltageLevelList[2].value * 10 }}:{{ 1 }} -->
|
||||
<el-form-item for="-" label="监测点电压等级:" prop="voltageLevel">
|
||||
<el-select v-model="form.voltageLevel" clearable style="width: 100%" placeholder="请选择监测点电压等级" filterable
|
||||
@change="changevoltageDeviationLimit">
|
||||
<el-option v-for="item in voltageLevelList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item for='-' label='监测点电压等级:' prop='voltageLevel'>
|
||||
<el-select v-model='form.voltageLevel' clearable style='width: 100%' placeholder='请选择监测点电压等级'
|
||||
filterable
|
||||
@change='changevoltageDeviationLimit'>
|
||||
<el-option v-for='item in voltageLevelList' :key='item.id' :label='item.name'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="PT变比:" prop="pt1">
|
||||
<el-input style="width: 48%" v-model.trim="form.pt1" autocomplete="off" placeholder="请输入PT变比"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" />
|
||||
<el-input style="width: 48%" v-model.trim="form.pt2" autocomplete="off" placeholder="请输入PT变比"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" />
|
||||
<el-form-item for='-' label='PT变比:' prop='pt1'>
|
||||
<el-input style='width: 48%' v-model.trim='form.pt1' autocomplete='off' placeholder='请输入PT变比'
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" maxlength='8' show-word-limit />
|
||||
<el-input style='width: 48%' v-model.trim='form.pt2' autocomplete='off' placeholder='请输入PT变比'
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" maxlength='8' show-word-limit />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item for="-" label="CT变比:" prop="ct1">
|
||||
<el-input v-model.trim="form.ct1" style="width: 48%" autocomplete="off"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
|
||||
<el-input v-model.trim="form.ct2" style="width: 48%" autocomplete="off"
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入CT变比" />
|
||||
<el-form-item for='-' label='CT变比:' prop='ct1'>
|
||||
<el-input v-model.trim='form.ct1' style='width: 48%' autocomplete='off'
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder='请输入CT变比' maxlength='8'
|
||||
show-word-limit />
|
||||
<el-input v-model.trim='form.ct2' style='width: 48%' autocomplete='off'
|
||||
oninput="value=value.replace(/[^0-9.]/g,'')" placeholder='请输入CT变比' maxlength='8'
|
||||
show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="短路容量:" prop="shortCapacity">
|
||||
<el-input v-model.trim="form.shortCapacity" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-form-item for='-' label='短路容量:' prop='shortCapacity'>
|
||||
<el-input v-model.trim='form.shortCapacity' autocomplete='off' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入短路容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入短路容量' maxlength='6' show-word-limit>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="协议容量:" prop="dealCapacity">
|
||||
<el-input v-model.trim="form.dealCapacity" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-form-item for='-' label='协议容量:' prop='dealCapacity'>
|
||||
<el-input v-model.trim='form.dealCapacity' autocomplete='off' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入协议容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入协议容量' maxlength='6' show-word-limit>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="终端容量:" prop="devCapacity">
|
||||
<el-input v-model.trim="form.devCapacity" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-form-item for='-' label='终端容量:' prop='devCapacity'>
|
||||
<el-input v-model.trim='form.devCapacity' autocomplete='off' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入终端容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入终端容量' maxlength='6' show-word-limit>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="基准容量:" prop="standardCapacity">
|
||||
<el-input v-model.trim="form.standardCapacity" autocomplete="off" oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
<el-form-item for='-' label='基准容量:' prop='standardCapacity'>
|
||||
<el-input v-model.trim='form.standardCapacity' autocomplete='off' oninput="value=value.replace(/[^\-?\d.]/g,'')
|
||||
.replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder="请输入基准容量">
|
||||
.replace('-','$#$').replace(/\-/g,'').replace('$#$','-')" placeholder='请输入基准容量' maxlength='6' show-word-limit>
|
||||
<template #append>MVA</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="干扰源类型:" prop="loadType">
|
||||
<el-select v-model="form.loadType" style="width: 100%" placeholder="请选择干扰源类型" @change="changeLoadType">
|
||||
<el-option v-for="item in loadTypeList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item for='-' label='干扰源类型:' prop='loadType'>
|
||||
<el-select v-model='form.loadType' style='width: 100%' placeholder='请选择干扰源类型'
|
||||
@change='changeLoadType'>
|
||||
<el-option v-for='item in loadTypeList' :key='item.id' :label='item.name'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="干扰源类别:" prop="businessType">
|
||||
<el-select v-model="form.businessType" style="width: 100%" placeholder="请选择干扰源类别">
|
||||
<el-option v-for="item in businessTypeList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item for='-' label='干扰源类别:' prop='businessType'>
|
||||
<el-select v-model='form.businessType' style='width: 100%' placeholder='请选择干扰源类别'>
|
||||
<el-option v-for='item in businessTypeList' :key='item.id' :label='item.name'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="接线方式:">
|
||||
<el-select v-model="form.ptType" clearable style="width: 100%" placeholder="请选择接线方式">
|
||||
<el-option v-for="item in ptTypeList" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
<el-form-item for='-' label='接线方式:'>
|
||||
<el-select v-model='form.ptType' clearable style='width: 100%' placeholder='请选择接线方式'>
|
||||
<el-option v-for='item in ptTypeList' :key='item.id' :label='item.name'
|
||||
:value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="线路号:">
|
||||
<el-select v-model="form.num" clearable style="width: 100%" placeholder="请选择线路号">
|
||||
<el-option v-for="item in numList" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
<el-form-item for='-' label='线路号:'>
|
||||
<el-select v-model='form.num' clearable style='width: 100%' placeholder='请选择线路号'>
|
||||
<el-option v-for='item in numList' :key='item.id' :label='item.name' :value='item.id'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="电压偏差上限:" prop="voltageDeviationUpperLimit">
|
||||
<el-input-number style="width: 100%" v-model="form.voltageDeviationUpperLimit" />
|
||||
<el-form-item for='-' label='电压偏差上限:' prop='voltageDeviationUpperLimit'>
|
||||
<el-input-number style='width: 100%' v-model='form.voltageDeviationUpperLimit' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="电压偏差下限:" prop="voltageDeviationLowerLimit">
|
||||
<el-input-number style="width: 100%" v-model="form.voltageDeviationLowerLimit" />
|
||||
<el-form-item for='-' label='电压偏差下限:' prop='voltageDeviationLowerLimit'>
|
||||
<el-input-number style='width: 100%' v-model='form.voltageDeviationLowerLimit' />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="测量间隔:" prop="timeInterval">
|
||||
<el-select v-model="form.timeInterval" placeholder="请选择测量间隔">
|
||||
<el-option v-for="(item, index) in timeIntervalList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' label='测量间隔:' prop='timeInterval'>
|
||||
<el-select v-model='form.timeInterval' placeholder='请选择测量间隔'>
|
||||
<el-option v-for='(item, index) in timeIntervalList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item for="-" label="上送网公司编码:">
|
||||
<el-input v-model="form.lineId" autocomplete="off" placeholder="请输入上送网公司编码" />
|
||||
</el-form-item> -->
|
||||
<el-form-item for="-" label="监测点性质:" prop="pointNature">
|
||||
<el-select v-model="form.pointNature" placeholder="请选择监测点性质">
|
||||
<el-option v-for="(item, index) in pointNatureList" :label="item.name" :value="item.id"
|
||||
:key="index" />
|
||||
<el-form-item for='-' label='监测点性质:' prop='pointNature'>
|
||||
<el-select v-model='form.pointNature' placeholder='请选择监测点性质'>
|
||||
<el-option v-for='(item, index) in pointNatureList' :label='item.name' :value='item.id'
|
||||
:key='index' />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="是否参与统计:" prop="isStatistical">
|
||||
<el-radio-group v-model="form.isStatistical">
|
||||
<el-radio :value="1">是</el-radio>
|
||||
<el-radio :value="0">否</el-radio>
|
||||
<el-form-item for='-' label='是否参与统计:' prop='isStatistical'>
|
||||
<el-radio-group v-model='form.isStatistical'>
|
||||
<el-radio :value='1'>是</el-radio>
|
||||
<el-radio :value='0'>否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item for="-" label="对象名称(对端):" prop="objName">
|
||||
<el-input v-model="form.objName" autocomplete="off" placeholder="请输入监测点对象名称" />
|
||||
</el-form-item> -->
|
||||
<el-form-item for="-" label="电网侧变电站:" prop="powerSubstationName">
|
||||
<el-input v-model.trim="form.powerSubstationName" autocomplete="off" placeholder="请输入电网侧变电站" />
|
||||
<el-form-item for='-' label='电网侧变电站:' prop='powerSubstationName'>
|
||||
<el-input v-model.trim='form.powerSubstationName' autocomplete='off' placeholder='请输入电网侧变电站'
|
||||
maxlength='32' show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="是否并网点:" prop="isGridConnectionPoint">
|
||||
<el-radio-group v-model="form.isGridConnectionPoint">
|
||||
<el-radio :value="1">是</el-radio>
|
||||
<el-radio :value="0">否</el-radio>
|
||||
<el-form-item for='-' label='是否并网点:' prop='isGridConnectionPoint'>
|
||||
<el-radio-group v-model='form.isGridConnectionPoint'>
|
||||
<el-radio :value='1'>是</el-radio>
|
||||
<el-radio :value='0'>否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="主接线图:" prop="mainWiringDiagram" class="uploadFile">
|
||||
<el-upload v-model:file-list="form.mainWiringDiagram" ref="uploadRef" action="" :accept="acceptType"
|
||||
:limit="1" :on-exceed="handleExceed" :on-change="choose" :auto-upload="false"
|
||||
:on-progress="uploadFileName('mainWiringDiagram')" :on-remove="removeFile">
|
||||
<el-form-item for='-' label='主接线图:' prop='mainWiringDiagram' class='uploadFile'>
|
||||
<el-upload v-model:file-list='form.mainWiringDiagram' ref='uploadRef' action='' :accept='acceptType'
|
||||
:limit='1' :on-exceed='handleExceed' :on-change='choose' :auto-upload='false'
|
||||
:on-progress="uploadFileName('mainWiringDiagram')" :on-remove='removeFile'>
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
<el-button type='primary'>上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="close()">取消</el-button>
|
||||
<el-button type="primary" @click="confirmForm(true)" :loading="loading">保存</el-button>
|
||||
<el-button type="primary" @click="confirmForm(false)" :loading="loading">提交审批</el-button>
|
||||
<div class='dialog-footer'>
|
||||
<el-button @click='close()'>取消</el-button>
|
||||
<!-- <el-button type="primary" @click="confirmForm(true)" :loading="loading">保存</el-button>-->
|
||||
<el-button type='primary' @click='confirmForm(false)' :loading='loading'>提交审批</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
<script lang='ts' setup>
|
||||
import { ref, onMounted, reactive, defineExpose, nextTick, defineEmits, watch, onUnmounted } from 'vue'
|
||||
import type { UploadInstance, UploadProps, UploadRawFile } from 'element-plus'
|
||||
import { genFileId, ElMessage } from 'element-plus'
|
||||
@@ -210,6 +220,7 @@ import { addMointorPointFormData, getList, updateMointorPointFormData } from '@/
|
||||
import { queryByAllCode } from '@/api/system-boot/dictTree'
|
||||
import { getUserReportById } from '@/api/supervision-boot/userReport/form'
|
||||
import { getDictTreeById } from '@/api/system-boot/dictTree'
|
||||
|
||||
const emits = defineEmits(['onSubmit'])
|
||||
const dictData = useDictData()
|
||||
const dialogFormVisible = ref(false)
|
||||
@@ -603,6 +614,8 @@ const getDictTree = (e?: string) => {
|
||||
businessTypeList.value = []
|
||||
}
|
||||
}
|
||||
// 特殊字符正则表达式
|
||||
const specialCharRegex = /[<>\"'\%;()&+\-———|@*_?#$!,.html<script>]/
|
||||
//定义校验规则
|
||||
const rules = ref({
|
||||
//基础信息
|
||||
@@ -668,6 +681,16 @@ const rules = ref({
|
||||
required: true,
|
||||
message: '请输入监测点名称',
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
voltageLevel: [
|
||||
@@ -680,7 +703,17 @@ const rules = ref({
|
||||
connectedBus: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择接入母线',
|
||||
message: '请输入接入母线',
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
@@ -778,8 +811,18 @@ const rules = ref({
|
||||
powerSubstationName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择电网侧变电站',
|
||||
message: '请输入电网侧变电站',
|
||||
trigger: 'change'
|
||||
},
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
isGridConnectionPoint: [
|
||||
@@ -861,7 +904,8 @@ const close = () => {
|
||||
dialogFormVisible.value = false
|
||||
emits('onSubmit')
|
||||
}
|
||||
onMounted(() => { })
|
||||
onMounted(() => {
|
||||
})
|
||||
|
||||
watch(
|
||||
() => projectList.value,
|
||||
@@ -954,7 +998,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
ruleFormRef.value.resetFields()
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
} else {
|
||||
// 先判断提交终端信息与监测点信息
|
||||
// 提交监测点信息
|
||||
@@ -994,7 +1040,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
ruleFormRef.value.resetFields()
|
||||
resetForm()
|
||||
close()
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
} else {
|
||||
confirmFormData.id = resendId.value
|
||||
await updateMointorPointFormData(confirmFormData).then(res => {
|
||||
@@ -1007,7 +1055,9 @@ const confirmForm = async (flag: boolean) => {
|
||||
resetForm()
|
||||
close()
|
||||
}
|
||||
}).catch(() => { loading.value = false})
|
||||
}).catch(() => {
|
||||
loading.value = false
|
||||
})
|
||||
}
|
||||
} else {
|
||||
// // console.log('表单验证失败')
|
||||
@@ -1021,7 +1071,7 @@ const confirmForm = async (flag: boolean) => {
|
||||
}
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
<style lang='scss' scoped>
|
||||
.fixed_upload {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
|
||||
@@ -119,11 +119,11 @@
|
||||
|
||||
<el-form-item for="-" label="终端编码:" prop="monitoringTerminalCode">
|
||||
<el-input v-model.trim="form.monitoringTerminalCode" autocomplete="off" placeholder="请输入终端编码"
|
||||
@input="encode" />
|
||||
@input="encode" maxlength="32" show-word-limit />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item for="-" label="终端名称:" prop="monitoringTerminalName">
|
||||
<el-input v-model.trim="form.monitoringTerminalName" autocomplete="off" placeholder="请输入终端名称" />
|
||||
<el-input v-model.trim="form.monitoringTerminalName" autocomplete="off" placeholder="请输入终端名称" maxlength="32" show-word-limit/>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="终端型号:" prop="terminalType">
|
||||
<el-select v-model="form.terminalType" filterable clearable style="width: 100%" placeholder="请选择终端型号">
|
||||
@@ -176,10 +176,10 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="识别码:" prop="identificationCode">
|
||||
<el-input v-model.trim="form.identificationCode" autocomplete="off" placeholder="请输入识别码" />
|
||||
<el-input v-model.trim="form.identificationCode" autocomplete="off" placeholder="请输入识别码" maxlength="64" show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="终端秘钥:" prop="terminalSecretKey">
|
||||
<el-input v-model.trim="form.terminalSecretKey" autocomplete="off" placeholder="请输入终端秘钥" />
|
||||
<el-input v-model.trim="form.terminalSecretKey" autocomplete="off" placeholder="请输入终端秘钥" maxlength="64" show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="终端模型:" prop="terminalModel">
|
||||
<el-select v-model="form.terminalModel" clearable style="width: 100%" placeholder="请选择终端模型">
|
||||
@@ -229,11 +229,11 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="厂家终端编号:" prop="manufacturerDeviceNumber">
|
||||
<el-input v-model.trim="form.manufacturerDeviceNumber" autocomplete="off" placeholder="请输入厂家终端编号" />
|
||||
<el-input v-model.trim="form.manufacturerDeviceNumber" autocomplete="off" placeholder="请输入厂家终端编号" maxlength="64" show-word-limit/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item for="-" label="SIM卡号:" prop="simCardNumber">
|
||||
<el-input v-model.trim="form.simCardNumber" autocomplete="off" placeholder="请输入SIM卡号" />
|
||||
<el-input v-model.trim="form.simCardNumber" autocomplete="off" placeholder="请输入SIM卡号" maxlength="128" show-word-limit />
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="对时功能:" prop="timeSyncFunction">
|
||||
<!-- 默认值 开启 -->
|
||||
@@ -262,7 +262,7 @@
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item for="-" label="合同号:" prop="contractNumber">
|
||||
<el-input v-model.trim="form.contractNumber" autocomplete="off" placeholder="请输入合同号" />
|
||||
<el-input v-model.trim="form.contractNumber" autocomplete="off" placeholder="请输入合同号" maxlength="64" show-word-limit />
|
||||
</el-form-item>
|
||||
<!-- </div> -->
|
||||
<el-divider content-position="left">附件材料</el-divider>
|
||||
@@ -335,9 +335,10 @@
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="close()">取消</el-button>
|
||||
<el-button type="primary" @click="confirmForm(true)" :loading="loading">保存</el-button>
|
||||
<!-- <el-button type="primary" @click="confirmForm(true)" :loading="loading">保存</el-button>-->
|
||||
<el-button type="primary" @click="confirmForm(false)" :loading="loading"
|
||||
v-if="importType != 1">提交审批</el-button>
|
||||
>提交审批</el-button>
|
||||
<!-- v-if="importType != 1">提交审批</el-button>-->
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
@@ -698,6 +699,9 @@ const longitudeReg = /^[-+]?((180(\.0{1,10})?)|(1[0-7][0-9](\.\d{1,10})?)|([1-9]
|
||||
|
||||
// 纬度正则表达式
|
||||
const latitudeReg = /^[-+]?((90(\.0{1,10})?)|([1-8]?\d(\.\d{1,10})?)|(0(\.\d{1,10})?))$/
|
||||
|
||||
// 特殊字符正则表达式
|
||||
const specialCharRegex = /[<>\"'\%;()&+\-———|@*_?#$!,.html<script>]/;
|
||||
//定义校验规则
|
||||
const rules = ref({
|
||||
//基础信息
|
||||
@@ -791,14 +795,34 @@ const rules = ref({
|
||||
required: true,
|
||||
message: '请输入终端编码',
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
},
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
monitoringTerminalName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入监测名称',
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (specialCharRegex.test(value)) {
|
||||
callback(new Error('输入包含不允许的特殊字符'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
},
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
voltageTransformerType: [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user