<template>
    <view class="mine-container" :style="'background: url('+this.imgUrl+'/index/mingbg.png) no-repeat 100% 100%;height:'+windowHeight+'px;background-position: 0 0;background-size: 100% 100%;'">
      <view style="position: fixed;right: 10px;z-index: 999999;top:30px" @click="changeLocale">
        {{ $t('login.language') }}：{{localeConfig[locale]}}<uni-icons type="gear" size="15"></uni-icons>
      </view>
    <!--顶部个人信息栏-->
    <view class="header-section">
      <view class="flex padding justify-between">
        <view class="flex align-center">
          <view v-if="!avatar" class="cu-avatar xl round bg-white">
            <view class="iconfont icon-people text-gray icon"></view>
          </view>
          <image v-if="avatar" @click="handleToAvatar" :src="avatar" class="cu-avatar xl round" mode="widthFix">
          </image>
          <view v-if="!name" @click="handleToLogin" class="login-tip">
          {{  i18('点击登录')}}
          </view>
          <view v-if="name" @click="handleToInfo" class="user-info">
            <view class="u_title" style="color: #8E8E8E">
               {{  i18('你好')}}！
            </view>
            <view class="u_title">
              {{ name }}
            </view>
          </view>
        </view>
      </view>
    </view>


      <view class="menu-list">
        <view class="list-cell list-cell-arrow" @click="handleToEditInfo">
          <view class="menu-item-box">
            <image :src="this.imgUrl+'/index/settingicon.png'" style="width: 18px;height: 18px;margin-right:5px"></image>
            <view class="menu-text"> {{  i18('账户设置')}}</view>
          </view>
        </view>
        <view class="list-cell list-cell-arrow" @click="handleAbout">
          <view class="menu-item-box">
            <image :src="this.imgUrl+'/index/chargeicon.png'" style="width: 18px;height: 18px;margin-right:5px"></image>
            <view class="menu-text">{{  i18('充电记录')}}</view>
          </view>
        </view>
        <view class="list-cell list-cell-arrow" @click="handleToSetting">
          <view class="menu-item-box">
            <image :src="this.imgUrl+'/index/planicon.png'" style="width: 18px;height: 18px;margin-right:5px"></image>
            <view class="menu-text">{{  i18('预约记录')}}</view>
          </view>
        </view>
      </view>
      <u-picker @cancel="cancelLocale" :show="showLocale" keyName="label" :columns="localeList" @confirm="changeLanguage"></u-picker>

    </view>

</template>

<script>
  import storage from '@/utils/storage'
  import i18 from '@/utils/i18.js'
  export default {
    data() {
      return {
        showLocale:false,
        locale:"",
        localeList:[[{"label":"简体中文","id":"zh-Hans"},{"label":"英文","id":"en"}]],
        localeConfig:{"zh-Hans":"简体中文","en":"英文"},
        name: this.$store.state.user.name,
        version: getApp().globalData.config.appInfo.version,
        imgUrl:getApp().globalData.config.imgUrl
      }
    },
    computed: {
      avatar() {
        return getApp().globalData.config.imgUrl+"/index/user.png"
      },
      windowHeight() {
        return uni.getSystemInfoSync().windowHeight - 50
      }
    },
    onLoad(){
      this.setLocale();
    },
    onShow(){
      uni.setNavigationBarTitle({
        title: this.$t('page.mine')
      })
    },
    methods: {
      cancelLocale(){
        this.showLocale = false;
      },
      changeLanguage(e){
        this.showLocale  =false;
        console.log(e.value[0].id)
        uni.setLocale(e.value[0].id);
      },
      changeLocale(){
        this.showLocale = true;
      },
      setLocale(){
        this.locale = uni.getLocale()
        if(this.locale == "en"){
          this.localeList = [[{"label":"Chinese","id":"zh-Hans"},{"label":"English","id":"en"}]];
          this.localeConfig={"zh-Hans":"Chinese","en":"English"};
        }else if(this.locale == "zh-Hans"){
          this.localeList = [[{"label":"简体中文","id":"zh-Hans"},{"label":"英文","id":"en"}]];
          this.localeConfig={"zh-Hans":"简体中文","en":"英文"};
        }
      },
      i18(text){
        return i18(text)
      },
      handleToEditInfo() {
        this.$tab.navigateTo('/pages/mine/pwd/index')
      },
      handleToSetting() {
        this.$tab.navigateTo('/pages/weitiandi/device/planrecord')
      },
      handleToLogin() {
        this.$tab.reLaunch('/pages/login')
      },
      handleLogout() {
        this.$modal.confirm('确定注销并退出系统吗？').then(() => {
          this.$store.dispatch('LogOut').then(() => {
            this.$tab.reLaunch('/pages/index')
          })
        })
      },
      handleAbout() {
        this.$tab.navigateTo('/pages/weitiandi/device/chargerecord')
      },
    }
  }
</script>

<style lang="scss">
  page {
    background-color: #f5f6f7;
  }

  .mine-container {
    width: 100%;
    height: 100%;


    .header-section {
      padding: 15px 15px 45px 15px;
      color: white;

      .login-tip {
        font-size: 18px;
        margin-left: 10px;
      }

      .cu-avatar {
        border: 2px solid #eaeaea;

        .icon {
          font-size: 40px;
        }
      }

      .user-info {
        margin-left: 15px;

        .u_title {
          font-size: 18px;
          line-height: 30px;
          color: #000000;
        }
      }
    }

    .content-section {
      position: relative;
      top: -50px;

      .mine-actions {
        margin: 15px 15px;
        padding: 20px 0px;
        border-radius: 8px;

        .action-item {
          .icon {
            font-size: 28px;
          }

          .text {
            display: block;
            font-size: 13px;
            margin: 8px 0px;
          }
        }
      }
    }
  }
  .menu-list{

    box-shadow: 0px 2px 24px 0px rgba(0,0,0,0.06);

    border-radius: 20px;
  }
  .list-cell{
    padding:17px 15px;
  }
  .menu-text{
    color:#555555
  }
</style>
