<template>
  <view class="page">

		<navbar title="代金券" leftClick @leftClick="$utils.navigateBack" color="#fff" />

    <view class="page-content">
      <!-- 代金券详情 -->
      <view class="coupon">
        <voucherCard :data="voucherDetail" :readonly="true"></voucherCard>
      </view>

      <view class="card info"> 
        <view class="info-header">代金券核销</view>
        <view class="flex flex-column info-content">
					<view class="info-qr">
						<uv-qrcode ref="qrcode" size="279rpx" :value="`${voucherDetail.id},1`"></uv-qrcode>
					</view>
          <view class="info-desc">{{ `有效时间：${validRange}` }}</view>
        </view>
      </view>
    </view>
		
  </view>
</template>

<script>
  import voucherCard from '../components/voucher/voucherCard.vue'

  export default {
    components: {
      voucherCard,
    },
		data() {
			return {
        id: null,
        voucherDetail: {},
      }
    },
    computed: {
      validRange() {
        const { createTime, validDate } = this.voucherDetail || {}

        let startTime = createTime ? this.$dayjs(createTime).format('YYYY.MM.DD') : '-'
        let endTime = validDate ? this.$dayjs(validDate).format('YYYY.MM.DD') : '-'

        return `${startTime}至${endTime}`
      },
    },
    onLoad(option) {
      const { id } = option

      this.id = id

      this.fetchVoucherInfo()
    },
    methods: {
      async fetchVoucherInfo() {
        try {
          const res = await this.$fetch('queryVouchersById', { userVouchersId: this.id })
          res.vouchersId_dictText = res.title
          this.voucherDetail =res
        } catch (err) {

        }
      },
    },
  }
</script>

<style scoped lang="scss">
  $bar-height: 132rpx;

	.page {
		background-color: #F5F5F5;

		/deep/ .nav-bar__view {
			background-image: linear-gradient(#84A73F, #D8FF8F);
		}

    &-header {
      color: #000000;
      font-size: 28rpx;
      margin-top: 24rpx;
    }

    &-content {
      padding: 33rpx 13rpx;
    }
  }

  .coupon {
    padding: 0 13rpx;
  }

  .info {
    margin-top: 26rpx;
    padding: 25rpx 41rpx 108rpx 41rpx;

    &-header {
      color: #000000;
      padding: 0 0 16rpx 7rpx;
      border-bottom: 1rpx dashed #C7C7C7;
    }

    &-qr {
      width: 279rpx;
      height: auto;
      margin-top: 57rpx;
    }

    &-desc {
      color: #999999;
      font-size: 22rpx;
      margin-top: 45rpx;
    }
  }

</style>