|
@ -54,8 +54,6 @@ |
|
|
<el-table-column :label="$t('business.userManager.userVerification.account')" align="center" prop="userAccount"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.account')" align="center" prop="userAccount"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.name')" align="center" prop="userInfoName"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.name')" align="center" prop="userInfoName"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.idCard')" align="center" prop="idCard"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.idCard')" align="center" prop="idCard"/> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.nationality')" align="center" |
|
|
|
|
|
prop="nationality"/> |
|
|
|
|
|
<el-table-column :label="$t('business.userManager.userVerification.biometrics')" align="center" prop="status"> |
|
|
<el-table-column :label="$t('business.userManager.userVerification.biometrics')" align="center" prop="status"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-tag type="danger" v-if="scope.row.biometrics == '0'"> |
|
|
<el-tag type="danger" v-if="scope.row.biometrics == '0'"> |
|
@ -137,20 +135,40 @@ |
|
|
<el-input v-model="form.idCardNumber" |
|
|
<el-input v-model="form.idCardNumber" |
|
|
:placeholder="$t('business.userManager.userVerification.idCardPlaceholder')"/> |
|
|
:placeholder="$t('business.userManager.userVerification.idCardPlaceholder')"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.nationality')" prop="nationality"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateStartDate')" prop="dateOfIssue"> |
|
|
<el-input v-model="form.nationality" |
|
|
<el-date-picker clearable |
|
|
:placeholder="$t('business.userManager.userVerification.nationalityPlaceholder')"/> |
|
|
v-model="form.dateOfIssue" |
|
|
|
|
|
type="date" |
|
|
|
|
|
format="dd/MM/yyyy" |
|
|
|
|
|
value-format="dd/MM/yyyy" |
|
|
|
|
|
:placeholder="$t('business.userManager.userVerification.birthDatePlaceholder')"> |
|
|
|
|
|
</el-date-picker> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.birthDate')" prop="birthDate"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateEndDate')" prop="expirationTime"> |
|
|
<el-date-picker clearable |
|
|
<el-date-picker clearable |
|
|
v-model="form.birthDate" |
|
|
v-model="form.expirationTime" |
|
|
type="date" |
|
|
type="date" |
|
|
format="dd/MM/yyyy" |
|
|
format="dd/MM/yyyy" |
|
|
value-format="dd/MM/yyyy" |
|
|
value-format="dd/MM/yyyy" |
|
|
:placeholder="$t('business.userManager.userVerification.birthDatePlaceholder')"> |
|
|
:placeholder="$t('business.userManager.userVerification.birthDatePlaceholder')"> |
|
|
</el-date-picker> |
|
|
</el-date-picker> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.idCardFront')" prop="idCardFrontImagePath"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.contactAddress')" prop="commonContactAddress"> |
|
|
|
|
|
<el-cascader |
|
|
|
|
|
v-model="form.commonContactAddress" |
|
|
|
|
|
:options="options_addr" |
|
|
|
|
|
@change="handleChange"></el-cascader> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userInfo.detailAddr')" prop="addrDetail"> |
|
|
|
|
|
<el-input v-model="form.addrDetail" :placeholder="$t('business.userManager.userInfo.addrPlaceholder')" /> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userVerification.verifiedType')" prop="gender"> |
|
|
|
|
|
<el-radio-group v-model="form.licenseType"> |
|
|
|
|
|
<el-radio :label="1">{{ $t('business.userManager.userVerification.idCardVerification') }}</el-radio> |
|
|
|
|
|
<el-radio :label="0">{{ $t('business.userManager.userVerification.license') }}</el-radio> |
|
|
|
|
|
</el-radio-group> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item v-show="form.licenseType == '1'" :label="$t('business.userManager.userVerification.idCardFront')" prop="idCardFrontImagePath"> |
|
|
<el-upload |
|
|
<el-upload |
|
|
class="upload-demo" |
|
|
class="upload-demo" |
|
|
:action="uploadUrl" |
|
|
:action="uploadUrl" |
|
@ -163,7 +181,7 @@ |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
</el-upload> |
|
|
</el-upload> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.idCardBack')" prop="idCardBackImagePath"> |
|
|
<el-form-item v-show="form.licenseType == '1'" :label="$t('business.userManager.userVerification.idCardBack')" prop="idCardBackImagePath"> |
|
|
<el-upload |
|
|
<el-upload |
|
|
class="upload-demo" |
|
|
class="upload-demo" |
|
|
:action="uploadUrl" |
|
|
:action="uploadUrl" |
|
@ -176,7 +194,7 @@ |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
</el-upload> |
|
|
</el-upload> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.idCardHolding')" prop="userWithIdCardImagePath"> |
|
|
<el-form-item v-show="form.licenseType == '1'" :label="$t('business.userManager.userVerification.idCardHolding')" prop="userWithIdCardImagePath"> |
|
|
<el-upload |
|
|
<el-upload |
|
|
class="upload-demo" |
|
|
class="upload-demo" |
|
|
:action="uploadUrl" |
|
|
:action="uploadUrl" |
|
@ -189,6 +207,19 @@ |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
</el-upload> |
|
|
</el-upload> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item v-show="form.licenseType == '0'" :label="$t('business.userManager.userVerification.license')" prop="passportImagePath"> |
|
|
|
|
|
<el-upload |
|
|
|
|
|
class="upload-demo" |
|
|
|
|
|
:action="uploadUrl" |
|
|
|
|
|
:on-success="handleSuccess_passportImagePath" |
|
|
|
|
|
:limit="1" |
|
|
|
|
|
:accept="'image/jpg,image/png'" |
|
|
|
|
|
:file-list="fileList" |
|
|
|
|
|
list-type="picture"> |
|
|
|
|
|
<el-button size="small" type="primary">点击上传</el-button> |
|
|
|
|
|
<div slot="tip" class="el-upload__tip">只能上传JPG/PNG文件,且不超过5M</div> |
|
|
|
|
|
</el-upload> |
|
|
|
|
|
</el-form-item> |
|
|
</el-form> |
|
|
</el-form> |
|
|
<div slot="footer" class="dialog-footer"> |
|
|
<div slot="footer" class="dialog-footer"> |
|
|
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ |
|
|
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ |
|
@ -202,23 +233,20 @@ |
|
|
<!-- 实名审核 --> |
|
|
<!-- 实名审核 --> |
|
|
<el-dialog :title="title" :visible.sync="auditOpen" width="700px" append-to-body> |
|
|
<el-dialog :title="title" :visible.sync="auditOpen" width="700px" append-to-body> |
|
|
<el-form ref="auditForm" :model="auditForm" :rules="rules" label-width="auto"> |
|
|
<el-form ref="auditForm" :model="auditForm" :rules="rules" label-width="auto"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.registerName')"> |
|
|
|
|
|
{{ auditForm.userInfoName }} |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userVerification.verifyName')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.verifyName')"> |
|
|
{{ auditForm.fullName }} |
|
|
{{ auditForm.fullName }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.registerIdCard')"> |
|
|
|
|
|
{{ auditForm.idCardShow }} |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userVerification.verifyIdCard')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.verifyIdCard')"> |
|
|
{{ auditForm.idCardNumber }} |
|
|
{{ auditForm.idCardNumber }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.nationality')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateStartDate')"> |
|
|
{{ auditForm.nationality }} |
|
|
{{ auditForm.dateOfIssue }} |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateEndDate')"> |
|
|
|
|
|
{{ auditForm.expirationTime }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.birthDate')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.contactAddress')"> |
|
|
{{ auditForm.birthDate }} |
|
|
{{ auditForm.commonContactAddress }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item v-if="auditForm.licenseType ==1" :label="$t('business.userManager.userVerification.idCardFront')"> |
|
|
<el-form-item v-if="auditForm.licenseType ==1" :label="$t('business.userManager.userVerification.idCardFront')"> |
|
|
<el-image style="width: 90px; height: 30px" :src="auditForm.idCardFrontImagePath" |
|
|
<el-image style="width: 90px; height: 30px" :src="auditForm.idCardFrontImagePath" |
|
@ -260,11 +288,14 @@ |
|
|
<el-form-item :label="$t('business.userManager.userVerification.idCard')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.idCard')"> |
|
|
{{ form.idCard }} |
|
|
{{ form.idCard }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.nationality')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateStartDate')"> |
|
|
{{ form.nationality }} |
|
|
{{ form.dateOfIssue }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.birthDate')"> |
|
|
<el-form-item :label="$t('business.userManager.userVerification.certificateEndDate')"> |
|
|
{{ form.birthDate }} |
|
|
{{ form.expirationTime }} |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item :label="$t('business.userManager.userVerification.contactAddress')"> |
|
|
|
|
|
{{ form.commonContactAddress }} |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item v-if="form.licenseType == 1" :label="$t('business.userManager.userVerification.idCardFront')"> |
|
|
<el-form-item v-if="form.licenseType == 1" :label="$t('business.userManager.userVerification.idCardFront')"> |
|
|
<el-image style="width: 90px; height: 30px" :src="form.idCardFrontImagePath" |
|
|
<el-image style="width: 90px; height: 30px" :src="form.idCardFrontImagePath" |
|
@ -308,9 +339,9 @@ import { |
|
|
delUserVerification, |
|
|
delUserVerification, |
|
|
addUserVerification, |
|
|
addUserVerification, |
|
|
updateUserVerification, |
|
|
updateUserVerification, |
|
|
userVerificationAudit |
|
|
userVerificationAudit, |
|
|
|
|
|
getAddress |
|
|
} from "@/api/business/userVerification"; |
|
|
} from "@/api/business/userVerification"; |
|
|
import {merchantAudit} from "@/api/business/merchantVerification"; |
|
|
|
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
name: "UserVerification", |
|
|
name: "UserVerification", |
|
@ -322,6 +353,8 @@ export default { |
|
|
loading: true, |
|
|
loading: true, |
|
|
// 选中数组 |
|
|
// 选中数组 |
|
|
ids: [], |
|
|
ids: [], |
|
|
|
|
|
//地址选择列表 |
|
|
|
|
|
options_addr:[], |
|
|
// 非单个禁用 |
|
|
// 非单个禁用 |
|
|
single: true, |
|
|
single: true, |
|
|
// 非多个禁用 |
|
|
// 非多个禁用 |
|
@ -377,8 +410,11 @@ export default { |
|
|
fullName: [ |
|
|
fullName: [ |
|
|
{required: true, message: this.$t('business.userManager.userVerification.nameRequired'), trigger: "blur"} |
|
|
{required: true, message: this.$t('business.userManager.userVerification.nameRequired'), trigger: "blur"} |
|
|
], |
|
|
], |
|
|
birthDate: [ |
|
|
expirationTime: [ |
|
|
{required: true, message: this.$t('business.userManager.userVerification.birthDateRequired'), trigger: "blur"} |
|
|
{required: true, message: this.$t('business.userManager.userVerification.expirationTimeRequired'), trigger: "blur"} |
|
|
|
|
|
], |
|
|
|
|
|
dateOfIssue: [ |
|
|
|
|
|
{required: true, message: this.$t('business.userManager.userVerification.dateOfIssueRequired'), trigger: "blur"} |
|
|
], |
|
|
], |
|
|
nationality: [ |
|
|
nationality: [ |
|
|
{ |
|
|
{ |
|
@ -420,6 +456,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
created() { |
|
|
created() { |
|
|
this.getList(); |
|
|
this.getList(); |
|
|
|
|
|
this.getAddress(); |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
// 计算属性:动态生成上传URL |
|
|
// 计算属性:动态生成上传URL |
|
@ -434,6 +471,12 @@ export default { |
|
|
/** 查询实名认证列表 */ |
|
|
/** 查询实名认证列表 */ |
|
|
getList() { |
|
|
getList() { |
|
|
this.loading = true; |
|
|
this.loading = true; |
|
|
|
|
|
const languageMap = { |
|
|
|
|
|
'zh': 1, |
|
|
|
|
|
'en': 2, |
|
|
|
|
|
'la': 3 |
|
|
|
|
|
}; |
|
|
|
|
|
this.queryParams.language = languageMap[this.$i18n.locale] || null; |
|
|
listUserVerification(this.queryParams).then(response => { |
|
|
listUserVerification(this.queryParams).then(response => { |
|
|
this.userVerificationList = response.rows; |
|
|
this.userVerificationList = response.rows; |
|
|
this.total = response.total; |
|
|
this.total = response.total; |
|
@ -468,7 +511,8 @@ export default { |
|
|
updateTime: undefined, |
|
|
updateTime: undefined, |
|
|
createBy: undefined, |
|
|
createBy: undefined, |
|
|
updateBy: undefined, |
|
|
updateBy: undefined, |
|
|
delFlag: undefined |
|
|
delFlag: undefined, |
|
|
|
|
|
licenseType: 1 |
|
|
}; |
|
|
}; |
|
|
this.resetForm("form"); |
|
|
this.resetForm("form"); |
|
|
}, |
|
|
}, |
|
@ -533,6 +577,7 @@ export default { |
|
|
submitForm() { |
|
|
submitForm() { |
|
|
this.$refs["form"].validate(valid => { |
|
|
this.$refs["form"].validate(valid => { |
|
|
if (valid) { |
|
|
if (valid) { |
|
|
|
|
|
this.form.commonContactAddress = this.form.commonContactAddress + "," + this.form.addrDetail; |
|
|
this.buttonLoading = true; |
|
|
this.buttonLoading = true; |
|
|
if (this.form.id != null) { |
|
|
if (this.form.id != null) { |
|
|
updateUserVerification(this.form).then(response => { |
|
|
updateUserVerification(this.form).then(response => { |
|
@ -632,6 +677,23 @@ export default { |
|
|
if (response.code === 200) { |
|
|
if (response.code === 200) { |
|
|
this.form.userWithIdCardImagePath = this.getImgUrl + response.data; // 保存 URL 到表单 |
|
|
this.form.userWithIdCardImagePath = this.getImgUrl + response.data; // 保存 URL 到表单 |
|
|
} |
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
//护照照片上传成功 |
|
|
|
|
|
handleSuccess_passportImagePath(response) { |
|
|
|
|
|
if (response.code === 200) { |
|
|
|
|
|
this.form.passportImagePath = this.getImgUrl + response.data; // 保存 URL 到表单 |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
/** 获取地址列表 */ |
|
|
|
|
|
getAddress() { |
|
|
|
|
|
this.loading = true; |
|
|
|
|
|
getAddress(this.$i18n.locale).then(response => { |
|
|
|
|
|
this.options_addr = response.data; |
|
|
|
|
|
}); |
|
|
|
|
|
}, |
|
|
|
|
|
/** 地址联动事件 **/ |
|
|
|
|
|
handleChange(value) { |
|
|
|
|
|
this.form.addr = value; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}; |
|
|
}; |
|
|