| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- <template>
- <div class="app-container personal">
- <el-row :gutter="24" type="flex" justify="center">
- <el-col :md="24">
- <h1 class="title">基本资料</h1>
- <div class="clearfix">
- <el-col :md="4">
- <img :src="!avatar ? '/static/img/user.png' : avatar" class="avatar" alt="头像">
- <div>
- <el-tooltip class="item" effect="dark" content="后台需要增加修改头像的接口" placement="top-start">
- <el-button type="text" class="btn_avat" @click="toggleShow">修改头像</el-button>
- </el-tooltip>
- <avatar-upload
- v-model="uploadAvatar.show"
- :url="uploadUrl"
- :params="uploadAvatar.params"
- :width="200"
- :height="200"
- :no-rotate="false"
- img-format="png"
- @crop-success="cropSuccess"
- @crop-upload-success="cropUploadSuccess"/>
- </div>
- </el-col>
- <el-col :md="20">
- <p class="head_con">登录账号:{{ usercode }}</p>
- <p class="head_con">姓名:{{ username }}</p>
- <p class="head_con">角色权限:{{ userRole }}</p>
- <p v-if="seatflag" class="head_con">分机号:{{ extension }}</p>
- </el-col>
- </div>
- <hr class="division">
- <ul class="lists">
- <li class="list_item clearfix">
- <el-col :md="3">
- <label class="item_label">密码修改</label>
- </el-col>
- <el-col :md="21">
- <span class="item_span">***********</span>
- <el-button type="text" class="btn_pass" @click="btn_modifyPass(userid)">修改</el-button>
- </el-col>
- </li>
- <li class="list_item clearfix">
- <el-col :md="3">
- <label class="item_label">手机号码</label>
- </el-col>
- <el-col :md="21">
- <span class="item_span">您已绑定了手机 <b>{{ mobile }}</b>【您的手机为安全手机,但不能用于登录】</span>
- <!-- <el-tooltip class="item" effect="dark" content="暂未处理" placement="top-start">
- <el-button type="text" class="btn_tel">修改</el-button>
- </el-tooltip> -->
- </el-col>
- </li>
- <!-- <li class="list_item clearfix">
- <el-col :md="3">
- <label class="item_label">转接设置</label>
- </el-col>
- <el-col :md="21">
- <span class="item_span">您已经将转接号码绑设置为:<b class="red">152-3836-8612</b>【当您开启转到手机接听时,电话会转到此号码】</span>
- <el-tooltip class="item" effect="dark" content="暂未处理" placement="top-start">
- <el-button type="text" class="btn_trans">修改</el-button>
- </el-tooltip>
- </el-col>
- </li> -->
- </ul>
- </el-col>
- </el-row>
- </div>
- </template>
- <script>
- import { updateAvatar } from '@/api/systemSetup/roleSetting/userManage'
- import modifyPass from './components/modifyPass'
- import avatarUpload from 'vue-image-crop-upload'
- import { mapGetters } from 'vuex'
- export default {
- name: 'PersonalInfo',
- components: {
- 'avatar-upload': avatarUpload
- },
- data() {
- return {
- uploadUrl: this.$store.getters.serverConfig.BASE_API + 'fileserverapi/Api/Upload',
- uploadAvatar: {
- show: false,
- params: {
- uploadtype: 'avatar'
- },
- imgDataUrl: '' // 头像剪切后生成的 datebase64格式的url
- }
- }
- },
- computed: {
- ...mapGetters([
- 'userid',
- 'avatar',
- 'username',
- 'usercode',
- 'userRole',
- 'seatflag',
- 'extension',
- 'mobile',
- ])
- },
- created() {
- },
- methods: {
- // 修改头像
- toggleShow() {
- this.uploadAvatar.show = !this.uploadAvatar.show
- },
- cropSuccess(imgDataUrl, field) {
- // this.uploadAvatar.imgDataUrl = imgDataUrl;
- },
- cropUploadSuccess(jsonData, field) {
- if (jsonData.state.toLowerCase() === 'success') {
- const avatarData = {
- usercode: this.usercode,
- head_img: jsonData.data[0].head_img, // 头像大图
- head_small_img: jsonData.data[0].head_small_img // 头像缩略图
- }
- updateAvatar(avatarData).then(response => {
- if (response.state.toLowerCase() === 'success') {
- // 更新头像
- this.$store.dispatch('SetAvatar', jsonData.data[0].head_img)
- this.$message.success(`恭喜你,用户(${this.usercode}-${this.username})的头像修改成功!`)
- }
- })
- }
- },
- // 修改密码
- btn_modifyPass(editId) {
- this.$layer.iframe({
- content: {
- content: modifyPass, // 传递的组件对象
- parent: this, // 当前的vue对象
- data: { 'rowid': editId, 'ispersonal': true }// props
- },
- area: ['40%', '360px'],
- title: '修改密码'
- })
- }
- }
- }
- </script>
- <style rel="stylesheet/scss" lang="scss" scoped>
- .personal{
- height: 100%;
- .title {
- font-size: 18px;
- padding-left: 10px;
- border-left: 2px solid #069BFF;
- }
- .avatar{
- width: 110px;
- height: 110px;
- background-color: #0086B3;
- border-radius: 50%;
- }
- .btn_avat{
- margin-left: 30px;
- }
- .head_con{
- font-size: 12px;
- color: #4c4c4c;
- margin: 18px 0;
- }
- .division{
- background-color: #d9e1eb;
- height: 1px;
- border: none;
- }
- .lists{
- margin: 0;
- padding: 0;
- list-style: none;
- .list_item{
- border-bottom: 1px dashed #d9e1eb;
- line-height: 70px;
- .item_label{
- padding-left: 10px;
- font-size: 12px;
- font-weight: bold;
- color: #333333;
- }
- .item_span{
- font-size: 14px;
- }
- .btn_pass{
- margin-left: 70px;
- }
- .btn_tel{
- margin-left: 44px;
- }
- .btn_trans{
- margin-left: 54px;
- }
- .red{
- color: #ff0000;
- }
- }
- }
- }
- @media only screen and (max-width: 768px) {
- .personal{
- height: auto;
- }
- }
- </style>
|