<template>
  <div class="home">
    <div class="infomation">
      <div class="top">
        <div>
          <img class="head" :src="headImgUrl ? headImgUrl : defaultHead" alt="" />
          <div class="right">
            <!-- <p class="name">{{nicknameUser}}</p> -->
            <div class="name">
              <span>{{ nicknameUser }}</span>
              <div class="school" v-show="schoolNamesChoose" @click="changeSchool">
                {{ schoolNamesChoose.schoolName }}<img src="@/assets/Travel/change.png" />
              </div>
            </div>
            <p class="phone">{{ phoneDesensitization(userInfo.phone, '*') }}</p>
          </div>
        </div>
        <HomeScan v-if="!isWechat"></HomeScan>
      </div>
    </div>
    <HomeOrder></HomeOrder>
    <div class="function">
      <!-- <div class="item" @click="handleYanxue">
        <div class="left">
          <van-icon class="icon" name="discount" />
          <span>研学</span>
        </div>
        <van-icon name="arrow" />
      </div>
      <div class="item" @click="handleStars">
        <div class="left">
          <van-icon class="icon" name="star-o" />
          <span>五星少年</span>
        </div>
        <van-icon name="arrow" />
      </div> -->
      <div class="item" @click="handleClearCache">
        <div class="left">
          <van-icon class="icon" name="user-circle-o" />
          <span>清除缓存</span>
        </div>
        <van-icon name="arrow" />
      </div>
      <div class="item" @click="handelElder">
        <div class="left">
          <van-icon class="icon" name="friends-o" />
          <span>长辈版</span>
        </div>
        <p>
          {{ isElder ? '已开启' : '未开启' }}
          <van-icon name="arrow" />
        </p>
      </div>
    </div>
    <HomeChildList v-if="showChildList"></HomeChildList>

    <!-- <div class="cardPic" v-show='isShow'>
      <div class="boxPic"  @click="isShow = false">
          <img style="width:100%;height:100%" src="../assets/coupon.png" />
      </div>
    </div> -->
    <tabbar4 active="center"></tabbar4>
  </div>
</template>

<script>
import HomeChildList from '@/views/Home/component/HomeChildList'
import HomeOrder from '@/views/Home/component/HomeOrder'
import HomeScan from '@/views/Home/component/HomeScan'
import Tabbar4 from '@/component/Tabbar4'
export default {
  data() {
    return {
      centerNo: '',
      userInfo: {
        openId: '',
        headImg: '',
        nickName: '',
        phone: '',
        roleType: '',
        time: '',
        year: '',
        studentName: '',
        school: '',
      },
      nicknameUser: '',
      headImgUrl: '',
      defaultHead: require('@/assets/head.png'),
      isShow: false,
      isElder: false,
      showChildList: false,
      showSchool: false,
      schoolNamesChoose: '',
      isWechat: false,
    }
  },

  mounted() {
    this.$zwlogPvGlobal({ loadTime: new Date() })
    this.$nextTick(() => {
      this.$zwlogPvGlobal({ responseTime: new Date() })
    })
    const isElder = localStorage.getItem('isElder')
    if (isElder) {
      this.isElder = true
    }

    let schoolNamesChoose = localStorage.getItem('schoolNamesChoose')
    if (schoolNamesChoose) {
      this.schoolNamesChoose = JSON.parse(schoolNamesChoose)
    }
    let isWechat = localStorage.getItem('isWechat')
    if (isWechat == 1) {
      this.isWechat = true
    }
    this.centerNo = localStorage.getItem('centerNo')
    this.getUserInfo()
    this.againRZ()
  },
  computed: {
    schoolNames() {
      return this.$store.state.schoolName
    },
  },
  methods: {
    handleYanxue() {
      this.$router.push({ name: 'YanxuePage' })
    },
    // 我的订单
    handleOrder() {
      this.$router.push({ name: 'ServiceOrderXST' })
    },
    // 集团认证
    handleGroup() {
      this.$toast('暂未开放，敬请期待！')
    },
    // 个人信息
    handleMyInfo() {
      this.$router.push({ name: 'HomeUserInfo' })
    },
    // 合伙人中心
    handlePartner() {
      this.$toast('暂未开放，敬请期待！')
      //   this.$router.push({ name: 'Partner' })
    },
    // 点击长辈版
    handelElder() {
      if (this.isElder) {
        this.$dialog
          .confirm({
            title: '长辈版',
            message: '超大字号，看的更清楚，长辈版，专为长辈设计',
            confirmButtonColor: '#ee0a24',
            confirmButtonText: '关闭长辈版模式',
          })
          .then(() => {
            // on confirm
            this.isElder = false
            localStorage.removeItem('isElder')
            this.$emit('setElder', false)
          })
          .catch(() => {
            // on cancel
          })
      } else {
        this.$dialog
          .confirm({
            title: '长辈版',
            message: '超大字号，看的更清楚，长辈版，专为长辈设计',
            confirmButtonColor: '#3385FF',
            confirmButtonText: '开启长辈版模式',
          })
          .then(() => {
            // on confirm
            this.isElder = true
            localStorage.setItem('isElder', 1)
            this.$emit('setElder', true)
          })
          .catch(() => {
            // on cancel
          })
      }
    },
    //五星少年
    handleStars() {
      this.$router.push({ name: 'stars' })
    },
    // 清除缓存
    handleClearCache() {
      this.$toast.loading({
        message: '清除成功，正在重新登录',
        duration: 1000,
        forbidClick: true,
      })
      localStorage.removeItem('schoolNamesChoose')
      localStorage.removeItem('schoolNames')
      localStorage.removeItem('centerNo')
      setTimeout(() => {
        const sUserAgent = window.navigator.userAgent.toLowerCase()
        const dtdreamweb = sUserAgent.indexOf('dtdreamweb') > -1
        const miniprogram = sUserAgent.indexOf('miniprogram') > -1 && sUserAgent.indexOf('alipay') > -1
        if (miniprogram) {
          // alert('支付宝')
          window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=82a7a71edb794fc285895f9e33290ddc`
        } else {
          // alert('浙里办')
          window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=82a7a71edb794fc285895f9e33290ddc`
        }
      }, 1000)
    },
    // 获取用户信息
    getUserInfo() {
      // alert('getUserInfo:' + this.centerNo)
      this.yxAxios.get(`${this.proxyUrl}/user/info/getPortalUserByNum?userNum=${this.centerNo}`).then((res) => {
        console.log('getUserInfo', res)
        if (res.data.code == 200) {
          let userInfo = res.data.data.userInfo
          this.userInfo = userInfo
          localStorage.setItem('userInfo', JSON.stringify(userInfo))
          if (userInfo.schoolNames || userInfo.schoolNames == [] || userInfo.schoolNames == 'null') {
            userInfo.schoolNames = userInfo.schoolNames.filter((n) => n)
            localStorage.setItem('schoolNames', JSON.stringify(userInfo.schoolNames))
            this.$store.commit('changeSchool', userInfo.schoolNames)
            if (!localStorage.getItem('schoolNamesChoose') || localStorage.getItem('schoolNamesChoose') == 'null') {
              localStorage.setItem('schoolNamesChoose', JSON.stringify(userInfo.schoolNames[0]))
              this.schoolNamesChoose = userInfo.schoolNames[0]
            }
          } else {
            localStorage.setItem('schoolNames', [])
            this.$store.commit('changeSchool', [])
          }
        }
        this.showChildList = true
      })
    },
    formatterTime(time) {
      if (time) {
        return time.split(' ')[0]
      } else {
        return ''
      }
    },
    complete() {
      this.getUserInfo()
    },
    //切换学校
    changeSchool() {
      this.$router.push({ name: 'schoolFollow' })
    },
    //集团回调关闭页面
    closeJT() {
      this.showSchool = false
      this.getUserInfo()
    },
    //查看是否有集团认证
    getRZ() {
      // this.showSchool = true
      this.$router.push({ name: 'schoolAttestation' })
    },
    //回跳重新认证
    againRZ() {
      let backRZ = localStorage.getItem('backRZ')
      if (backRZ == 'true') {
        this.showSchool = true
        localStorage.setItem('backRZ', false)
      }
    },
    /**手机号码脱敏处理
     * @method phoneDesensitization
     * @param {String} phone 需要处理的手机号码
     * @param {String} char 脱敏替换的字符
     * @return {String} 脱敏处理后的手机号码
     */
    phoneDesensitization(phone, char) {
      return phone.replace(/(\d{3})\d*(\d{4})/, `$1${new Array(5).join(char)}$2`)
    },
  },
  components: {
    Tabbar4,
    HomeChildList,
    HomeOrder,
    HomeScan,
  },
}
</script>
<style lang="scss" scoped>
.home {
  width: 100%;
  min-height: 100%;
  background: #f8f8f8;
  padding-bottom: 196px;
  .infomation {
    width: 100%;
    height: 320px;
    background: url('~@/assets/home/bg_kq.png');
    background-size: 100%;
    background-position: center;
    .top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 40px 28px;
      > div {
        display: flex;
      }
      .head {
        width: 96px;
        height: 96px;
        border-radius: 50%;
        overflow: hidden;
      }
      .right {
        height: 96px;
        margin-left: 24px;
        color: #fff;
        .name {
          font-size: 33px;
          font-weight: bold;
          width: 100%;
          margin-bottom: 15px;
          display: flex;
          .school {
            max-width: 400px;
            border-radius: 30px;
            font-size: 26px;
            font-weight: normal;
            margin-left: 20px;
            padding: 0 20px;
            box-sizing: border-box;
            background-color: #d82b2b;
            display: flex;
            align-items: center;

            img {
              width: 30px;
              height: 30px;
              margin-left: 5px;
            }
          }
        }
        .phone {
          font-size: 26px;
        }
      }
    }
  }

  .function {
    background: #ffffff;
    border-radius: 12px;
    margin: 24px;
    .item {
      margin: 0 32px;
      height: 96px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: 34px;
      &:not(:first-of-type) {
        border-top: 1px solid #e2e2e2;
      }
      .left {
        display: flex;
        align-items: center;
        .icon {
          font-size: 40px;
          margin-right: 20px;
        }
        span {
          font-size: 30px;
        }
      }
      .pic {
        display: flex;
        align-items: center;
        margin-right: 5px;

        span {
          font-size: 27px;
          color: #333333;
        }
        img {
          width: 30px;
          height: 30px;
          margin-right: 5px;
        }
      }
    }
  }
}

.boxPic {
  width: 85vw;
  height: 115vw;
  margin: 10vh 7.5vw;
  position: absolute;
  top: 0;
  z-index: 99;
}
.cardPic {
  position: absolute;
  top: 0;
  width: 100vw;
  height: 100vh;
  background: #0000008a;
  z-index: 99;
}
</style>
<style lang="scss">
.elder {
  .home {
    .infomation .top .right {
      .name {
        font-size: 44px;
      }
      .phone {
        font-size: 44px;
      }
    }
    .function .item .left span {
      font-size: 40px;
    }
  }
}
</style>
