123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- <template>
- <view class="coupon-item">
- <view class="coupon-money">
- <view class="nick" v-if="!types">{{item.title}}</view>
- <view class="layof" :style="{color:theme}">¥{{item.couponPrice}}</view>
- <view v-if="item.cid" class="end_time">有效期至{{item.endTime}}</view>
- <view v-if="!item.cid && item.endTime" class="end_time">在{{item.endTime}}前有效。 {{item.isPermanent?'不限制领取':'可领1张'}},已领{{item.nowCount}}张</view>
- <view v-if="!item.cid && !item.endTime" class="end_time">在领取后{{item.couponTime}}天内有效。可领{{item.isPermanent?'不限制':'1'}}张,已领{{item.nowCount}}张</view>
- <view v-if="!types">
- <!-- <view class="tit">券号:{{item.ticket}}</view> -->
- <view class="demand">满{{item.useMinPrice}}可用。{{item.categoryTitle?'限' + item.categoryTitle + '可用': '全商品可用'}}</view>
- </view>
- </view>
- <!-- <view @click="share" v-if="item.couponId" class="get-btn" :style="{color:color, borderColor:color, background:solid}">分享</view> -->
- <view @click="useMethod" v-if="item.cid" class="get-btn" :style="{color:color, borderColor:color, background:solid}">使用</view>
- <view @click="obtain" v-if="!item.cid && !item.isPermanent" class="get-btn" :style="{color:color, borderColor:color, background:solid}">{{ item.nowCount < 1 ? '立即领取' : '已领取' }}</view>
- <view @click="obtain" v-if="!item.cid && item.isPermanent" class="get-btn" :style="{color:color, borderColor:color, background:solid}">立即领取</view>
- </view>
- </template>
- <script>
- export default {
- components: {
- },
- data() {
- return {
- }
- },
- props: {
- item: {
- type: Object
- },
- index: {
- type: Number
- },
- types: {
- type: String,
- default: ''
- },
- theme: {
- type: String,
- default: '#ff9000'
- },
- solid: {
- type: String,
- default: '#ffffff'
- },
- color: {
- type: String,
- default: '#ff9000'
- },
- },
- methods: {
- obtain() {
- this.$emit('obtainCoupon', this.item, this.index)
- },
- share() {
- this.$emit('shareCoupon', this.item, this.index)
- },
- useMethod() {
- this.$emit('useCoupon', this.item, this.index)
- }
- }
- }
- </script>
- <style lang='scss'>
- .coupon-item {
- width: 100%;
- height: auto;
- display: table;
- border-radius: 10upx;
- padding: 0 20upx;
- margin-top: 22upx;
- border: 1px solid #eeeeee;
- position: relative;
- .coupon-money {
- width: 465upx;
- height: auto;
- display: table;
- float: left;
- padding: 26upx 0;
- border-style: none dotted none none;
- border-color: #eeeeee;
- .nick {
- width: 100%;
- height: 50upx;
- line-height: 30upx;
- font-size: $font-sm;
- color: #999999;
- }
- .tit {
- width: 100%;
- height: 50upx;
- line-height: 50upx;
- font-size: $font-sm;
- color: #999999;
- }
- .demand {
- width: 100%;
- height: 30upx;
- line-height: 30upx;
- font-size: $font-sm;
- color: #999999;
- }
- .layof {
- width: 100%;
- height: 48upx;
- line-height: 30upx;
- font-size: 44upx;
- color: #ff9000;
- font-weight: bold;
- }
- .end_time {
- width: 100%;
- line-height: 30upx;
- font-size: $font-sm;
- color: #999999;
- }
- }
- .get-btn {
- width: 146upx;
- height: 52upx;
- line-height: 50upx;
- position: absolute;
- top: 50%;
- right: 26upx;
- margin-top: -26upx;
- text-align: center;
- border-radius: 60upx;
- color: #ff9000;
- border: 1px solid #ff9000;
- font-size: $font-sm;
- float: right;
- }
- }
- .coupon-item:after {
- width: 40upx;
- height: 20upx;
- position: absolute;
- left: 460upx;
- top: -1px;
- border-radius: 0 0 40upx 40upx;
- content: "";
- display: block;
- background: #FFF;
- border: 1px solid #eeeeee;
- border-top: 0px;
- }
- .coupon-item:before {
- width: 40upx;
- height: 20upx;
- position: absolute;
- left: 460upx;
- bottom: -1px;
- border-radius: 40upx 40upx 0 0;
- content: "";
- display: block;
- background: #FFF;
- border: 1px solid #eeeeee;
- border-bottom: 0px;
- }
- </style>
|