b6c72052 by zhangmeng

邮箱正则

1 parent 8fdfc7b0
<template>
<el-dialog
v-model="show" :close-on-click-modal="false" :title="title" append-to-body center
class="pcloginpop" close-icon="CircleClose"
destroy-on-close
v-model="show" :close-on-click-modal="false" :title="title" append-to-body center
class="pcloginpop" close-icon="CircleClose"
destroy-on-close
>
<div class="boxInvitation">
<div v-if="showR" class="text-center pd20">
<img class="mauto" src="@/assets/dance/ok.png"/>
<!-- 提交成功等待审核-->
......@@ -19,13 +19,13 @@
<br/>
Thank you so much for your kind patience.
</h4>
<div class="red">To check your application status, please go to Account > Personal > Visa Review Record, or
refer to your email for any updates.
</div>
</div>
<el-form v-else ref="iformRef" :model="form" :rules="rules" label-position="top">
<el-form-item :label="language==0?'申请人类别':'Applicant Type'" prop="applicatType" required>
<el-select v-model="form.applicatType" @change="changeApplicatType">
......@@ -59,7 +59,7 @@
<!-- <el-radio value="0">{{ language == 0 ? '否' : 'No' }}</el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- 一般信息-->
<el-form-item :label="language==0?'国家/地区协会名':'MNA/Team Name'" :required="form.applicatType==1"
prop="associationCode">
......@@ -110,7 +110,7 @@
<el-form-item :label="language==0?'中国大使馆邮箱':'Chinese Embassy Email'" prop="embassyEmail" required>
<el-input v-model="form.embassyEmail"/>
</el-form-item>
<!--上传护照,多张-->
<div class="cptVisaInfoBosTable">
<el-form-item :label="language==0?'有效证件':'Passport Copy'" required>
......@@ -268,9 +268,9 @@
</template>
<template #default="scope">
<el-date-picker
v-model="scope.row.issueDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD" size="small"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
v-model="scope.row.issueDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD" size="small"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
/>
</template>
</el-table-column>
......@@ -282,9 +282,9 @@
</template>
<template #default="scope">
<el-date-picker
v-model="scope.row.expiryDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD" size="small"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
v-model="scope.row.expiryDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD" size="small"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
/>
</template>
</el-table-column>
......@@ -308,8 +308,8 @@
<file-upload v-model="form.files" :button-text="language==0?'上传':'Upload'" :is-show-tip="false"
:limit="1"/>
</el-form-item>
<div class="text-center">
<el-button :disabled="!cptId" class="btn-lineG" round size="large" type="primary" @click="submit">
{{ language == 0 ? '提交' : 'SUBMIT' }}
......@@ -357,16 +357,16 @@ const countrys = ref([])
const mnaList = ref([])
const cptId = ref('')
const rules = ref(
{
nationality: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
name: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
email: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
birth: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
passportNo: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
passportCopy: [{required: true, trigger: 'blur', message: language.value == 0 ? '请上传' : 'Please Upload'},],
arrival: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
departure: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
})
{
nationality: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
name: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
email: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
birth: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
passportNo: [{required: true, trigger: 'blur', message: language.value == 0 ? '请输入' : 'Please enter'},],
passportCopy: [{required: true, trigger: 'blur', message: language.value == 0 ? '请上传' : 'Please Upload'},],
arrival: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
departure: [{required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose'},],
})
const open = (params) => {
show.value = true
title.value = params.title
......@@ -392,7 +392,7 @@ defineExpose({
show.value = true
showR.value = false
title.value = language.value == 0 ? '邀请函申请' : 'Visa Invitation Letter '
getCountryList()
getMNAList()
getInvitation(id).then((res => {
......@@ -404,11 +404,11 @@ defineExpose({
_.each(res.data, (item) => {
delete item.id
})
if (form.value.invitationFile) {
form.value.invitationFileArr = JSON.parse(form.value.invitationFile)
}
form.value.cptVisaInfoBos = res.data
})
})
......@@ -465,23 +465,23 @@ const submit = () => {
return;
}
}
if (form.value.files && Array.isArray(form.value.files)) {
form.value.files = form.value.files[0]?.url
}
if (form.value.invitationFileArr) {
form.value.invitationFile = JSON.stringify(form.value.invitationFileArr)
}
proxy.$refs.iformRef.validate(valid => {
if (valid) {
ElMessageBox.confirm(
language.value == 0 ? '请确认信息正确并提交吗?' : 'Please confirm that the information is correct and submit it',
language.value == 0 ? '提示' : 'Tips', {
confirmButtonText: language.value == 0 ? '确定' : 'Confirm',
cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
type: 'warning'
}).then(() => {
language.value == 0 ? '请确认信息正确并提交吗?' : 'Please confirm that the information is correct and submit it',
language.value == 0 ? '提示' : 'Tips', {
confirmButtonText: language.value == 0 ? '确定' : 'Confirm',
cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
type: 'warning'
}).then(() => {
form.value.cptId = cptId.value
addInvitation(form.value).then((res) => {
if (res.data == -200) {
......@@ -515,7 +515,7 @@ const getPassportInfo = (res) => {
} else {
if (res.data) {
ElMessage.error(res.data.code)
let obj = {
position: '',
lastName: '',
......@@ -544,8 +544,16 @@ function sendEmail() {
ElMessage.error(language.value == 0 ? '请输入邮箱' : 'Please enter contact Email')
return
}
if (!/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(form.value.email)) {
ElMessage.error(language.value == 0 ? '请输入正确的邮箱' : 'Please enter the correct contact email')
// if (!/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(form.value.email)) {
// ElMessage.error(language.value == 0 ? '请输入正确的邮箱' : 'Please enter the correct contact email')
// return
// }
if (form.value.email.indexOf('@') == -1) {
if (language.value == 0) {
ElMessage.warning('请填写正确的邮箱')
} else {
ElMessage.warning('Please fill in the correct email')
}
return
}
codeloading.value = true
......@@ -594,7 +602,7 @@ h4 {
padding: 10px;
margin-bottom: 20px;
border: 1px dashed #ebeef5;
:deep(.el-table .el-table__header-wrapper th) {
font-size: 12px;
}
......@@ -608,6 +616,6 @@ h4 {
.codeBtn {
background-color: #0540EC !important;
color: #fff !important;
}
</style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!