电子邮件、移动设备

lijinlongNew
许宏杰 4 weeks ago
parent 46fad64cfc
commit 4821aac51c

@ -2,11 +2,19 @@
<template>
<div class="L-assets-info">
<div class="assets-info-top">
<el-row style="margin: 10px 0;">
<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-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">
@ -16,13 +24,15 @@
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-input
v-model="ruleForm.dzyxhz"
placeholder="请输入电子邮箱后缀"
></el-input>
</el-form-item>
</el-col>
</el-row>
@ -41,19 +51,30 @@
</el-col>
<el-col :span="12">
<el-form-item label="邮件系统供应商" required>
<el-input v-model="ruleForm.yjxtgys" style="width: 100%;" placeholder="请输入邮件系统供应商"></el-input>
<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-input
v-model="ruleForm.mmsf"
placeholder="请输入密码算法"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="邮件系统状态" required>
<el-select v-model="ruleForm.yjxtzc" placeholder="请选择邮件系统状态">
<el-select
@change="changeState"
v-model="ruleForm.yjxtzc"
placeholder="请选择邮件系统状态"
>
<el-option
v-for="dict in dict.type.email_state"
:key="dict.value"
@ -67,7 +88,10 @@
<el-row>
<el-col :span="12">
<el-form-item label="安全防护系统" required>
<el-select v-model="ruleForm.aqfhxt" placeholder="请选择安全防护系统">
<el-select
v-model="ruleForm.aqfhxt"
placeholder="请选择安全防护系统"
>
<el-option
v-for="dict in dict.type.email_hasorno"
:key="dict.value"
@ -79,7 +103,10 @@
</el-col>
<el-col :span="12">
<el-form-item label="安全备份环境" required>
<el-select v-model="ruleForm.aqbfhj" placeholder="请选择安全备份环境">
<el-select
v-model="ruleForm.aqbfhj"
placeholder="请选择安全备份环境"
>
<el-option
v-for="dict in dict.type.email_hasorno"
:key="dict.value"
@ -93,7 +120,11 @@
<el-row>
<el-col :span="12">
<el-form-item label="数字证书厂商" required>
<el-input v-model="ruleForm.szzscs" style="width: 100%;" placeholder="请输入数字证书厂商"></el-input>
<el-input
v-model="ruleForm.szzscs"
style="width: 100%"
placeholder="请输入数字证书厂商"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@ -103,7 +134,8 @@
type="date"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
placeholder="选择日期">
placeholder="选择日期"
>
</el-date-picker>
</el-form-item>
</el-col>
@ -149,39 +181,52 @@
</el-col>
<el-col :span="12">
<el-form-item label="系统责任人" required>
<el-input v-model="ruleForm.xtzrr" style="width: 100%;" placeholder="请输入系统责任人"></el-input>
<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"
<el-form-item
prop="xtzrrdh"
:rules="[
{
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
message: '请输入正确的手机号码',
trigger: 'blur'
}
trigger: 'blur',
},
]"
>
<el-input v-model="ruleForm.xtzrrdh" style="width: 100%;" placeholder="请输入系统责任人电话"></el-input>
<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"
<el-form-item
prop="xtzrryx"
:rules="[
{
type: 'email',
message: '请输入正确的邮箱地址',
trigger: ['blur', 'change']
}
trigger: ['blur', 'change'],
},
]"
>
<el-input v-model="ruleForm.xtzrryx" style="width: 100%;" placeholder="请输入系统责任人邮箱"></el-input>
<el-input
v-model="ruleForm.xtzrryx"
style="width: 100%"
placeholder="请输入系统责任人邮箱"
></el-input>
</el-form-item>
</el-form-item>
</el-col>
@ -189,23 +234,58 @@
<el-row>
<el-col :span="12">
<el-form-item label="系统责任人地址" required>
<el-input v-model="ruleForm.xtzrrdz" style="width: 100%;" placeholder="请输入系统责任人地址"></el-input>
<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-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-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-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-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>
@ -213,99 +293,122 @@
</div>
</template>
<script>
import { assetEmail, assetEmailInfo, unitAllList } from "@/api/auditPagesApi/index";
import equalToPassword from '@/views/components/assetsType/mainx.js'
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'],
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:{
ssdw:[
ruleForm: {},
rules: {
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
ssdw: [
{ required: true, message: "所属单位不能为空", trigger: "blur" },
{ required: true, validator: equalToPassword, trigger: "change" }
{ required: true, validator: equalToPassword, trigger: "change" },
],
dzyxhz:[
{ required: true, message: "电子邮箱后缀不能为空", trigger: "blur" }
dzyxhz: [
{ required: true, message: "电子邮箱后缀不能为空", trigger: "blur" },
],
},
loading:false,
disabled:false,
loading: false,
disabled: false,
// disabledTwo:true,
}
};
},
props:['pageType', 'id', 'queryData'],
mounted(){
if(this.pageType == 'look') {
this.getInfo(this.id)
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');
this.$nextTick(() => {
const inputElements = document.querySelectorAll(".el-input__inner");
const textareaInputElements = document.querySelectorAll(
".el-textarea__inner"
);
inputElements.forEach((input) => {
input.placeholder = '';
input.placeholder = "";
});
textareaInputElements.forEach((input) => {
input.placeholder = '';
input.placeholder = "";
});
})
} else if(this.pageType == 'change') {
this.getInfo(this.id)
});
} else if (this.pageType == "change") {
this.getInfo(this.id);
this.disabled = false;
// this.disabledTwo = false;
}
},
methods:{
getInfo(id){
assetEmailInfo(id).then(res=>{
methods: {
changeState(e) {
if (e != 2) {
this.ruleForm.bfyy = "";
}
},
getInfo(id) {
assetEmailInfo(id).then((res) => {
this.ruleForm = res.data;
})
});
},
//
querySearchAsync(queryString, cb){
querySearchAsync(queryString, cb) {
let results = [];
unitAllList({nickName: queryString}).then(res => {
res.data.forEach(item => {
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) {
newAssets() {
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
this.loading = true;
if(this.pageType == 'change') {
assetEmail('put',this.ruleForm).then(res=>{
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})
})
this.$router.push({ name: "Email", params: this.queryData });
});
} else {
assetEmail('post',this.ruleForm).then(res=>{
assetEmail("post", this.ruleForm).then((res) => {
// console.log(res,"res");
this.loading = false;
this.$modal.msgSuccess("新增成功");
this.$router.go(-1);
})
});
}
}
})
});
},
sendBack(){
sendBack() {
// this.$router.go(-1);
this.$router.push({name:'Email',params: this.queryData})
this.$router.push({ name: "Email", params: this.queryData });
},
},
}
</script>
};
</script>

@ -2,11 +2,19 @@
<template>
<div class="L-assets-info">
<div class="assets-info-top">
<el-row style="margin: 10px 0;">
<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-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="所属单位" required prop="ssdw">
@ -16,25 +24,34 @@
v-model="ruleForm.ssdw"
:fetch-suggestions="querySearchAsync"
placeholder="请输入所属单位"
></el-autocomplete>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="移动应用名称" required prop="appName">
<el-input v-model="ruleForm.appName" placeholder="请输入移动应用名称"></el-input>
<el-input
v-model="ruleForm.appName"
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.pack" style="width: 100%;" placeholder="请输入包名"></el-input>
<el-input
v-model="ruleForm.pack"
style="width: 100%"
placeholder="请输入包名"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="icp备案状态" required>
<el-select v-model="ruleForm.icpState" placeholder="请选择icp备案状态">
<el-select
v-model="ruleForm.icpState"
placeholder="请选择icp备案状态"
>
<el-option
v-for="dict in dict.type.app_icp_state"
:key="dict.value"
@ -48,21 +65,32 @@
<el-row>
<el-col :span="12">
<el-form-item label="icp备案号" required>
<el-input v-model="ruleForm.icpbah" placeholder="请输入icp备案号"></el-input>
<el-input
v-model="ruleForm.icpbah"
placeholder="请输入icp备案号"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item class="daoqitixingren" label="统一社会信用代码" required>
<el-form-item prop="tyshxydm"
<el-form-item
class="daoqitixingren"
label="统一社会信用代码"
required
>
<el-form-item
prop="tyshxydm"
:rules="[
{
pattern: /^[a-zA-Z0-9]{18}$/,
message: '请输入正确格式的18位统一社会信用代码',
trigger: 'blur'
}
trigger: 'blur',
},
]"
>
<el-input v-model="ruleForm.tyshxydm" placeholder="请输入统一信用代码"></el-input>
<el-input
v-model="ruleForm.tyshxydm"
placeholder="请输入统一信用代码"
></el-input>
</el-form-item>
</el-form-item>
</el-col>
@ -70,7 +98,10 @@
<el-row>
<el-col :span="12">
<el-form-item label="文件名" required>
<el-input v-model="ruleForm.wjm" placeholder="请输入文件名"></el-input>
<el-input
v-model="ruleForm.wjm"
placeholder="请输入文件名"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@ -115,7 +146,10 @@
<el-row>
<el-col :span="12">
<el-form-item label="安全加固情况" required>
<el-select v-model="ruleForm.aqjgqk" placeholder="请选择安全加固情况">
<el-select
v-model="ruleForm.aqjgqk"
placeholder="请选择安全加固情况"
>
<el-option
v-for="dict in dict.type.app_aqjgqk"
:key="dict.value"
@ -127,38 +161,62 @@
</el-col>
<el-col :span="12">
<el-form-item label="版本信息" required>
<el-input v-model="ruleForm.bbxx" style="width: 100%;" placeholder="请输入版本信息"></el-input>
<el-input
v-model="ruleForm.bbxx"
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.bbh" style="width: 100%;" placeholder="请输入版本信息(版本号)"></el-input>
<el-input
v-model="ruleForm.bbh"
style="width: 100%"
placeholder="请输入版本信息(版本号)"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="版本信息MD5" required>
<el-input v-model="ruleForm.bbxxMd5" style="width: 100%;" placeholder="请输入版本信息MD5"></el-input>
<el-input
v-model="ruleForm.bbxxMd5"
style="width: 100%"
placeholder="请输入版本信息MD5"
></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.bbxxSjpt" style="width: 100%;" placeholder="请输入版本信息(上架平台)"></el-input>
<el-input
v-model="ruleForm.bbxxSjpt"
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.wjdx" style="width: 100%;" placeholder="请输入文件大小"></el-input>
<el-input
v-model="ruleForm.wjdx"
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.appState" placeholder="请选择移动应用系统状态">
<el-select
v-model="ruleForm.appState"
placeholder="请选择移动应用系统状态"
@change="changeState"
>
<el-option
v-for="dict in dict.type.gzh_state"
:key="dict.value"
@ -169,19 +227,50 @@
</el-form-item>
</el-col>
</el-row>
<el-row v-show="ruleForm.appState == 7">
<el-col :span="24">
<el-form-item
label="关停原因"
prop="bfyy"
:required="ruleForm.appState == 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.jj"></el-input>
<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: 30px; text-align: center;" v-if="pageType !== 'look'">
<el-row
style="margin: 10px 0; padding-bottom: 30px; 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-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-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>
@ -190,98 +279,121 @@
</template>
<script>
import { assetApp, assetAppInfo, unitAllList } from "@/api/auditPagesApi/index";
import equalToPassword from '@/views/components/assetsType/mainx.js'
import equalToPassword from "@/views/components/assetsType/mainx.js";
export default {
dicts:['app_icp_state','app_sshy','app_zdhy','app_xzqh','app_aqjgqk','gzh_state'],
dicts: [
"app_icp_state",
"app_sshy",
"app_zdhy",
"app_xzqh",
"app_aqjgqk",
"gzh_state",
],
data() {
const changeSateTetx = (rule, value, callback) => {
if (this.ruleForm.appState == 7 && !value) {
callback(new Error("请填写"));
} else {
callback();
}
};
return {
ruleForm:{
},
rules:{
ssdw:[
ruleForm: {},
rules: {
bfyy: [{ validator: changeSateTetx, trigger: "blur" }],
ssdw: [
{ required: true, message: "所属单位不能为空", trigger: "blur" },
{ required: true, validator: equalToPassword, trigger: "change" }
{ required: true, validator: equalToPassword, trigger: "change" },
],
appName:[
{ required: true, message: "移动应用名称不能为空", trigger: "blur" }
appName: [
{ required: true, message: "移动应用名称不能为空", trigger: "blur" },
],
},
loading:false,
disabled:false,
loading: false,
disabled: false,
// disabledTwo:true,
}
};
},
props:['pageType', 'id', 'queryData'],
mounted(){
if(this.pageType == 'look') {
this.getInfo(this.id)
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');
this.$nextTick(() => {
const inputElements = document.querySelectorAll(".el-input__inner");
const textareaInputElements = document.querySelectorAll(
".el-textarea__inner"
);
inputElements.forEach((input) => {
input.placeholder = '';
input.placeholder = "";
});
textareaInputElements.forEach((input) => {
input.placeholder = '';
input.placeholder = "";
});
})
} else if(this.pageType == 'change') {
this.getInfo(this.id)
});
} else if (this.pageType == "change") {
this.getInfo(this.id);
this.disabled = false;
// this.disabledTwo = false;
}
},
methods:{
getInfo(id){
assetAppInfo(id).then(res=>{
methods: {
changeState(e) {
if (e != 7) {
this.ruleForm.bfyy = "";
}
},
getInfo(id) {
assetAppInfo(id).then((res) => {
this.ruleForm = res.data;
})
});
},
//
querySearchAsync(queryString, cb){
querySearchAsync(queryString, cb) {
let results = [];
unitAllList({nickName: queryString}).then(res => {
res.data.forEach(item => {
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) {
newAssets() {
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
this.loading = true;
if(this.pageType == 'change') {
assetApp('put',this.ruleForm).then(res=>{
if (this.pageType == "change") {
assetApp("put", this.ruleForm).then((res) => {
// console.log(res,"res");
this.loading = false;
this.$modal.msgSuccess("修改成功");
// this.$router.go(-1);
this.$router.push({name:'MobileApplication',params: this.queryData})
})
this.$router.push({
name: "MobileApplication",
params: this.queryData,
});
});
} else {
assetApp('post',this.ruleForm).then(res=>{
assetApp("post", this.ruleForm).then((res) => {
// console.log(res,"res");
this.loading = false;
this.$modal.msgSuccess("新增成功");
this.$router.go(-1);
})
});
}
}
})
});
},
sendBack(){
sendBack() {
// this.$router.go(-1);
this.$router.push({name:'MobileApplication',params: this.queryData})
this.$router.push({ name: "MobileApplication", params: this.queryData });
},
},
}
</script>
};
</script>

Loading…
Cancel
Save