buyCard.vue 8.79 KB
<template>
    <view>


        <uni-section title="2小时(时长券)" type="line" >
            <uni-card padding="0" spacing="0">
                <!--<template v-slot:cover>-->
                <!--<view class="custom-cover">-->
                <!--<image class="cover-image" mode="aspectFill" :src="cover">-->
                <!--</image>-->
                <!--<view class="cover-content">-->
                <!--<text class="uni-subtitle uni-white">今日新闻热点</text>-->
                <!--</view>-->
                <!--</view>-->
                <!--</template>-->
                <uni-list>
                    <uni-list-item title="适应车场"   rightText="万达商业广场"  >
                        <text></text>
                    </uni-list-item>
                    <uni-list-item title="价格:¥5/张" rightText="商户库存:0张"></uni-list-item>
                </uni-list>

            </uni-card>
        </uni-section>



        <uni-list >
            <uni-list-item  title="购买数量" >
                <template v-slot:footer>
                    <uni-number-box v-model="vModelValue" @blur="blur" @focus="focus" @change="changeValue" />
                </template>
            </uni-list-item>
            <uni-list-item  title="应付金额"  >
                <template v-slot:footer>
                    <text style="color: red">¥25.00元</text>
                </template>
            </uni-list-item>
            <uni-list-item  title="支付方式" rightText="商户余额" />
            <uni-list-item  note="请认真核对购买信息,卡券一经购买概不支持退款" >
                <template v-slot:header>
                    <text style="color: red">温馨提示</text>
                </template>
            </uni-list-item>
        </uni-list>

        <view class="uni-padding-wrap uni-common-mt">
            <button type="primary" @click="dialogToggle('warn')">立即购买</button>
        </view>

        <view>
            <!-- 提示窗示例 -->
            <uni-popup ref="alertDialog" type="dialog">
                <uni-popup-dialog :type="msgType" cancelText="取消" confirmText="确定" title="提示" content="二次确定" @confirm="dialogConfirm"
                                  @close="dialogClose"></uni-popup-dialog>
            </uni-popup>
        </view>
        <view class="example">
            <uni-forms ref="baseForm" :modelValue="baseFormData" >
                <uni-forms-item label="车牌号码" required>
                    <uni-easyinput v-model="baseFormData.name" placeholder="请输入车牌号码" />
                </uni-forms-item>
                <uni-section :title="'日期时间用法:' + datetimesingle" type="line"></uni-section>
                <view class="example-body">
                    <uni-datetime-picker type="datetime" v-model="datetimesingle" @change="changeLog" />
                </view>
            </uni-forms>
        </view>



        <!--<view class="uni-list">-->
            <!--<view class="uni-list-cell">-->
                <!--<view class="uni-list-cell-left">-->
                    <!--生效时间-->
                <!--</view>-->
                <!--<view class="uni-list-cell-db">-->
                    <!--<picker mode="date" :value="date" :start="startDate" :end="endDate" @change="bindStartDateChange">-->
                        <!--<view class="uni-input">{{benginDate}}</view>-->
                    <!--</picker>-->
                <!--</view>-->
            <!--</view>-->
        <!--</view>-->

        <!--<view class="uni-list">-->
            <!--<view class="uni-list-cell">-->
                <!--<view class="uni-list-cell-left">-->
                    <!--失效时间-->
                <!--</view>-->
                <!--<view class="uni-list-cell-db">-->
                    <!--<picker mode="date" :value="date" :start="startDate" :end="endDate" @change="bindEndDateChange">-->
                        <!--<view class="uni-input">{{overDate}}</view>-->
                    <!--</picker>-->
                <!--</view>-->
            <!--</view>-->
        <!--</view>-->

    </view>
</template>

<script>
import common from "../../common/common.js";
export default {
  data() {
    const currentDate = this.getDate({
      format: true
    })
    return {
      vModelValue: 3,
      title: 'picker',
      array: ['全部', '充值', '支付'],
      arrayWay: ['所有方式', '微信', '线下公对公'],
      index: 0,
      indexWay: 0,
      benginDate: currentDate,
      overDate: currentDate,

      iconType:'auto', // 图标样式
      datetimesingle: '',
      // 基础表单数据
      baseFormData: {
        name: '',
        datetimesingle: 1627529992399
      },
      // 校验规则
      rules: {
        name: {
          rules: [{
            required: true,
            errorMessage: '车牌号码不能为空'
          }]
        }
      },
    }
  },
  onLoad(params) {
    wx.showShareMenu({
      withShareTicket: true
    })

  },
  onShow() {
    var me = this;
    var userInfo = me.getGlobalUser("globalUser");
    if (userInfo != null) {
      me.phoneNumb = userInfo.userPhone;
    }
    var pages = getCurrentPages();
    var currPage = pages[pages.length - 1]; //当前页面
    console.log('currPage.data.selCoupon = ' + currPage.data.selCoupon);
    me.selCoupon = currPage.data.selCoupon;
    console.log(JSON.stringify(me.selCoupon));
    // me.GetbillQueryInfo(me.mycarNumber, me.myorderId, me.myparkCode, me.selCoupon.cardNo, me.selCoupon.couponType, me.selCoupon
    //   .discValue);
    // GetbillQueryInfo(carnum, orderId, parkCode, cardNo, couponType, disValue) {
  },
  computed: {
    startDate() {
      return this.getDate('start');
    },
    endDate() {
      return this.getDate('end');
    }
  },
  methods: {
    changeLog(e) {
      console.log('change事件:', e);
    },
    dialogClose() {
      console.log('点击关闭')
    },
    dialogConfirm() {
      console.log('点击确认')
      this.messageText = `点击确认了 ${this.msgType} 窗口`
      this.$refs.message.open()
    },
    dialogToggle(type) {
      this.msgType = type
      this.$refs.alertDialog.open()
    },
    changeValue(value) {
      console.log('返回数值:', value);
    },
    blur(e) {
      console.log('blur:', e);
    },
    focus(e) {
      console.log('focus:', e);
    },
    actionsClick(text){
      uni.showToast({
        title:text,
        icon:'none'
      })
    },
    bindPickerChange: function (e) {
      console.log('picker发送选择改变,携带值为', e.detail.value)
      this.index = e.detail.value
    },
    bindPickerChangeWay: function (e) {
      console.log('picker发送选择改变,携带值为', e.detail.value)
      this.indexWay = e.detail.value
    },
    bindStartDateChange: function (e) {
      this.benginDate = e.detail.value
    },
    bindEndDateChange: function (e) {
      this.overDate = e.detail.value
    },
    getDate(type) {
      const date = new Date();
      let year = date.getFullYear();
      let month = date.getMonth() + 1;
      let day = date.getDate();
      if (type === 'start') {
        year = year - 60;
      } else if (type === 'end') {
        year = year + 2;
      }
      month = month > 9 ? month : '0' + month;
      day = day > 9 ? day : '0' + day;
      return `${year}-${month}-${day}`;
    },
  }
}
</script>

<style lang="scss" scoped>
    .example {
        padding: 15px;
        background-color: #fff;
    }

    /deep/ .uni-section{
        padding-bottom: 10px;
    }
    .rechargeWrap{
        position: relative;
        .rechargeArrow{
            position: absolute;
            right: 10px;
            top: 30px;
            font-size: 20px;
            color: #999;
        }
    }
    .recordCon {
        padding-right: 35px;
        color: #999;
        display: flex;
        justify-content: space-between;
    }

    .container {
        overflow: hidden;
    }

    .custom-cover {
        flex: 1;
        flex-direction: row;
        position: relative;
    }

    .cover-content {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 40px;
        background-color: rgba($color: #000000, $alpha: 0.4);
        display: flex;
        flex-direction: row;
        align-items: center;
        padding-left: 15px;
        font-size: 14px;
        color: #fff;
    }

    .card-actions {
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        align-items: center;
        height: 45px;
        border-top: 1px #eee solid;
    }
    .card-actions-item {
        display: flex;
        flex-direction: row;
        align-items: center;
    }
    .card-actions-item-text {
        font-size: 12px;
        color: #666;
        margin-left: 5px;
    }
    .cover-image {
        flex: 1;
        height: 150px;
    }
    .no-border {
        border-width: 0;
    }
</style>