|
|
<template>
|
|
|
<div class="L-assets-info">
|
|
|
<el-backtop target=".L-assets-info" />
|
|
|
<div class="assets-info-top">
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">基本信息</span>
|
|
|
</el-row>
|
|
|
<div class="assets-info-box" v-loading="loading">
|
|
|
<el-form
|
|
|
:model="ruleForm"
|
|
|
v-if="!loading"
|
|
|
:rules="rules"
|
|
|
ref="ruleFormRef"
|
|
|
label-width="170px"
|
|
|
class="demo-ruleForm"
|
|
|
label-position="right"
|
|
|
:disabled="disabled"
|
|
|
>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="系统名称"
|
|
|
required
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
prop="xtmc"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtmc"
|
|
|
:disabled="pageType === 'change'"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="单位名称"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
prop="dwmc"
|
|
|
disabled
|
|
|
>
|
|
|
<el-input v-model="ruleForm.dwmc" disabled></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="系统域名">
|
|
|
<el-input v-model="ruleForm.xtym"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="访问网址" class="fangwenwangzhi">
|
|
|
<el-row>
|
|
|
<el-col :span="23">
|
|
|
<el-input
|
|
|
placeholder="请输入内容"
|
|
|
v-model="ruleForm.fwwz"
|
|
|
class="input-with-select"
|
|
|
>
|
|
|
<template slot="prepend">
|
|
|
<el-select v-model="select">
|
|
|
<el-option label="http" value="http"></el-option>
|
|
|
<el-option label="https" value="https"></el-option>
|
|
|
</el-select>
|
|
|
<span class="wangzhispan">://</span>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-col>
|
|
|
<el-col :span="1">
|
|
|
<el-popover placement="top" width="250" trigger="hover">
|
|
|
<div>说明:请仔细填写访问地址,确保网站地址能被访问</div>
|
|
|
<i
|
|
|
slot="reference"
|
|
|
class="el-icon-document-copy"
|
|
|
style="
|
|
|
margin-left: 5px;
|
|
|
font-size: 16px;
|
|
|
cursor: pointer;
|
|
|
"
|
|
|
></i>
|
|
|
</el-popover>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="建设(运营)单位">
|
|
|
<el-input
|
|
|
v-model="ruleForm.jsyydw"
|
|
|
placeholder="请输入建设(运营)单位"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="互联网开放用途"
|
|
|
required
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
prop="hlwkfyt"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.hlwkfyt"
|
|
|
placeholder="请选择互联网开放用途"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in zc_hlwkfyt"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="Ip/Port" required class="IpPort">
|
|
|
<el-row>
|
|
|
<el-col :span="19">
|
|
|
<el-form-item
|
|
|
prop="ipAddress"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipAddress"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入IP地址"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col class="line" :span="1">:</el-col>
|
|
|
<el-col :span="4">
|
|
|
<el-form-item
|
|
|
prop="ipPort"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipPort"
|
|
|
style="width: 100%"
|
|
|
placeholder="端口号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否自建互联网专线IP"
|
|
|
required
|
|
|
prop="isZjhlwip"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.isZjhlwip"
|
|
|
placeholder="请选择是否自建互联网专线IP"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
:label="'关联域名' + (index == 0 ? '' : index)"
|
|
|
v-for="(domain, index) in ruleForm.glymList"
|
|
|
:key="domain.value"
|
|
|
:prop="'glymList.' + index + '.glym'"
|
|
|
>
|
|
|
<el-row>
|
|
|
<el-col :span="23">
|
|
|
<el-input
|
|
|
v-model="domain.key"
|
|
|
placeholder="请输入关联域名"
|
|
|
></el-input>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addForm('glymList')"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-left: 5px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomainOne(domain, 'glymList')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-left: 5px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="域名到期时间" class="yumingdaoqishijian">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.ymdqsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
:label="'关联IP' + (index == 0 ? '' : index)"
|
|
|
v-for="(domain, index) in ruleForm.glIpList"
|
|
|
:key="domain.value"
|
|
|
:prop="'glIpList.' + index + '.glIp'"
|
|
|
>
|
|
|
<el-row>
|
|
|
<el-col :span="23">
|
|
|
<el-input
|
|
|
placeholder="请输入ip地址"
|
|
|
v-model="domain.key"
|
|
|
class="input-selct-slot"
|
|
|
>
|
|
|
<el-select
|
|
|
slot="prepend"
|
|
|
v-model="domain.ipType"
|
|
|
placeholder="选择设备IP"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sb_ip"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.label"
|
|
|
/>
|
|
|
</el-select>
|
|
|
|
|
|
<el-input
|
|
|
slot="append"
|
|
|
v-model="domain.port"
|
|
|
placeholder="请输入端口"
|
|
|
></el-input>
|
|
|
</el-input>
|
|
|
<!-- <el-input
|
|
|
v-model="domain.key"
|
|
|
placeholder="请输入关联IP"
|
|
|
></el-input> -->
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addForm('glIpList')"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-left: 5px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomainOne(domain, 'glIpList')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-left: 5px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="到期提醒人" class="daoqitixingren">
|
|
|
<el-row :gutter="10">
|
|
|
<el-col :span="6">
|
|
|
<el-form-item prop="Ip">
|
|
|
<el-input
|
|
|
v-model="ruleForm.ymtxrXm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入姓名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="18">
|
|
|
<el-form-item
|
|
|
prop="ymtxrLxfs"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ymtxrLxfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入11位移动电话号码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="系统重要性">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xtzyx"
|
|
|
placeholder="请选择系统重要性"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in zc_xtzyx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否关基系统"
|
|
|
required
|
|
|
prop="gjxt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.gjxt"
|
|
|
placeholder="请选择是否关基系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="系统类型"
|
|
|
required
|
|
|
prop="xtlx"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select v-model="ruleForm.xtlx" placeholder="请选择系统类型">
|
|
|
<el-option
|
|
|
v-for="dict in zc_xtlx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="机房信息"
|
|
|
required
|
|
|
prop="jfxx"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.jfxx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入机房信息"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="使用时间"
|
|
|
class="shiyongshijian"
|
|
|
required
|
|
|
prop="sysj"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.sysj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd hh:mm:ss"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否是互联网系统"
|
|
|
required
|
|
|
prop="hlwxt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.hlwxt"
|
|
|
placeholder="请选择是否是互联网系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="系统编号">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtbh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统编号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="系统状态"
|
|
|
required
|
|
|
prop="xtzt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.xtzt"
|
|
|
placeholder="请选择系统状态"
|
|
|
@change="changeState"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in zc_xtzt"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="在线状态">
|
|
|
<el-select v-model="ruleForm.zxzt" placeholder="请选择在线状态">
|
|
|
<el-option
|
|
|
v-for="dict in zc_zxzt"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="C-机密性">
|
|
|
<el-select v-model="ruleForm.cjmx" placeholder="请选择C-机密性">
|
|
|
<el-option
|
|
|
v-for="dict in zc_c_i_a"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="I-完整性">
|
|
|
<el-select v-model="ruleForm.iwzx" placeholder="请选择I-完整性">
|
|
|
<el-option
|
|
|
v-for="dict in zc_c_i_a"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="A-可用性">
|
|
|
<el-select v-model="ruleForm.akyx" placeholder="请选择A-可用性">
|
|
|
<el-option
|
|
|
v-for="dict in zc_c_i_a"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="存活率">
|
|
|
<el-select v-model="ruleForm.chl" placeholder="请选择存活率">
|
|
|
<el-option
|
|
|
v-for="dict in zc_c_i_a"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="地理位置">
|
|
|
<el-cascader
|
|
|
size="large"
|
|
|
:props="formProps"
|
|
|
:options="options"
|
|
|
v-model="dlwz"
|
|
|
>
|
|
|
</el-cascader>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="经度">
|
|
|
<el-input
|
|
|
v-model="ruleForm.jd"
|
|
|
placeholder="请输入经度"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="纬度">
|
|
|
<el-input
|
|
|
v-model="ruleForm.wd"
|
|
|
placeholder="请输入纬度"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row v-show="ruleForm.xtzt == 5">
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="关停原因"
|
|
|
prop="bfyy"
|
|
|
:required="ruleForm.xtzt == 5"
|
|
|
>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
resize="none"
|
|
|
placeholder="请输入关停原因"
|
|
|
:rows="5"
|
|
|
v-model="ruleForm.bfyy"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="系统特征">
|
|
|
<el-checkbox-group v-model="xttz">
|
|
|
<el-checkbox
|
|
|
label="党政机关门户网站、重点新闻网站"
|
|
|
name="type"
|
|
|
>
|
|
|
党政机关门户网站、重点新闻网站
|
|
|
</el-checkbox>
|
|
|
<el-checkbox label="大型网络平台" name="type">
|
|
|
大型网络平台
|
|
|
</el-checkbox>
|
|
|
<el-checkbox
|
|
|
label="系统业务覆盖单个地市级行政区30%以上人口的工作、生活"
|
|
|
name="type"
|
|
|
>
|
|
|
系统业务覆盖单个地市级行政区30%以上人口的工作、生活
|
|
|
</el-checkbox>
|
|
|
<el-checkbox
|
|
|
label="系统业务覆盖10万人以上用水、用电、用气、用油、取暖或交通出行"
|
|
|
name="type"
|
|
|
>
|
|
|
系统业务覆盖10万人以上用水、用电、用气、用油、取暖或交通出行
|
|
|
</el-checkbox>
|
|
|
<el-checkbox
|
|
|
label="存储超过5万人以上个人敏感信息"
|
|
|
name="type"
|
|
|
>
|
|
|
存储超过5万人以上个人敏感信息
|
|
|
</el-checkbox>
|
|
|
<el-checkbox
|
|
|
label="存储超过100万条以上地理、人口、资源等国家基础数据"
|
|
|
name="type"
|
|
|
>
|
|
|
存储超过100万条以上地理、人口、资源等国家基础数据
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="用户规模"
|
|
|
required
|
|
|
prop="yhgm"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select v-model="ruleForm.yhgm" placeholder="请选择用户规模">
|
|
|
<el-option
|
|
|
v-for="dict in zc_yhgm"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="互联网接入运营商"
|
|
|
required
|
|
|
prop="hlwjryys"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.hlwjryys"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入互联网接入运营商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="资产物理接入地址"
|
|
|
required
|
|
|
prop="zcwljrdz"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.zcwljrdz"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入资产物理接入地址"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否部署云平台"
|
|
|
required
|
|
|
prop="bsypt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.bsypt"
|
|
|
@change="yunpingtaiChange"
|
|
|
placeholder="请选择是否部署云平台"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="云服务商名称"
|
|
|
required
|
|
|
prop="yfwsmc"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.yfwsmc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入云服务商名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="网站访问协议/开通协议"
|
|
|
required
|
|
|
prop="wzfwxy"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.wzfwxy"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入网站访问协议/开通协议"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="系统部署方式"
|
|
|
@change="xtbsfsChange"
|
|
|
required
|
|
|
prop="xtbsfs"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.xtbsfs"
|
|
|
placeholder="请选择系统部署方式"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in zc_xtbsfs"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否对公众开放"
|
|
|
required
|
|
|
prop="dgzkf"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.dgzkf"
|
|
|
placeholder="请选择是否对公众开放"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="DNS">
|
|
|
<el-input
|
|
|
v-model="ruleForm.dns"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入DNS"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="系统标签">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtbq"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统标签"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12" v-if="ruleForm.xtbsfs == 3">
|
|
|
<el-form-item
|
|
|
label="托管单位"
|
|
|
required
|
|
|
prop="tgdw"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.tgdw"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入托管单位"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" v-if="ruleForm.xtbsfs == 4">
|
|
|
<el-form-item
|
|
|
label="云服务商"
|
|
|
required
|
|
|
prop="yfws"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.yfws"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入云服务商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- <el-col :span="12">
|
|
|
<el-form-item label="互联网开放用途" required prop="hlwkfyt" :rules="{
|
|
|
required: true, message: '请输入', trigger: 'blur'
|
|
|
}">
|
|
|
<el-select v-model="ruleForm.hlwkfyt" placeholder="请选择互联网开放用途">
|
|
|
<el-option v-for="dict in zc_hlwkfyt" :key="dict.value" :label="dict.label"
|
|
|
:value="dict.value" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col> -->
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<el-row>
|
|
|
<el-col
|
|
|
:span="24"
|
|
|
style="text-align: right; margin: 10px 0"
|
|
|
v-if="!isMore"
|
|
|
>
|
|
|
<el-button @click="isMore = true" class="more-button"
|
|
|
>更多</el-button
|
|
|
>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-form
|
|
|
v-if="isMore"
|
|
|
:model="ruleForm"
|
|
|
:rules="rules"
|
|
|
ref="ruleFormRef"
|
|
|
label-width="170px"
|
|
|
class="demo-ruleForm"
|
|
|
label-position="right"
|
|
|
:disabled="disabled"
|
|
|
>
|
|
|
<!-- 隐藏部分 -->
|
|
|
<div v-if="isMore">
|
|
|
<!-- 系统防护信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">系统防护信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="防篡改">
|
|
|
<el-checkbox-group v-model="xtfhqkFcg">
|
|
|
<!-- <el-checkbox label="网页防篡改产品" name="type"></el-checkbox>
|
|
|
<el-checkbox label="软硬件waf" name="type"></el-checkbox>
|
|
|
<el-checkbox label="云防篡改平台服务" name="type"></el-checkbox>
|
|
|
<el-checkbox label="其他" name="type"></el-checkbox>
|
|
|
<el-checkbox label="无" name="type"></el-checkbox> -->
|
|
|
<el-checkbox
|
|
|
v-for="dict in xtfhqk_fcg"
|
|
|
:key="dict.value"
|
|
|
:label="dict.value"
|
|
|
:name="dict.value"
|
|
|
>
|
|
|
{{ dict.label }}
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="防泄露">
|
|
|
<el-checkbox-group v-model="xtfhqkFxl">
|
|
|
<!-- <el-checkbox label="加密传输" name="type"></el-checkbox>
|
|
|
<el-checkbox label="加密存储" name="type"></el-checkbox>
|
|
|
<el-checkbox label="散列存储" name="type"></el-checkbox>
|
|
|
<el-checkbox label="脱敏存储/展示" name="type"></el-checkbox>
|
|
|
<el-checkbox label="存储区域隔离控制" name="type"></el-checkbox>
|
|
|
<el-checkbox label="数据库审计产品" name="type"></el-checkbox>
|
|
|
<el-checkbox label="大数据分析平台" name="type"></el-checkbox>
|
|
|
<el-checkbox label="apt" name="type"></el-checkbox>
|
|
|
<el-checkbox label="dlp" name="type"></el-checkbox>
|
|
|
<el-checkbox label="其他" name="type"></el-checkbox>
|
|
|
<el-checkbox label="无" name="type"></el-checkbox> -->
|
|
|
<el-checkbox
|
|
|
v-for="dict in xtfhqk_fxl"
|
|
|
:key="dict.value"
|
|
|
:label="dict.value"
|
|
|
:name="dict.value"
|
|
|
>
|
|
|
{{ dict.label }}
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="防中断">
|
|
|
<el-checkbox-group v-model="xtfhqkFzd">
|
|
|
<!-- <el-checkbox label="备份恢复演练" name="type"></el-checkbox>
|
|
|
<el-checkbox label="应用及灾备" name="type"></el-checkbox>
|
|
|
<el-checkbox label="硬件冗余" name="type"></el-checkbox>
|
|
|
<el-checkbox label="CDN" name="type"></el-checkbox>
|
|
|
<el-checkbox label="抗ddos产品" name="type"></el-checkbox>
|
|
|
<el-checkbox label="资源可扩展" name="type"></el-checkbox>
|
|
|
<el-checkbox label="流量清洗服务" name="type"></el-checkbox>
|
|
|
<el-checkbox label="其他" name="type"></el-checkbox>
|
|
|
<el-checkbox label="无" name="type"></el-checkbox> -->
|
|
|
<el-checkbox
|
|
|
v-for="dict in xtfhqk_fzd"
|
|
|
:key="dict.value"
|
|
|
:label="dict.value"
|
|
|
:name="dict.value"
|
|
|
>
|
|
|
{{ dict.label }}
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="防勒索">
|
|
|
<el-checkbox-group v-model="xtfhqkFls">
|
|
|
<!-- <el-checkbox label="数据备份" name="type"></el-checkbox>
|
|
|
<el-checkbox label="补丁更新" name="type"></el-checkbox>
|
|
|
<el-checkbox label="防病毒网关" name="type"></el-checkbox>
|
|
|
<el-checkbox label="防病毒软件" name="type"></el-checkbox>
|
|
|
<el-checkbox label="系统安全加固" name="type"></el-checkbox>
|
|
|
<el-checkbox label="区域隔离" name="type"></el-checkbox>
|
|
|
<el-checkbox label="主机审计系统" name="type"></el-checkbox>
|
|
|
<el-checkbox label="其他" name="type"></el-checkbox>
|
|
|
<el-checkbox label="无" name="type"></el-checkbox> -->
|
|
|
<el-checkbox
|
|
|
v-for="dict in xtfhqk_fls"
|
|
|
:key="dict.value"
|
|
|
:label="dict.value"
|
|
|
:name="dict.value"
|
|
|
>
|
|
|
{{ dict.label }}
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 相关业务 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">相关业务</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="覆盖范围" prop="xgywFgfw">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywFgfw"
|
|
|
placeholder="请选择覆盖范围"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in fgfw"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="网络性质" prop="xgywWlxz">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywWlxz"
|
|
|
placeholder="请选择网络性质"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlxz"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="业务类型" prop="xgywYwlx">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywYwlx"
|
|
|
placeholder="请选择业务类型"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in ywlx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="互联情况" prop="xgywHlqk">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywHlqk"
|
|
|
placeholder="请选择互联网情况"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in hlqk"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="服务对象" prop="xgywFwdx">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywFwdx"
|
|
|
placeholder="请选择服务对象"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in fwdx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="服务范围" prop="xgywFwfw">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xgywFwfw"
|
|
|
placeholder="请选择服务范围"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in fwfw"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="业务描述"
|
|
|
required
|
|
|
prop="xgywYwms"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
resize="none"
|
|
|
placeholder="请输入业务描述"
|
|
|
:rows="5"
|
|
|
v-model="ruleForm.xgywYwms"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 联系人 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<el-col :span="24"
|
|
|
><span class="top-title-box">联系人</span>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 联系人的姓名/联系方式都是必填项, 邮箱不是 -->
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="分管责任人"
|
|
|
required
|
|
|
class="daoqitixingren"
|
|
|
>
|
|
|
<el-row :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="fgfzrxm"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.fgfzrxm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="fgfzrlxfs"
|
|
|
:rules="[
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.fgfzrlxfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系方式"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="fgfzryx"
|
|
|
:rules="[
|
|
|
{
|
|
|
type: 'email',
|
|
|
message: '请输入正确的邮箱地址',
|
|
|
trigger: ['blur', 'change'],
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.fgfzryx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入邮箱"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="部门负责人"
|
|
|
required
|
|
|
class="daoqitixingren"
|
|
|
>
|
|
|
<el-row :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="bmfzrxm"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.bmfzrxm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="bmfzrlxfs"
|
|
|
:rules="[
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.bmfzrlxfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系方式"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="bmfzryx"
|
|
|
:rules="[
|
|
|
{
|
|
|
type: 'email',
|
|
|
message: '请输入正确的邮箱地址',
|
|
|
trigger: ['blur', 'change'],
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.bmfzryx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入邮箱"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="第一联系人"
|
|
|
required
|
|
|
class="daoqitixingren"
|
|
|
>
|
|
|
<el-row :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="dylxrxm"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.dylxrxm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="dylxrlxfs"
|
|
|
:rules="[
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.dylxrlxfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系方式"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
prop="dylxryx"
|
|
|
:rules="[
|
|
|
{
|
|
|
type: 'email',
|
|
|
message: '请输入正确的邮箱地址',
|
|
|
trigger: ['blur', 'change'],
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.dylxryx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入邮箱"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
:label="'其他联系人' + (index == 0 ? '' : index)"
|
|
|
v-for="(domain, index) in ruleForm.otherConcat"
|
|
|
:key="domain.key"
|
|
|
:prop="'otherConcat.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item prop="name">
|
|
|
<el-input
|
|
|
v-model="domain.qtlxrxm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
:prop="'otherConcat.' + index + '.qtlxrlxfs'"
|
|
|
:rules="[
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.qtlxrlxfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系方式"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="7">
|
|
|
<el-form-item
|
|
|
:prop="'otherConcat.' + index + '.qtlxryx'"
|
|
|
:rules="[
|
|
|
{
|
|
|
type: 'email',
|
|
|
message: '请输入正确的邮箱地址',
|
|
|
trigger: ['blur', 'change'],
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.qtlxryx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入邮箱"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'otherConcat')"
|
|
|
class="el-icon-remove-outline"
|
|
|
style="font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row v-if="pageType !== 'look'">
|
|
|
<el-col :span="24">
|
|
|
<el-form-item prop="btn">
|
|
|
<el-button @click="addOtherConcat('otherConcat')"
|
|
|
>添加其他联系人</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-row>
|
|
|
<!-- ICP备案 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">ICP备案信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否备案"
|
|
|
required
|
|
|
prop="ipcSfba"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.ipcSfba"
|
|
|
@change="sfbaICPChange"
|
|
|
placeholder="请选择是否备案"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<div v-if="ruleForm.ipcSfba == 1">
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案有效性">
|
|
|
<el-select
|
|
|
v-model="ruleForm.ipcBayxx"
|
|
|
placeholder="请选择备案有效性"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案网站名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBawzmc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案网站名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案网站首页">
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBawzsy"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案网站首页"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="ICP备案编号"
|
|
|
required
|
|
|
prop="ipcIpcbabh"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcIpcbabh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入ICP备案编号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="备案域名"
|
|
|
required
|
|
|
prop="ipcBaym"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBaym"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案域名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案单位名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBadwmc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案单位性质">
|
|
|
<el-select
|
|
|
v-model="ruleForm.ipcBadwxz"
|
|
|
placeholder="请选择备案单位性质"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dwlx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备案联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBalxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="备案联系人电话"
|
|
|
prop="ipcBalxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.ipcBalxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="审核时间">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.shsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- 公安机关备案信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">公安机关备案信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否备案"
|
|
|
required
|
|
|
prop="gajgSfba"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.gajgSfba"
|
|
|
@change="sfbaGajgChange"
|
|
|
placeholder="请选择是否备案"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 公安机关备案信息 -->
|
|
|
<div v-if="ruleForm.gajgSfba == 1">
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">公安机关备案信息</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="备案机关">
|
|
|
<el-input
|
|
|
v-model="ruleForm.gajgBajg"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案机关"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="公安机关备案号"
|
|
|
required
|
|
|
prop="gajgBah"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.gajgBah"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入公安机关备案号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="备案日期">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.gajgBarq"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- 系统架构 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">系统架构</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="开发商"
|
|
|
required
|
|
|
prop="xtjgKfs"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgKfs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入开发商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="系统版本"
|
|
|
required
|
|
|
prop="xtjgXtbb"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgXtbb"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统版本"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="技术架构"
|
|
|
required
|
|
|
prop="xtjgJsjg"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgJsjg"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入技术架构"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="服务组件"
|
|
|
required
|
|
|
prop="xtjgFwzj"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgFwzj"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入服务组件"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="Web容器名称"
|
|
|
required
|
|
|
prop="xtjgWebMc"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgWebMc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入Web容器名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="Web容器版本"
|
|
|
required
|
|
|
prop="xtjgWebBb"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xtjgWebBb"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入Web容器版本"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否国产化系统"
|
|
|
required
|
|
|
prop="xtjgGcxt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.xtjgGcxt"
|
|
|
placeholder="请选择是否国产化系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否有国产设备"
|
|
|
required
|
|
|
prop="xtjgGcsb"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.xtjgGcsb"
|
|
|
placeholder="请选择是否有国产设备"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="系统设备国产化率">
|
|
|
<el-input
|
|
|
placeholder="请输入内容"
|
|
|
type="number"
|
|
|
v-model="ruleForm.xtjgGchl"
|
|
|
>
|
|
|
<template slot="append">%</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 等保信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">等保信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否等保系统"
|
|
|
required
|
|
|
prop="dbxxSfdbxt"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.dbxxSfdbxt"
|
|
|
@change="sfdbxtChange"
|
|
|
placeholder="请选择是否等保系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<div v-if="ruleForm.dbxxSfdbxt == 1">
|
|
|
<!-- 等保信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">等保信息</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="等保测评备案号"
|
|
|
required
|
|
|
prop="dbxxDbcpbah"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.dbxxDbcpbah"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入等保测评备案号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="等保等级"
|
|
|
required
|
|
|
prop="dbxxDbdj"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.dbxxDbdj"
|
|
|
placeholder="请选择等保等级"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dbxx_dbdj"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="主管部门">
|
|
|
<el-input
|
|
|
v-model="ruleForm.dbxxZgbm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入主管部门"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="专家评审">
|
|
|
<el-select
|
|
|
v-model="ruleForm.dbxxZjps"
|
|
|
placeholder="请选择专家评审"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dbxx_zjps"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="主管部门评审">
|
|
|
<el-select
|
|
|
v-model="ruleForm.dbxxZgbmps"
|
|
|
placeholder="请选择主管部门评审"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dbxx_zjps"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="定级时间"
|
|
|
required
|
|
|
prop="dbxxDjsj"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.dbxxDjsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="测评得分"
|
|
|
required
|
|
|
prop="dbxxCpdf"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.dbxxCpdf"
|
|
|
type="number"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评得分"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="是否有第三方测评"
|
|
|
required
|
|
|
prop="dbxxSfydsfcp"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="ruleForm.dbxxSfydsfcp"
|
|
|
placeholder="请选择是否有第三方测评"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- 第三方测评 -->
|
|
|
<div v-if="ruleForm.dbxxSfydsfcp == 1">
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">第三方测评</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评机构名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpjgmc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评机构名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评机构联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpjglxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评机构联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评机构地址">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpjgdz"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评机构地址"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="测评机构联系人电话"
|
|
|
prop="sfCpjglxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpjglxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评机构联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评时联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpslxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评时联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评师姓名">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpsxm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评师姓名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="测评时联系人电话"
|
|
|
prop="sfCpslxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpslxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评时联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
label="测评师电话"
|
|
|
prop="sfCpsdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfCpsdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入测评师电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="推荐等保办">
|
|
|
<el-input
|
|
|
v-model="ruleForm.sfTjdbb"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入推荐等保办"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评师证书等级">
|
|
|
<el-select
|
|
|
v-model="ruleForm.sfCpszsdj"
|
|
|
placeholder="请选择测评师证书等级"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sf_cpszsdj"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="测评等级">
|
|
|
<el-select
|
|
|
v-model="ruleForm.sfCpdj"
|
|
|
placeholder="请选择测评等级"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in dbxx_dbdj"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="推荐日期">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.sfTjrq"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="报告日期">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.sfBgrq"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="测评结论">
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
resize="none"
|
|
|
placeholder="请输入测评结论"
|
|
|
:rows="5"
|
|
|
v-model="ruleForm.sfCpjl"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- 密评信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">密评信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="是否密评系统">
|
|
|
<el-select
|
|
|
v-model="ruleForm.mpSfmpxt"
|
|
|
placeholder="请选择是否密评系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="密评得分">
|
|
|
<el-input
|
|
|
placeholder="请输入密评得分"
|
|
|
type="number"
|
|
|
v-model="ruleForm.mpMpdf"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 供应链信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">供应链信息</span>
|
|
|
</el-row>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.chepingUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'chepingUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`chepingUnit[${index}].name`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'测评单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入测评单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'chepingUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('chepingUnit', 1)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'chepingUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.yjgysUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'yjgysUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'硬件供应商单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入硬件供应商单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'yjgysUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('yjgysUnit', 2)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'yjgysUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.jfywUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'jfywUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'机房运维单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入机房运维单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'jfywUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('jfywUnit', 3)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'jfywUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.xtsjUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'xtsjUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'系统设计单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入系统设计单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'xtsjUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('xtsjUnit', 4)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'xtsjUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.xtjsUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'xtjsUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`xtjsUnit[${index}].name`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'系统建设单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入系统建设单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:prop="`xtjsUnit[${index}].tyshxydm`"
|
|
|
:rules="[
|
|
|
{ required: true, message: '请输入', trigger: 'blur' },
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
required
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`xtjsUnit[${index}].lxr`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'xtjsUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="供应商注册地址"
|
|
|
required
|
|
|
:prop="`xtjsUnit[${index}].gyszcdz`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
placeholder="请输入供应商注册地址"
|
|
|
v-model="domain.gyszcdz"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
label="注册地是否为太仓"
|
|
|
required
|
|
|
:prop="`xtjsUnit[${index}].sfwtc`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.sfwtc"
|
|
|
placeholder="请选择注册地是否为太仓"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('xtjsUnit', 5)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'xtjsUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.xtyyUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'xtyyUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`xtyyUnit[${index}].name`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'系统运营单位名称' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入系统运营单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`xtyyUnit[${index}].tyshxydm`"
|
|
|
:rules="[
|
|
|
{ required: true, message: '请输入', trigger: 'blur' },
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`xtyyUnit[${index}].lxr`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'xtyyUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="供应商注册地址"
|
|
|
required
|
|
|
:prop="`xtyyUnit[${index}].gyszcdz`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
placeholder="请输入供应商注册地址"
|
|
|
v-model="domain.gyszcdz"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
label="注册地是否为太仓"
|
|
|
required
|
|
|
:prop="`xtyyUnit[${index}].sfwtc`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.sfwtc"
|
|
|
placeholder="请选择注册地是否为太仓"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('xtyyUnit', 7)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'xtyyUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.aqfwUnit"
|
|
|
:key="domain.remark"
|
|
|
:prop="'aqfwUnit.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'安全服务单位' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.name"
|
|
|
placeholder="请输入安全服务单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'统一社会信用代码' + (index == 0 ? '' : index)"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^[a-zA-Z0-9]{18}$/,
|
|
|
message: '请输入正确格式的18位统一社会信用代码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.tyshxydm"
|
|
|
placeholder="请输入统一信用代码"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系人' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxr"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="11" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'联系电话' + (index == 0 ? '' : index)"
|
|
|
:prop="'aqfwUnit.' + index + '.lxdh'"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.lxdh"
|
|
|
placeholder="请输入联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
:span="1"
|
|
|
style="text-align: center"
|
|
|
v-if="pageType !== 'look'"
|
|
|
>
|
|
|
<i
|
|
|
@click="addGongyinglian('aqfwUnit', 6)"
|
|
|
v-if="index == 0"
|
|
|
class="el-icon-circle-plus-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'aqfwUnit')"
|
|
|
v-else
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- 基础网络 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">基础网络</span>
|
|
|
</el-row>
|
|
|
<!-- 服务器信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">服务器信息</span>
|
|
|
</el-row>
|
|
|
<div v-for="(domain, index) in ruleForm.fwqxx" :key="domain.key">
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].sblx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'设备类型' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sblx"
|
|
|
placeholder="请输入设备类型"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].pp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'品牌' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.pp"
|
|
|
placeholder="请输入品牌"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:label="'设备IP' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-row style="display: flex; width: 100%" :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
:prop="`fwqxx[${index}].ipType`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'change',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.ipType"
|
|
|
placeholder="请选择设备IP"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sb_ip"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.label"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="16" style="">
|
|
|
<el-form-item
|
|
|
:prop="`fwqxx[${index}].sbIp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sbIp"
|
|
|
placeholder="请输入"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].czxt`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'操作系统' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.czxt"
|
|
|
placeholder="请选择操作系统"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in fwq_czxt"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].czxtbb`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'操作系统版本' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.czxtbb"
|
|
|
placeholder="请输入操作系统版本"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].yjxh`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件型号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxh"
|
|
|
placeholder="请输入硬件型号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:prop="`fwqxx[${index}].yjxlh`"
|
|
|
:label="'硬件序列号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxlh"
|
|
|
placeholder="请输入硬件序列号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:prop="`fwqxx[${index}].yjbbxx`"
|
|
|
:label="'硬件版本信息' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbbxx"
|
|
|
placeholder="请输入硬件版本信息"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].yjyt`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件用途' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjyt"
|
|
|
placeholder="请输入硬件用途"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`fwqxx[${index}].yjbsxx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件部署位置' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbsxx"
|
|
|
placeholder="请输入硬件部署位置"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'fwqxx')"
|
|
|
v-if="index !== 0"
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<el-row>
|
|
|
<el-form-item>
|
|
|
<el-button @click="addServer('fwqxx', 1)">添加服务器</el-button>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<!-- 网络设备 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">网络设备</span>
|
|
|
</el-row>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.wlsb"
|
|
|
:key="domain.key"
|
|
|
:prop="'wlsb.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`wlsb[${index}].sblx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'设备类型' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sblx"
|
|
|
placeholder="请输入安全服务单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`wlsb[${index}].pp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'品牌' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.pp"
|
|
|
placeholder="请输入品牌"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:label="'设备IP' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-row style="display: flex; width: 100%" :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
:prop="`wlsb[${index}].ipType`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'change',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.ipType"
|
|
|
placeholder="请选择设备IP"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sb_ip"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.label"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="16" style="">
|
|
|
<el-form-item
|
|
|
:prop="`wlsb[${index}].sbIp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sbIp"
|
|
|
placeholder="请输入"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`wlsb[${index}].yjxh`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件型号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxh"
|
|
|
placeholder="请输入硬件型号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:prop="`wlsb[${index}].yjxlh`"
|
|
|
:label="'硬件序列号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxlh"
|
|
|
placeholder="请输入硬件序列号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:prop="`wlsb[${index}].yjbbxx`"
|
|
|
:label="'硬件版本信息' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbbxx"
|
|
|
placeholder="请输入硬件版本信息"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`wlsb[${index}].yjyt`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件用途' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjyt"
|
|
|
placeholder="请输入硬件用途"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`wlsb[${index}].yjbsxx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件部署位置' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbsxx"
|
|
|
placeholder="请输入硬件部署位置"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'wlsb')"
|
|
|
v-if="index !== 0"
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<el-row>
|
|
|
<el-form-item>
|
|
|
<el-button @click="addServer('wlsb', 2)"
|
|
|
>添加网络设备</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<!-- 安全设备 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">安全设备</span>
|
|
|
</el-row>
|
|
|
<div
|
|
|
v-for="(domain, index) in ruleForm.aqsb"
|
|
|
:key="domain.key"
|
|
|
:prop="'aqsb.' + index + '.value'"
|
|
|
>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`aqsb[${index}].sblx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'设备类型' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sblx"
|
|
|
placeholder="请输入安全服务单位名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`aqsb[${index}].pp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'品牌' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.pp"
|
|
|
placeholder="请输入品牌"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:label="'设备IP' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-row style="display: flex; width: 100%" :gutter="10">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
:prop="`aqsb[${index}].ipType`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'change',
|
|
|
}"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="domain.ipType"
|
|
|
placeholder="请选择设备IP"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sb_ip"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.label"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="16" style="">
|
|
|
<el-form-item
|
|
|
:prop="`aqsb[${index}].sbIp`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.sbIp"
|
|
|
placeholder="请输入"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`aqsb[${index}].yjxh`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件型号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxh"
|
|
|
placeholder="请输入硬件型号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'硬件序列号' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjxlh"
|
|
|
placeholder="请输入硬件序列号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
:label="'硬件版本信息' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbbxx"
|
|
|
placeholder="请输入硬件版本信息"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`aqsb[${index}].yjyt`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件用途' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjyt"
|
|
|
placeholder="请输入硬件用途"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
class="daoqitixingren"
|
|
|
required
|
|
|
:prop="`aqsb[${index}].yjbsxx`"
|
|
|
:rules="{
|
|
|
required: true,
|
|
|
message: '请输入',
|
|
|
trigger: 'blur',
|
|
|
}"
|
|
|
:label="'硬件部署位置' + (index == 0 ? '' : index)"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="domain.yjbsxx"
|
|
|
placeholder="请输入硬件部署位置"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="" v-if="!disabled">
|
|
|
<i
|
|
|
@click="removeDomain(domain, 'aqsb')"
|
|
|
v-if="index !== 0"
|
|
|
class="el-icon-remove-outline"
|
|
|
style="margin-top: 10px; font-size: 16px; cursor: pointer"
|
|
|
></i>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<el-row>
|
|
|
<el-form-item>
|
|
|
<el-button @click="addServer('aqsb', 3)"
|
|
|
>添加安全设备</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<!-- 新监管业务形态 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">新监管业务形态</span>
|
|
|
</el-row>
|
|
|
<el-row style="margin: 20px 0">
|
|
|
<el-radio-group
|
|
|
v-model="ruleForm.xjgywxt.remark"
|
|
|
size="medium"
|
|
|
@input="changeRadio"
|
|
|
style="margin-left: 170px"
|
|
|
>
|
|
|
<el-radio label="1" border>云平台</el-radio>
|
|
|
<el-radio label="2" border>大数据</el-radio>
|
|
|
<el-radio label="3" border>物联网</el-radio>
|
|
|
<el-radio label="4" border>移动APP</el-radio>
|
|
|
<el-radio label="5" border>工业控制</el-radio>
|
|
|
<el-radio label="6" border>CDN</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-row>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 1">
|
|
|
<!-- 云平台 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">云平台</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="云平台服务商">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptFws"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入云平台服务商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="是否租户级安全">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.yptSfzh"
|
|
|
placeholder="请选择是否租户级安全"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="云平台类型">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptLx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入备案网站首页"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="硬件资源大小">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptYjzydx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入硬件资源大小"
|
|
|
>
|
|
|
<template slot="append">支持G\TB\PB</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="平台架构">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptPtjg"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入平台架构"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="互联网IP段">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptIp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入互联网IP段"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="机房联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptJflxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入机房联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="机房联系人电话"
|
|
|
prop="xjgywxt.yptJflxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptJflxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入机房联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="服务器设备类型">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.yptFwqsblx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入服务器设备类型"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 2">
|
|
|
<!-- 大数据 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">大数据</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="平台服务商">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjPtfws"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入平台服务商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="敏感数据类型">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjMgsjlx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入敏感数据类型"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="硬件资源">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjYjzy"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入硬件资源"
|
|
|
>
|
|
|
<template slot="append">支持G\TB\PB</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="系统数据量">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjXtsjl"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统数据量"
|
|
|
>
|
|
|
<template slot="append">支持G\TB\PB</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="机房联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjJflxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入机房联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="机房联系人电话"
|
|
|
prop="xjgywxt.dsjJflxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.dsjJflxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入机房联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="是否数据审计">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.dsjSfsjsj"
|
|
|
placeholder="请选择是否数据审计"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 3">
|
|
|
<!-- 一般物联网设备 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">一般物联网设备</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="系统集成商名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbXtjcs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统集成商名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="用户数量">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbYhsl"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入用户数量"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="服务对象">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.wlwsbFwdx"
|
|
|
placeholder="请选择服务对象"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_fwdx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="终端数量">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbZdsl"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入终端数量"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="网络互连情况">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.wlwsbWlhlqk"
|
|
|
placeholder="请选择网络互连情况"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_wlhlqk"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbLxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="服务范围">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.wlwsbFwfw"
|
|
|
placeholder="请选择服务范围"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_fwfw"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="联系人电话"
|
|
|
prop="xjgywxt.wlwsbLxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbLxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="服务内容">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.wlwsbFwnr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入服务内容"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 摄像头 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">摄像头</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="摄像头品牌">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtPp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入摄像头品牌"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="位置">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtWz"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入位置"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="摄像头IP">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtIp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入摄像头IP"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="区域">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtQy"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入区域"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="摄像头数量">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtSl"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入摄像头数量"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="端口">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtDk"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入端口"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="设备型号">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtSbxh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入设备型号"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="固定版本">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.sxtGdbb"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入固定版本"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 4">
|
|
|
<!-- 移动APP -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">移动APP</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="移动APP系统">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appXt"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入移动APP系统"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="服务端域名">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appYm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入服务端域名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="移动APP渠道">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appQd"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入移动APP渠道"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="服务端IP">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appIp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入服务端IP"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appLxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="联系人电话"
|
|
|
prop="xjgywxt.appLxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.appLxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="是否有身份认证">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.appSfysfrz"
|
|
|
placeholder="请选择是否有身份认证"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 5">
|
|
|
<!-- 工业控制 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">工业控制</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="系统集成商名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzJcs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入系统集成商名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="运行时间">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.xjgywxt.gykzYxsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="服务对象">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.gykzFwdx"
|
|
|
placeholder="请选择服务对象"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_fwdx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="集成商国内外情况">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzJcsqk"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入集成商国内外情况"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="网络互联情况">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.gykzWlhxqk"
|
|
|
placeholder="请选择网络互联情况"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_wlhlqk"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzLxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="服务范围">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.gykzFwfw"
|
|
|
placeholder="请选择服务范围"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in wlw_fwfw"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="联系人电话"
|
|
|
prop="xjgywxt.gykzLxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzLxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="设备名称">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzSbmc"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入设备名称"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="设备品牌">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzSbpp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入设备品牌"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="设备类别">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzSblb"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入设备类别"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="运营商">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzYys"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入运营商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="互联网IP">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzHlwIp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入互联网IP"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="网络层级">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzWlcj"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入网络层级"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="控制台IP">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzKztIp"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入控制台IP"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="描述">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.gykzMs"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入描述"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<div v-if="ruleForm.xjgywxt.remark == 6">
|
|
|
<!-- CDN信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-two-box">CDN信息</span>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="CDN供应商">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnGys"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入CDN供应商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="CDN是否使用">
|
|
|
<el-select
|
|
|
v-model="ruleForm.xjgywxt.cdnSfsy"
|
|
|
placeholder="请选择CDN是否使用"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="CDN类型">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnLx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入CDN类型"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="CDN域名">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnYm"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入CDN域名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item label="联系人">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnLxr"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="">
|
|
|
<el-form-item
|
|
|
label="联系人电话"
|
|
|
prop="xjgywxt.cdnLxrdh"
|
|
|
:rules="[
|
|
|
{
|
|
|
pattern: /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/,
|
|
|
message: '请输入正确的手机号码',
|
|
|
trigger: 'blur',
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnLxrdh"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入联系人电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="CDN加速信息">
|
|
|
<el-input
|
|
|
v-model="ruleForm.xjgywxt.cdnJsxx"
|
|
|
style="width: 100%"
|
|
|
placeholder="请输入CDN加速信息"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- Whois信息 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">Whois信息</span>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-form-item label="有效性质">
|
|
|
<el-radio-group v-model="ruleForm.whoisYxx">
|
|
|
<el-radio label="1">是</el-radio>
|
|
|
<el-radio label="2">否</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="注册名">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcm"
|
|
|
placeholder="请输入注册名"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item label="服务商">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisFws"
|
|
|
placeholder="请输入服务商"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="注册邮箱"
|
|
|
prop="whoisZcyx"
|
|
|
:rules="[
|
|
|
{
|
|
|
type: 'email',
|
|
|
message: '请输入正确的邮箱地址',
|
|
|
trigger: ['blur', 'change'],
|
|
|
},
|
|
|
]"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcyx"
|
|
|
placeholder="请输入注册邮箱"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item label="注册国家">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcgj"
|
|
|
placeholder="请输入注册国家"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="注册省">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcs"
|
|
|
placeholder="请输入注册省"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item label="注册地址">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcdz"
|
|
|
placeholder="请输入注册地址"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="注册机构">
|
|
|
<el-input
|
|
|
v-model="ruleForm.whoisZcjg"
|
|
|
placeholder="请输入注册机构"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item label="注册时间">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.whoisZcsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="最后更新时间">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.whoisZhgxsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item label="到期时间">
|
|
|
<el-date-picker
|
|
|
v-model="ruleForm.whoisDqsj"
|
|
|
type="date"
|
|
|
format="yyyy-MM-dd"
|
|
|
value-format="yyyy-MM-dd"
|
|
|
placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<!-- 数据资产 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<span class="top-title-box">数据资产</span>
|
|
|
</el-row>
|
|
|
<el-form-item
|
|
|
prop="sjzcList"
|
|
|
v-for="(dataItem, dataIndex) in ruleForm.sjzcList"
|
|
|
:key="dataIndex"
|
|
|
class="listFormItem"
|
|
|
>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="数据库名称"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjkmc`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="dataItem.sjzcSjkmc"
|
|
|
:placeholder="'请输入数据库名称' + (dataIndex + 1)"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据库类型"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjklx`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<!-- <el-input v-model="ruleForm.sjzcSjklx" placeholder="请输入数据库类型"></el-input> -->
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSjklx"
|
|
|
:placeholder="'请选择数据库类型' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in database_type"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="端口"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcDk`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="dataItem.sjzcDk"
|
|
|
:placeholder="'请输入端口' + (dataIndex + 1)"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据库版本"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjkbb`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="dataItem.sjzcSjkbb"
|
|
|
:placeholder="'请输入数据库版本' + (dataIndex + 1)"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="数据库所在IP"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjkIp`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
v-model="dataItem.sjzcSjkIp"
|
|
|
:placeholder="'请输入数据库所在IP' + (dataIndex + 1)"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="共享属性"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcGxsx`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcGxsx"
|
|
|
:placeholder="'请选择共享属性' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_gxsx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="开放属性"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcKfsx`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcKfsx"
|
|
|
:placeholder="'请选择开放属性' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_kfsx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据领域"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjly`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSjly"
|
|
|
:placeholder="'请选择数据领域' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_sjly"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="更新周期"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcGxzq`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcGxzq"
|
|
|
:placeholder="'请选择数据领域' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_gxzq"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据类型"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjlx`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<!-- <el-select v-model="ruleForm.region" placeholder="请选择数据类型">
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_gxzq"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select> -->
|
|
|
<el-input
|
|
|
:placeholder="'请输入数据类型' + (dataIndex + 1)"
|
|
|
v-model="dataItem.sjzcSjlx"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="数据量"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjl`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
type="number"
|
|
|
v-model="dataItem.sjzcSjl"
|
|
|
:placeholder="'请输入数据量' + (dataIndex + 1)"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据量单位"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjldw`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSjldw"
|
|
|
:placeholder="'请选择数据量单位' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_sjldw"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="数据是否出境"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcCj`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcCj"
|
|
|
:placeholder="'请选择数据是否出境' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="数据分级分类"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjfjfl`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSjfjfl"
|
|
|
:placeholder="'请选择数据分级分类' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in sjzc_sjfjfl"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="数据重要程度"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjzycd`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSjzycd"
|
|
|
:placeholder="'请选择数据重要程度' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in zc_xtzyx"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="是否涉密数据"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSmsj`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
v-model="dataItem.sjzcSmsj"
|
|
|
:placeholder="'请选择是否涉密数据' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="24">
|
|
|
<el-form-item
|
|
|
label="数据描述"
|
|
|
:prop="`sjzcList[${dataIndex}].sjzcSjms`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
resize="none"
|
|
|
:placeholder="'请输入数据描述' + (dataIndex + 1)"
|
|
|
:rows="5"
|
|
|
v-model="dataItem.sjzcSjms"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row style="display: flex; width: 100%">
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
label="是否涉及个人信息"
|
|
|
:prop="`sjzcList[${dataIndex}].sfsjgrxx`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-select
|
|
|
@change="changeSfsjgrxx(dataIndex)"
|
|
|
v-model="dataItem.sfsjgrxx"
|
|
|
:placeholder="'请填写是否涉及个人信息' + (dataIndex + 1)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="dict in is_no"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12" style="">
|
|
|
<el-form-item
|
|
|
label="个人信息数据量"
|
|
|
:prop="`sjzcList[${dataIndex}].grxxsjl`"
|
|
|
:rules="rules.bwk"
|
|
|
>
|
|
|
<el-input
|
|
|
:placeholder="'请填写个人信息数据量' + (dataIndex + 1)"
|
|
|
type="number"
|
|
|
v-model="dataItem.grxxsjl"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<i
|
|
|
v-if="dataIndex > 0"
|
|
|
@click="removeSjzcList(dataIndex)"
|
|
|
class="el-icon-remove-outline removeRow"
|
|
|
></i>
|
|
|
</el-form-item>
|
|
|
<el-row>
|
|
|
<el-form-item>
|
|
|
<el-button @click="addSjzcList()">添加数据资产</el-button>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<!-- 业务系统拓扑图 -->
|
|
|
<el-row style="margin: 10px 0">
|
|
|
<!-- <span class="top-title-box">业务系统拓扑图</span> -->
|
|
|
<span class="top-title-box">
|
|
|
<span style="color: #ff4949; font-size: 16px">*</span>
|
|
|
业务系统拓扑图
|
|
|
<span style="color: #ff4949; font-size: 13px; font-weight: 400"
|
|
|
>提示:附件/图片请至少选择一项</span
|
|
|
>
|
|
|
</span>
|
|
|
</el-row>
|
|
|
<el-row style="margin: 20px 0">
|
|
|
<el-form-item :required="false" prop="ywxttpwj">
|
|
|
<myUpload
|
|
|
:fileSize="30"
|
|
|
:limit="1"
|
|
|
:fileType="accept"
|
|
|
v-model="ruleForm.ywxttpwj"
|
|
|
>
|
|
|
<div class="upload-file">
|
|
|
<i class="el-icon-paperclip"></i>
|
|
|
<span
|
|
|
>附件上传,支持xls、xlsx、doc、docx、pdf、rar、zip、pcap、txt、最多上传1个文件,每个不超过30M</span
|
|
|
>
|
|
|
</div>
|
|
|
</myUpload>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<el-row style="margin: 20px 0">
|
|
|
<el-form-item prop="ywxttpt" :required="false">
|
|
|
<myUpload
|
|
|
:fileSize="30"
|
|
|
:limit="1"
|
|
|
:fileType="acceptTwo"
|
|
|
v-model="ruleForm.ywxttpt"
|
|
|
>
|
|
|
<div class="upload-file">
|
|
|
<i class="el-icon-paperclip"></i>
|
|
|
<span
|
|
|
>图片上传,支持jpg、jpeg、png、最多上传1张图片,每个不超过30M</span
|
|
|
>
|
|
|
</div>
|
|
|
</myUpload>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<el-row style="margin: 10px 0" v-if="ruleForm.bfyy">
|
|
|
<span class="top-title-box">关停原因</span>
|
|
|
</el-row>
|
|
|
<el-row style="margin: 20px 0">
|
|
|
<el-form-item>
|
|
|
<div>{{ ruleForm.bfyy }}</div>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<el-row
|
|
|
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
|
|
v-if="(pageType === 'change' || pageType === 'add') && !audit"
|
|
|
>
|
|
|
<el-button type="danger" @click="sendBack">取消</el-button>
|
|
|
<el-button type="primary" @click="newAssets" :loading="loading"
|
|
|
>提交</el-button
|
|
|
>
|
|
|
</el-row>
|
|
|
<el-row
|
|
|
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
|
|
v-if="audit"
|
|
|
>
|
|
|
<el-button type="danger" :disabled="false" @click="btnReject"
|
|
|
>不通过</el-button
|
|
|
>
|
|
|
<el-button
|
|
|
type="primary"
|
|
|
:disabled="false"
|
|
|
@click="btnPass"
|
|
|
:loading="loading"
|
|
|
>通过</el-button
|
|
|
>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<el-row
|
|
|
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
|
|
v-if="pageType === 'look'"
|
|
|
>
|
|
|
<el-button type="primary" @click="sendBack">返回</el-button>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
</div>
|
|
|
<my-dialog
|
|
|
title="提示"
|
|
|
ref="liebiaoDialog"
|
|
|
class="taskDialogBox"
|
|
|
width="40%"
|
|
|
>
|
|
|
<el-row>
|
|
|
<el-col :span="21">
|
|
|
<el-form
|
|
|
:model="dialogruleForm"
|
|
|
:rules="dialogruleFormrules"
|
|
|
ref="dialogruleForm"
|
|
|
label-width="100px"
|
|
|
>
|
|
|
<el-form-item label="不通过原因:" prop="auditYy">
|
|
|
<el-input
|
|
|
v-model="dialogruleForm.auditYy"
|
|
|
placeholder="请输入不通过原因"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item class="newTask-form-item">
|
|
|
<el-button @click="resetForm('dialogruleForm')">取消</el-button>
|
|
|
<el-button type="primary" @click="submitForm('dialogruleForm')"
|
|
|
>确定</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-col>
|
|
|
<el-col :span="6"></el-col>
|
|
|
</el-row>
|
|
|
</my-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script setup>
|
|
|
import { ref, reactive, onMounted, computed, nextTick } from "vue";
|
|
|
import { useRoute, useRouter } from "vue-router";
|
|
|
import { ElMessage } from "element-plus";
|
|
|
import { useDict } from "@/utils/dict";
|
|
|
import {
|
|
|
assetUnitData,
|
|
|
assetInfo,
|
|
|
unitAllList,
|
|
|
unitEdit,
|
|
|
assetAudit,
|
|
|
lookInfo,
|
|
|
} from "@/api/auditPagesApi/index";
|
|
|
import myUpload from "@/views/components/myUpload/index.vue";
|
|
|
import myDialog from "@/views/components/myDialog/index.vue";
|
|
|
import useUserStore from "@/store/modules/user";
|
|
|
const route = useRoute();
|
|
|
const router = useRouter();
|
|
|
|
|
|
// 从路由参数中获取数据
|
|
|
const pageType = ref(route.query.pageType);
|
|
|
const id = ref(route.query.id);
|
|
|
const audit = ref(route.query.audit);
|
|
|
const isModdle = ref(route.query.isModdle);
|
|
|
const name = ref(route.query.name);
|
|
|
const queryData = ref(route.query.queryData);
|
|
|
|
|
|
|
|
|
// 数据字典
|
|
|
const {
|
|
|
zc_hlwkfyt,
|
|
|
is_no,
|
|
|
sb_ip,
|
|
|
zc_xtzyx,
|
|
|
zc_xtlx,
|
|
|
zc_xtzt,
|
|
|
zc_zxzt,
|
|
|
zc_c_i_a,
|
|
|
zc_yhgm,
|
|
|
zc_xtbsfs,
|
|
|
dwlx,
|
|
|
dbxx_dbdj,
|
|
|
dbxx_zjps,
|
|
|
sf_cpszsdj,
|
|
|
xtfhqk_fcg,
|
|
|
xtfhqk_fxl,
|
|
|
xtfhqk_fzd,
|
|
|
xtfhqk_fls,
|
|
|
fgfw,
|
|
|
wlxz,
|
|
|
ywlx,
|
|
|
hlqk,
|
|
|
fwdx,
|
|
|
fwfw,
|
|
|
wlw_fwdx,
|
|
|
wlw_wlhlqk,
|
|
|
wlw_fwfw,
|
|
|
database_type,
|
|
|
sjzc_gxsx,
|
|
|
sjzc_kfsx,
|
|
|
sjzc_sjly,
|
|
|
sjzc_gxzq,
|
|
|
sjzc_sjldw,
|
|
|
sjzc_sjfjfl,
|
|
|
} = useDict(
|
|
|
"zc_hlwkfyt",
|
|
|
"is_no",
|
|
|
"sb_ip",
|
|
|
"zc_xtzyx",
|
|
|
"zc_xtlx",
|
|
|
"zc_xtzt",
|
|
|
"zc_zxzt",
|
|
|
"zc_c_i_a",
|
|
|
"zc_yhgm",
|
|
|
"zc_xtbsfs",
|
|
|
"dwlx",
|
|
|
"dbxx_dbdj",
|
|
|
"dbxx_zjps",
|
|
|
"sf_cpszsdj",
|
|
|
"xtfhqk_fcg",
|
|
|
"xtfhqk_fxl",
|
|
|
"xtfhqk_fzd",
|
|
|
"xtfhqk_fls",
|
|
|
"fgfw",
|
|
|
"wlxz",
|
|
|
"ywlx",
|
|
|
"hlqk",
|
|
|
"fwdx",
|
|
|
"fwfw",
|
|
|
"wlw_fwdx",
|
|
|
"wlw_wlhlqk",
|
|
|
"wlw_fwfw",
|
|
|
"database_type",
|
|
|
"sjzc_gxsx",
|
|
|
"sjzc_kfsx",
|
|
|
"sjzc_sjly",
|
|
|
"sjzc_gxzq",
|
|
|
"sjzc_sjldw",
|
|
|
"sjzc_sjfjfl"
|
|
|
);
|
|
|
|
|
|
// 表单验证规则
|
|
|
const rules = reactive({
|
|
|
xtmc: [
|
|
|
{
|
|
|
required: true,
|
|
|
validator: (rule, value, callback) => {
|
|
|
if (!value) {
|
|
|
callback(new Error("请输入"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
dwmc: [
|
|
|
{
|
|
|
required: true,
|
|
|
validator: (rule, value, callback) => {
|
|
|
if (!value) {
|
|
|
callback(new Error("请输入"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
hlwkfyt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
ipAddress: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
ipPort: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
isZjhlwip: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
gjxt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtlx: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
jfxx: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
sysj: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
hlwxt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtzt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
yhgm: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
hlwjryys: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
zcwljrdz: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
bsypt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtbsfs: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
dgzkf: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xgywYwms: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
fgfzrxm: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
fgfzrlxfs: [
|
|
|
{
|
|
|
required: true,
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/;
|
|
|
if (!value) {
|
|
|
callback(new Error("请输入联系方式"));
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的手机号码"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
fgfzryx: [
|
|
|
{
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
|
|
|
if (!value) {
|
|
|
callback();
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的邮箱地址"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
bmfzrxm: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
bmfzrlxfs: [
|
|
|
{
|
|
|
required: true,
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/;
|
|
|
if (!value) {
|
|
|
callback(new Error("请输入联系方式"));
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的手机号码"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
bmfzryx: [
|
|
|
{
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
|
|
|
if (!value) {
|
|
|
callback();
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的邮箱地址"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
dylxrxm: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
dylxrlxfs: [
|
|
|
{
|
|
|
required: true,
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^1[3-9]\d{9}$|^0\d{2,3}-\d{7,8}$/;
|
|
|
if (!value) {
|
|
|
callback(new Error("请输入联系方式"));
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的手机号码"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
dylxryx: [
|
|
|
{
|
|
|
validator: (rule, value, callback) => {
|
|
|
const reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
|
|
|
if (!value) {
|
|
|
callback();
|
|
|
} else if (!reg.test(value)) {
|
|
|
callback(new Error("请输入正确的邮箱地址"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
},
|
|
|
trigger: "blur",
|
|
|
},
|
|
|
],
|
|
|
ipcSfba: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
gajgSfba: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgKfs: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgXtbb: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgJsjg: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgFwzj: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgWebMc: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgWebBb: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgGcxt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
xtjgGcsb: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
dbxxSfdbxt: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
bwk: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
ywxttpt: [{ required: true, message: "请上传", trigger: "change" }],
|
|
|
ywxttpwj: [{ required: true, message: "请上传", trigger: "change" }],
|
|
|
xgywFgfw: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
xgywWlxz: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
xgywYwlx: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
xgywHlqk: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
xgywFwdx: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
xgywFwfw: [{ required: true, message: "请填写", trigger: "change" }],
|
|
|
sjzcSjms: [{ required: true, message: "请填写", trigger: "blur" }],
|
|
|
});
|
|
|
|
|
|
// Template refs
|
|
|
const ruleFormRef = ref(null);
|
|
|
const liebiaoDialog = ref(null);
|
|
|
|
|
|
// State
|
|
|
const select = ref("http");
|
|
|
const isMore = ref(false);
|
|
|
const disabled = ref(false);
|
|
|
const loading = ref(false);
|
|
|
const dlwz = ref([]);
|
|
|
const xttz = ref([]);
|
|
|
const xtfhqkFcg = ref([]);
|
|
|
const xtfhqkFxl = ref([]);
|
|
|
const xtfhqkFzd = ref([]);
|
|
|
const xtfhqkFls = ref([]);
|
|
|
|
|
|
// File upload accept types
|
|
|
const accept = [
|
|
|
"xls",
|
|
|
"xlsx",
|
|
|
"doc",
|
|
|
"docx",
|
|
|
"pdf",
|
|
|
"rar",
|
|
|
"zip",
|
|
|
"pcap",
|
|
|
"txt",
|
|
|
];
|
|
|
|
|
|
const acceptTwo = ["jpg", "jpeg", "png"];
|
|
|
|
|
|
// Form props
|
|
|
const formProps = {
|
|
|
value: "value",
|
|
|
label: "value",
|
|
|
checkStrictly: true,
|
|
|
};
|
|
|
|
|
|
// Form data
|
|
|
const ruleForm = reactive({
|
|
|
sjzcList: [
|
|
|
{
|
|
|
grxxsjl: 0,
|
|
|
sjzcSjkmc: "",
|
|
|
sjzcSjklx: "",
|
|
|
},
|
|
|
],
|
|
|
xjgywxt: {
|
|
|
remark: "",
|
|
|
},
|
|
|
glymList: [
|
|
|
{
|
|
|
key: "",
|
|
|
},
|
|
|
],
|
|
|
glIpList: [
|
|
|
{
|
|
|
key: "",
|
|
|
},
|
|
|
],
|
|
|
gylxxList: [],
|
|
|
jcwlList: [],
|
|
|
otherConcat: [],
|
|
|
type: [],
|
|
|
chepingUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 1,
|
|
|
},
|
|
|
],
|
|
|
yjgysUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 2,
|
|
|
},
|
|
|
],
|
|
|
jfywUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 3,
|
|
|
},
|
|
|
],
|
|
|
xtsjUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 4,
|
|
|
},
|
|
|
],
|
|
|
xtjsUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 5,
|
|
|
},
|
|
|
],
|
|
|
xtyyUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 7,
|
|
|
},
|
|
|
],
|
|
|
aqfwUnit: [
|
|
|
{
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 6,
|
|
|
},
|
|
|
],
|
|
|
fwqxx: [
|
|
|
{
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: 1,
|
|
|
},
|
|
|
],
|
|
|
wlsb: [
|
|
|
{
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: 2,
|
|
|
},
|
|
|
],
|
|
|
aqsb: [
|
|
|
{
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: 3,
|
|
|
},
|
|
|
],
|
|
|
});
|
|
|
|
|
|
// Dialog form data
|
|
|
const dialogruleForm = reactive({
|
|
|
auditYy: "",
|
|
|
});
|
|
|
|
|
|
const dialogruleFormrules = reactive({
|
|
|
auditYy: [{ required: true, message: "请输入", trigger: "blur" }],
|
|
|
});
|
|
|
|
|
|
// Computed properties
|
|
|
const nickName = computed(() => useUserStore.nickName);
|
|
|
|
|
|
// Methods
|
|
|
const changeSfsjgrxx = (index) => {
|
|
|
if (ruleForm.sjzcList[index].sfsjgrxx != 1) {
|
|
|
ruleForm.sjzcList[index].grxxsjl = 0;
|
|
|
} else {
|
|
|
ruleForm.sjzcList[index].grxxsjl = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const addSjzcList = () => {
|
|
|
ruleForm.sjzcList.push({
|
|
|
sjzcSjkmc: "",
|
|
|
sjzcSjklx: "",
|
|
|
grxxsjl: 0,
|
|
|
});
|
|
|
};
|
|
|
|
|
|
const removeSjzcList = (index) => {
|
|
|
ruleForm.sjzcList.splice(index, 1);
|
|
|
};
|
|
|
|
|
|
const changeState = (e) => {
|
|
|
if (e != 5) {
|
|
|
ruleForm.bfyy = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
// Form validation methods
|
|
|
const validateName = (rule, value, callback) => {
|
|
|
if (!ruleForm.ywxttpwj && !ruleForm.ywxttpt) {
|
|
|
callback(new Error("附件,图片请任意上传一项"));
|
|
|
} else {
|
|
|
if (!ruleForm.ywxttpwj || !ruleForm.ywxttpt) {
|
|
|
nextTick(() => {
|
|
|
ruleFormRef.value?.clearValidate("ywxttpwj");
|
|
|
ruleFormRef.value?.clearValidate("ywxttpt");
|
|
|
});
|
|
|
}
|
|
|
callback();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const changeSateTetx = (rule, value, callback) => {
|
|
|
if (ruleForm.xtzt == 5 && !value) {
|
|
|
callback(new Error("请填写"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const changeSjzcList = (rule, value, callback) => {
|
|
|
if (value.length > 0) {
|
|
|
let sum = 0;
|
|
|
value.forEach((item) => {
|
|
|
if (hasEmptyValues(item)) {
|
|
|
sum++;
|
|
|
}
|
|
|
});
|
|
|
|
|
|
if (sum > 0) {
|
|
|
callback(new Error("数据资产存在空值"));
|
|
|
} else {
|
|
|
callback();
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const hasEmptyValues = (obj) => {
|
|
|
for (const key in obj) {
|
|
|
if (Object.hasOwn(obj, key)) {
|
|
|
const value = obj[key];
|
|
|
if (value === null || value === undefined) {
|
|
|
return true;
|
|
|
}
|
|
|
if (typeof value === "string" && value.trim() === "") {
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return false;
|
|
|
};
|
|
|
|
|
|
// API methods
|
|
|
const getInfo = async (id) => {
|
|
|
try {
|
|
|
const response = await assetInfo(id);
|
|
|
console.log(response);
|
|
|
if (response.code === 200) {
|
|
|
Object.assign(ruleForm, response.data);
|
|
|
|
|
|
if (!ruleForm.xjgywxt) {
|
|
|
ruleForm.xjgywxt = { remark: "" };
|
|
|
}
|
|
|
|
|
|
if (ruleForm.fwwz) {
|
|
|
const [protocol, ...rest] = ruleForm.fwwz.split("-");
|
|
|
select.value = protocol;
|
|
|
ruleForm.fwwz = rest.join("-");
|
|
|
}
|
|
|
|
|
|
if (!ruleForm.glymList?.length) {
|
|
|
ruleForm.glymList = [{ key: "" }];
|
|
|
}
|
|
|
|
|
|
if (!ruleForm.glIpList?.length) {
|
|
|
ruleForm.glIpList = [{ key: "" }];
|
|
|
}
|
|
|
|
|
|
if (ruleForm.xttz) {
|
|
|
xttz.value = ruleForm.xttz.split(",");
|
|
|
}
|
|
|
|
|
|
// Process supply chain units
|
|
|
const processUnits = (list, type, defaultUnit) => {
|
|
|
const filtered = (list || []).filter((item) => item.type === type);
|
|
|
return filtered.length ? filtered : [defaultUnit];
|
|
|
};
|
|
|
|
|
|
ruleForm.chepingUnit = processUnits(ruleForm.gylxxList, 1, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 1,
|
|
|
});
|
|
|
ruleForm.yjgysUnit = processUnits(ruleForm.gylxxList, 2, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 2,
|
|
|
});
|
|
|
|
|
|
// Process network devices
|
|
|
const processDevices = (list, type, defaultDevice) => {
|
|
|
const filtered = (list || []).filter((item) => item.type === type);
|
|
|
return filtered.length ? filtered : [defaultDevice];
|
|
|
};
|
|
|
|
|
|
ruleForm.fwqxx = processDevices(ruleForm.jcwlList, 1, {
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: 1,
|
|
|
});
|
|
|
const processProtection = (value) => (value ? value.split(",") : []);
|
|
|
|
|
|
xtfhqkFcg.value = processProtection(ruleForm.xtfhqkFcg);
|
|
|
xtfhqkFxl.value = processProtection(ruleForm.xtfhqkFxl);
|
|
|
xtfhqkFzd.value = processProtection(ruleForm.xtfhqkFzd);
|
|
|
xtfhqkFls.value = processProtection(ruleForm.xtfhqkFls);
|
|
|
|
|
|
// Process location
|
|
|
if (ruleForm.sheng) {
|
|
|
dlwz.value = [ruleForm.sheng];
|
|
|
if (ruleForm.shi) {
|
|
|
dlwz.value.push(ruleForm.shi);
|
|
|
if (ruleForm.qu) {
|
|
|
dlwz.value.push(ruleForm.qu);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
nextTick(() => {
|
|
|
ruleFormRef.value?.clearValidate();
|
|
|
});
|
|
|
}
|
|
|
} catch (error) {
|
|
|
console.error("Error fetching asset info:", error);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
onMounted(() => {
|
|
|
if (isModdle.value) {
|
|
|
console.log(pageType.value);
|
|
|
if (pageType.value == "look"&&audit.value==true) {
|
|
|
|
|
|
getInfoTwo(id.value);
|
|
|
disabled.value = true;
|
|
|
isMore.value = true;
|
|
|
nextTick(() => {
|
|
|
const inputElements = document.querySelectorAll(".el-input__inner");
|
|
|
const textareaInputElements = document.querySelectorAll(
|
|
|
".el-textarea__inner"
|
|
|
);
|
|
|
inputElements.forEach((input) => {
|
|
|
input.placeholder = "";
|
|
|
});
|
|
|
textareaInputElements.forEach((input) => {
|
|
|
input.placeholder = "";
|
|
|
});
|
|
|
});
|
|
|
} else if (pageType.value === "change") {
|
|
|
console.log(2)
|
|
|
getInfoTwo(id.value);
|
|
|
disabled.value = false;
|
|
|
isMore.value = true;
|
|
|
}
|
|
|
if (audit.value) {
|
|
|
disabled.value = true;
|
|
|
}
|
|
|
} else {
|
|
|
if (pageType.value === "look") {
|
|
|
getInfo(route.query.id);
|
|
|
disabled.value = true;
|
|
|
isMore.value = true;
|
|
|
nextTick(() => {
|
|
|
const inputElements = document.querySelectorAll(".el-input__inner");
|
|
|
const textareaInputElements = document.querySelectorAll(
|
|
|
".el-textarea__inner"
|
|
|
);
|
|
|
inputElements.forEach((input) => {
|
|
|
input.placeholder = "";
|
|
|
});
|
|
|
textareaInputElements.forEach((input) => {
|
|
|
input.placeholder = "";
|
|
|
});
|
|
|
});
|
|
|
} else if (pageType.value === "change") {
|
|
|
console.log(1.1)
|
|
|
getInfo(route.query.id);
|
|
|
disabled.value = false;
|
|
|
isMore.value = true;
|
|
|
}
|
|
|
|
|
|
if (audit.value) {
|
|
|
console.log(1.2)
|
|
|
disabled.value = true;
|
|
|
}
|
|
|
}
|
|
|
if (pageType.value === "add") {
|
|
|
ruleForm.dwmc = nickName.value;
|
|
|
isMore.value = true;
|
|
|
}
|
|
|
});
|
|
|
// Additional methods
|
|
|
const getInfoTwo = async (id) => {
|
|
|
try {
|
|
|
const response = await lookInfo(id);
|
|
|
if (response.code === 200) {
|
|
|
Object.assign(ruleForm, response.data);
|
|
|
|
|
|
if (!ruleForm.xjgywxt) {
|
|
|
ruleForm.xjgywxt = { remark: "" };
|
|
|
}
|
|
|
|
|
|
if (ruleForm.fwwz) {
|
|
|
const [protocol, ...rest] = ruleForm.fwwz.split("-");
|
|
|
select.value = protocol;
|
|
|
ruleForm.fwwz = rest.join("-");
|
|
|
}
|
|
|
|
|
|
if (!ruleForm.glymList?.length) {
|
|
|
ruleForm.glymList = [{ key: "" }];
|
|
|
}
|
|
|
|
|
|
if (!ruleForm.glIpList?.length) {
|
|
|
ruleForm.glIpList = [{ key: "" }];
|
|
|
}
|
|
|
|
|
|
if (ruleForm.xttz) {
|
|
|
xttz.value = ruleForm.xttz.split(",");
|
|
|
}
|
|
|
|
|
|
// Process units and devices
|
|
|
const processUnits = (list, type, defaultUnit) => {
|
|
|
const filtered = (list || []).filter((item) => item.type === type);
|
|
|
return filtered.length ? filtered : [defaultUnit];
|
|
|
};
|
|
|
|
|
|
if (ruleForm.gylxxList) {
|
|
|
ruleForm.chepingUnit = processUnits(ruleForm.gylxxList, 1, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 1,
|
|
|
});
|
|
|
ruleForm.yjgysUnit = processUnits(ruleForm.gylxxList, 2, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 2,
|
|
|
});
|
|
|
ruleForm.jfywUnit = processUnits(ruleForm.gylxxList, 3, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 3,
|
|
|
});
|
|
|
ruleForm.xtsjUnit = processUnits(ruleForm.gylxxList, 4, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 4,
|
|
|
});
|
|
|
ruleForm.xtjsUnit = processUnits(ruleForm.gylxxList, 5, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 5,
|
|
|
});
|
|
|
ruleForm.xtyyUnit = processUnits(ruleForm.gylxxList, 7, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 7,
|
|
|
});
|
|
|
ruleForm.aqfwUnit = processUnits(ruleForm.gylxxList, 6, {
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: 6,
|
|
|
});
|
|
|
}
|
|
|
|
|
|
if (ruleForm.jcwlList) {
|
|
|
const processDevices = (list, type, defaultDevice) => {
|
|
|
const filtered = (list || []).filter((item) => item.type === type);
|
|
|
return filtered.length ? filtered : [defaultDevice];
|
|
|
};
|
|
|
|
|
|
const defaultDevice = {
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: 1,
|
|
|
};
|
|
|
|
|
|
ruleForm.fwqxx = processDevices(ruleForm.jcwlList, 1, {
|
|
|
...defaultDevice,
|
|
|
type: 1,
|
|
|
});
|
|
|
ruleForm.wlsb = processDevices(ruleForm.jcwlList, 2, {
|
|
|
...defaultDevice,
|
|
|
type: 2,
|
|
|
});
|
|
|
ruleForm.aqsb = processDevices(ruleForm.jcwlList, 3, {
|
|
|
...defaultDevice,
|
|
|
type: 3,
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// Process protection settings
|
|
|
const processProtection = (value) => (value ? value.split(",") : []);
|
|
|
|
|
|
xtfhqkFcg.value = processProtection(ruleForm.xtfhqkFcg);
|
|
|
xtfhqkFxl.value = processProtection(ruleForm.xtfhqkFxl);
|
|
|
xtfhqkFzd.value = processProtection(ruleForm.xtfhqkFzd);
|
|
|
xtfhqkFls.value = processProtection(ruleForm.xtfhqkFls);
|
|
|
|
|
|
// Process location
|
|
|
if (ruleForm.sheng) {
|
|
|
dlwz.value = [ruleForm.sheng];
|
|
|
if (ruleForm.shi) {
|
|
|
dlwz.value.push(ruleForm.shi);
|
|
|
if (ruleForm.qu) {
|
|
|
dlwz.value.push(ruleForm.qu);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
nextTick(() => {
|
|
|
ruleFormRef.value?.clearValidate();
|
|
|
});
|
|
|
}
|
|
|
} catch (error) {
|
|
|
console.error("Error fetching asset info:", error);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const querySearchAsync = async (queryString, cb) => {
|
|
|
try {
|
|
|
const response = await unitAllList({ nickName: queryString });
|
|
|
const results = response.data.map((item) => ({
|
|
|
value: item.nickName,
|
|
|
id: item.id,
|
|
|
}));
|
|
|
cb(results);
|
|
|
} catch (error) {
|
|
|
console.error("Error searching units:", error);
|
|
|
cb([]);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const changeRadio = (id) => {
|
|
|
ruleForm.xjgywxt = { remark: id };
|
|
|
};
|
|
|
|
|
|
const addGongyinglian = (type, id) => {
|
|
|
ruleForm[type].push({
|
|
|
name: "",
|
|
|
tyshxydm: "",
|
|
|
lxr: "",
|
|
|
lxdh: "",
|
|
|
type: id,
|
|
|
remark: Date.now(),
|
|
|
});
|
|
|
};
|
|
|
|
|
|
const addServer = (type, id) => {
|
|
|
ruleForm[type].push({
|
|
|
sblx: "",
|
|
|
pp: "",
|
|
|
ipType: "",
|
|
|
sbIP: "",
|
|
|
czxx: "",
|
|
|
czxxbb: "",
|
|
|
yjxh: "",
|
|
|
yjxlh: "",
|
|
|
yjbbxx: "",
|
|
|
yjyt: "",
|
|
|
yjbswz: "",
|
|
|
type: id,
|
|
|
key: Date.now(),
|
|
|
});
|
|
|
};
|
|
|
|
|
|
const addForm = (type) => {
|
|
|
ruleForm[type].push({
|
|
|
key: "",
|
|
|
value: Date.now(),
|
|
|
});
|
|
|
};
|
|
|
|
|
|
const addOtherConcat = (type) => {
|
|
|
ruleForm[type].push({
|
|
|
qtlxrxm: "",
|
|
|
qtlxrlxfs: "",
|
|
|
qtlxryx: "",
|
|
|
key: Date.now(),
|
|
|
});
|
|
|
};
|
|
|
|
|
|
const removeDomain = (item, type) => {
|
|
|
const index = ruleForm[type].indexOf(item);
|
|
|
if (index !== -1) {
|
|
|
ruleForm[type].splice(index, 1);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const removeDomainOne = (item, type) => {
|
|
|
const index = ruleForm[type].indexOf(item);
|
|
|
if (index !== -1) {
|
|
|
ruleForm[type].splice(index, 1);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const yunpingtaiChange = (id) => {
|
|
|
if (id === 2) {
|
|
|
ruleForm.yfwsmc = "";
|
|
|
ruleForm.wzfwxy = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const xtbsfsChange = (id) => {
|
|
|
if (id === 3) {
|
|
|
ruleForm.yfws = "";
|
|
|
} else if (id === 4) {
|
|
|
ruleForm.tgdw = "";
|
|
|
} else {
|
|
|
ruleForm.yfws = "";
|
|
|
ruleForm.tgdw = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const sfbaICPChange = (id) => {
|
|
|
if (id === 2) {
|
|
|
ruleForm.ipcBayxx = "";
|
|
|
ruleForm.ipcBawzmc = "";
|
|
|
ruleForm.ipcBawzsy = "";
|
|
|
ruleForm.ipcIpcbabh = "";
|
|
|
ruleForm.ipcBaym = "";
|
|
|
ruleForm.ipcBadwmc = "";
|
|
|
ruleForm.ipcBadwxz = "";
|
|
|
ruleForm.ipcBalxr = "";
|
|
|
ruleForm.ipcBalxrdh = "";
|
|
|
ruleForm.shsj = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const sfbaGajgChange = (id) => {
|
|
|
if (id === 2) {
|
|
|
ruleForm.gajgBajg = "";
|
|
|
ruleForm.gajgBah = "";
|
|
|
ruleForm.gajgBarq = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const sfdbxtChange = (id) => {
|
|
|
if (id === 2) {
|
|
|
ruleForm.dbxxDbcpbah = "";
|
|
|
ruleForm.dbxxDbdj = "";
|
|
|
ruleForm.dbxxZgbm = "";
|
|
|
ruleForm.dbxxZjps = "";
|
|
|
ruleForm.dbxxZgbmps = "";
|
|
|
ruleForm.dbxxDjsj = "";
|
|
|
ruleForm.dbxxSfydsfcp = "";
|
|
|
ruleForm.dbxxCpdf = "";
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const newAssets = async () => {
|
|
|
if (!ruleFormRef.value) return;
|
|
|
|
|
|
try {
|
|
|
await ruleFormRef.value.validate();
|
|
|
|
|
|
ruleForm.xttz = xttz.value.join(",");
|
|
|
ruleForm.xtfhqkFcg = xtfhqkFcg.value.join(",");
|
|
|
ruleForm.xtfhqkFxl = xtfhqkFxl.value.join(",");
|
|
|
ruleForm.xtfhqkFzd = xtfhqkFzd.value.join(",");
|
|
|
ruleForm.xtfhqkFls = xtfhqkFls.value.join(",");
|
|
|
|
|
|
ruleForm.gylxxList = [
|
|
|
...ruleForm.chepingUnit,
|
|
|
...ruleForm.yjgysUnit,
|
|
|
...ruleForm.jfywUnit,
|
|
|
...ruleForm.xtsjUnit,
|
|
|
...ruleForm.xtjsUnit,
|
|
|
...ruleForm.xtyyUnit,
|
|
|
...ruleForm.aqfwUnit,
|
|
|
];
|
|
|
|
|
|
ruleForm.jcwlList = [...ruleForm.fwqxx, ...ruleForm.wlsb, ...ruleForm.aqsb];
|
|
|
|
|
|
if (dlwz.value.length > 0) {
|
|
|
ruleForm.sheng = dlwz.value[0];
|
|
|
ruleForm.shi = dlwz.value[1];
|
|
|
ruleForm.qu = dlwz.value[2];
|
|
|
}
|
|
|
|
|
|
if (ruleForm.fwwz) {
|
|
|
ruleForm.fwwz = `${select.value}-${ruleForm.fwwz}`;
|
|
|
}
|
|
|
|
|
|
loading.value = true;
|
|
|
|
|
|
if (this.pageType == "change") {
|
|
|
assetUnitData("put", this.ruleForm).then((res) => {
|
|
|
// console.log(res,"res");
|
|
|
this.loading = false;
|
|
|
this.$modal.msgSuccess("修改成功");
|
|
|
// this.$router.go(-1);
|
|
|
this.$router.push({ name: "Assets", params: this.queryData });
|
|
|
});
|
|
|
} else {
|
|
|
assetUnitData("post", this.ruleForm).then((res) => {
|
|
|
// console.log(res,"res");
|
|
|
this.loading = false;
|
|
|
this.$modal.msgSuccess("新增成功");
|
|
|
this.$router.go(-1);
|
|
|
});
|
|
|
}
|
|
|
if (pageType.value === "change") {
|
|
|
const response = await unitEdit(ruleForm);
|
|
|
loading.value = false;
|
|
|
ElMessage.success("提交成功,待管理员审核通过后完成修改");
|
|
|
router.push({ name: name.value, params: queryData.value });
|
|
|
} else {
|
|
|
ruleForm.xzType = 1;
|
|
|
const response = await assetUnitData("post", ruleForm);
|
|
|
loading.value = false;
|
|
|
ElMessage.success("提交成功,待管理员审核通过后完成新增");
|
|
|
router.push({ name: name.value, params: queryData.value });
|
|
|
}
|
|
|
} catch (error) {
|
|
|
loading.value = false;
|
|
|
if (error.message) {
|
|
|
ElMessage.error(error.message);
|
|
|
} else {
|
|
|
ElMessage.error("请填写完整");
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const sendBack = () => {
|
|
|
router.push({ name: name.value, params: queryData.value });
|
|
|
};
|
|
|
|
|
|
const btnReject = () => {
|
|
|
liebiaoDialog.value?.open();
|
|
|
};
|
|
|
|
|
|
const resetForm = () => {
|
|
|
dialogruleForm.auditYy = "";
|
|
|
liebiaoDialog.value?.close();
|
|
|
};
|
|
|
|
|
|
const submitForm = async (formName) => {
|
|
|
if (!ruleFormRef.value) return;
|
|
|
|
|
|
try {
|
|
|
await ruleFormRef.value.validate();
|
|
|
|
|
|
const auditData = {
|
|
|
auditState: "3",
|
|
|
auditYy: dialogruleForm.auditYy,
|
|
|
currentId: Number(id.value),
|
|
|
xzType: 1,
|
|
|
};
|
|
|
|
|
|
const response = await assetAudit(auditData);
|
|
|
if (response.code === 200) {
|
|
|
ElMessage.success("审核驳回");
|
|
|
router.push({ name: name.value, params: queryData.value });
|
|
|
}
|
|
|
} catch (error) {
|
|
|
console.error("Error submitting form:", error);
|
|
|
return false;
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const btnPass = async () => {
|
|
|
loading.value = true;
|
|
|
try {
|
|
|
const response = await assetAudit({
|
|
|
currentId: Number(id),
|
|
|
auditState: "2",
|
|
|
xzType: 1,
|
|
|
dwmc: ruleForm.dwmc,
|
|
|
xtmc: ruleForm.xtmc,
|
|
|
});
|
|
|
|
|
|
ElMessage.success("审核通过");
|
|
|
router.push({ name: name.value, params: queryData.value });
|
|
|
} catch (error) {
|
|
|
console.error("Error passing audit:", error);
|
|
|
} finally {
|
|
|
loading.value = false;
|
|
|
}
|
|
|
};
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
::v-deep .input-selct-slot {
|
|
|
.el-input-group__prepend {
|
|
|
width: 125px !important;
|
|
|
.el-select {
|
|
|
width: auto !important;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.el-input-group__append {
|
|
|
width: 130px;
|
|
|
background: transparent;
|
|
|
border: 0;
|
|
|
padding: 0;
|
|
|
padding-left: 10px;
|
|
|
}
|
|
|
}
|
|
|
::v-deep .listFormItem {
|
|
|
position: relative;
|
|
|
margin-bottom: 0;
|
|
|
& > .el-form-item__content {
|
|
|
margin-left: 0 !important;
|
|
|
.el-form-item {
|
|
|
margin-bottom: 22px;
|
|
|
}
|
|
|
}
|
|
|
.removeRow {
|
|
|
position: absolute;
|
|
|
bottom: 0;
|
|
|
right: 0;
|
|
|
}
|
|
|
}
|
|
|
.more-button {
|
|
|
pointer-events: auto !important;
|
|
|
opacity: 1 !important;
|
|
|
cursor: pointer !important;
|
|
|
}
|
|
|
</style>
|