<template>
  
  <view class="page__view">

		<navbar title="检测预约" leftClick @leftClick="$utils.navigateBack" color="#191919" bgColor="#FFFFFF" />

    <view class="main">
      <view class="tabs">
        <uv-tabs 
          :list="tabs" 
          :scrollable="false" 
          lineColor="#7451DE"
          lineWidth="48rpx"
          lineHeight="4rpx"
          :activeStyle="{
            'font-family': 'PingFang SC',
            'font-weight': 500,
            'font-size': '32rpx',
            'line-height': 1.4,
            'color': '#7451DE',
          }" 
          :inactiveStyle="{
            'font-family': 'PingFang SC',
            'font-weight': 400,
            'font-size': '32rpx',
            'line-height': 1.4,
            'color': '#181818',
          }" 
          @click="clickTabs"
        ></uv-tabs>
      </view>

      <view class="list">
        <view class="list-item" v-for="item in list" :key="item.id">
          <checkupCard :data="item" @sendBack="openTrackingNoPopup(item.id)"></checkupCard>
        </view>
      </view>
    </view>

    <checkupTrackingNoPopup ref="checkupTrackingNoPopup" @submitted="getData"></checkupTrackingNoPopup>

  </view>
</template>

<script>
	import mixinsList from '@/mixins/list.js'

  import checkupCard from './checkupCard.vue'
  import checkupTrackingNoPopup from '@/pages_order/checkup/checkupTrackingNoPopup.vue'

  export default {
		mixins: [mixinsList],
    components: {
      checkupCard,
      checkupTrackingNoPopup,
    },
    data() {
      return {
        tabs: [
          { name: '全部' },
          { name: '自采' },
          { name: '上门' },
          { name: '到店' },
          { name: '已取消' },
        ],
				mixinsListApi: '',
      }
    },
    methods: {
			//点击tab栏
			clickTabs({ index }) {
				if (index == 0) {
					delete this.queryParams.status
				} else {
					this.queryParams.status = index - 1
				}
				this.getData()
			},
      // todo: delete
      getData() {
        
        this.list = [
          {
            id: '001',
            url: '',
            title: '月度装定制营养包',
            userName: '周小艺',
            phone: '15558661691',
            amount: 688,
            appointmentTime: '2025-04-28 08:14',
            type: 3,
            typeDesc: '到店检测',
            status: 5,
          },
          {
            id: '002',
            url: '',
            title: '青少年体检套餐',
            userName: '周小艺',
            phone: '15558661691',
            amount: 688,
            appointmentTime: '2025-04-28 08:00～09:00',
            type: 3,
            typeDesc: '到店检测',
            status: 3,
          },
          {
            id: '003',
            url: '',
            title: '孕产妇体检套餐',
            userName: '周小艺',
            phone: '15558661691',
            amount: 688,
            createTime: '2025-04-28 08:14',
            type: 1,
            status: 0,
          },
          {
            id: '004',
            url: '',
            title: '青少年体检套餐',
            userName: '周小艺',
            phone: '15558661691',
            amount: 688,
            appointmentTime: null,
            type: 1,
            typeDesc: '自采检测',
            status: 1,
          },
          {
            id: '005',
            url: '',
            title: '青少年体检套餐',
            userName: '周小艺',
            phone: '15558661691',
            amount: 688,
            appointmentTime: '2025-04-28 08:00～09:00',
            type: 2,
            typeDesc: '上门检测',
            status: 2,
          },
        ]
        this.total = this.list.length
      },
      openTrackingNoPopup(id) {
        this.$refs.checkupTrackingNoPopup.open(id)
      },
    },
  }
</script>

<style scoped lang="scss">

  .page__view {
    width: 100vw;
    min-height: 100vh;
    background-color: $uni-bg-color;
    position: relative;
    
    /deep/ .nav-bar__view {
      position: fixed;
      top: 0;
      left: 0;
    }
    
  }

  .main {
    width: 100vw;
    padding: calc(var(--status-bar-height) + 244rpx) 32rpx 40rpx 32rpx;
    box-sizing: border-box;

    .tabs {
      position: fixed;
      top: calc(var(--status-bar-height) + 120rpx);
      left: 0;
      width: 100%;
      height: 84rpx;
      background: #FFFFFF;

      /deep/ .uv-tabs__wrapper__nav__line {
        border-radius: 2rpx;
        bottom: 0;
      }
    }
	}

  .list {
    &-item {
      & + & {
        margin-top: 40rpx;
      }
    }
  }

</style>