<template>
|
<div class="teacherRegisterPage">
|
<div class="teacherRegisterBox" v-loading="teacherRegisterLoading">
|
<div class="teacherRegisterForm">
|
<div class="zertifizierungsStatus">
|
<span> 当前状态: </span>
|
<span class="status-w" v-if="statusNow == 'WaitAudit'">等待审核</span>
|
<span class="status-s" v-if="statusNow == 'Normal'">已认证</span>
|
<span class="status-f" v-if="statusNow == 'Reject'">
|
已驳回
|
<p class="reason">原因: {{ reason ? reason : "-" }}</p>
|
</span>
|
<span class="status-b" v-if="statusNow == undefined">待认证</span>
|
</div>
|
<el-form
|
:model="teacherRegisterForm"
|
ref="form"
|
:disabled="forbidden"
|
label-position="left"
|
:rules="rules"
|
label-width="130px"
|
>
|
<el-form-item label="地区:" prop="region">
|
<div>
|
<el-cascader
|
size="large"
|
:options="options"
|
v-model="selectedOptions"
|
@change="handleChange"
|
>
|
</el-cascader>
|
</div>
|
</el-form-item>
|
<el-form-item label="职务:" prop="post">
|
<el-select
|
style="width: 100%"
|
v-model="teacherRegisterForm.post"
|
placeholder="请选择职务"
|
>
|
<el-option
|
v-for="(item, index) in postData"
|
:key="index"
|
:label="item.name"
|
:value="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="职称:" prop="positionalTitle">
|
<el-select
|
style="width: 100%"
|
v-model="teacherRegisterForm.positionalTitle"
|
placeholder="请选择职称"
|
>
|
<el-option
|
v-for="(item, index) in positionalTitleData"
|
:key="index"
|
:label="item.name"
|
:value="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="学历:" prop="education">
|
<el-select
|
style="width: 100%"
|
v-model="teacherRegisterForm.education"
|
placeholder="请选择学历"
|
>
|
<el-option
|
v-for="(item, index) in educationData"
|
:key="index"
|
:label="item.name"
|
:value="item.name"
|
></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="姓名:" prop="fullName">
|
<el-input
|
v-model="teacherRegisterForm.fullName"
|
placeholder="请输入姓名"
|
></el-input>
|
</el-form-item>
|
<el-form-item label="手机号:" prop="phone">
|
<el-input
|
v-model="teacherRegisterForm.phone"
|
placeholder="请输入手机号"
|
></el-input>
|
</el-form-item>
|
<el-form-item label="邮箱:" prop="email">
|
<el-input
|
v-model="teacherRegisterForm.email"
|
placeholder="请输入你的邮箱"
|
></el-input>
|
</el-form-item>
|
<el-form-item v-if="SMSState" label="图形验证码:" prop="imgCode">
|
<div class="flex">
|
<el-input
|
v-model="teacherRegisterForm.imgCode"
|
placeholder="请输入图形验证码"
|
></el-input>
|
<div class="imgCodeBox">
|
<img :src="imgCode" alt="" @click="getImgCapcha" />
|
</div>
|
</div>
|
</el-form-item>
|
<el-form-item
|
v-if="SMSState"
|
label="短信验证码:"
|
prop="verificationCode"
|
>
|
<div class="flex">
|
<el-input
|
v-model="teacherRegisterForm.verificationCode"
|
placeholder="请输入短信验证码"
|
></el-input>
|
<div class="imgCodeBox">
|
<el-button
|
style="width: 100%"
|
@click="getVerifyCode"
|
:disabled="countDown != 0"
|
>{{
|
countDown == 0
|
? "获取短信验证码"
|
: "验证码(" + countDown + "s)"
|
}}</el-button
|
>
|
</div>
|
</div>
|
</el-form-item>
|
<el-form-item label="所在学校名称:" prop="schoolName">
|
<el-input
|
v-model="teacherRegisterForm.schoolName"
|
placeholder="请输入所在学校名称"
|
></el-input>
|
</el-form-item>
|
<el-form-item label="详细地址:" prop="detailedAddress">
|
<el-input
|
v-model="teacherRegisterForm.detailedAddress"
|
placeholder="请输入详细地址"
|
></el-input>
|
</el-form-item>
|
<el-form-item label="授课专业:" prop="lecturingSpecialty">
|
<el-input
|
v-model="teacherRegisterForm.lecturingSpecialty"
|
placeholder="请输入授课专业"
|
></el-input>
|
</el-form-item>
|
<el-form-item label="相关证件:" prop="relevantCertificates">
|
<div class="lecturingSpecixalty">
|
<el-upload
|
:file-list="teacherRegisterForm.relevantCertificates"
|
action=""
|
:limit="5"
|
:on-exceed="
|
() => {
|
this.$message({
|
message: '最多上传5个文件,请移除其他文件后再上传。',
|
type: 'warning',
|
});
|
}
|
"
|
:http-request="beforeRead"
|
:multiple="false"
|
list-type="picture-card"
|
:before-remove="beforeDelimg"
|
:on-preview="handlePictureCardPreview"
|
:on-success="uploadSucceeded"
|
:on-error="uploadFailed"
|
:on-remove="handleRemove"
|
>
|
<i class="el-icon-plus"></i>
|
</el-upload>
|
</div>
|
</el-form-item>
|
<div class="notice">
|
注:推荐优先上传您的教师证电子版或校园卡或工作证或身份证
|
支持上传jpg、png文件
|
</div>
|
<div class="agreementState">
|
<span
|
class="choose"
|
@click="
|
() => {
|
if (!this.forbidden) {
|
this.agreementState = !this.agreementState;
|
}
|
}
|
"
|
>
|
<img
|
v-show="agreementState"
|
src="@/assets/images/personalCenter/choose.png"
|
alt=""
|
/>
|
</span>
|
<span
|
class="infoTxt"
|
@click="
|
() => {
|
dialogVisible = true;
|
}
|
"
|
>
|
同意
|
<span class="agreementBox">《教师会员协议》</span>
|
</span>
|
</div>
|
<el-form-item>
|
<template v-if="forbidden">
|
<div
|
@click="
|
() => {
|
this.forbidden = false;
|
}
|
"
|
class="addAddressButton"
|
>
|
修改
|
</div>
|
</template>
|
<template v-else>
|
<div
|
class="addAddressButton greenButton aaa"
|
type="primary"
|
@click="teacherCertification()"
|
v-if="!topicId"
|
v-loading="subLoading"
|
>
|
提交
|
</div>
|
<div v-else>
|
<div
|
class="addAddressButton greenButton"
|
type="primary"
|
@click="updateSubmit()"
|
v-loading="subLoading"
|
>
|
提交
|
</div>
|
<div class="addAddressButton" @click="cancelEditor()">取消</div>
|
</div>
|
</template>
|
</el-form-item>
|
</el-form>
|
<div class="express">
|
<p class="title">认证说明</p>
|
<p>
|
本模块只对教师开放。认证信息提交后,网站管理人员将在三个工作日之内对您的认证信息进行审核,审核通过后,各位老师可以在本网站进行课件下载、样书申请等操作。您的审核进度可在个人信息中查看。
|
</p>
|
</div>
|
</div>
|
<el-dialog :visible.sync="dialogImageState">
|
<img width="100%" :src="dialogImageUrl" alt="" />
|
</el-dialog>
|
<el-dialog :visible.sync="dialogVisible">
|
<div class="agreementName">{{ agreement.name }}</div>
|
<div class="protocolBox" v-html="agreement.protocolTxt"></div>
|
</el-dialog>
|
</div>
|
</div>
|
</template>
|
|
<script>
|
import { regionData, CodeToText, TextToCode } from "element-china-area-data";
|
import { getPublicImage } from "@/assets/js/middleGround/tool";
|
import { mapState } from "vuex";
|
|
export default {
|
name: "teacherRegister",
|
data() {
|
return {
|
teacherRegisterLoading: true,
|
subLoading: false,
|
teacherRegisterForm: {
|
region: "",
|
post: "",
|
positionalTitle: "",
|
education: "",
|
fullName: "",
|
phone: "",
|
email: "",
|
schoolName: "",
|
detailedAddress: "",
|
lecturingSpecialty: "",
|
imgCode: "",
|
verificationCode: "",
|
relevantCertificates: [],
|
},
|
rules: {
|
region: [{ required: true, message: "请选择地区", trigger: "change" }],
|
post: [{ required: true, message: "请选择职务", trigger: "change" }],
|
positionalTitle: [
|
{ required: true, message: "请选择职称", trigger: "change" },
|
],
|
education: [
|
{ required: true, message: "请选择学历", trigger: "change" },
|
],
|
fullName: [{ required: true, message: "请输入姓名", trigger: "blur" }],
|
phone: [
|
{ required: true, message: "请输入手机号", trigger: "blur" },
|
{
|
pattern:
|
/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,
|
message: "请输入正确手机号",
|
trigger: "blur",
|
},
|
],
|
email: [
|
{ required: true, message: "请填写邮箱", trigger: "blur" },
|
{
|
pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
|
message: "邮箱格式校验失败,请输入邮箱",
|
trigger: "blur",
|
},
|
],
|
schoolName: [
|
{ required: true, message: "请输入所在学校名称", trigger: "blur" },
|
],
|
detailedAddress: [
|
{ required: true, message: "请输入详细地址", trigger: "blur" },
|
],
|
lecturingSpecialty: [
|
{ required: true, message: "请输入授课专业", trigger: "blur" },
|
],
|
relevantCertificates: [
|
{ required: true, message: "请上传相关证件", trigger: "blur" },
|
],
|
imgCode: [
|
{ required: true, message: "请输入图形验证码", trigger: "blur" },
|
{ min: 4, max: 4, message: "请输入 4 位验证码", trigger: "blur" },
|
],
|
verificationCode: [
|
{ required: true, message: "请输入短信验证码", trigger: "blur" },
|
],
|
},
|
// 协议勾选状态
|
agreementState: false,
|
// 协议文本
|
agreement: {
|
name: "",
|
protocolTxt: "",
|
},
|
postData: [],
|
positionalTitleData: [],
|
educationData: [],
|
countDown: 0,
|
options: regionData,
|
selectedOptions: "",
|
imgCode: "",
|
worksInfo: [],
|
topicId: null,
|
topicMessageList: [],
|
statusNow: undefined,
|
// 表单编辑状态
|
forbidden: false,
|
// 查看已选中的图片
|
dialogImageUrl: "",
|
// 查看已选中的图片 显示状态
|
dialogImageState: false,
|
dialogVisible: false,
|
// 控制 获取手机验证码 是否展示
|
SMSState: true,
|
// 手机号副本,用于判断手机号是否更改
|
phoneCopy: "",
|
};
|
},
|
watch: {
|
"teacherRegisterForm.phone": {
|
deep: true,
|
handler: function (newV, oldV) {
|
if (oldV != "") {
|
if (newV != this.phoneCopy) {
|
// this.teacherRegisterForm.verificationCode = "";
|
this.SMSState = true;
|
} else {
|
this.SMSState = false;
|
}
|
}
|
},
|
},
|
},
|
mounted() {
|
this.getImgCapcha();
|
this.getFieldData();
|
this.getTypeItem();
|
this.getTeacherAgreement();
|
this.role = this.$store.role;
|
},
|
computed: {
|
...mapState(["userInfo"]),
|
},
|
methods: {
|
// 获取教师协议
|
getTeacherAgreement() {
|
this.MG.resource
|
.getItem({
|
path: "caupress_protocol",
|
fields: {
|
caupress_content: [],
|
},
|
})
|
.then((res) => {
|
try {
|
this.agreement.name = "教师会员协议";
|
const data = res.datas.find(
|
(e) => e.refCode == "caupress_teacherCertificationAgreement"
|
);
|
this.agreement.protocolTxt = data
|
? data.caupress_content
|
: "暂无协议";
|
} catch (error) {
|
this.agreement.name = "教师会员协议";
|
this.agreement.protocolTxt = "暂无协议";
|
}
|
});
|
},
|
// 将市辖区 转换为 直辖市名称,为了适应 element-china-area-data
|
handleChange(city) {
|
let cityStr =
|
CodeToText[city[0]] +
|
"/" +
|
CodeToText[city[1]] +
|
"/" +
|
CodeToText[city[2]];
|
let cityArr = cityStr.split("/");
|
if (cityArr[1] == "市辖区") {
|
cityArr[1] = cityArr[0];
|
}
|
this.teacherRegisterForm.region = cityArr.join("/");
|
},
|
// 获取图形验证码
|
getImgCapcha() {
|
this.MG.identity.getImgCode().then((res) => {
|
this.imgCode = "data:image/png;base64," + res;
|
});
|
},
|
// 获取验证码
|
getVerifyCode() {
|
let validateFieldList = [];
|
this.$refs.form.validateField(["phone", "imgCode"], (val) => {
|
// 由于 validateField 验证会触发多次,当每次验证通过后都往数组里添加一条数据。
|
if (!val) {
|
validateFieldList.push("通过");
|
}
|
// 此处 2 为验证字段的数量
|
if (validateFieldList.length == 2) {
|
this.MG.identity
|
.getPhoneCode({
|
phoneNumber: this.teacherRegisterForm.phone,
|
imageCaptcha: this.teacherRegisterForm.imgCode,
|
appRefCode: this.config.appRefCode,
|
})
|
.then((res) => {
|
if (
|
res == "验证码发送成功" ||
|
res == "验证码发送频繁请稍后再试"
|
) {
|
this.$message({
|
message: res,
|
type: "success",
|
});
|
// 开启短信验证倒计时
|
this.getSecond(90);
|
} else {
|
this.$message({
|
message: res,
|
type: "error",
|
});
|
this.getImgCapcha();
|
}
|
});
|
}
|
});
|
},
|
// 验证码倒计时
|
getSecond(time) {
|
if (!this.timer) {
|
this.countDown = time;
|
this.timer = setInterval(() => {
|
this.countDown--;
|
if (this.countDown == 0) {
|
clearInterval(this.timer);
|
this.timer = null;
|
}
|
}, 1000);
|
}
|
},
|
// 取消编辑
|
cancelEditor() {
|
this.$confirm("是否取消编辑?")
|
.then((_) => {
|
this.forbidden = true;
|
// 重新获取教师认证信息
|
this.$refs["form"].clearValidate();
|
this.getApplyTopicData();
|
})
|
.catch((_) => {});
|
},
|
// 获取下拉框字段数据
|
getFieldData() {
|
const data = {
|
refCodes: ["post", "positionalTitle", "education"],
|
};
|
this.MG.store.getProductTypeField(data).then((res) => {
|
let post = res.find((item) => item.refCode == "post");
|
let positionalTitle = res.find(
|
(item) => item.refCode == "positionalTitle"
|
);
|
let education = res.find((item) => item.refCode == "education");
|
try {
|
this.postData = JSON.parse(post.config).option;
|
} catch (error) {
|
this.postData = [];
|
}
|
try {
|
this.positionalTitleData = JSON.parse(positionalTitle.config).option;
|
} catch (error) {
|
this.positionalTitleData = [];
|
}
|
try {
|
this.educationData = JSON.parse(education.config).option;
|
} catch (error) {
|
this.educationData = [];
|
}
|
});
|
},
|
// 首次提交
|
teacherCertification() {
|
if (this.subLoading) return;
|
|
this.subLoading = true;
|
this.$refs["form"].validate((valid) => {
|
if (valid) {
|
// 判断是否同意了协议
|
if (this.agreementState) {
|
// 验证短信验证码
|
if (this.teacherRegisterForm.verificationCode) {
|
let query = {
|
phoneNumber: this.teacherRegisterForm.phone,
|
smsCaptcha: this.teacherRegisterForm.verificationCode,
|
};
|
this.MG.identity.verificationPhoneCode(query).then((res) => {
|
if (res) {
|
this.$message({
|
message: "手机号验证通过",
|
type: "success",
|
});
|
|
this.teacherRegisterLoading = true;
|
// 移除 不相关属性
|
delete this.teacherRegisterForm.verificationCode;
|
this.teacherRegisterForm.relevantCertificates.map((item) => {
|
delete item.status;
|
delete item.uid;
|
delete item.url;
|
delete item.percentage;
|
delete item.raw;
|
delete item.response;
|
delete item.size;
|
});
|
const data = {
|
topicIdOrRefCode: "teacherRoleApproval",
|
name: this.teacherRegisterForm.fullName,
|
content: "",
|
state: "WaitAudit",
|
type: "teacherRegister",
|
cmsTypeRefCode: this.config.refCodes.teacherCertification,
|
newDataListRequest: this.tool.worksDataBytool(
|
this.worksInfo,
|
this.teacherRegisterForm,
|
this.teacherRegisterForm.relevantCertificates
|
),
|
};
|
let basicInfo = this.teacherRegisterForm;
|
const userInfo = {
|
requests: [
|
{
|
data: JSON.stringify(basicInfo),
|
name: "教师认证",
|
type: "teacherInfo",
|
},
|
],
|
};
|
this.MG.identity.setAppUserInfo(userInfo).then((res) => {
|
if (res) {
|
this.MG.ugc.newTopicMessage(data).then((res) => {
|
if (res !== false) {
|
this.teacherRegisterLoading = false;
|
this.$message({
|
message: "教师认证已提交审核",
|
type: "success",
|
});
|
// 获取topic提交的信息,用于回显数据
|
this.subLoading = false;
|
this.getApplyTopicData();
|
} else {
|
this.$message.error("信息提交失败,请稍后重试");
|
}
|
});
|
}
|
});
|
} else {
|
return this.$message({
|
message: "手机号验证失败,请填写正确的短信验证码",
|
type: "error",
|
});
|
}
|
});
|
}
|
} else {
|
this.$message({
|
message: "请勾选,同意教师会员协议",
|
type: "warning",
|
});
|
}
|
} else {
|
return false;
|
}
|
});
|
},
|
// 修改后提交
|
updateSubmit() {
|
if (this.subLoading) return;
|
this.subLoading = true;
|
this.$refs["form"].validate((valid) => {
|
if (valid) {
|
// 判断是否同意了协议
|
if (this.agreementState) {
|
// 验证短信验证码
|
if (this.SMSState) {
|
this.teacherRegisterLoading = true;
|
let query = {
|
phoneNumber: this.teacherRegisterForm.phone,
|
smsCaptcha: this.teacherRegisterForm.verificationCode,
|
};
|
this.MG.identity
|
.verificationPhoneCode(query)
|
.then((res) => {
|
return new Promise((resolve, reject) => {
|
this.subLoading = false;
|
if (res) {
|
this.$message({
|
message: "手机号验证通过",
|
type: "success",
|
});
|
resolve();
|
} else {
|
this.teacherRegisterLoading = false;
|
this.$message({
|
message: "手机号验证失败,请填写正确的短信验证码",
|
type: "error",
|
});
|
// 重置图形验证码 和 短信验证码
|
this.getImgCapcha();
|
this.teacherRegisterForm.imgCode = "";
|
this.teacherRegisterForm.verificationCode = "";
|
reject();
|
}
|
});
|
})
|
.then((res) => {
|
this.submitTeacherCertification();
|
});
|
} else {
|
this.submitTeacherCertification();
|
}
|
}
|
}
|
});
|
},
|
// 更新用户信息
|
submitTeacherCertification() {
|
this.teacherRegisterForm.relevantCertificates.map((item) => {
|
delete item.status;
|
delete item.uid;
|
delete item.url;
|
delete item.percentage;
|
delete item.raw;
|
delete item.response;
|
delete item.size;
|
});
|
const data = {
|
description: "",
|
icon: "",
|
id: this.topicId,
|
topicIdOrRefCode: "teacherRoleApproval",
|
name: this.teacherRegisterForm.fullName,
|
content: "",
|
type: "teacherRegister",
|
state: "WaitAudit",
|
newDataRequests: [],
|
updateDataRequests: this.tool.UpdateworksDataBytool(
|
this.worksInfo,
|
this.topicMessageList,
|
this.teacherRegisterForm,
|
this.teacherRegisterForm.relevantCertificates
|
),
|
delDataRequest: {
|
ids: [],
|
},
|
};
|
let basicInfo = this.teacherRegisterForm;
|
const userInfo = {
|
requests: [
|
{
|
data: JSON.stringify(basicInfo),
|
name: "教师认证",
|
type: "teacherInfo",
|
},
|
],
|
};
|
this.MG.identity.setAppUserInfo(userInfo).then((res) => {
|
if (res) {
|
this.MG.ugc.updateTopicMessage(data).then((res) => {
|
this.subLoading = false;
|
if (res !== false) {
|
this.teacherRegisterLoading = false;
|
this.getApplyTopicData();
|
}
|
});
|
}
|
});
|
},
|
// 上传图片
|
beforeRead(file) {
|
this.isLoding = true;
|
return new Promise((resolve, reject) => {
|
const FileName = file.file.name.split(".")[0];
|
const Extension = file.file.name.split(".")[1];
|
const FileType = file.file.type;
|
if (FileType != "image/jpeg" && FileType != "image/png") {
|
this.$message({
|
message: "文件格式不允许,只允许上传图片格式",
|
type: "error",
|
});
|
return reject();
|
}
|
let size = 1024;
|
this.tool
|
.getFileMd5(file.file, size * 1024)
|
.then((e) => {
|
this.isLoding = false;
|
const imgData = new FormData();
|
this.fileMd5 = e;
|
imgData.append("Md5", e);
|
imgData.append("FileName", FileName);
|
imgData.append("Extension", Extension);
|
imgData.append("FileType", FileType);
|
imgData.append("MetaData", null);
|
imgData.append("file", file.file);
|
this.MG.file.upload(imgData).then((res) => {
|
if (res == "文件上传成功") {
|
this.$message({
|
message: "图片上传成功",
|
type: "success",
|
});
|
resolve(e);
|
} else {
|
reject();
|
}
|
});
|
})
|
.catch((e) => {
|
this.isLoding = false;
|
console.error(e);
|
reject();
|
});
|
});
|
},
|
// 上传图片成功后的处理
|
uploadSucceeded(res, file, filelist) {
|
filelist[filelist.length - 1].md5 = res;
|
this.teacherRegisterForm.relevantCertificates = filelist;
|
this.$refs["form"].validate(() => {});
|
},
|
// 删除文件之前的钩子
|
beforeDelimg() {
|
return this.$confirm(`确定移除证件照吗?`);
|
},
|
// 移除图片
|
handleRemove(file, filelist) {
|
this.teacherRegisterForm.relevantCertificates = filelist;
|
},
|
// 展示证件照
|
handlePictureCardPreview(file) {
|
this.dialogImageState = true;
|
this.dialogImageUrl = file.url;
|
},
|
uploadFailed() {
|
this.$message.error("文件上传失败,请稍后重试");
|
},
|
// 获取FormTypeItem
|
getTypeItem() {
|
const data = {
|
refCodes: [this.config.refCodes.teacherCertification],
|
};
|
this.MG.resource.getCmsTypeByRefCode(data).then((res) => {
|
this.worksInfo = res[0].cmsTypeLinks[0].children;
|
this.getApplyTopicData();
|
});
|
},
|
// 获取教师认证信息
|
getApplyTopicData() {
|
this.teacherRegisterLoading = true;
|
const data = {
|
start: 0,
|
size: 1,
|
topicIdOrRefCode: "teacherRoleApproval",
|
appRefCode: this.config.appRefCode,
|
sort: {
|
type: "Desc",
|
field: "CreateDate",
|
},
|
};
|
this.MG.ugc.getTopicMessageList(data).then((res) => {
|
this.teacherRegisterLoading = false;
|
console.log(res, "teacherRoleApproval");
|
// res.datas 为 空数组
|
if (res.datas.length != 0) {
|
try {
|
this.topicId = res.datas[0].id;
|
this.topicMessageList = res.datas[0].cmsItemDataList;
|
this.statusNow = res.datas[0].state
|
? res.datas[0].state
|
: undefined;
|
if (
|
res.datas.length > 0 &&
|
res.datas[0].cmsItemDataList.length > 0
|
) {
|
this.teacherRegisterForm = this.tool.resultsBytool(
|
this.worksInfo,
|
res.datas[0].cmsItemDataList
|
);
|
|
this.phoneCopy = this.teacherRegisterForm.phone;
|
|
// 设置地区
|
let cityArr = this.teacherRegisterForm.region.split("/");
|
if (cityArr[1] == cityArr[0]) {
|
cityArr[1] = "市辖区";
|
}
|
this.selectedOptions =
|
TextToCode[cityArr[0]][cityArr[1]][cityArr[2]].code;
|
|
// 不展示短信验证码
|
this.SMSState = false;
|
|
// 将表单状态置为不可编辑
|
this.forbidden = true;
|
this.agreementState = true;
|
|
// 设置图片,至本地图片, uid 是为了适配 element-upload 组件的(组件的展示和删除需要)。
|
this.teacherRegisterForm.relevantCertificates =
|
this.teacherRegisterForm.relevantCertificates.map((item) => {
|
item.uid = this.tool.uuid();
|
item.url = getPublicImage(item.md5);
|
return item;
|
});
|
}
|
// if (this.userInfo.role == "Student" || "") this.status = "";
|
if (this.statusNow == "Reject") {
|
this.reason = JSON.parse(res.datas[0].feedBack).reason;
|
}
|
|
this.teacherRegisterLoading = false;
|
} catch {
|
this.teacherRegisterLoading = false;
|
this.$message.error("获取教师认证信息失败,请稍后重试");
|
}
|
}
|
});
|
},
|
},
|
};
|
</script>
|
<style lang="less" scoped>
|
@import "@/assets/css/theme.less";
|
|
.protocolBox {
|
text-align: left;
|
line-height: 23px;
|
z-index: 1;
|
height: 500px;
|
overflow-y: auto;
|
margin-top: -20px;
|
box-sizing: border-box;
|
padding: 10px;
|
}
|
.agreementBox {
|
color: #00873c;
|
}
|
.teacherRegisterPage {
|
width: 100%;
|
background: #fff;
|
padding: 32px 40px;
|
box-sizing: border-box;
|
.teacherRegisterBox {
|
.teacherRegisterForm {
|
.zertifizierungsStatus {
|
font-size: 14px;
|
color: #606266;
|
line-height: 40px;
|
margin-bottom: 22px;
|
.reason {
|
font-size: 14px;
|
color: #b3b3b3;
|
margin-left: 134px;
|
}
|
& > :first-child {
|
display: inline-block;
|
width: 130px;
|
}
|
& > :last-child {
|
font-size: 16px;
|
}
|
.status-b {
|
color: #d18252;
|
}
|
.status-f {
|
color: #e50021;
|
}
|
.status-s {
|
color: #00873c;
|
}
|
.status-w {
|
color: #d18252;
|
}
|
}
|
&:deep(.el-input) {
|
width: 603px;
|
}
|
.lecturingSpecixalty {
|
display: flex;
|
border: 1px solid #dcdfe6;
|
border-radius: 4px;
|
padding: 20px;
|
.certificates {
|
display: inline-block;
|
width: 150px;
|
height: 150px;
|
position: relative;
|
border: 1px solid #e4e4e4;
|
background-color: #fdfdfd;
|
margin-right: 40px;
|
.closeButton {
|
position: absolute;
|
right: -11px;
|
top: -11px;
|
color: #e50021;
|
font-size: 20px;
|
background-color: #fff;
|
}
|
}
|
}
|
.notice {
|
font-size: 14px;
|
color: #b3b3b3;
|
margin-left: 140px;
|
}
|
.agreementState {
|
display: flex;
|
padding: 40px 0;
|
height: 20px;
|
align-items: center;
|
.choose {
|
display: inline-block;
|
border: 1px solid #e2e2e2;
|
width: 13px;
|
height: 13px;
|
margin-right: 10px;
|
cursor: pointer;
|
img {
|
margin-left: 2px;
|
margin-bottom: 2px;
|
}
|
}
|
.infoTxt {
|
cursor: pointer;
|
}
|
}
|
.addAddressButton {
|
width: 120px;
|
height: 38px;
|
border-radius: 4px;
|
font-size: 16px;
|
text-align: center;
|
line-height: 40px;
|
float: right;
|
border: 1px solid #00873c;
|
color: #00873c;
|
margin-right: 20px;
|
margin-bottom: 40px;
|
cursor: pointer;
|
}
|
.greenButton {
|
color: #fff;
|
background: linear-gradient(0deg, #00873c 0%, #00aa4c 100%);
|
}
|
.express {
|
font-size: 14px;
|
color: #666666;
|
line-height: 24px;
|
padding: 20px;
|
background: #f2f7f4;
|
.title {
|
line-height: 26px;
|
font-weight: 700;
|
}
|
}
|
.imgCodeBox {
|
margin-left: 20px;
|
height: 40px;
|
width: 140px;
|
cursor: pointer;
|
img {
|
width: 140px;
|
height: 100%;
|
}
|
}
|
}
|
.agreementName {
|
text-align: center;
|
font-size: 24px;
|
font-weight: 700;
|
margin-bottom: 20px;
|
}
|
}
|
}
|
</style>
|