Commit 258829e6 authored by Mac's avatar Mac

修改样式

parent 7661d345
<template> <template>
<view class="myVipList" :style="{ height: contentHeight }">
<u-empty v-if="g.length == 0" text="暂无相关会员卡" mode="coupon"></u-empty>
<view
v-if="g.length > 0"
style="
height: calc(100vh );
width: calc(100vw);
overflow: hidden;
padding-bottom: 10px;
"
>
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
:enable-flex="true"
@scrolltolower="lower"
:style="{ height: '100%' }"
>
<view class="details" v-for="(x, i) in g" :key="i" @click="gocoupon(x)">
<view class="d-t-box">
<image mode="aspectFill" :src="x.CardBagIco" style="width: 100%;height: 100%;border-radius: 6px;"></image>
<view class="bj"></view>
<view class="btext">
<text>{{x.Name}}</text>
</view>
<view class="bj2" v-if="x.IsOver==1"></view>
<image mode="aspectFill" v-if="x.IsOver==1" class="imgs" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/studycardgq.png" ></image>
</view>
</view>
<u-loadmore
:status="status"
:load-text="loadText"
:font-size="24"
:margin-top="20"
:margin-bottom="20"
bg-color="#FFF"
/>
</scroll-view>
</view>
<!-- 加载中 -->
<view class="loading" v-if="loading">
<u-loading mode="flower" size="48">></u-loading>
<Text style="color: #fff; margin-top: 10rpx;">加载中...</Text>
</view>
<!-- 取消提示 -->
<u-toast ref="uToast" />
<auth v-if="showAuth" @changeuserinfo="reloadUserinfo" @gbAuth= 'gbAuth'></auth>
</view>
</template> </template>
<script> <script>
import auth from "@/components/auth/index.vue";
export default {
components: {
auth
},
data() {
return {
pageTitle: "会员卡",
showAuth:false,
u:{},
mainColor: "",
contentHeight: 0,
msg:{
pageIndex: 1,
pageSize:10,
},
page_count: 1,
g: [],
loading: false,
status: "loadmore",
loadText: {
loadmore: "轻轻上拉,加载更多",
loading: "努力加载中",
nomore: "没有更多了",
},
};
},
created() {
this.contentHeight = this.$utils.calcContentHeight(-40) + "px";
this.mainColor = this.$uiConfig.mainColor;
},
mounted() {
let currentPages = getCurrentPages();
let u = "/" + currentPages[currentPages.length - 1].route;
let pages = wx.getStorageSync("basedata")
? wx.getStorageSync("basedata").bar_title
: [];
pages.forEach((x) => {
if (x.value == u) {
this.pageTitle = x.new_name ? x.new_name : x.name;
}
});
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
onLoad: function (option) {
this.u = uni.getStorageSync("mall_UserInfo");
if (!this.u) {
this.u = {
nickName: "未登录",
avatarUrl: ""
};
this.showAuth = true;
} else{
this.init();
}
},
methods: {
init() {
this.request2(
{
url: '/api/AppletStores/GetMemberCardBagList',
data: this.msg
},
res => {
if(res.resultCode==1){
this.loading = false;
this.g = this.g.concat(res.data.pageData);
this.page_count = res.data.pageCount;
if (this.page_count == 1) {
this.status = "nomore";
}
}
}
);
},
lower(e) {
if (this.msg.pageIndex < this.page_count) {
this.msg.pageIndex++;
this.status = "loading";
this.init();
} else {
this.status = "nomore";
}
},
reloadUserinfo() {
this.u = uni.getStorageSync("mall_UserInfo");
// this.showAuth=false;
this.init();
},
//关闭登录窗口
gbAuth(){
uni.navigateBack()
},
gocoupon(item){
if(item.IsOver==0){
uni.navigateTo({
url: "/pages/reserve/personal/vipDetail?ID="+item.ID,
})
}
}
},
};
</script> </script>
<style> <style>
.myVipList {
width: 100%;
height: 100%;
background: #FFF;
position: relative;
}
.myVipList .loading {
width: 180rpx;
height: 180rpx;
background: #000000;
opacity: 0.7;
border-radius: 10rpx;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: fixed;
left: 50%;
top: 30%;
margin-left: -100rpx;
z-index: 999;
}
.myVipList .details{
width: 100%;
padding:0 15px;
margin-top: 15px;
display: flex;
flex-direction: column;
align-items: center;
}
.d-t-box{
width: 100%;
height: 83px;
border-radius: 6px;
overflow: hidden;
background-repeat: no-repeat;
background-size: cover;
position: relative;
}
.bj {
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
background: rgba(0, 0, 0, 0.2);
border-radius: 6px;
}
.btext{
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
font-size: 12px;
color: #FFF;
display: flex;
align-items: center;
justify-content: center;
}
.bj2{
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
background: rgba(153, 153, 153, 0.6);
border-radius: 6px;
}
.imgs{
width: 55px; height: 52px;
position: absolute;top: 0px;
right: 0px;
}
</style> </style>
...@@ -17,18 +17,28 @@ ...@@ -17,18 +17,28 @@
.vipDetail .submit{ .vipDetail .submit{
width: 100%; width: 100%;
height: 60px; height: 65px;
background: #FFF;
position: fixed; position: fixed;
background: #FAF8F9;
left: 0; left: 0;
bottom: 0; bottom: 0;
padding: 0 15px; padding: 0 15px;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
justify-content: space-between; justify-content: center;
z-index: 99; z-index: 99;
}
.vipDetail .submit-box{
width: 100%;
height: 45px;
border-radius: 23px;
font-size: 16px;
display: flex;
align-items: center;
justify-content: center;
} }
.vipDetail .bj { .vipDetail .bj {
width: 100%; width: 100%;
...@@ -48,42 +58,55 @@ ...@@ -48,42 +58,55 @@
font-size: 12px; font-size: 12px;
color: #FFF; color: #FFF;
padding: 15px; padding: 15px;
display: flex;flex-direction: column;
justify-content: space-between;
} }
</style> </style>
<template> <template>
<view class="vipDetail" v-if="loading"> <view class="vipDetail" v-if="loading">
<view class="vipd_top"> <view class="vipd_top">
<image mode="aspectFill" :src="cdetail.CardBagIco" style="width: 100%;height: 100%;border-radius: 10px;"></image> <image mode="aspectFill" :src="cdetail.CardBagIco" style="width: 100%;height: 100%;border-radius: 10px;"></image>
<view class="bj"></view> <!-- <view class="bj"></view> -->
<view class="btext"> <view class="btext">
<text>{{cdetail.Name}}</text> <text></text>
<view style="width: 100%;color: #FFF;font-size: 15px;">
<view>{{cdetail.CardNo}}</view>
<view style="margin-top: 12px;font-size: 12px;display: flex;flex-direction: row;align-items: center;">
<view style="margin-right: 10px;max-width: 100px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">{{useName}}</view>
<!-- {{cdetail.StartDate.split('T')[0].split('-')[0]+'/'+cdetail.StartDate.split('T')[0].split('-')[1]}}
~
{{cdetail.EndDate.split('T')[0].split('-')[0]+'/'+cdetail.EndDate.split('T')[0].split('-')[1]}} -->
{{cdetail.EndDate.split('T')[0].split('-')[1]+'/'+cdetail.EndDate.split('T')[0].split('-')[0].toString().substr(2, 2)}}
</view>
</view>
</view> </view>
</view> </view>
<view style="width: 100%;height: 40px;line-height: 40px;font-weight: bold;color: #111111;font-size: 14px;">
会员卡详情
</view>
<view style="width: 100%;margin-bottom: 100px;">
<h-parse :content="detailContent" @navigate="clickDescription"></h-parse>
</view>
<view class="submit"> <view class="submit">
<text>{{cdetail.Name}}</text> <view class="submit-box" :style="{'background':cdetail.MemberNum==0?mc:'#D4D4D4',color:cdetail.MemberNum==0?'#FFF':'#999999'}"
@click="submitreceive()"
<u-button
size="80"
:ripple="true"
shape="circle"
@click="submitreceive()"
:custom-style="{
backgroundColor:mc,
height: '80rpx',
color: '#FFF',
fontSize: '14px',
}"
> >
{{cdetail.MemberNum>0?'去使用':'立即领取'}}
</u-button> <text v-if="cdetail.MemberNum==0">立即领取</text>
<text v-if="cdetail.MemberNum!=0">已领取</text>
</view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import hParse from "@/components/u-parse/parse.vue";
export default { export default {
components: {
hParse,
},
data() { data() {
return { return {
pageTitle: "会员卡详情", pageTitle: "会员卡详情",
...@@ -96,6 +119,8 @@ ...@@ -96,6 +119,8 @@
submitOrder:false, submitOrder:false,
cstore:0, cstore:0,
detailContent:'',
useName:'',
}; };
}, },
...@@ -109,7 +134,7 @@ ...@@ -109,7 +134,7 @@
this.storeId = option.storeId this.storeId = option.storeId
} }
this.getDetail()//获取套餐卡详情 this.getDetail()//获取套餐卡详情
this.useName = uni.getStorageSync("mall_UserInfo")?uni.getStorageSync("mall_UserInfo").Name:''
}, },
...@@ -128,12 +153,14 @@ ...@@ -128,12 +153,14 @@
}); });
this.request2({ this.request2({
url: '/api/AppletStores/GetReserveCardBagDetail', url: '/api/AppletStores/GetReserveCardBagDetail',
data: {ID:this.ID,StoreId:this.storeId} data: {ID:this.ID,StoreId:this.storeId==0?'-1':this.storeId}//判断下如果是列表没传门店id时候传-1
}, },
res => { res => {
if (res.resultCode == 1) { if (res.resultCode == 1) {
this.loading = true this.loading = true
this.cdetail=res.data this.cdetail=res.data
var richtext = this.cdetail.Describe;
this.detailContent = richtext;
} }
uni.hideLoading(); uni.hideLoading();
} }
...@@ -142,7 +169,7 @@ ...@@ -142,7 +169,7 @@
submitreceive(){ submitreceive(){
if(this.cdetail.MemberNum==0){ if(this.cdetail.MemberNum==0){
this.request2({ this.request2({
url: '/api/AppletStores/GrantCoupon', url: '/api/AppletStores/GrantCardBag',
data: {CouponId:this.ID,StoreId:this.storeId} data: {CouponId:this.ID,StoreId:this.storeId}
}, },
res => { res => {
...@@ -156,17 +183,10 @@ ...@@ -156,17 +183,10 @@
} }
); );
}else{ }else{
let data = [] uni.showToast({
let g = this.cdetail title: '已经领取过了!',
if(g.UseType==1 || g.UseType==2){ icon: "none",
g.ProductList.forEach(x=>{ });
data.push(x.ProductId)
})
let id = data.toString()
uni.redirectTo({ url: '/pages/goods/list?coupon_id='+ id+'&UseType='+g.UseType });
}else{
uni.redirectTo({ url: '/pages/goods/list'});
}
} }
}, },
......
...@@ -484,10 +484,10 @@ ...@@ -484,10 +484,10 @@
<view class="setmeal-item u-skeleton-rect" :style="{'margin-left':ci==0?'15px':'0','margin-right': ci+1==vipList.length?'15px':'5px','width':'150px'}"> <view class="setmeal-item u-skeleton-rect" :style="{'margin-left':ci==0?'15px':'0','margin-right': ci+1==vipList.length?'15px':'5px','width':'150px'}">
<view class="d-t-box"> <view class="d-t-box">
<image mode="aspectFill" :src="cl.CardBagIco" style="width: 100%;height: 100%;border-radius: 6px;"></image> <image mode="aspectFill" :src="cl.CardBagIco" style="width: 100%;height: 100%;border-radius: 6px;"></image>
<view class="bj"></view> <!-- <view class="bj"></view> -->
<view class="btext"> <!-- <view class="btext">
<text>{{cl.Name}}</text> <text>{{cl.Name}}</text>
</view> </view> -->
</view> </view>
</view> </view>
</view> </view>
...@@ -496,7 +496,6 @@ ...@@ -496,7 +496,6 @@
<view class="title-c" @click="goPersonal" v-if="personalList.length>0"> <view class="title-c" @click="goPersonal" v-if="personalList.length>0">
<text>设计师</text> <text>设计师</text>
<u-icon name="arrow" :size="30" color="#666666"></u-icon> <u-icon name="arrow" :size="30" color="#666666"></u-icon>
</view> </view>
<view class="designer u-skeleton-rect" v-if="personalList.length>0"> <view class="designer u-skeleton-rect" v-if="personalList.length>0">
<view class="designer-item" v-for="(x, ci2) in personalList" :key="ci2" v-if="personalList.length>0" @click="godesigner(x)"> <view class="designer-item" v-for="(x, ci2) in personalList" :key="ci2" v-if="personalList.length>0" @click="godesigner(x)">
...@@ -521,7 +520,7 @@ ...@@ -521,7 +520,7 @@
</view> </view>
</view> </view>
</view> </view>
<view class="designer-btn" :style="{'background':mc}" @click.stop="gosubscribe(x)"> <view class="designer-btn" v-if="g.IsHaveGoods>0" :style="{'background':mc}" @click.stop="gosubscribe(x)">
预约 预约
</view> </view>
</view> </view>
...@@ -581,7 +580,7 @@ ...@@ -581,7 +580,7 @@
<view class="richtext2" > <view class="richtext2" >
<h-parse :content="detailContent2" @navigate="clickDescription"></h-parse> <h-parse :content="detailContent2" @navigate="clickDescription"></h-parse>
</view> </view>
<view class="btn"> <view class="btn" v-if="g.IsHaveGoods>0">
<view class="btn-box" :style="{'background':mc}" @click="gosubscribe2()"> <view class="btn-box" :style="{'background':mc}" @click="gosubscribe2()">
预约 预约
</view> </view>
...@@ -1102,7 +1101,6 @@ ...@@ -1102,7 +1101,6 @@
}) })
}, },
govipD(item){//会员卡详情 govipD(item){//会员卡详情
console.log(this.id)
uni.navigateTo({ uni.navigateTo({
url: "/pages/reserve/personal/vipDetail?ID="+item.CouponId+'&storeId='+this.id, url: "/pages/reserve/personal/vipDetail?ID="+item.CouponId+'&storeId='+this.id,
}) })
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment