<template>
  <view>
    <view class="subject">
      <view style="width: 100%; background-color: #ffffff; position: relative">
        <view class="personal">
          <view class="personal_left">
            <image :src="userinfos.image" mode="" @error="imageError"></image>
          </view>
          <view class="personal_center">
            <p>{{ usernames }}</p>
            <p>{{ userinfos.email ? userinfos.email : userinfos.mobile }}</p>
          </view>
          <!-- <view class="personal_right" @click="userinfo">
						<uni-icons type="compose" style="color: #FFFFFF;margin-right: 10rpx;"></uni-icons>
						编辑
					</view> -->
        </view>
      </view>
      <view style="background-color: #ffffff; margin: 20rpx auto 0">
        <view class="AboutUs" @click="about">
          <u-icon
            name="pingtai"
            custom-prefix="custom-icon"
            class="icon_left"
          ></u-icon>
          {{ $isneutral ? '关于我们' : '关于更新' }}
          <p class="update" v-if="updateTF">NEW</p>
          <uni-icons type="arrowright" class="icon_right"></uni-icons>
        </view>
      </view>
      <view style="background-color: #ffffff">
        <view class="quit" @click="outto">
          <u-icon
            name="tuichudenglu"
            custom-prefix="custom-icon"
            class="icon_left"
          ></u-icon>
          退出登录
          <uni-icons type="arrowright" class="icon_right"></uni-icons>
        </view>
      </view>
    </view>
  </view>
</template>
<script>
export default {
  data() {
    return {
      usernames: '',
      userinfos: {},
      versions: '',
      updateTF: false,
    };
  },
  methods: {
    async getEquipList() {
      const res = await this.$myRequest({
        url: '/api/api_gateway?method=home.homes.app_version_record',
        data: {
          ret: 'first',
        },
      });
      console.log(res);
      // this.appName = res[0].app_name
      this.versions = Number(res[0].app_num.match(/\d+/g).join(''));
      var ids = Number(plus.runtime.version.match(/\d+/g).join(''));
      if (this.versions > ids) {
        this.updateTF = true;
      } else {
        this.updateTF = false;
      }
    },
    //user.login.user_login_info
    //home.homes.personal_center
    async getUserlogin() {
      const res = await this.$myRequest({
        url: '/api/api_gateway?method=user.login.user_login_info',
      });
      console.log(res,'login user');
      this.usernames = res.username;
      this.getUsermsg(this.usernames);
      uni.setStorage({
        key: 'jurisdiction',
        data: JSON.stringify(res.children),
        success: () => {},
      });
    },
    async getuserinfonew() {
      const res = await this.$myRequest({
        url: '/api/v2/theme/home/info/',
      });
      if (res.items && res.items.logo_url) {
        this.userinfos.image = res.items.logo_url;
      } else {
        this.userinfos.image = '';
      }
    },
    async getUsermsg(user) {
      const res = await this.$myRequest({
        url: '/api/api_gateway?method=home.homes.personal_center',
        data: {
          username: user,
        },
      });
      this.userinfos = res;
      this.getuserinfonew();
    }, //user.login.logout_user
    async getlogout() {
      const res = await this.$myRequest({
        url: '/api/api_gateway?method=user.login.logout_user',
      });
    },
    about() {
      uni.navigateTo({
        url: '../about/about',
      });
    },
    imageError(e) {
      if (e) {
        this.userinfos.image = '../../../static/images/my/user.png';
      }
    },
    userinfo() {
      uni.navigateTo({
        url: '../user-info/user-info?data=' + JSON.stringify(this.userinfos),
      });
    },
    outto() {
      uni.showModal({
        title: '提示',
        content: '是否退出登录',
        success: (res) => {
          if (res.confirm) {
            this.getlogout();
            uni.removeStorage({
              key: 'session_key',
            });
            uni.reLaunch({
              url: '../../login/login',
            });
          } else if (res.cancel) {
            console.log('用户点击取消');
          }
        },
      });
    },
  },
  onLoad() {
    this.getUserlogin();
    this.getEquipList();
  },
  onShow() {
    this.getUserlogin();
    this.$forceUpdate();
  },
};
</script>
<style lang="scss">
.subject {
  width: 100%;
  height: 100vh;
  background-color: #f9f9f9;
}

.personal {
  width: 90%;
  margin: 0 auto;
  display: flex;
  padding: 20rpx 0 40rpx;
  box-sizing: border-box;

  .personal_left {
    width: 18%;
    margin-right: 30rpx;

    image {
      width: 124rpx;
      height: 120rpx;
      border-radius: 60rpx;
    }
  }

  .personal_center {
    padding-top: 20rpx;

    p:nth-child(1) {
      font-size: 34rpx;
      font-weight: 700;
      margin-bottom: 10rpx;
    }

    p:nth-child(2) {
      font-size: 24rpx;
    }
  }

  .personal_right {
    width: 150rpx;
    background-color: #55c87b;
    height: 60rpx;
    text-align: center;
    border-radius: 30rpx;
    line-height: 60rpx;
    color: #ffffff;
    position: absolute;
    top: 50rpx;
    right: 30rpx;
  }
}

.AboutUs,
.quit,
.opinion {
  width: 90%;
  height: 100rpx;
  line-height: 100rpx;
  margin: 20rpx auto 0;
  position: relative;
  padding-left: 20rpx;
  font-size: 28rpx;

  .icon_left {
    margin-right: 20rpx;
    color: #55c87b !important;
    font-size: 32rpx;
  }

  .icon_right {
    position: absolute;
    top: 0;
    right: 10rpx;
    font-size: 32rpx !important;
  }

  .update {
    position: absolute;
    top: 34rpx;
    right: 40rpx;
    font-size: 16rpx !important;
    background-color: #f00;
    border-radius: 25rpx;
    height: 30rpx;
    padding: 2rpx 16rpx;
    line-height: 30rpx;
    color: #fff;
  }
}

.opinion {
  margin: 0 auto;
  border-top: 2rpx solid #eaeaea;
}
</style>
