parent
aa836c4dce
commit
14745d9448
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,799 @@
|
||||
<!-- 公众号表单 -->
|
||||
<template>
|
||||
<div class="L-assets-info">
|
||||
<div class="assets-info-top">
|
||||
<el-row style="margin: 10px 0">
|
||||
<span class="top-title-box">基本信息11</span>
|
||||
</el-row>
|
||||
<div class="assets-info-box">
|
||||
<el-form
|
||||
:model="ruleForm"
|
||||
:rules="rules"
|
||||
ref="ruleForm"
|
||||
label-width="170px"
|
||||
class="demo-ruleForm"
|
||||
label-position="right"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属单位" prop="ssdw">
|
||||
<!-- <el-input v-model="ruleForm.ssdw" placeholder="请输入单位名称"></el-input> -->
|
||||
<!-- :disabled="!disabledTwo" -->
|
||||
<el-autocomplete
|
||||
v-model="ruleForm.ssdw"
|
||||
:fetch-suggestions="querySearchAsync"
|
||||
placeholder="请输入所属单位"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="平台类型" prop="ptlx" required>
|
||||
<el-select
|
||||
v-model="ruleForm.ptlx"
|
||||
@change="ptlxChange"
|
||||
placeholder="请选择平台类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_ptlx_type"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div v-if="ruleForm.ptlx == '1'">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="微信号" required>
|
||||
<el-input
|
||||
v-model="ruleForm.wxh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入微信号"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="公众号名称"
|
||||
prop="gzhmc"
|
||||
:rules="[
|
||||
{
|
||||
required: true,
|
||||
message: '公众号名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhmc"
|
||||
placeholder="请输入公众号名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
class="daoqitixingren"
|
||||
label="统一社会信用代码"
|
||||
required
|
||||
>
|
||||
<el-form-item
|
||||
prop="tyshxydm"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^[a-zA-Z0-9]{18}$/,
|
||||
message: '请输入正确格式的18位统一社会信用代码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.tyshxydm"
|
||||
placeholder="请输入统一信用代码"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公众号状态" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhzt"
|
||||
placeholder="请选择公众号状态"
|
||||
@change="changeState"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_state"
|
||||
: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="公众号ID" required>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhId"
|
||||
style="width: 100%"
|
||||
placeholder="请输入公众号ID"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公众号类型" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhlx"
|
||||
placeholder="请选择公众号类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_lx"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.rzState"
|
||||
placeholder="请选择认证状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_rzzt"
|
||||
: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>
|
||||
<el-date-picker
|
||||
v-model="ruleForm.rzsj"
|
||||
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="认证类型" required>
|
||||
<el-select
|
||||
v-model="ruleForm.rzlx"
|
||||
placeholder="请选择认证类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_rzlx"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.sshy"
|
||||
placeholder="请选择所属行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.zdhy"
|
||||
placeholder="请选择重点行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.xzqh"
|
||||
placeholder="请选择行政区划"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_xzqh"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="认证主体" required>
|
||||
<el-input
|
||||
v-model="ruleForm.rzzt"
|
||||
style="width: 100%"
|
||||
placeholder="请输入认证主体"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-show="ruleForm.gzhzt == 7">
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
label="关停原因"
|
||||
prop="bfyy"
|
||||
:required="ruleForm.gzhzt == 7"
|
||||
>
|
||||
<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="系统简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入系统简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.xtjj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!-- 菜单信息 -->
|
||||
<div>
|
||||
<el-row>
|
||||
<span class="top-title-box">菜单信息</span>
|
||||
</el-row>
|
||||
<el-row v-for="(domain, index) in ruleForm.cdList">
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单名称' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-input
|
||||
v-model="domain.cdmc"
|
||||
style="width: 100%"
|
||||
placeholder="请输入菜单名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单链接' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-input
|
||||
v-model="domain.cdlj"
|
||||
style="width: 100%"
|
||||
placeholder="请输入菜单链接"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单类型' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-select
|
||||
v-model="domain.cdlx"
|
||||
placeholder="请选择菜单类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_cdlx"
|
||||
: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="!disabled"
|
||||
v-show="index != 0"
|
||||
>
|
||||
<i
|
||||
@click="removeDomain(domain, 'cdList')"
|
||||
class="el-icon-remove-outline"
|
||||
style="font-size: 16px; cursor: pointer; margin-top: 8px"
|
||||
></i>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-if="pageType !== 'look'">
|
||||
<el-col :span="24">
|
||||
<el-form-item>
|
||||
<el-button @click="addOtherConcat('cdList')"
|
||||
>添加菜单</el-button
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
class="daoqitixingren"
|
||||
label="统一社会信用代码"
|
||||
required
|
||||
>
|
||||
<el-form-item
|
||||
prop="tyshxydm"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^[a-zA-Z0-9]{18}$/,
|
||||
message: '请输入正确格式的18位统一社会信用代码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.tyshxydm"
|
||||
placeholder="请输入统一信用代码"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="账号名称"
|
||||
prop="gzhmc"
|
||||
:rules="[
|
||||
{
|
||||
required: true,
|
||||
message: '账号名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhmc"
|
||||
placeholder="请输入账号名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="账号ID" required>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhId"
|
||||
style="width: 100%"
|
||||
placeholder="请输入账号ID"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="账号状态" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhzt"
|
||||
placeholder="请选择账号状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_state"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.rzzt"
|
||||
style="width: 100%"
|
||||
placeholder="请输入开办主体"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="粉丝数" required>
|
||||
<el-input
|
||||
v-model="ruleForm.fss"
|
||||
type="number"
|
||||
style="width: 100%"
|
||||
placeholder="请输入粉丝数"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="重点行业" required>
|
||||
<el-select
|
||||
v-model="ruleForm.zdhy"
|
||||
placeholder="请选择重点行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.sshy"
|
||||
placeholder="请选择所属行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="系统简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入系统简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.xtjj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<el-row
|
||||
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
||||
v-if="pageType !== 'look'"
|
||||
>
|
||||
<el-button type="danger" @click="sendBack">取消</el-button>
|
||||
<el-button type="primary" @click="newAssets" :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>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
assetOfficialAccount,
|
||||
assetOfficialAccountInfo,
|
||||
unitAllList,
|
||||
} from "@/api/auditPagesApi/index";
|
||||
import equalToPassword from "@/views/components/assetsType/mainx.js";
|
||||
|
||||
export default {
|
||||
dicts: [
|
||||
"app_xzqh",
|
||||
"app_sshy",
|
||||
"app_zdhy",
|
||||
"gzh_state",
|
||||
"gzh_lx",
|
||||
"gzh_rzzt",
|
||||
"gzh_rzlx",
|
||||
"gzh_cdlx",
|
||||
"sys_ptlx_type",
|
||||
],
|
||||
data() {
|
||||
const changeSateTetx = (rule, value, callback) => {
|
||||
if (this.ruleForm.gzhzt == 7 && !value) {
|
||||
callback(new Error("请填写"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
ruleForm: {
|
||||
ptlx: "1",
|
||||
cdList: [
|
||||
{
|
||||
cdmc: "",
|
||||
cdlj: "",
|
||||
cdlx: "",
|
||||
},
|
||||
],
|
||||
},
|
||||
rules: {
|
||||
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
|
||||
ssdw: [
|
||||
{ required: true, message: "所属单位不能为空", trigger: "blur" },
|
||||
{ required: true, validator: equalToPassword, trigger: "change" },
|
||||
],
|
||||
// gzhmc:[
|
||||
// { required: true, message: "公众号名称不能为空", trigger: "blur" }
|
||||
// ],
|
||||
},
|
||||
loading: false,
|
||||
disabled: false,
|
||||
// disabledTwo:true,
|
||||
};
|
||||
},
|
||||
props: ["pageType", "id", "queryData"],
|
||||
mounted() {
|
||||
if (this.pageType == "look") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = true;
|
||||
this.$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 (this.pageType == "change") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = false;
|
||||
// this.disabledTwo = false;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
changeState(e) {
|
||||
console.log(e);
|
||||
if (e != 7) {
|
||||
this.ruleForm.bfyy = "";
|
||||
}
|
||||
},
|
||||
removeDomain(item, type) {
|
||||
var index = this.ruleForm[type].indexOf(item);
|
||||
if (index !== -1) {
|
||||
this.ruleForm[type].splice(index, 1);
|
||||
}
|
||||
},
|
||||
// 新增其他联系人
|
||||
addOtherConcat(type) {
|
||||
this.ruleForm[type].push({
|
||||
cdmc: "",
|
||||
cdlj: "",
|
||||
cdlx: "",
|
||||
// key: Date.now()
|
||||
});
|
||||
},
|
||||
getInfo(id) {
|
||||
assetOfficialAccountInfo(id).then((res) => {
|
||||
this.ruleForm = res.data;
|
||||
});
|
||||
},
|
||||
// 平台类型切换
|
||||
ptlxChange(item) {
|
||||
Object.keys(this.ruleForm).forEach((key) => {
|
||||
if(key =="cdList"){
|
||||
this.ruleForm[key] = [];
|
||||
return
|
||||
}
|
||||
if (key !== "ssdw" && key !== "ptlx" ) {
|
||||
this.ruleForm[key] = "";
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
},
|
||||
// 单位名称模糊查询
|
||||
querySearchAsync(queryString, cb) {
|
||||
let results = [];
|
||||
unitAllList({ nickName: queryString }).then((res) => {
|
||||
res.data.forEach((item) => {
|
||||
results.push({
|
||||
value: item.nickName,
|
||||
id: item.id,
|
||||
});
|
||||
});
|
||||
});
|
||||
cb(results);
|
||||
},
|
||||
// 新增资产确认按钮
|
||||
newAssets() {
|
||||
console.log(this.ruleForm);
|
||||
|
||||
this.$refs["ruleForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.loading = true;
|
||||
if (this.pageType == "change") {
|
||||
assetOfficialAccount("put", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({
|
||||
name: "OfficialAccount",
|
||||
params: this.queryData,
|
||||
});
|
||||
});
|
||||
} else {
|
||||
|
||||
assetOfficialAccount("post", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.$router.go(-1);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
sendBack() {
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "OfficialAccount", params: this.queryData });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,414 @@
|
||||
<!-- 电子邮件表单 -->
|
||||
<template>
|
||||
<div class="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">
|
||||
<el-form
|
||||
:model="ruleForm"
|
||||
:rules="rules"
|
||||
ref="ruleForm"
|
||||
label-width="170px"
|
||||
class="demo-ruleForm"
|
||||
label-position="right"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属单位" prop="ssdw">
|
||||
<!-- <el-input v-model="ruleForm.ssdw" placeholder="请输入单位名称"></el-input> -->
|
||||
<!-- :disabled="!disabledTwo" -->
|
||||
<el-autocomplete
|
||||
v-model="ruleForm.ssdw"
|
||||
:fetch-suggestions="querySearchAsync"
|
||||
placeholder="请输入所属单位"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="电子邮箱后缀" prop="dzyxhz">
|
||||
<el-input
|
||||
v-model="ruleForm.dzyxhz"
|
||||
placeholder="请输入电子邮箱后缀"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="建设类型" required>
|
||||
<el-select v-model="ruleForm.jslx" placeholder="请选择建设类型">
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_jslx"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.yjxtgys"
|
||||
style="width: 100%"
|
||||
placeholder="请输入邮件系统供应商"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="密码算法" required>
|
||||
<el-input
|
||||
v-model="ruleForm.mmsf"
|
||||
placeholder="请输入密码算法"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="邮件系统状态" required>
|
||||
<el-select
|
||||
@change="changeState"
|
||||
v-model="ruleForm.yjxtzc"
|
||||
placeholder="请选择邮件系统状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_state"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.aqfhxt"
|
||||
placeholder="请选择安全防护系统"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_hasorno"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.aqbfhj"
|
||||
placeholder="请选择安全备份环境"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_hasorno"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.szzscs"
|
||||
style="width: 100%"
|
||||
placeholder="请输入数字证书厂商"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="上线时间" required>
|
||||
<el-date-picker
|
||||
v-model="ruleForm.sxsj"
|
||||
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="所属行业" required>
|
||||
<el-select v-model="ruleForm.sshy" placeholder="请选择所属行业">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-select v-model="ruleForm.zdhy" placeholder="请选择重点行业">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select v-model="ruleForm.xzqh" placeholder="请选择行政区划">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_xzqh"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-show="ruleForm.yjxtzc == 2">
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
label="关停原因"
|
||||
prop="bfyy"
|
||||
:required="ruleForm.yjxtzc == 2"
|
||||
>
|
||||
<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="简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.jj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row
|
||||
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
||||
v-if="pageType !== 'look'"
|
||||
>
|
||||
<el-button type="danger" @click="sendBack">取消</el-button>
|
||||
<el-button type="primary" @click="newAssets" :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>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
assetEmail,
|
||||
assetEmailInfo,
|
||||
unitAllList,
|
||||
} from "@/api/auditPagesApi/index";
|
||||
import equalToPassword from "@/views/components/assetsType/mainx.js";
|
||||
|
||||
export default {
|
||||
dicts: [
|
||||
"app_xzqh",
|
||||
"app_sshy",
|
||||
"app_zdhy",
|
||||
"email_jslx",
|
||||
"email_state",
|
||||
"email_hasorno",
|
||||
],
|
||||
data() {
|
||||
const changeSateTetx = (rule, value, callback) => {
|
||||
if (this.ruleForm.yjxtzc == 2 && !value) {
|
||||
callback(new Error("请填写"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
ruleForm: {},
|
||||
rules: {
|
||||
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
|
||||
ssdw: [
|
||||
{ required: true, message: "所属单位不能为空", trigger: "blur" },
|
||||
{ required: true, validator: equalToPassword, trigger: "change" },
|
||||
],
|
||||
dzyxhz: [
|
||||
{ required: true, message: "电子邮箱后缀不能为空", trigger: "blur" },
|
||||
],
|
||||
},
|
||||
loading: false,
|
||||
disabled: false,
|
||||
// disabledTwo:true,
|
||||
};
|
||||
},
|
||||
props: ["pageType", "id", "queryData"],
|
||||
mounted() {
|
||||
if (this.pageType == "look") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = true;
|
||||
this.$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 (this.pageType == "change") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = false;
|
||||
// this.disabledTwo = false;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
changeState(e) {
|
||||
if (e != 2) {
|
||||
this.ruleForm.bfyy = "";
|
||||
}
|
||||
},
|
||||
getInfo(id) {
|
||||
assetEmailInfo(id).then((res) => {
|
||||
this.ruleForm = res.data;
|
||||
});
|
||||
},
|
||||
// 单位名称模糊查询
|
||||
querySearchAsync(queryString, cb) {
|
||||
let results = [];
|
||||
unitAllList({ nickName: queryString }).then((res) => {
|
||||
res.data.forEach((item) => {
|
||||
results.push({
|
||||
value: item.nickName,
|
||||
id: item.id,
|
||||
});
|
||||
});
|
||||
});
|
||||
cb(results);
|
||||
},
|
||||
// 新增资产确认按钮
|
||||
newAssets() {
|
||||
this.$refs["ruleForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.loading = true;
|
||||
if (this.pageType == "change") {
|
||||
assetEmail("put", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "Email", params: this.queryData });
|
||||
});
|
||||
} else {
|
||||
assetEmail("post", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.$router.go(-1);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
sendBack() {
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "Email", params: this.queryData });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,24 @@
|
||||
|
||||
import { unitAllList } from "@/api/auditPagesApi/index";
|
||||
|
||||
const equalToPassword = (rule, value, callback) => {
|
||||
console.log("出发出发");
|
||||
console.log(rule);
|
||||
console.log(value);
|
||||
|
||||
unitAllList({ nickName: value }).then(res => {
|
||||
if (res.data.length != 1) {
|
||||
callback(new Error("请输入正确的单位名称"));
|
||||
} else {
|
||||
if (value == res.data[0].nickName) {
|
||||
callback();
|
||||
} else {
|
||||
callback(new Error("请输入正确的单位名称"));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
export default equalToPassword
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,799 @@
|
||||
<!-- 公众号表单 -->
|
||||
<template>
|
||||
<div class="L-assets-info">
|
||||
<div class="assets-info-top">
|
||||
<el-row style="margin: 10px 0">
|
||||
<span class="top-title-box">基本信息11</span>
|
||||
</el-row>
|
||||
<div class="assets-info-box">
|
||||
<el-form
|
||||
:model="ruleForm"
|
||||
:rules="rules"
|
||||
ref="ruleForm"
|
||||
label-width="170px"
|
||||
class="demo-ruleForm"
|
||||
label-position="right"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属单位" prop="ssdw">
|
||||
<!-- <el-input v-model="ruleForm.ssdw" placeholder="请输入单位名称"></el-input> -->
|
||||
<!-- :disabled="!disabledTwo" -->
|
||||
<el-autocomplete
|
||||
v-model="ruleForm.ssdw"
|
||||
:fetch-suggestions="querySearchAsync"
|
||||
placeholder="请输入所属单位"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="平台类型" prop="ptlx" required>
|
||||
<el-select
|
||||
v-model="ruleForm.ptlx"
|
||||
@change="ptlxChange"
|
||||
placeholder="请选择平台类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_ptlx_type"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div v-if="ruleForm.ptlx == '1'">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="微信号" required>
|
||||
<el-input
|
||||
v-model="ruleForm.wxh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入微信号"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="公众号名称"
|
||||
prop="gzhmc"
|
||||
:rules="[
|
||||
{
|
||||
required: true,
|
||||
message: '公众号名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhmc"
|
||||
placeholder="请输入公众号名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
class="daoqitixingren"
|
||||
label="统一社会信用代码"
|
||||
required
|
||||
>
|
||||
<el-form-item
|
||||
prop="tyshxydm"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^[a-zA-Z0-9]{18}$/,
|
||||
message: '请输入正确格式的18位统一社会信用代码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.tyshxydm"
|
||||
placeholder="请输入统一信用代码"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公众号状态" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhzt"
|
||||
placeholder="请选择公众号状态"
|
||||
@change="changeState"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_state"
|
||||
: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="公众号ID" required>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhId"
|
||||
style="width: 100%"
|
||||
placeholder="请输入公众号ID"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公众号类型" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhlx"
|
||||
placeholder="请选择公众号类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_lx"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.rzState"
|
||||
placeholder="请选择认证状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_rzzt"
|
||||
: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>
|
||||
<el-date-picker
|
||||
v-model="ruleForm.rzsj"
|
||||
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="认证类型" required>
|
||||
<el-select
|
||||
v-model="ruleForm.rzlx"
|
||||
placeholder="请选择认证类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_rzlx"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.sshy"
|
||||
placeholder="请选择所属行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.zdhy"
|
||||
placeholder="请选择重点行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.xzqh"
|
||||
placeholder="请选择行政区划"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_xzqh"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="认证主体" required>
|
||||
<el-input
|
||||
v-model="ruleForm.rzzt"
|
||||
style="width: 100%"
|
||||
placeholder="请输入认证主体"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-show="ruleForm.gzhzt == 7">
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
label="关停原因"
|
||||
prop="bfyy"
|
||||
:required="ruleForm.gzhzt == 7"
|
||||
>
|
||||
<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="系统简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入系统简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.xtjj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!-- 菜单信息 -->
|
||||
<div>
|
||||
<el-row>
|
||||
<span class="top-title-box">菜单信息</span>
|
||||
</el-row>
|
||||
<el-row v-for="(domain, index) in ruleForm.cdList">
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单名称' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-input
|
||||
v-model="domain.cdmc"
|
||||
style="width: 100%"
|
||||
placeholder="请输入菜单名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单链接' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-input
|
||||
v-model="domain.cdlj"
|
||||
style="width: 100%"
|
||||
placeholder="请输入菜单链接"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="'菜单类型' + (index == 0 ? '' : index)"
|
||||
required
|
||||
>
|
||||
<el-select
|
||||
v-model="domain.cdlx"
|
||||
placeholder="请选择菜单类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_cdlx"
|
||||
: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="!disabled"
|
||||
v-show="index != 0"
|
||||
>
|
||||
<i
|
||||
@click="removeDomain(domain, 'cdList')"
|
||||
class="el-icon-remove-outline"
|
||||
style="font-size: 16px; cursor: pointer; margin-top: 8px"
|
||||
></i>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-if="pageType !== 'look'">
|
||||
<el-col :span="24">
|
||||
<el-form-item>
|
||||
<el-button @click="addOtherConcat('cdList')"
|
||||
>添加菜单</el-button
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
class="daoqitixingren"
|
||||
label="统一社会信用代码"
|
||||
required
|
||||
>
|
||||
<el-form-item
|
||||
prop="tyshxydm"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^[a-zA-Z0-9]{18}$/,
|
||||
message: '请输入正确格式的18位统一社会信用代码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.tyshxydm"
|
||||
placeholder="请输入统一信用代码"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="账号名称"
|
||||
prop="gzhmc"
|
||||
:rules="[
|
||||
{
|
||||
required: true,
|
||||
message: '账号名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhmc"
|
||||
placeholder="请输入账号名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="账号ID" required>
|
||||
<el-input
|
||||
v-model="ruleForm.gzhId"
|
||||
style="width: 100%"
|
||||
placeholder="请输入账号ID"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="账号状态" required>
|
||||
<el-select
|
||||
v-model="ruleForm.gzhzt"
|
||||
placeholder="请选择账号状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.gzh_state"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.rzzt"
|
||||
style="width: 100%"
|
||||
placeholder="请输入开办主体"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="粉丝数" required>
|
||||
<el-input
|
||||
v-model="ruleForm.fss"
|
||||
type="number"
|
||||
style="width: 100%"
|
||||
placeholder="请输入粉丝数"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="重点行业" required>
|
||||
<el-select
|
||||
v-model="ruleForm.zdhy"
|
||||
placeholder="请选择重点行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.sshy"
|
||||
placeholder="请选择所属行业"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="系统简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入系统简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.xtjj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<el-row
|
||||
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
||||
v-if="pageType !== 'look'"
|
||||
>
|
||||
<el-button type="danger" @click="sendBack">取消</el-button>
|
||||
<el-button type="primary" @click="newAssets" :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>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
assetOfficialAccount,
|
||||
assetOfficialAccountInfo,
|
||||
unitAllList,
|
||||
} from "@/api/auditPagesApi/index";
|
||||
import equalToPassword from "@/views/components/assetsType/mainx.js";
|
||||
|
||||
export default {
|
||||
dicts: [
|
||||
"app_xzqh",
|
||||
"app_sshy",
|
||||
"app_zdhy",
|
||||
"gzh_state",
|
||||
"gzh_lx",
|
||||
"gzh_rzzt",
|
||||
"gzh_rzlx",
|
||||
"gzh_cdlx",
|
||||
"sys_ptlx_type",
|
||||
],
|
||||
data() {
|
||||
const changeSateTetx = (rule, value, callback) => {
|
||||
if (this.ruleForm.gzhzt == 7 && !value) {
|
||||
callback(new Error("请填写"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
ruleForm: {
|
||||
ptlx: "1",
|
||||
cdList: [
|
||||
{
|
||||
cdmc: "",
|
||||
cdlj: "",
|
||||
cdlx: "",
|
||||
},
|
||||
],
|
||||
},
|
||||
rules: {
|
||||
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
|
||||
ssdw: [
|
||||
{ required: true, message: "所属单位不能为空", trigger: "blur" },
|
||||
{ required: true, validator: equalToPassword, trigger: "change" },
|
||||
],
|
||||
// gzhmc:[
|
||||
// { required: true, message: "公众号名称不能为空", trigger: "blur" }
|
||||
// ],
|
||||
},
|
||||
loading: false,
|
||||
disabled: false,
|
||||
// disabledTwo:true,
|
||||
};
|
||||
},
|
||||
props: ["pageType", "id", "queryData"],
|
||||
mounted() {
|
||||
if (this.pageType == "look") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = true;
|
||||
this.$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 (this.pageType == "change") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = false;
|
||||
// this.disabledTwo = false;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
changeState(e) {
|
||||
console.log(e);
|
||||
if (e != 7) {
|
||||
this.ruleForm.bfyy = "";
|
||||
}
|
||||
},
|
||||
removeDomain(item, type) {
|
||||
var index = this.ruleForm[type].indexOf(item);
|
||||
if (index !== -1) {
|
||||
this.ruleForm[type].splice(index, 1);
|
||||
}
|
||||
},
|
||||
// 新增其他联系人
|
||||
addOtherConcat(type) {
|
||||
this.ruleForm[type].push({
|
||||
cdmc: "",
|
||||
cdlj: "",
|
||||
cdlx: "",
|
||||
// key: Date.now()
|
||||
});
|
||||
},
|
||||
getInfo(id) {
|
||||
assetOfficialAccountInfo(id).then((res) => {
|
||||
this.ruleForm = res.data;
|
||||
});
|
||||
},
|
||||
// 平台类型切换
|
||||
ptlxChange(item) {
|
||||
Object.keys(this.ruleForm).forEach((key) => {
|
||||
if(key =="cdList"){
|
||||
this.ruleForm[key] = [];
|
||||
return
|
||||
}
|
||||
if (key !== "ssdw" && key !== "ptlx" ) {
|
||||
this.ruleForm[key] = "";
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
},
|
||||
// 单位名称模糊查询
|
||||
querySearchAsync(queryString, cb) {
|
||||
let results = [];
|
||||
unitAllList({ nickName: queryString }).then((res) => {
|
||||
res.data.forEach((item) => {
|
||||
results.push({
|
||||
value: item.nickName,
|
||||
id: item.id,
|
||||
});
|
||||
});
|
||||
});
|
||||
cb(results);
|
||||
},
|
||||
// 新增资产确认按钮
|
||||
newAssets() {
|
||||
console.log(this.ruleForm);
|
||||
|
||||
this.$refs["ruleForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.loading = true;
|
||||
if (this.pageType == "change") {
|
||||
assetOfficialAccount("put", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({
|
||||
name: "OfficialAccount",
|
||||
params: this.queryData,
|
||||
});
|
||||
});
|
||||
} else {
|
||||
|
||||
assetOfficialAccount("post", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.$router.go(-1);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
sendBack() {
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "OfficialAccount", params: this.queryData });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,414 @@
|
||||
<!-- 电子邮件表单 -->
|
||||
<template>
|
||||
<div class="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">
|
||||
<el-form
|
||||
:model="ruleForm"
|
||||
:rules="rules"
|
||||
ref="ruleForm"
|
||||
label-width="170px"
|
||||
class="demo-ruleForm"
|
||||
label-position="right"
|
||||
:disabled="disabled"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属单位" prop="ssdw">
|
||||
<!-- <el-input v-model="ruleForm.ssdw" placeholder="请输入单位名称"></el-input> -->
|
||||
<!-- :disabled="!disabledTwo" -->
|
||||
<el-autocomplete
|
||||
v-model="ruleForm.ssdw"
|
||||
:fetch-suggestions="querySearchAsync"
|
||||
placeholder="请输入所属单位"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="电子邮箱后缀" prop="dzyxhz">
|
||||
<el-input
|
||||
v-model="ruleForm.dzyxhz"
|
||||
placeholder="请输入电子邮箱后缀"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="建设类型" required>
|
||||
<el-select v-model="ruleForm.jslx" placeholder="请选择建设类型">
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_jslx"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.yjxtgys"
|
||||
style="width: 100%"
|
||||
placeholder="请输入邮件系统供应商"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="密码算法" required>
|
||||
<el-input
|
||||
v-model="ruleForm.mmsf"
|
||||
placeholder="请输入密码算法"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="邮件系统状态" required>
|
||||
<el-select
|
||||
@change="changeState"
|
||||
v-model="ruleForm.yjxtzc"
|
||||
placeholder="请选择邮件系统状态"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_state"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.aqfhxt"
|
||||
placeholder="请选择安全防护系统"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_hasorno"
|
||||
: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>
|
||||
<el-select
|
||||
v-model="ruleForm.aqbfhj"
|
||||
placeholder="请选择安全备份环境"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.email_hasorno"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.szzscs"
|
||||
style="width: 100%"
|
||||
placeholder="请输入数字证书厂商"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="上线时间" required>
|
||||
<el-date-picker
|
||||
v-model="ruleForm.sxsj"
|
||||
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="所属行业" required>
|
||||
<el-select v-model="ruleForm.sshy" placeholder="请选择所属行业">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_sshy"
|
||||
: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>
|
||||
<el-select v-model="ruleForm.zdhy" placeholder="请选择重点行业">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_zdhy"
|
||||
: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>
|
||||
<el-select v-model="ruleForm.xzqh" placeholder="请选择行政区划">
|
||||
<el-option
|
||||
v-for="dict in dict.type.app_xzqh"
|
||||
: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>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrr"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人电话" required>
|
||||
<el-form-item
|
||||
prop="xtzrrdh"
|
||||
:rules="[
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: '请输入正确的手机号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdh"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人电话"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人邮箱" required>
|
||||
<el-form-item
|
||||
prop="xtzrryx"
|
||||
:rules="[
|
||||
{
|
||||
type: 'email',
|
||||
message: '请输入正确的邮箱地址',
|
||||
trigger: ['blur', 'change'],
|
||||
},
|
||||
]"
|
||||
>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrryx"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人邮箱"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="系统责任人地址" required>
|
||||
<el-input
|
||||
v-model="ruleForm.xtzrrdz"
|
||||
style="width: 100%"
|
||||
placeholder="请输入系统责任人地址"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-show="ruleForm.yjxtzc == 2">
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
label="关停原因"
|
||||
prop="bfyy"
|
||||
:required="ruleForm.yjxtzc == 2"
|
||||
>
|
||||
<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="简介" required>
|
||||
<el-input
|
||||
type="textarea"
|
||||
resize="none"
|
||||
placeholder="请输入简介"
|
||||
:rows="5"
|
||||
v-model="ruleForm.jj"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row
|
||||
style="margin: 10px 0; padding-bottom: 50px; text-align: center"
|
||||
v-if="pageType !== 'look'"
|
||||
>
|
||||
<el-button type="danger" @click="sendBack">取消</el-button>
|
||||
<el-button type="primary" @click="newAssets" :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>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
assetEmail,
|
||||
assetEmailInfo,
|
||||
unitAllList,
|
||||
} from "@/api/auditPagesApi/index";
|
||||
import equalToPassword from "@/views/components/assetsType/mainx.js";
|
||||
|
||||
export default {
|
||||
dicts: [
|
||||
"app_xzqh",
|
||||
"app_sshy",
|
||||
"app_zdhy",
|
||||
"email_jslx",
|
||||
"email_state",
|
||||
"email_hasorno",
|
||||
],
|
||||
data() {
|
||||
const changeSateTetx = (rule, value, callback) => {
|
||||
if (this.ruleForm.yjxtzc == 2 && !value) {
|
||||
callback(new Error("请填写"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
ruleForm: {},
|
||||
rules: {
|
||||
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
|
||||
ssdw: [
|
||||
{ required: true, message: "所属单位不能为空", trigger: "blur" },
|
||||
{ required: true, validator: equalToPassword, trigger: "change" },
|
||||
],
|
||||
dzyxhz: [
|
||||
{ required: true, message: "电子邮箱后缀不能为空", trigger: "blur" },
|
||||
],
|
||||
},
|
||||
loading: false,
|
||||
disabled: false,
|
||||
// disabledTwo:true,
|
||||
};
|
||||
},
|
||||
props: ["pageType", "id", "queryData"],
|
||||
mounted() {
|
||||
if (this.pageType == "look") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = true;
|
||||
this.$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 (this.pageType == "change") {
|
||||
this.getInfo(this.id);
|
||||
this.disabled = false;
|
||||
// this.disabledTwo = false;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
changeState(e) {
|
||||
if (e != 2) {
|
||||
this.ruleForm.bfyy = "";
|
||||
}
|
||||
},
|
||||
getInfo(id) {
|
||||
assetEmailInfo(id).then((res) => {
|
||||
this.ruleForm = res.data;
|
||||
});
|
||||
},
|
||||
// 单位名称模糊查询
|
||||
querySearchAsync(queryString, cb) {
|
||||
let results = [];
|
||||
unitAllList({ nickName: queryString }).then((res) => {
|
||||
res.data.forEach((item) => {
|
||||
results.push({
|
||||
value: item.nickName,
|
||||
id: item.id,
|
||||
});
|
||||
});
|
||||
});
|
||||
cb(results);
|
||||
},
|
||||
// 新增资产确认按钮
|
||||
newAssets() {
|
||||
this.$refs["ruleForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.loading = true;
|
||||
if (this.pageType == "change") {
|
||||
assetEmail("put", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "Email", params: this.queryData });
|
||||
});
|
||||
} else {
|
||||
assetEmail("post", this.ruleForm).then((res) => {
|
||||
// console.log(res,"res");
|
||||
this.loading = false;
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.$router.go(-1);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
sendBack() {
|
||||
// this.$router.go(-1);
|
||||
this.$router.push({ name: "Email", params: this.queryData });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,24 @@
|
||||
|
||||
import { unitAllList } from "@/api/auditPagesApi/index";
|
||||
|
||||
const equalToPassword = (rule, value, callback) => {
|
||||
console.log("出发出发");
|
||||
console.log(rule);
|
||||
console.log(value);
|
||||
|
||||
unitAllList({ nickName: value }).then(res => {
|
||||
if (res.data.length != 1) {
|
||||
callback(new Error("请输入正确的单位名称"));
|
||||
} else {
|
||||
if (value == res.data[0].nickName) {
|
||||
callback();
|
||||
} else {
|
||||
callback(new Error("请输入正确的单位名称"));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
};
|
||||
|
||||
export default equalToPassword
|
@ -0,0 +1,249 @@
|
||||
<template>
|
||||
<div class="upload-file">
|
||||
<el-upload
|
||||
multiple
|
||||
v-show="fileList.length == 0"
|
||||
:action="uploadFileUrl"
|
||||
:before-upload="handleBeforeUpload"
|
||||
:file-list="fileList"
|
||||
:limit="limit"
|
||||
:on-error="handleUploadError"
|
||||
:on-exceed="handleExceed"
|
||||
:on-success="handleUploadSuccess"
|
||||
:show-file-list="false"
|
||||
:headers="headers"
|
||||
class="upload-file-uploader"
|
||||
ref="fileUpload"
|
||||
>
|
||||
<!-- 上传按钮 -->
|
||||
<slot v-if="fileList.length == 0"></slot>
|
||||
</el-upload>
|
||||
|
||||
<!-- 文件列表 -->
|
||||
<transition-group
|
||||
class="upload-file-list el-upload-list el-upload-list--text"
|
||||
name="el-fade-in-linear"
|
||||
tag="ul"
|
||||
>
|
||||
<li
|
||||
:key="file.url"
|
||||
class="el-upload-list__item ele-upload-list__item-content"
|
||||
v-for="(file, index) in fileList"
|
||||
>
|
||||
<el-link
|
||||
:href="`${baseUrl}${file.url}`"
|
||||
:underline="false"
|
||||
target="_blank"
|
||||
>
|
||||
<span class="el-icon-document"> {{ getFileName(file.name) }} </span>
|
||||
</el-link>
|
||||
<div
|
||||
class="ele-upload-list__item-content-action"
|
||||
v-if="$route.query.pageType != 'look'"
|
||||
>
|
||||
<el-link :underline="false" @click="handleDelete(index)" type="danger"
|
||||
>删除</el-link
|
||||
>
|
||||
</div>
|
||||
</li>
|
||||
</transition-group>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getToken } from "@/utils/auth";
|
||||
import Sortable from "sortablejs";
|
||||
|
||||
export default {
|
||||
name: "FileUpload",
|
||||
props: {
|
||||
// 值
|
||||
value: [String, Object, Array],
|
||||
// 数量限制
|
||||
limit: {
|
||||
type: Number,
|
||||
default: 5,
|
||||
},
|
||||
// 大小限制(MB)
|
||||
fileSize: {
|
||||
type: Number,
|
||||
default: 5,
|
||||
},
|
||||
// 文件类型, 例如['png', 'jpg', 'jpeg']
|
||||
fileType: {
|
||||
type: Array,
|
||||
default: () => ["doc", "xls", "ppt", "txt", "pdf"],
|
||||
},
|
||||
// 是否显示提示
|
||||
isShowTip: {
|
||||
type: Boolean,
|
||||
default: true,
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
number: 0,
|
||||
uploadList: [],
|
||||
baseUrl:process.env.VUE_APP_HJ == "test" ? process.env.VUE_APP_BASE_API :location.origin + '/api',
|
||||
|
||||
uploadFileUrl: process.env.VUE_APP_HJ == "test" ? process.env.VUE_APP_BASE_API + "/common/upload" : location.origin + '/api/common/upload',
|
||||
|
||||
headers: {
|
||||
Authorization: "Bearer " + getToken(),
|
||||
},
|
||||
fileList: [],
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
value: {
|
||||
handler(val) {
|
||||
if (val) {
|
||||
let temp = 1;
|
||||
// 首先将值转为数组
|
||||
const list = Array.isArray(val) ? val : this.value.split(",");
|
||||
// 然后将数组转为对象数组
|
||||
this.fileList = list.map((item) => {
|
||||
if (typeof item === "string") {
|
||||
item = { name: item, url: item };
|
||||
}
|
||||
item.uid = item.uid || new Date().getTime() + temp++;
|
||||
return item;
|
||||
});
|
||||
} else {
|
||||
this.fileList = [];
|
||||
return [];
|
||||
}
|
||||
},
|
||||
deep: true,
|
||||
immediate: true,
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
// 是否显示提示
|
||||
showTip() {
|
||||
return this.isShowTip && (this.fileType || this.fileSize);
|
||||
},
|
||||
},
|
||||
mounted(){
|
||||
|
||||
// console.log( process.env.VUE_APP_HJ,'ddfee',process.env.VUE_APP_BASE_API + "/common/upload")
|
||||
},
|
||||
methods: {
|
||||
// 上传前校检格式和大小
|
||||
handleBeforeUpload(file) {
|
||||
// 校检文件类型
|
||||
if (this.fileType) {
|
||||
const fileName = file.name.split(".");
|
||||
const fileExt = fileName[fileName.length - 1];
|
||||
const isTypeOk = this.fileType.indexOf(fileExt) >= 0;
|
||||
if (!isTypeOk) {
|
||||
this.$modal.msgError(
|
||||
`文件格式不正确,请上传${this.fileType.join("/")}格式文件!`
|
||||
);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
// 校检文件名是否包含特殊字符
|
||||
if (file.name.includes(",")) {
|
||||
this.$modal.msgError("文件名不正确,不能包含英文逗号!");
|
||||
return false;
|
||||
}
|
||||
// 校检文件大小
|
||||
if (this.fileSize) {
|
||||
const isLt = file.size / 1024 / 1024 < this.fileSize;
|
||||
if (!isLt) {
|
||||
this.$modal.msgError(`上传文件大小不能超过 ${this.fileSize} MB!`);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
this.$modal.loading("正在上传文件,请稍候...");
|
||||
this.number++;
|
||||
return true;
|
||||
},
|
||||
// 文件个数超出
|
||||
handleExceed() {
|
||||
this.$modal.msgError(`上传文件数量不能超过 ${this.limit} 个!`);
|
||||
},
|
||||
// 上传失败
|
||||
handleUploadError(err) {
|
||||
this.$modal.msgError("上传文件失败,请重试");
|
||||
this.$modal.closeLoading();
|
||||
},
|
||||
// 上传成功回调
|
||||
handleUploadSuccess(res, file) {
|
||||
if (res.code === 200) {
|
||||
this.uploadList.push({ name: res.fileName, url: res.fileName });
|
||||
this.uploadedSuccessfully();
|
||||
} else if (res.code == 401) {
|
||||
this.$store.dispatch("LogOut").then(() => {
|
||||
// location.href = '/login';
|
||||
this.$modal.msgError(res.msg);
|
||||
this.$modal.closeLoading();
|
||||
this.uploadedSuccessfully();
|
||||
this.$router.replace("/login");
|
||||
});
|
||||
} else {
|
||||
this.number--;
|
||||
this.$modal.closeLoading();
|
||||
this.$modal.msgError(res.msg);
|
||||
this.$refs.fileUpload.handleRemove(file);
|
||||
this.uploadedSuccessfully();
|
||||
}
|
||||
},
|
||||
// 删除文件
|
||||
handleDelete(index) {
|
||||
this.fileList.splice(index, 1);
|
||||
this.$emit("input", this.listToString(this.fileList));
|
||||
},
|
||||
// 上传结束处理
|
||||
uploadedSuccessfully() {
|
||||
if (this.number > 0 && this.uploadList.length === this.number) {
|
||||
this.fileList = this.fileList.concat(this.uploadList);
|
||||
this.uploadList = [];
|
||||
this.number = 0;
|
||||
this.$emit("input", this.listToString(this.fileList));
|
||||
this.$modal.closeLoading();
|
||||
}
|
||||
},
|
||||
// 获取文件名称
|
||||
getFileName(name) {
|
||||
// 如果是url那么取最后的名字 如果不是直接返回
|
||||
if (name.lastIndexOf("/") > -1) {
|
||||
return name.slice(name.lastIndexOf("/") + 1);
|
||||
} else {
|
||||
return name;
|
||||
}
|
||||
},
|
||||
// 对象转成指定字符串分隔
|
||||
listToString(list, separator) {
|
||||
let strs = "";
|
||||
separator = separator || ",";
|
||||
for (let i in list) {
|
||||
strs += list[i].url + separator;
|
||||
}
|
||||
return strs != "" ? strs.substr(0, strs.length - 1) : "";
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.upload-file-uploader {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
.upload-file-list .el-upload-list__item {
|
||||
border: 1px solid #e4e7ed;
|
||||
line-height: 2;
|
||||
margin-bottom: 10px;
|
||||
position: relative;
|
||||
}
|
||||
.upload-file-list .ele-upload-list__item-content {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
color: inherit;
|
||||
}
|
||||
.ele-upload-list__item-content-action .el-link {
|
||||
margin-right: 10px;
|
||||
}
|
||||
</style>
|
Loading…
Reference in new issue