|
|
@ -1,53 +1,76 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<div> |
|
|
|
<div class="scroll" v-loading="loading"> |
|
|
|
<div class="scroll" |
|
|
|
|
|
|
|
v-loading="loading"> |
|
|
|
<div class="page"> |
|
|
|
<div class="page"> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info1.png" alt=""> 用户信息</h6> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info1.png" |
|
|
|
|
|
|
|
alt=""> 用户信息</h6> |
|
|
|
<div class="page-content"> |
|
|
|
<div class="page-content"> |
|
|
|
<ul class="list"> |
|
|
|
<ul class="list"> |
|
|
|
<div class="line info"> |
|
|
|
<div class="line info"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>姓名:</label> |
|
|
|
<label>姓名:</label> |
|
|
|
<el-input id="username" class="username" placeholder="请输入姓名" type="text" v-model="form.userName" /> |
|
|
|
<el-input id="username" |
|
|
|
|
|
|
|
class="username" |
|
|
|
|
|
|
|
placeholder="请输入姓名" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
v-model="form.userName" /> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>所在国家:</label> |
|
|
|
<label>所在国家:</label> |
|
|
|
<el-select |
|
|
|
<el-select v-model="form.countries" |
|
|
|
v-model="form.countries" |
|
|
|
placeholder> |
|
|
|
placeholder |
|
|
|
<el-option v-for="item in countryList" |
|
|
|
> |
|
|
|
|
|
|
|
<el-option |
|
|
|
|
|
|
|
v-for="item in countryList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
:key="item.value" |
|
|
|
:label="item.label" |
|
|
|
:label="item.label" |
|
|
|
:value="item.value" |
|
|
|
:value="item.value"></el-option> |
|
|
|
></el-option> |
|
|
|
|
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="line info"> |
|
|
|
<div class="line info"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>性别:</label> |
|
|
|
<label>性别:</label> |
|
|
|
<el-select size="small" v-model="form.sex"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in sexList" :key="item.value" :label="item.name" :value="item.value"></el-option> |
|
|
|
v-model="form.sex"> |
|
|
|
|
|
|
|
<el-option v-for="item in sexList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.name" |
|
|
|
|
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li class="selects"> |
|
|
|
<li class="selects"> |
|
|
|
<label>所在地:</label> |
|
|
|
<label>所在地:</label> |
|
|
|
<div class="mul"> |
|
|
|
<div class="mul"> |
|
|
|
<div class="child"> |
|
|
|
<div class="child"> |
|
|
|
<el-select size="small" v-model="form.countries" placeholder> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in countryList" :key="item.value" :label="item.label" :value="item.label"></el-option> |
|
|
|
v-model="form.countries" |
|
|
|
|
|
|
|
placeholder> |
|
|
|
|
|
|
|
<el-option v-for="item in countryList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.label" |
|
|
|
|
|
|
|
:value="item.label"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="child"> |
|
|
|
<div class="child"> |
|
|
|
<el-select size="small" v-model="form.provinceId" placeholder @change="id => getCity(id,1)"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in provinceList" :key="item.provinceId" :label="item.provinceName" :value="item.provinceId"></el-option> |
|
|
|
v-model="form.provinceId" |
|
|
|
|
|
|
|
placeholder |
|
|
|
|
|
|
|
@change="id => getCity(id,1)"> |
|
|
|
|
|
|
|
<el-option v-for="item in provinceList" |
|
|
|
|
|
|
|
:key="item.provinceId" |
|
|
|
|
|
|
|
:label="item.provinceName" |
|
|
|
|
|
|
|
:value="item.provinceId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="child"> |
|
|
|
<div class="child"> |
|
|
|
<el-select size="small" v-model="form.cityId" placeholder :disabled="form.provinceId ? false : true"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in cityList" :key="item.cityId" :label="item.cityName" :value="item.cityId"></el-option> |
|
|
|
v-model="form.cityId" |
|
|
|
|
|
|
|
placeholder |
|
|
|
|
|
|
|
:disabled="form.provinceId ? false : true"> |
|
|
|
|
|
|
|
<el-option v-for="item in cityList" |
|
|
|
|
|
|
|
:key="item.cityId" |
|
|
|
|
|
|
|
:label="item.cityName" |
|
|
|
|
|
|
|
:value="item.cityId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -56,8 +79,7 @@ |
|
|
|
<div class="line info"> |
|
|
|
<div class="line info"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>出生年月:</label> |
|
|
|
<label>出生年月:</label> |
|
|
|
<el-date-picker |
|
|
|
<el-date-picker v-model="form.dateBirth" |
|
|
|
v-model="form.dateBirth" |
|
|
|
|
|
|
|
:clearable="false" |
|
|
|
:clearable="false" |
|
|
|
class="block-right" |
|
|
|
class="block-right" |
|
|
|
type="date"> |
|
|
|
type="date"> |
|
|
@ -65,77 +87,144 @@ |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>身份证:</label> |
|
|
|
<label>身份证:</label> |
|
|
|
<el-input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" id="idnumber" class="idnumber" placeholder="请输入身份证" type="text" v-model="form.idNumber" /> |
|
|
|
<el-input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" |
|
|
|
|
|
|
|
id="idnumber" |
|
|
|
|
|
|
|
class="idnumber" |
|
|
|
|
|
|
|
placeholder="请输入身份证" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
v-model="form.idNumber" /> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="line info"> |
|
|
|
<div class="line info"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>教育程度:</label> |
|
|
|
<label>教育程度:</label> |
|
|
|
<el-select size="small" v-model="form.educationDegree" placeholder="请选择教育程度"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="(item,index) in educationDegreeList" :key="index" :label="item.name" :value="item.value"></el-option> |
|
|
|
v-model="form.educationDegree" |
|
|
|
|
|
|
|
placeholder="请选择教育程度"> |
|
|
|
|
|
|
|
<el-option v-for="(item,index) in educationDegreeList" |
|
|
|
|
|
|
|
:key="index" |
|
|
|
|
|
|
|
:label="item.name" |
|
|
|
|
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>当前所在学校:</label> |
|
|
|
<label>当前所在学校:</label> |
|
|
|
<el-input size="small" readonly placeholder="请输入学校" v-model="form.schoolName" clearable></el-input> |
|
|
|
<el-input size="small" |
|
|
|
|
|
|
|
readonly |
|
|
|
|
|
|
|
placeholder="请输入学校" |
|
|
|
|
|
|
|
v-model="form.schoolName" |
|
|
|
|
|
|
|
clearable></el-input> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="arc-action flex j-between a-center"> |
|
|
|
<div class="arc-action flex j-between a-center"> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info2.png" alt=""> 个人档案</h6> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info2.png" |
|
|
|
<el-button type="text" icon="el-icon-plus" style="margin-left: 16px" @click="addArch">新增</el-button> |
|
|
|
alt=""> 个人档案</h6> |
|
|
|
|
|
|
|
<el-button type="text" |
|
|
|
|
|
|
|
icon="el-icon-plus" |
|
|
|
|
|
|
|
style="margin-left: 16px" |
|
|
|
|
|
|
|
@click="addArch">新增</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="page-content"> |
|
|
|
<div class="page-content"> |
|
|
|
<div class="archives" v-for="(archive,index) in archivesList" :key="index" v-show="index == 0 || showArch"> |
|
|
|
<div class="archives" |
|
|
|
|
|
|
|
v-for="(archive,index) in archivesList" |
|
|
|
|
|
|
|
:key="index" |
|
|
|
|
|
|
|
v-show="index == 0 || showArch"> |
|
|
|
<ul class="list"> |
|
|
|
<ul class="list"> |
|
|
|
<div class="line"> |
|
|
|
<div class="line"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>职业:</label> |
|
|
|
<label>职业:</label> |
|
|
|
<el-select size="small" v-model="archive.personalCareerId" placeholder="选择职业"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in occupationList" :key="item.value" :label="item.label" :value="item.value"></el-option> |
|
|
|
v-model="archive.personalCareerId" |
|
|
|
|
|
|
|
placeholder="选择职业"> |
|
|
|
|
|
|
|
<el-option v-for="item in occupationList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.label" |
|
|
|
|
|
|
|
:value="item.value"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>所在国家:</label> |
|
|
|
<label>所在国家:</label> |
|
|
|
<el-select size="small" v-model="form.countries" placeholder> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in countryList" :key="item.value" :label="item.label" :value="item.label" ></el-option> |
|
|
|
v-model="form.countries" |
|
|
|
|
|
|
|
placeholder> |
|
|
|
|
|
|
|
<el-option v-for="item in countryList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.label" |
|
|
|
|
|
|
|
:value="item.label"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="line"> |
|
|
|
<div class="line"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>学校名称:</label> |
|
|
|
<label>学校名称:</label> |
|
|
|
<el-select size="small" v-model="archive.schoolId" filterable placeholder="选择学校" @change="id => getSchoolName(id,index)"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in schoolList" :key="item.value" :label="item.schoolName" :value="item.schoolId"></el-option> |
|
|
|
v-model="archive.schoolId" |
|
|
|
|
|
|
|
filterable |
|
|
|
|
|
|
|
placeholder="选择学校" |
|
|
|
|
|
|
|
@change="id => getSchoolName(id,index)"> |
|
|
|
|
|
|
|
<el-option v-for="item in schoolList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.schoolName" |
|
|
|
|
|
|
|
:value="item.schoolId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>专业学科:</label> |
|
|
|
<label>专业学科:</label> |
|
|
|
<el-select size="small" v-model="archive.disciplineId" placeholder="选择专业学科" @change="id => getItemProfessionalClass(id,index)" @clear="() => clearItemClass(index)"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in subjectList" :key="item.value" :label="item.disciplineName" :value="item.disciplineId"></el-option> |
|
|
|
v-model="archive.disciplineId" |
|
|
|
|
|
|
|
placeholder="选择专业学科" |
|
|
|
|
|
|
|
@change="id => getItemProfessionalClass(id,index)" |
|
|
|
|
|
|
|
@clear="() => clearItemClass(index)"> |
|
|
|
|
|
|
|
<el-option v-for="item in subjectList" |
|
|
|
|
|
|
|
:key="item.value" |
|
|
|
|
|
|
|
:label="item.disciplineName" |
|
|
|
|
|
|
|
:value="item.disciplineId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="line" style="margin-bottom: 0"> |
|
|
|
<div class="line" |
|
|
|
|
|
|
|
style="margin-bottom: 0"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>专业类:</label> |
|
|
|
<label>专业类:</label> |
|
|
|
<el-select size="small" v-model="archive.professionalClassId" placeholder="选择专业类" :disabled="archive.disciplineId ? false : true" @change="id => getItemProfessional(id,index)" @clear="() => clearItemProfess(index)"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in archive.ProfessionalClassList" :key="item.professionalClassId" :label="item.professionalClassName" :value="item.professionalClassId"></el-option> |
|
|
|
v-model="archive.professionalClassId" |
|
|
|
|
|
|
|
placeholder="选择专业类" |
|
|
|
|
|
|
|
:disabled="archive.disciplineId ? false : true" |
|
|
|
|
|
|
|
@change="id => getItemProfessional(id,index)" |
|
|
|
|
|
|
|
@clear="() => clearItemProfess(index)"> |
|
|
|
|
|
|
|
<el-option v-for="item in archive.ProfessionalClassList" |
|
|
|
|
|
|
|
:key="item.professionalClassId" |
|
|
|
|
|
|
|
:label="item.professionalClassName" |
|
|
|
|
|
|
|
:value="item.professionalClassId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>专业:</label> |
|
|
|
<label>专业:</label> |
|
|
|
<el-select size="small" v-model="archive.professionalId" placeholder="选择专业" :disabled="archive.professionalClassId ? false : true" @change="getItemStuGrade"> |
|
|
|
<el-select size="small" |
|
|
|
<el-option v-for="item in archive.ProfessionalList" :key="item.professionalId" :label="item.professionalName" :value="item.professionalId"></el-option> |
|
|
|
v-model="archive.professionalId" |
|
|
|
|
|
|
|
placeholder="选择专业" |
|
|
|
|
|
|
|
:disabled="archive.professionalClassId ? false : true" |
|
|
|
|
|
|
|
@change="getItemStuGrade"> |
|
|
|
|
|
|
|
<el-option v-for="item in archive.ProfessionalList" |
|
|
|
|
|
|
|
:key="item.professionalId" |
|
|
|
|
|
|
|
:label="item.professionalName" |
|
|
|
|
|
|
|
:value="item.professionalId"></el-option> |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
<img class="del" src="@/assets/img/trash.png" alt="" v-if="index" @click="delArchive(index)"> |
|
|
|
<img class="del" |
|
|
|
|
|
|
|
src="@/assets/img/trash.png" |
|
|
|
|
|
|
|
alt="" |
|
|
|
|
|
|
|
v-if="index" |
|
|
|
|
|
|
|
@click="delArchive(index)"> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="fold" v-if="archivesList.length > 1"> |
|
|
|
<div class="fold" |
|
|
|
<span :class="{active: showArch}" @click="showArch = !showArch"> |
|
|
|
v-if="archivesList.length > 1"> |
|
|
|
|
|
|
|
<span :class="{active: showArch}" |
|
|
|
|
|
|
|
@click="showArch = !showArch"> |
|
|
|
展开更多 |
|
|
|
展开更多 |
|
|
|
<i class="el-icon-arrow-down"></i> |
|
|
|
<i class="el-icon-arrow-down"></i> |
|
|
|
</span> |
|
|
|
</span> |
|
|
@ -143,32 +232,60 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="page"> |
|
|
|
<div class="page"> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info3.png" alt=""> 账号信息</h6> |
|
|
|
<h6 class="l-title"><img src="@/assets/img/info3.png" |
|
|
|
|
|
|
|
alt=""> 账号信息</h6> |
|
|
|
<div class="page-content"> |
|
|
|
<div class="page-content"> |
|
|
|
<ul class="list"> |
|
|
|
<ul class="list"> |
|
|
|
<div class="line info imp"> |
|
|
|
<div class="line info imp"> |
|
|
|
<li style="width: 333px;margin-right: 90px"> |
|
|
|
<li style="width: 333px;margin-right: 90px"> |
|
|
|
<label>学号:</label> |
|
|
|
<label>学号:</label> |
|
|
|
<el-input class="m-r-10" size="small" v-model="form.workNumber" clearable disabled></el-input> |
|
|
|
<el-input class="m-r-10" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
v-model="form.workNumber" |
|
|
|
|
|
|
|
clearable |
|
|
|
|
|
|
|
disabled></el-input> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>手机号:</label> |
|
|
|
<label>手机号:</label> |
|
|
|
<el-input class="m-r-10" type="text" size="small" v-model="form.phone" disabled></el-input> |
|
|
|
<el-input class="m-r-10" |
|
|
|
<el-button type="text" size="small" @click="bindPhone">{{ form.phone ? '更换' : '绑定' }}</el-button> |
|
|
|
type="text" |
|
|
|
<el-button v-if="form.phone" type="text" size="small" @click="unbind">解绑</el-button> |
|
|
|
size="small" |
|
|
|
|
|
|
|
v-model="form.phone" |
|
|
|
|
|
|
|
disabled></el-input> |
|
|
|
|
|
|
|
<el-button type="text" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
@click="bindPhone">{{ form.phone ? '更换' : '绑定' }}</el-button> |
|
|
|
|
|
|
|
<el-button v-if="form.phone" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
@click="unbind">解绑</el-button> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="line info imp"> |
|
|
|
<div class="line info imp"> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>邮箱:</label> |
|
|
|
<label>邮箱:</label> |
|
|
|
<el-input class="m-r-10" size="small" v-model="form.email" disabled></el-input> |
|
|
|
<el-input class="m-r-10" |
|
|
|
<el-button v-if="form.email" type="text" size="small" @click="bindEmail">更换</el-button> |
|
|
|
size="small" |
|
|
|
<el-button v-else type="text" size="small" @click="bindEmail">添加</el-button> |
|
|
|
v-model="form.email" |
|
|
|
|
|
|
|
disabled></el-input> |
|
|
|
|
|
|
|
<el-button v-if="form.email" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
@click="bindEmail">更换</el-button> |
|
|
|
|
|
|
|
<el-button v-else |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
@click="bindEmail">添加</el-button> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
<li> |
|
|
|
<li> |
|
|
|
<label>密码:</label> |
|
|
|
<label>密码:</label> |
|
|
|
<el-input class="m-r-10" size="small" value="******" disabled></el-input> |
|
|
|
<el-input class="m-r-10" |
|
|
|
<el-button type="text" size="small" @click="bindPassword">更换</el-button> |
|
|
|
size="small" |
|
|
|
|
|
|
|
value="******" |
|
|
|
|
|
|
|
disabled></el-input> |
|
|
|
|
|
|
|
<el-button type="text" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
@click="bindPassword">更换</el-button> |
|
|
|
</li> |
|
|
|
</li> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
@ -177,87 +294,129 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="btns"> |
|
|
|
<div class="btns"> |
|
|
|
<!-- <el-button size="small" v-throttle @click="cancel">取消</el-button> --> |
|
|
|
<!-- <el-button size="small" v-throttle @click="cancel">取消</el-button> --> |
|
|
|
<el-button type="primary" size="small" v-throttle @click="save">更新</el-button> |
|
|
|
<el-button type="primary" |
|
|
|
|
|
|
|
size="small" |
|
|
|
|
|
|
|
v-throttle |
|
|
|
|
|
|
|
@click="save">更新</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<el-dialog |
|
|
|
<el-dialog :title="form.email ? '更换邮箱' : '绑定邮箱'" |
|
|
|
:title="form.email ? '更换邮箱' : '绑定邮箱'" |
|
|
|
|
|
|
|
:visible.sync="emailVisible" |
|
|
|
:visible.sync="emailVisible" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-click-modal="false" |
|
|
|
@close="closeEmail" |
|
|
|
@close="closeEmail" |
|
|
|
width="30%"> |
|
|
|
width="30%"> |
|
|
|
<el-form ref="form" :model="form" label-width="60px"> |
|
|
|
<el-form ref="form" |
|
|
|
|
|
|
|
:model="form" |
|
|
|
|
|
|
|
label-width="60px"> |
|
|
|
<el-form-item label="邮箱"> |
|
|
|
<el-form-item label="邮箱"> |
|
|
|
<el-input placeholder="请输入邮箱" v-model="email"></el-input> |
|
|
|
<el-input placeholder="请输入邮箱" |
|
|
|
|
|
|
|
v-model="email"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="验证码"> |
|
|
|
<el-form-item label="验证码"> |
|
|
|
<div class="flex-between"> |
|
|
|
<div class="flex-between"> |
|
|
|
<el-input v-model="emailCode" placeholder="请输入验证码" maxlength="6"></el-input> |
|
|
|
<el-input v-model="emailCode" |
|
|
|
<el-button style="margin-left: 10px" type="text" @click="sendEmailCode" :disabled="emailDisabled">{{ emailBtnText }}</el-button> |
|
|
|
placeholder="请输入验证码" |
|
|
|
|
|
|
|
maxlength="6"></el-input> |
|
|
|
|
|
|
|
<el-button style="margin-left: 10px" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
@click="sendEmailCode" |
|
|
|
|
|
|
|
:disabled="emailDisabled">{{ emailBtnText }}</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-form> |
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
<span slot="footer" |
|
|
|
|
|
|
|
class="dialog-footer"> |
|
|
|
<el-button @click="emailVisible = false">取 消</el-button> |
|
|
|
<el-button @click="emailVisible = false">取 消</el-button> |
|
|
|
<el-button type="primary" @click="emailSubmit">确 定</el-button> |
|
|
|
<el-button type="primary" |
|
|
|
|
|
|
|
@click="emailSubmit">确 定</el-button> |
|
|
|
</span> |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
<el-dialog |
|
|
|
<el-dialog :title="form.phone ? '更换手机号' : '绑定手机号'" |
|
|
|
:title="form.phone ? '更换手机号' : '绑定手机号'" |
|
|
|
|
|
|
|
:visible.sync="phoneVisible" |
|
|
|
:visible.sync="phoneVisible" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-click-modal="false" |
|
|
|
@close="closePhone" |
|
|
|
@close="closePhone" |
|
|
|
width="30%"> |
|
|
|
width="30%"> |
|
|
|
<el-form ref="form" :model="form" label-width="60px"> |
|
|
|
<el-form ref="form" |
|
|
|
|
|
|
|
:model="form" |
|
|
|
|
|
|
|
label-width="60px"> |
|
|
|
<el-form-item label="手机号"> |
|
|
|
<el-form-item label="手机号"> |
|
|
|
<el-input style="width: 404px;" placeholder="请输入手机号" v-model="phone" maxlength="11"></el-input> |
|
|
|
<el-input style="width: 404px;" |
|
|
|
|
|
|
|
placeholder="请输入手机号" |
|
|
|
|
|
|
|
v-model="phone" |
|
|
|
|
|
|
|
maxlength="11"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="验证码"> |
|
|
|
<el-form-item label="验证码"> |
|
|
|
<div class="flex-between"> |
|
|
|
<div class="flex-between"> |
|
|
|
<el-input v-model="phoneCode" placeholder="请输入验证码" maxlength="6"></el-input> |
|
|
|
<el-input v-model="phoneCode" |
|
|
|
<el-button style="margin-left: 10px" type="text" @click="sendPhoneCode" :disabled="phoneDisabled">{{ phoneBtnText }}</el-button> |
|
|
|
placeholder="请输入验证码" |
|
|
|
|
|
|
|
maxlength="6"></el-input> |
|
|
|
|
|
|
|
<el-button style="margin-left: 10px" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
@click="sendPhoneCode" |
|
|
|
|
|
|
|
:disabled="phoneDisabled">{{ phoneBtnText }}</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-form> |
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
<span slot="footer" |
|
|
|
|
|
|
|
class="dialog-footer"> |
|
|
|
<el-button @click="phoneVisible = false">取 消</el-button> |
|
|
|
<el-button @click="phoneVisible = false">取 消</el-button> |
|
|
|
<el-button type="primary" @click="phoneSubmit">确 定</el-button> |
|
|
|
<el-button type="primary" |
|
|
|
|
|
|
|
@click="phoneSubmit">确 定</el-button> |
|
|
|
</span> |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
<el-dialog |
|
|
|
<el-dialog title="更换密码" |
|
|
|
title="更换密码" |
|
|
|
|
|
|
|
:visible.sync="passwordVisible" |
|
|
|
:visible.sync="passwordVisible" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-click-modal="false" |
|
|
|
@close="closePassword" |
|
|
|
@close="closePassword" |
|
|
|
width="30%"> |
|
|
|
width="30%"> |
|
|
|
<el-form ref="passwordForm" :model="form" label-width="60px"> |
|
|
|
<el-form ref="passwordForm" |
|
|
|
|
|
|
|
:model="form" |
|
|
|
|
|
|
|
label-width="60px"> |
|
|
|
<el-form-item label="原密码"> |
|
|
|
<el-form-item label="原密码"> |
|
|
|
<el-input type="password" v-model="passwordForm.password" placeholder="请输入原密码"></el-input> |
|
|
|
<el-input type="password" |
|
|
|
|
|
|
|
v-model="passwordForm.password" |
|
|
|
|
|
|
|
placeholder="请输入原密码"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="新密码"> |
|
|
|
<el-form-item label="新密码"> |
|
|
|
<el-input type="password" v-model="passwordForm.newPassword" placeholder="请输入新密码" @keyup.enter.native="editPassword"></el-input> |
|
|
|
<el-input type="password" |
|
|
|
|
|
|
|
v-model="passwordForm.newPassword" |
|
|
|
|
|
|
|
placeholder="请输入新密码" |
|
|
|
|
|
|
|
@keyup.enter.native="editPassword"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="新密码"> |
|
|
|
<el-form-item label="新密码"> |
|
|
|
<el-input type="password" v-model="passwordForm.reNewPassword" placeholder="请确认新密码" @keyup.enter.native="editPassword"></el-input> |
|
|
|
<el-input type="password" |
|
|
|
|
|
|
|
v-model="passwordForm.reNewPassword" |
|
|
|
|
|
|
|
placeholder="请确认新密码" |
|
|
|
|
|
|
|
@keyup.enter.native="editPassword"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-form> |
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
<span slot="footer" |
|
|
|
|
|
|
|
class="dialog-footer"> |
|
|
|
<el-button @click="passwordVisible = false">取 消</el-button> |
|
|
|
<el-button @click="passwordVisible = false">取 消</el-button> |
|
|
|
<el-button type="primary" @click="editPassword">确 定</el-button> |
|
|
|
<el-button type="primary" |
|
|
|
|
|
|
|
@click="editPassword">确 定</el-button> |
|
|
|
</span> |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
<el-dialog title="修改用户账号" :visible.sync="accountVisible" :close-on-click-modal="false" width="30%"> |
|
|
|
<el-dialog title="修改用户账号" |
|
|
|
|
|
|
|
:visible.sync="accountVisible" |
|
|
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
|
|
|
width="30%"> |
|
|
|
<el-form label-width="82px"> |
|
|
|
<el-form label-width="82px"> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-form-item label="用户账号"> |
|
|
|
<el-input v-model="editUsername" placeholder="请输入用户账号"></el-input> |
|
|
|
<el-input v-model="editUsername" |
|
|
|
|
|
|
|
placeholder="请输入用户账号"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-form> |
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
<span slot="footer" |
|
|
|
<el-button size="small" @click="accountVisible = false">取 消</el-button> |
|
|
|
class="dialog-footer"> |
|
|
|
<el-button size="small" type="primary" @click="confirmAccount">确 定</el-button> |
|
|
|
<el-button size="small" |
|
|
|
|
|
|
|
@click="accountVisible = false">取 消</el-button> |
|
|
|
|
|
|
|
<el-button size="small" |
|
|
|
|
|
|
|
type="primary" |
|
|
|
|
|
|
|
@click="confirmAccount">确 定</el-button> |
|
|
|
</span> |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -621,7 +780,8 @@ export default { |
|
|
|
// 解绑手机号 |
|
|
|
// 解绑手机号 |
|
|
|
unbind () { |
|
|
|
unbind () { |
|
|
|
this.$confirm('确定要解绑该手机号吗?', '提示', { |
|
|
|
this.$confirm('确定要解绑该手机号吗?', '提示', { |
|
|
|
type: 'warning' |
|
|
|
type: 'warning', |
|
|
|
|
|
|
|
closeOnClickModal: false |
|
|
|
}).then(() => { |
|
|
|
}).then(() => { |
|
|
|
this.$get(this.api.unbindMobilePhone).then(res => { |
|
|
|
this.$get(this.api.unbindMobilePhone).then(res => { |
|
|
|
this.$message.success('解绑成功') |
|
|
|
this.$message.success('解绑成功') |
|
|
@ -804,7 +964,8 @@ export default { |
|
|
|
cancel () { |
|
|
|
cancel () { |
|
|
|
if (this.updateTime > 1) { |
|
|
|
if (this.updateTime > 1) { |
|
|
|
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { |
|
|
|
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { |
|
|
|
type: 'warning' |
|
|
|
type: 'warning', |
|
|
|
|
|
|
|
closeOnClickModal: false |
|
|
|
}).then(() => { |
|
|
|
}).then(() => { |
|
|
|
this.save(1) |
|
|
|
this.save(1) |
|
|
|
}).catch(() => { |
|
|
|
}).catch(() => { |
|
|
@ -992,7 +1153,8 @@ export default { |
|
|
|
goBack () { |
|
|
|
goBack () { |
|
|
|
if (this.updateTime > 0) { |
|
|
|
if (this.updateTime > 0) { |
|
|
|
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { |
|
|
|
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { |
|
|
|
type: 'warning' |
|
|
|
type: 'warning', |
|
|
|
|
|
|
|
closeOnClickModal: false |
|
|
|
}).then(() => { |
|
|
|
}).then(() => { |
|
|
|
this.save() |
|
|
|
this.save() |
|
|
|
this.$router.go(-1); |
|
|
|
this.$router.go(-1); |
|
|
@ -1014,7 +1176,7 @@ export default { |
|
|
|
.page { |
|
|
|
.page { |
|
|
|
margin-bottom: 12px; |
|
|
|
margin-bottom: 12px; |
|
|
|
/deep/.el-input__inner { |
|
|
|
/deep/.el-input__inner { |
|
|
|
border-color: #CACFDB; |
|
|
|
border-color: #cacfdb; |
|
|
|
} |
|
|
|
} |
|
|
|
.list { |
|
|
|
.list { |
|
|
|
.line { |
|
|
|
.line { |
|
|
@ -1032,10 +1194,11 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.el-input, .el-select{ |
|
|
|
.el-input, |
|
|
|
|
|
|
|
.el-select { |
|
|
|
width: 220px; |
|
|
|
width: 220px; |
|
|
|
.el-input__inner { |
|
|
|
.el-input__inner { |
|
|
|
border-color: #CACFDB; |
|
|
|
border-color: #cacfdb; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
li { |
|
|
|
li { |
|
|
@ -1085,7 +1248,7 @@ export default { |
|
|
|
padding: 16px 0; |
|
|
|
padding: 16px 0; |
|
|
|
margin-bottom: 6px; |
|
|
|
margin-bottom: 6px; |
|
|
|
border-radius: 4px; |
|
|
|
border-radius: 4px; |
|
|
|
background-color: #FAFAFA; |
|
|
|
background-color: #fafafa; |
|
|
|
.del { |
|
|
|
.del { |
|
|
|
position: absolute; |
|
|
|
position: absolute; |
|
|
|
top: 80px; |
|
|
|
top: 80px; |
|
|
@ -1100,11 +1263,11 @@ export default { |
|
|
|
margin-top: 20px; |
|
|
|
margin-top: 20px; |
|
|
|
text-align: center; |
|
|
|
text-align: center; |
|
|
|
font-size: 12px; |
|
|
|
font-size: 12px; |
|
|
|
color: #006EFF; |
|
|
|
color: #006eff; |
|
|
|
span { |
|
|
|
span { |
|
|
|
cursor: pointer; |
|
|
|
cursor: pointer; |
|
|
|
i { |
|
|
|
i { |
|
|
|
transition: .5s; |
|
|
|
transition: 0.5s; |
|
|
|
} |
|
|
|
} |
|
|
|
&.active i { |
|
|
|
&.active i { |
|
|
|
transform: rotate(180deg); |
|
|
|
transform: rotate(180deg); |
|
|
|