<style>
  .Person_Content {
    height: 96%;
    margin: 18px;
    overflow: hidden;
  }

  .PerSon_LeftNav {
    width: 418px;
    height: 96%;
    position: absolute;
    overflow-y: auto;
    background-color: #fff;
    display: inline-block;
  }

  .Person_Right {
    margin-left: 440px;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background-color: #fff;
  }

  .PerSon_Edit {
    text-align: right;
    width: 100%;
    color: #BBBBBB;
    font-size: 12px;
    padding: 30px;
  }

  .PerSon_Edit span {
    cursor: pointer;
  }

  .PerSon_Edit i {
    font-size: 12px;
  }

  .Person_Header {
    width: 120px;
    height: 120px;
    margin: 30px auto;
    border: 1px solid #F4F4F4;
    padding: 3px;
    border-radius: 50%;
  }

  .Person_Header img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
  }

  .Person_ComCenter {
    width: 100%;
    font-size: 14px;
    color: #333333;
    text-align: center;
  }

  .Person_MenuList {
    margin-top: 45px;
  }

  .Person_MenuList li {
    list-style-type: none;
    width: 100%;
    height: 54px;
    padding: 0 30px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #F3F3F3;
  }

  .Person_MenuList li .Person_Pname {
    display: flex;
    align-items: center;
    width: 26%;
    height: 100%;
    font-size: 12px;
    color: #999999;
  }

  .Person_Jobs {
    display: inline-block;
    padding: 5px 8px;
    background-color: #007EFF;
    color: #fff;
    font-size: 12px;
    border-radius: 8px;
    margin-left: 10px;
  }

  .Person_Company {
    color: #333333;
    font-size: 14px;
    display: inline-block;
  }

  .Person_Wrong {
    color: #999999;
    font-size: 12px;
    text-align: right;
  }

  .Person_CenterList {
    display: inline-block;
    width: 72%;
    font-size: 14px;
  }

  .Per_Jiantou i {
    font-size: 12px;
    color: #999999;
  }

  .Person_menuCked li:hover {
    cursor: pointer;
    background-color: #F1F8FF;
  }

  .P_cked {
    background-color: #F1F8FF;
  }

  .Shouji_Top {
    width: 100%;
    height: 54px;
    line-height: 54px;
    padding: 0 30px;
    font-size: 14px;
    color: #333333;
    border-bottom: 1px solid #F3F3F3;
  }

  .Shouji_Conteng {
    margin: 70px 0 0 120px;
  }

  .phone_commonBotm {
    width: 400px;
    position: relative;
  }

  .phone_commonBotm .input {
    width: 400px;
    height: 44px;
    outline: none;
    padding-left: 17px;
    border: none;
    border: 1px solid #DCDFE6;
  }

  .phone_commonBotm .input::-webkit-input-placeholder {
    color: #D3D6DC;
  }

  .phone_commonBotm .validatCode {
    position: absolute;
    right: 10px;
    top: 16px;
    height: 12px;
    line-height: 12px;
    padding-left: 10px;
    color: #007EFF;
    font-size: 12px;
    letter-spacing: 2px;
    border-left: 1px solid #DCDFE6;
  }

  .phone_bangding {
    color: #333333;
    margin: 0 0 29px 100px;
    font-size: 16px;
  }

  .phone_bangding span {
    margin-left: 21px;
  }

  .Shouji_Conteng .el-input .el-input__inner {
    height: 44px;
  }

  .PI_qiehuan {
    font-size: 14px;
    color: #333333;
  }

  .PI_comMoshi {
    color: #999999
  }

  .PI_QiehuanImg {
    width: 370px;
    height: 174px;
    margin-top: 18px;
    cursor: pointer;
    margin-left: 20px;
    border: 4px solid #fff;
  }

  .ckedQieImg {
    border: 4px solid #007EFF;
  }

  .PI_QiehuanImg img {
    width: 100%;
    height: 100%;
  }

  .Account_NumList {
    margin-top: 68px;
    min-height: 80px;
    margin: 0 30px;
    border-bottom: 1px dashed #BBBBBB;
  }

  .Account_NumList table {
    padding: 30px 0 30px 160px;
    font-size: 16px;
  }

  .Account_NumList table td {
    height: 30px;
  }

  .AC_bankName {
    color: #333333;
    font-weight: bold;
    margin-right: 11px;
  }

  .AC_jeibang {
    width: 80px;
    text-align: right;
    color: #999999;
    font-size: 12px;
  }

  .bank_Count {
    position: absolute;
    display: inline-block;
    width: 14px;
    height: 14px;
    background-color: #007EFF;
    color: #fff;
    border-radius: 50%;
    right: 25px;
    line-height: 14px;
    text-align: center;
    top: 20px;
  }

  .bind_Imidetly {
    color: rgb(0, 126, 255);
    cursor: pointer;
    display: inline-block;
    width: 70%;
    font-size: 14px;
  }

  .addAccountTitle {
    margin: 0 0 20px 97px;
    font-size: 14px;
  }

  .Person_Content .FPF_s {
    cursor: pointer;
  }

  #demo #button {
    position: absolute;
    right: 10px;
    width: 80px;
    height: 40px;
    border: none;
    cursor: pointer;
    color: #fff;
    border-radius: 5px;
    background: #E95252;
  }

  #demo .show {
    width: 100px;
    height: 100px;
    overflow: hidden;
    position: relative;
    border-radius: 50%;
    border: 1px solid #d5d5d5;
  }

  #demo .picture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }

  #demo .container {
    z-index: 9999999;
    position: fixed;
    padding-top: 60px;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
  }

  #demo #image {
    max-width: 100%;
  }

  .cropper-view-box,
  .cropper-face {
    border-radius: 50%;
  }

  .cropper-container {
    font-size: 0;
    line-height: 0;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    direction: ltr;
    -ms-touch-action: none;
    touch-action: none
  }

  .cropper-container img {
    display: block;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 100%;
    height: 100%;
    image-orientation: 0deg
  }

  .cropper-wrap-box,
  .cropper-canvas,
  .cropper-drag-box,
  .cropper-crop-box,
  .cropper-modal {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

  .cropper-wrap-box {
    overflow: hidden;
  }

  .cropper-drag-box {
    opacity: 0;
  }

  .cropper-modal {
    opacity: .5;
  }

  .cropper-view-box {
    display: block;
    overflow: hidden;
    width: 100%;
    height: 100%;
    outline: 1px solid #e95252;
    outline-color: #e95252;
  }

  .cropper-dashed {
    position: absolute;
    display: block;
    opacity: .5;
    border: 0 dashed #e95252
  }

  .cropper-dashed.dashed-h {
    top: 33.33333%;
    left: 0;
    width: 100%;
    height: 33.33333%;
    border-top-width: 1px;
    border-bottom-width: 1px
  }

  .cropper-dashed.dashed-v {
    top: 0;
    left: 33.33333%;
    width: 33.33333%;
    height: 100%;
    border-right-width: 1px;
    border-left-width: 1px
  }

  .cropper-center {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 0;
    height: 0;
    opacity: .75
  }

  .cropper-center:before,
  .cropper-center:after {
    position: absolute;
    display: block;
    content: ' ';
  }

  .cropper-center:before {
    top: 0;
    left: -3px;
    width: 7px;
    height: 1px
  }

  .cropper-center:after {
    top: -3px;
    left: 0;
    width: 1px;
    height: 7px
  }

  .cropper-face,
  .cropper-line,
  .cropper-point {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    opacity: .1;
  }

  .cropper-face {
    top: 0;
    left: 0;
  }


  .cropper-line.line-e {
    top: 0;
    right: -3px;
    width: 5px;
    cursor: e-resize
  }

  .cropper-line.line-n {
    top: -3px;
    left: 0;
    height: 5px;
    cursor: n-resize
  }

  .cropper-line.line-w {
    top: 0;
    left: -3px;
    width: 5px;
    cursor: w-resize
  }

  .cropper-line.line-s {
    bottom: -3px;
    left: 0;
    height: 5px;
    cursor: s-resize
  }

  .cropper-point {
    width: 5px;
    height: 5px;
    opacity: .75;
  }

  .cropper-point.point-e {
    top: 50%;
    right: -3px;
    margin-top: -3px;
    cursor: e-resize
  }

  .cropper-point.point-n {
    top: -3px;
    left: 50%;
    margin-left: -3px;
    cursor: n-resize
  }

  .cropper-point.point-w {
    top: 50%;
    left: -3px;
    margin-top: -3px;
    cursor: w-resize
  }

  .cropper-point.point-s {
    bottom: -3px;
    left: 50%;
    margin-left: -3px;
    cursor: s-resize
  }

  .cropper-point.point-ne {
    top: -3px;
    right: -3px;
    cursor: ne-resize
  }

  .cropper-point.point-nw {
    top: -3px;
    left: -3px;
    cursor: nw-resize
  }

  .cropper-point.point-sw {
    bottom: -3px;
    left: -3px;
    cursor: sw-resize
  }

  .cropper-point.point-se {
    right: -3px;
    bottom: -3px;
    width: 20px;
    height: 20px;
    cursor: se-resize;
    opacity: 1
  }

  @media (min-width: 768px) {

    .cropper-point.point-se {
      width: 15px;
      height: 15px
    }
  }

  @media (min-width: 992px) {
    .cropper-point.point-se {
      width: 10px;
      height: 10px
    }
  }

  @media (min-width: 1200px) {
    .cropper-point.point-se {
      width: 5px;
      height: 5px;
      opacity: .75
    }
  }

  .cropper-point.point-se:before {
    position: absolute;
    right: -50%;
    bottom: -50%;
    display: block;
    width: 200%;
    height: 200%;
    content: ' ';
    opacity: 0;
  }

  .cropper-invisible {
    opacity: 0;
  }

  .cropper-hide {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
  }

  .cropper-hidden {
    display: none !important;
  }

  .cropper-move {
    cursor: move;
  }

  .cropper-crop {
    cursor: crosshair;
  }

  .cropper-disabled .cropper-drag-box,
  .cropper-disabled .cropper-face,
  .cropper-disabled .cropper-line,
  .cropper-disabled .cropper-point {
    cursor: not-allowed;
  }

  .a-upload {
    padding: 4px 10px;
    height: 20px;
    line-height: 20px;
    position: relative;
    cursor: pointer;
    color: #888;
    background: #fff;
    overflow: hidden;
    display: inline-block;
    *display: inline;
    *zoom: 1
  }

  .a-upload input {
    position: absolute;
    font-size: 100px;
    right: 0;
    top: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    cursor: pointer
  }

  .cancel_Btnn {
    background-color: #fff !important;
    border: 1px solid #e95252 !important;
    color: #e95252 !important;
  }

</style>

<template>
  <div class="Person_Content">
    <div class="PerSon_LeftNav">
      <div class="PerSon_Edit">
        <a href="javascript:;" class="a-upload">
          <i class="iconfont icon-Edit"></i>&nbsp;&nbsp;修改头像</span>
          <input type="file" id="change" accept="image" @change="change">
        </a>
      </div>
      <div class="Person_Header">
        <img v-if="dataList.EmPhoto" :src="dataList.EmPhoto" :onerror="defaultHeadImg" alt />
        <img v-else src="../assets/img/default_head_img.jpg" alt />
      </div>
      <div class="Person_ComCenter" style="margin-bottom:14px;">
        {{dataList.EmName}}
      </div>
      <div class="Person_ComCenter">
        <i class="iconfont icon-dianhua"></i>&nbsp;&nbsp;{{dataList.EmLoginMobile}}
      </div>
      <ul class="Person_MenuList">
        <li>
          <span class="Person_Pname">部门</span>
          <span class="Person_Company">
            {{u.BranchName}}
            <span class="Person_Jobs">{{u.PostName}}</span>
          </span>
        </li>
        <li>
          <span class="Person_Pname">用户名</span>
          <span class="Person_Company" style="width:43%;">{{dataList.EmName}}</span>
          <span class="Person_Wrong">如有错误请联系行政</span>
        </li>
      </ul>
      <ul class="Person_MenuList Person_menuCked" style="margin-top:0;">
        <li @click="ckedNum=1,resetPhoneNum()" :class="{'P_cked':ckedNum==1}">
          <span class="Person_Pname">绑定手机</span>
          <span class="Person_CenterList">
            {{getBangding(dataList.EmLoginMobile)}}
          </span>
          <span class="Per_Jiantou">
            <i class="iconfont icon-jiantouyou1"></i>
          </span>
        </li>
        <li @click="ckedNum=2" :class="{'P_cked':ckedNum==2}">
          <span class="Person_Pname">密码</span>
          <span class="Person_CenterList">
            ******
          </span>
          <span class="Per_Jiantou">
            <i class="iconfont icon-jiantouyou1"></i>
          </span>
        </li>
        <li @click="ckedNum=3" :class="{'P_cked':ckedNum==3}">
          <span class="Person_Pname" style="position:relative;">
            银行账户
            <span class="bank_Count">{{AccCount}}</span>
          </span>
          <span v-if="AccCount==0" class="bind_Imidetly">
            立即绑定
          </span>
          <span v-else class="Person_CenterList">
            {{AccDataList.BankName}}
            <span style="margin-left:10px;">{{getBankNum(AccDataList.CardNum)}}</span>
          </span>
          <span class="Per_Jiantou">
            <i class="iconfont icon-jiantouyou1"></i>
          </span>
        </li>
        <li @click="ckedNum=4" :class="{'P_cked':ckedNum==4}">
          <span class="Person_Pname">页面切换方式</span>
          <span class="Person_CenterList" v-if="openMode==1">
            单页面多标签模式
          </span>
          <span class="Person_CenterList" v-else>
            多页面单标签模式
          </span>
          <span class="Per_Jiantou">
            <i class="iconfont icon-jiantouyou1"></i>
          </span>
        </li>
        <li @click="ckedNum=5" :class="{'P_cked':ckedNum==5}">
          <span class="Person_Pname">绑定商城、微信</span>
          <span class="Person_CenterList" v-if="dataList.MallUserId>0">
            已绑定微信/店铺
          </span>
          <span class="Person_CenterList" v-else>
            未绑定微信
          </span>
          <span class="Per_Jiantou">
            <i class="iconfont icon-jiantouyou1"></i>
          </span>
        </li>
      </ul>
    </div>
    <div class="Person_Right">
      <!-- 绑定手机号 -->
      <div class="Per_Shouji" v-if="ckedNum==1">
        <div class="Shouji_Top">绑定手机</div>
        <div class="Shouji_Conteng">
          <div class="phone_bangding" v-if="dataList.EmLoginMobile">
            已绑定手机号 <span>{{getBangding(dataList.EmLoginMobile)}}</span>
          </div>
          <el-form :model="phoneMsg" ref="phoneMsg" label-position="right" :rules="rules" label-width="100px">
            <el-form-item label="新手机号" prop="LoginMobile" style="margin-bottom:40px;">
              <div class="phone_commonBotm">
                <input class="input" maxlength="11" onkeyup="value=value.replace(/[^\d]/g,'')"
                  v-model="phoneMsg.LoginMobile" type="text" placeholder="11位数字" />
                <div class="validatCode">
                  <span v-show="showCode" @click="getCode" class="FPF_s">发送验证码</span>
                  <span v-show="!showCode" class="count FPF_s">{{count}}s重新获取</span>
                </div>
              </div>
            </el-form-item>
            <el-form-item label="验证码" prop="code">
              <el-input v-model="phoneMsg.code" class="w150" placeholder="4位验证码" maxlength="4"></el-input>
            </el-form-item>
          </el-form>
          <button class="normalBtn" style="margin:30px 0 0 100px;" @click="submitForm1('phoneMsg')">确定</button>
        </div>
      </div>
      <!-- 修改密码 -->
      <div class="Per_Shouji" v-if="ckedNum==2">
        <div class="Shouji_Top">密码</div>
        <div class="Shouji_Conteng">
          <el-form :model="passWordMsg" ref="passWordMsg" label-position="right" :rules="rules2" label-width="100px">
            <el-form-item v-if="sureOldPwd" label="旧密码" prop="OldPwd" style="margin-bottom:30px;">
              <el-input type="password" class="w400" v-model="passWordMsg.OldPwd" maxlength="15">
                <i slot="suffix" title="显示密码" @click="changePassOld('show')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-yincang"></i>
              </el-input>
            </el-form-item>
            <el-form-item v-else label="旧密码" prop="OldPwd" style="margin-bottom:30px;">
              <el-input type="text" class="w400" v-model="passWordMsg.OldPwd" maxlength="15">
                <i slot="suffix" title="隐藏密码" @click="changePassOld('hide')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-xianshi"></i>
              </el-input>
            </el-form-item>
            <el-form-item v-if="visible" label="新密码" style="margin-bottom:30px;" prop="Pwd">
              <el-input type="password" class="w400" v-model="passWordMsg.Pwd" maxlength="15" placeholder="密码格式:大写字母+小写字母+数字或?!&$%#_">
                <i slot="suffix" title="显示密码" @click="changePass('show')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-yincang"></i>
              </el-input>
            </el-form-item>
            <el-form-item v-else label="新密码" style="margin-bottom:30px;" prop="Pwd">
              <el-input type="text" class="w400" v-model="passWordMsg.Pwd" maxlength="15" placeholder="密码格式:大写字母+小写字母+数字或?!&$%#_">
                <i slot="suffix" title="隐藏密码" @click="changePass('hide')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-xianshi"></i>
              </el-input>
            </el-form-item>
            <el-form-item v-if="SureVisible" label="确认密码" style="margin-bottom:30px;" prop="surePassword">
              <el-input type="password" class="w400" v-model="passWordMsg.surePassword" maxlength="15"
                placeholder="密码格式:大写字母+小写字母+数字或?!&$%#_">
                <i slot="suffix" title="显示密码" @click="changePass2('show')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-yincang"></i>
              </el-input>
            </el-form-item>
            <el-form-item v-else label="确认密码" style="margin-bottom:30px;" prop="surePassword">
              <el-input type="text" class="w400" v-model="passWordMsg.surePassword" maxlength="15" placeholder="密码格式:大写字母+小写字母+数字或?!&$%#_">
                <i slot="suffix" title="隐藏密码" @click="changePass2('hide')" style="cursor:pointer;"
                  class="el-input__icon iconfont icon-xianshi"></i>
              </el-input>
            </el-form-item>
          </el-form>
          <button class="normalBtn" style="margin:30px 0 0 100px;" @click="submitForm2('passWordMsg')">确定</button>
        </div>
      </div>
      <!-- 银行账户 -->
      <div class="Per_Shouji" v-if="ckedNum==3">
        <div class="Shouji_Top">银行账户</div>
        <div class="Account_NumList" v-if="AcountData.length>0">
          <table>
            <tr v-for="(item,index) in AcountData">
              <td style="width:100px">
                <template v-if="index==0">银行账户</template>
              </td>
              <td>
                <span class="AC_bankName">{{item.BankName}}</span><span>{{getBankNum(item.CardNum)}}</span>
              </td>
              <td class="AC_jeibang">
                <span style="cursor:pointer;color:#007EFF;" v-if='item.Status==0' @click="deleteData(item.ID)">冻结</span>
                <span style="cursor:pointer;color:#007EFF;" v-if='item.Status==1' @click="deleteData(item.ID)">启用</span>
              </td>
            </tr>
          </table>
        </div>
        <div class="Shouji_Conteng">
          <div class="addAccountTitle" v-if="AcountData.length>0">添加新银行账户</div>
          <el-form :model="addAccountMsg" ref="addAccountMsg" label-position="right" :rules="rules3"
            label-width="100px">
            <el-form-item label="账户分类" prop="oldPassword" style="margin-bottom:30px;">
              <el-select v-model='addAccountMsg.AccountClassify' class="w400" placeholder="请选择" @change='changeTitle'>
                <el-option label='银行' value='2' key='2'></el-option>
                <el-option label='虚拟账户' value='3' key='3'></el-option>
              </el-select>
            </el-form-item>
            <el-form-item v-if="addAccountMsg.AccountClassify==2" label="所属机构" prop="BankName">
              <el-input type="text" class="w400" v-model="addAccountMsg.BankName" placeholder="例如:中国建行"></el-input>
            </el-form-item>
            <el-form-item v-if='addAccountMsg.AccountClassify!=3' :label="nameA" prop="OpenBankName">
              <el-input type="text" class="w400" v-model="addAccountMsg.OpenBankName" placeholder="例如:锦江支行"></el-input>
            </el-form-item>
            <el-form-item v-if='addAccountMsg.AccountClassify!=3' :label="nameB" prop="AccountHolder">
              <el-input type="text" class="w400" v-model="addAccountMsg.AccountHolder"></el-input>
            </el-form-item>
            <el-form-item :label="nameC" prop="CardNum">
              <el-input type="text" class="w400" v-model="addAccountMsg.CardNum"
                @keyup.native="checkInteger(addAccountMsg,'CardNum'),resetAccountNum(addAccountMsg.CardNum)"></el-input>
            </el-form-item>
            <el-form-item :label="nameD" prop="AccountAlias">
              <el-input type="text" class="w400" v-model="addAccountMsg.AccountAlias"></el-input>
            </el-form-item>
          </el-form>
          <button class="normalBtn" style="margin:30px 0 0 100px;" @click="submitForm3('addAccountMsg')">确定</button>
        </div>
      </div>
      <!-- 页面切换方式 -->
      <div class="Per_Shouji" v-if="ckedNum==4">
        <div class="Shouji_Top">页面切换方式</div>
        <div class="Shouji_Conteng">
          <div class="phone_bangding" style="margin-left:25px;">
            当前切换方式
            <span style="font-weight:bold;" v-if="radio==1">单页面多标签模式</span>
            <span style="font-weight:bold;" v-else>多页面单标签模式</span>
          </div>
          <div class="PI_qiehuan" style="margin-bottom:50px;">
            <el-radio v-model="radio" :label="1">单页面多标签模式<span class="PI_comMoshi">(此模式适合电脑性能高的用户)</span>
              <div class="PI_QiehuanImg" :class="{'ckedQieImg':radio==1}" @click="radio=1">
                <img src='../assets/img/chosen_one.png' />
              </div>
            </el-radio>
          </div>
          <div class="PI_qiehuan">
            <el-radio v-model="radio" :label="2">多页面单标签模式<span class="PI_comMoshi">(此模式适合电脑性能较低的用户)</span>
              <div class="PI_QiehuanImg" :class="{'ckedQieImg':radio==2}" @click="radio=2">
                <img src='../assets/img/chosen_two.png' />
              </div>
            </el-radio>
          </div>
          <button class="normalBtn" style="margin:30px 0 20px 20px;" @click="SureType">确定</button>
        </div>
      </div>
      <!-- 绑定商城微信和商城 -->
      <div class="Per_Shouji" v-if="ckedNum==5">
        <div class="Shouji_Top">赞羊商城微信绑定</div>
        <div class="Shouji_Conteng">
          <el-form label-position="right" label-width="100px">
            <el-form-item label="已绑定" style="margin-bottom:30px;" v-if="dataList.WeChatName&&dataList.WeChatName!=''">
              <el-input :disabled="true" class="w210" v-model="dataList.WeChatName"></el-input>
            </el-form-item>
            <el-form-item :label="dataList.WeChatName&&dataList.WeChatName!=''?'重新绑定微信':'绑定微信'" style="margin-bottom:30px;" size="small">
              <el-select v-model="mallUserId" class="w210" filterable remote reserve-keyword placeholder="请输入微信昵称"
                :remote-method="getWechatData" @change="weChatChange">
                <el-option v-for="wItem in weChatData" :key="wItem.Id" :label="wItem.Name" :value="wItem.Id">
                  <span style="float: left">{{ wItem.Name }}
                    <template v-if="wItem.ShopId>0">
                      <span style="color:red;">【{{ wItem.ShopName }}】</span>
                    </template>
                  </span>
                </el-option>
              </el-select>
            </el-form-item>
          </el-form>
          <button class="normalBtn" style="margin:30px 0 0 100px;" @click="saveWechat()">确定</button>
        </div>
      </div>
    </div>
    <div id="demo">
      <div class="container" v-show="panel">
        <div style="width:400px;height:400px;margin:5% 0 0 36%;position:relative;background-color:#fff;">
          <img id="image" :src="url" alt="Picture">
          <button type="button" class="cancel_Btnn" id="button" style="bottom:-50px;right:105px;"
            @click="CancelUpImg">取消</button>
          <button type="button" id="button" style="bottom:-50px;" @click="crop">确定</button>
        </div>
      </div>
      <div style="padding:20px;display:none;">
        <div class="show">
          <div class="picture" :style="'backgroundImage:url('+headerImage+')'">
          </div>
        </div>
        <div style="margin-top:20px;">
        </div>
      </div>
    </div>
  </div>
</template>
<script>
  import Cropper from "cropperjs"
  export default {
    data() {
      return {
        defaultHeadImg: 'this.src="' + require("../assets/img/default_head_img.jpg") + '"',
        //页面切换方式
        openMode: 0,
        u: {},
        outerVisible: false,
        nameA: '账户名称',
        nameB: '开户人',
        nameC: '卡号',
        nameD: '账户别名',
        //切换选项卡
        ckedNum: 1,
        showCode: true,
        count: "",
        //验证码参数
        phoneMsg: {
          LoginMobile: '',
          code: ''
        },
        //修改密码
        passWordMsg: {
          OldPwd: '',
          Pwd: '',
          surePassword: ''
        },
        sureOldPwd: true,
        visible: true,
        SureVisible: true,
        //切换方式
        radio: '1',
        msg: {},
        rules: {
          LoginMobile: [{
            required: true,
            message: '请输入新手机号',
            trigger: 'blur'
          }],
          code: [{
            required: true,
            message: '请输入验证码',
            trigger: 'blur'
          }]
        },
        rules2: {
          OldPwd: [{
            required: true,
            message: '请输入旧密码',
            trigger: 'blur'
          }],
          Pwd: [{
            required: true,
            message: '请输入新密码',
            trigger: 'blur'
          }],
          surePassword: [{
            required: true,
            message: '请输入确认密码',
            trigger: 'blur'
          }]
        },
        rules3: {
          BankName: [{
            required: true,
            message: '请填写银行',
            trigger: 'blur'
          }],
          AccountHolder: [{
            required: true,
            message: '请填写开户人',
            trigger: 'blur'
          }],
          OpenBankName: [{
            required: true,
            message: '请填写账户名称',
            trigger: 'blur'
          }],
          CardNum: [{
            required: true,
            message: '请填写卡号',
            trigger: 'blur'
          }],
          AccountAlias: [{
            required: true,
            message: '请填写账户别名',
            trigger: 'blur'
          }],
        },
        //获取银行账户参数
        AccountMsg: {
          BranchId: '-1',
          EmpId: '-1',
          BankId: '',
          AccountHolder: '',
          AccountAlias: '',
          pageIndex: 1,
          pageSize: 15,
          Type: 9,
        },
        AccDataList: {},
        //银行所有账户
        AcountData: [],
        AccCount: 0,
        //添加银行账户参数
        addAccountMsg: {
          Id: '0',
          ObjID: '-1',
          BankId: '-1',
          OpenBankName: '',
          BankName: '',
          AccountHolder: '',
          CardNum: '',
          AccountAlias: '',
          AccountType: '1',
          AccountClassify: '2',
          Type: '9'
        },
        dataList: {},
        headerImage: '',
        picValue: '',
        cropper: '',
        croppable: false,
        panel: false,
        url: '',
        //暂时用户Id
        mallUserId: "",
        //赞羊商城对象
        weChatMsg: {
          MallUserId: 0, //赞羊商城用户Id
          MallSmallShopsId: 0, //赞羊用户商城Id
          WeChatName:"",//微信昵称
        },
        weChatData: [],
      };
    },
    methods: {
      //绑定手机
      submitForm1(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            this.doBind();
          }
        });
      },
      //修改密码
      submitForm2(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            this.changePwd();
          }
        });
      },
      //新增银行账户
      submitForm3(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            this.addAccountNum();
          }
        });
      },
      //新增银行账户
      addAccountNum() {
        this.addAccountMsg.ObjID = this.dataList.EmployeeId;
        if (this.addAccountMsg.AccountClassify != '3') {
          if (this.addAccountMsg.OpenBankName == '') {
            this.Error('请填写' + this.nameA)
            return;
          }
          if (this.addAccountMsg.AccountHolder == '') {
            this.Error('请填写' + this.nameB)
            return;
          }
        }
        if (this.addAccountMsg.CardNum == '') {
          this.Error('请填写' + this.nameC)
          return;
        }
        if (this.addAccountMsg.AccountAlias == '') {
          this.Error('请填写' + this.nameD)
          return;
        }
        this.addAccountMsg.CardNum = this.addAccountMsg.CardNum.replace(/\s+/g, "");
        this.apipost("admin_post_SetEmpBankAccount", this.addAccountMsg, res => {
          if (res.data.resultCode == 1) {
            this.Success(res.data.message)
            this.getList()
            this.resetAccountMsg();
          } else {
            this.Error(res.data.message)
          }
        }, err => {})
      },
      //重置信息
      resetAccountMsg() {
        this.addAccountMsg.OpenBankName = '';
        this.addAccountMsg.BankName = '';
        this.addAccountMsg.AccountHolder = '';
        this.addAccountMsg.CardNum = '';
        this.addAccountMsg.AccountAlias = '';
      },
      //修改密码方法
      changePwd() {
        if (this.passWordMsg.Pwd != this.passWordMsg.surePassword) {
          this.Error('新密码和确认密码不一致');
          return;
        }
        this.apipost('admin_get_MySelfResetPwd', this.passWordMsg, res => {
          if (res.data.resultCode == 1) {
            this.Success(res.data.message);
            this.passWordMsg.OldPwd = '';
            this.passWordMsg.Pwd = '';
            this.passWordMsg.surePassword = '';
            // //修改成功后退出登录
            setTimeout(() => {
              this.$store.dispatch("logout")
              localStorage.removeItem("userInfo");
              localStorage.removeItem("previousPathInfo");
              location.href = '/'
            }, 1000);
          } else {
            this.Error(res.data.message);
          }
        }, err => {})
      },
      //获取银行账户信息
      getAccount() {
        this.AccountMsg.EmpId = this.dataList.EmployeeId;
        this.apipost("admin_get_GetEmpBankAccountPageList", this.AccountMsg, res => {
          if (res.data.resultCode == 1) {
            this.AcountData = res.data.data.pageData;
            this.AccDataList = res.data.data.pageData[0];
            this.AccCount = res.data.data.count;
          } else {
            this.Error(res.data.message);
          }
        }, err => {})
      },
      //获取验证码
      getCode() {
        var phoneReg = /(^1[3|4|5|6|7|8|9]\d{9}$)|(^09\d{8}$)/;
        //电话
        var phone = this.phoneMsg.LoginMobile.replace(/^\s+|\s+$/gm, "");
        if (!phoneReg.test(phone)) {
          this.nameErrorMsg = "请输入有效的手机号码!";
          return false;
        }
        const TIME_COUNT = 60;
        this.phoneMsg.code = "";
        if (!this.timer) {
          this.count = TIME_COUNT;
          this.showCode = false;
          this.timer = setInterval(() => {
            if (this.count > 0 && this.count <= TIME_COUNT) {
              this.count--;
            } else {
              this.showCode = true;
              clearInterval(this.timer);
              this.timer = null;
            }
          }, 1000);
        }
        let msg = {
          mobileNumber: this.phoneMsg.LoginMobile,
          mobileCodeType: 1
        };
        this.apipost("user_get_moblieNumber_code", msg, res => {
          if (res.data.resultCode == 1) {} else {
            this.$notify.error({
              title: "提示",
              customClass: "msgTips",
              message: res.data.message,
              showClose: false,
              duration: 3000
            });
          }
        });
      },
      //绑定手机号
      doBind() {
        if (this.phoneMsg.LoginMobile == "") {
          this.Error('请输入手机号');
          return;
        } else if (this.phoneMsg.code == "") {
          this.Error('请输入验证码');
          return;
        }
        this.apipost("admin_get_MySelfResetLoginMobile", this.phoneMsg, res => {
          if (res.data.resultCode == 1) {
            this.Success(res.data.message);
            this.getList();
            this.phoneMsg.LoginMobile = '';
            this.phoneMsg.code = '';
          } else {
            this.Error(res.data.message);
          }
        });
      },
      //重置手机
      resetPhoneNum() {
        this.phoneMsg.LoginMobile = '';
        this.phoneMsg.code = '';
      },
      changePassOld(value) {
        this.sureOldPwd = !(value === 'show');
      },
      changePass(value) {
        this.visible = !(value === 'show');
      }, //判断渲染,true:暗文显示,false:明文显示
      changePass2(value) {
        this.SureVisible = !(value === 'show');
      },
      //获取用户信息
      getList() {
        let userInfo = this.getLocalStorage();
        let msg = {
          Id: userInfo.EmployeeId
        }
        this.apipost('admin_get_EmployeeGet', msg, res => {
          if (res.data.resultCode == 1) {
            this.dataList = res.data.data;
            this.getAccount();
          } else {
            this.Error(res.data.message);
          }
        }, err => {})
      },
      //过滤电话号码
      getBangding(val) {
        if (val) {
          return val.substr(0, 3) + "****" + val.substr(-4, 4)
        }
      },
      //过滤银行卡号
      getBankNum(bankNumber) {
        if (bankNumber) {
          return bankNumber.substr(0, 4) + "********" + bankNumber.substr(-4);
        }
      },
      //冻结启用银行账户
      deleteData(id) {
        this.$confirm('确认启用/冻结该账户信息?', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          this.apipost('admin_post_DelEmpBankAccount', {
            BAId: id
          }, res => {
            if (res.data.resultCode == 1) {
              this.Success('保存成功!')
              this.getList();
            }
          }, err => {})
        }).catch(() => {
          this.$message.info('已取消!')
        });
      },
      changeTitle() {
        if (this.addAccountMsg.AccountClassify == 1) {
          this.nameA = '平台名称'
          this.nameB = '用户名称'
          this.nameC = '平台账户'
          this.nameD = '账户别名'
          this.addAccountMsg.AccountType = '1'
        } else if (this.addAccountMsg.AccountClassify == 2) {
          this.nameA = '账户名称'
          this.nameB = '开户人'
          this.nameC = '卡号'
          this.nameD = '账户别名'
        } else {
          this.nameA = '平台名称'
          this.nameB = '用户名称'
          this.nameC = '平台账户'
          this.nameD = '账户别名'
        }
      },
      //确认方式
      SureType() {
        localStorage.openMode = this.radio;
        window.location.reload()
      },
      //重置卡号
      resetAccountNum(val) {
        this.addAccountMsg.CardNum = this.addAccountMsg.CardNum.replace(/\s/g, '').replace(/(\d{4})(?=\d)/g, "$1 ");
      },
      getObjectURL(file) {
        var url = null;
        if (window.createObjectURL != undefined) { // basic
          url = window.createObjectURL(file);
        } else if (window.URL != undefined) { // mozilla(firefox)
          url = window.URL.createObjectURL(file);
        } else if (window.webkitURL != undefined) { // webkit or chrome
          url = window.webkitURL.createObjectURL(file);
        }
        return url;
      },
      change(e) {
        let files = e.target.files || e.dataTransfer.files;
        if (!files.length) return;
        this.panel = true;
        this.outerVisible = true;
        this.picValue = files[0];
        this.url = this.getObjectURL(this.picValue);
        //每次替换图片要重新得到新的url
        if (this.cropper) {
          this.cropper.replace(this.url);
        }
        this.panel = true;
      },
      crop() {
        this.panel = false;
        var croppedCanvas;
        var roundedCanvas;
        if (!this.croppable) {
          return;
        }
        // Crop
        croppedCanvas = this.cropper.getCroppedCanvas();
        // Round
        roundedCanvas = this.getRoundedCanvas(croppedCanvas);
        this.headerImage = roundedCanvas.toDataURL();
        let that = this;
        let blob = that.base64ToBlob(this.headerImage);
        let newArr = [];
        newArr.push(blob);
        var fileName = `${that.uuid(10,10)}.png`;
        var path = `/Upload/Temporary`;
        that.uploadSelfBlob(path, newArr, x => {
          let allPath = that.domainManager().ViittoFileUrl + x.data.FilePath;
          this.postImg(allPath)
        })
      },
      base64ToBlob(code) {
        let parts = code.split(';base64,');
        let contentType = parts[0].split(':')[1];
        let raw = window.atob(parts[1]);
        let rawLength = raw.length;
        let uInt8Array = new Uint8Array(rawLength);
        for (let i = 0; i < rawLength; ++i) {
          uInt8Array[i] = raw.charCodeAt(i);
        }
        return new Blob([uInt8Array], {
          type: contentType
        });
      },
      uuid(len, radix) {
        let chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
        let uuid = [],
          i;
        radix = radix || chars.length;
        if (len) {
          for (i = 0; i < len; i++) uuid[i] = chars[0 | Math.random() * radix];
        } else {
          let r;
          uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
          uuid[14] = '4';
          for (i = 0; i < 36; i++) {
            if (!uuid[i]) {
              r = 0 | Math.random() * 16;
              uuid[i] = chars[(i === 19) ? (r & 0x3) | 0x8 : r];
            }
          }
        }
        return uuid.join('');
      },
      getRoundedCanvas(sourceCanvas) {
        var canvas = document.createElement('canvas');
        var context = canvas.getContext('2d');
        var width = sourceCanvas.width;
        var height = sourceCanvas.height;
        canvas.width = width;
        canvas.height = height;
        context.imageSmoothingEnabled = true;
        context.drawImage(sourceCanvas, 0, 0, width, height);
        context.globalCompositeOperation = 'destination-in';
        context.beginPath();
        context.arc(width / 2, height / 2, Math.min(width, height) / 2, 0, 2 * Math.PI, true);
        context.fill();
        return canvas;
      },
      postImg(path) {
        //这边写图片的上传
        let msg = {
          icon: path
        }
        this.apipost('app_get_employee_modify_icon', msg, res => {
          if (res.data.resultCode == 1) {
            this.Success(res.data.message);
            this.getList();
          } else {
            this.Error(res.data.message);
          }
        }, err => {})

      },
      //取消上传
      CancelUpImg() {
        this.panel = false;
      },
      //获取微信用户列表
      getWechatData(keyWords) {
        this.weChatData = [];
        var qMsg = {
          Name: keyWords
        };
        this.mallapipost(
          "/api/User/GetMemberUserListExt",
          qMsg,
          res => {
            if (res.data.resultCode == 1) {
              this.weChatData = res.data.data;
            }
          });
      },
      //选择切换
      weChatChange() {
        let obj = this.weChatData.find(item => item.Id == this.mallUserId);
        if (obj) {
          this.weChatMsg.MallUserId = obj.Id;
          this.weChatMsg.MallSmallShopsId = obj.ShopId;
          this.weChatMsg.WeChatName=obj.Name;
        }
      },
      //保存微信
      saveWechat() {
        this.apipost("admin_post_BindWeChat", this.weChatMsg, res => {
          if (res.data.resultCode == 1) {
            var oldUser = this.getLocalStorage();
            oldUser.MallUserId = this.weChatMsg.MallUserId;
            oldUser.MallSmallShopsId = this.weChatMsg.MallSmallShopsId;
            oldUser.WeChatName = this.weChatMsg.WeChatName;
            localStorage.userInfo = JSON.stringify(oldUser);
            this.Success(res.data.message);
            this.getList();
          } else {
            this.Error(res.data.message)
          }
        }, err => {})
      }
    },
    mounted() {
      this.u = this.getLocalStorage();
      this.getList();
      this.openMode = localStorage.openMode;
      this.radio = localStorage.openMode;
      //初始化这个裁剪框
      var self = this;
      var image = document.getElementById('image');
      this.cropper = new Cropper(image, {
        aspectRatio: 1,
        viewMode: 1,
        background: false,
        zoomable: false,
        ready: function () {
          self.croppable = true;
        }
      });
    }
  };

</script>