@ -0,0 +1,54 @@ | |||
<template> | |||
<view class="flex card"> | |||
<view class="flex label"> | |||
<image class="icon" src="/pages_order/static/center/icon-wx.png" mode="scaleToFill"></image> | |||
<view>官方微信公众号</view> | |||
</view> | |||
<button class="flex btn"> | |||
<text class="btn-text">即刻关注</text> | |||
<uv-icon name="arrow-right" color="#C6C6C6" size="24rpx"></uv-icon> | |||
</button> | |||
</view> | |||
</template> | |||
<script> | |||
export default { | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
@import './styles/card.scss'; | |||
.card { | |||
padding: 24rpx 32rpx; | |||
justify-content: space-between; | |||
} | |||
.icon { | |||
width: 64rpx; | |||
height: 64rpx; | |||
} | |||
.label { | |||
column-gap: 16rpx; | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 28rpx; | |||
line-height: 1; | |||
color: #252545; | |||
} | |||
.btn { | |||
font-family: PingFang SC; | |||
font-size: 24rpx; | |||
font-weight: 400; | |||
line-height: 1.4; | |||
color: #A8A8A8; | |||
&-text { | |||
margin-right: 4rpx; | |||
} | |||
} | |||
</style> |
@ -0,0 +1,76 @@ | |||
<template> | |||
<view class="flex card cols"> | |||
<view class="flex flex-column col" v-for="item in list" :key="item.id"> | |||
<view class="icon"> | |||
<image class="icon-img" :src="item.icon" mode="scaleToFill"></image> | |||
<view class="flex sup" v-if="item.value">{{ item.value }}</view> | |||
</view> | |||
<view class="label">{{ item.label }}</view> | |||
</view> | |||
</view> | |||
</template> | |||
<script> | |||
export default { | |||
data() { | |||
return { | |||
list: [], | |||
} | |||
}, | |||
mounted() { | |||
this.list = [ | |||
{ id: '001', label: '待支付', value: 2, icon: '/pages_order/static/center/order-1.png' }, | |||
{ id: '002', label: '待发货', value: 2, icon: '/pages_order/static/center/order-2.png' }, | |||
{ id: '003', label: '待收货', value: 0, icon: '/pages_order/static/center/order-3.png' }, | |||
{ id: '004', label: '售后', value: 0, icon: '/pages_order/static/center/order-4.png' }, | |||
{ id: '005', label: '全部', icon: '/pages_order/static/center/order-5.png' }, | |||
] | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
@import './styles/card.scss'; | |||
.card { | |||
padding: 32rpx; | |||
column-gap: 16rpx; | |||
} | |||
.icon { | |||
position: relative; | |||
width: 48rpx; | |||
height: 48rpx; | |||
&-img { | |||
width: 100%; | |||
height: 100%; | |||
} | |||
.sup { | |||
position: absolute; | |||
top: 0; | |||
right: 0; | |||
transform: translate(50%, -50%); | |||
min-width: 32rpx; | |||
height: 32rpx; | |||
font-family: PingFang SC; | |||
font-weight: 500; | |||
font-size: 24rpx; | |||
line-height: 1.3; | |||
color: #FFFFFF; | |||
background: #F53F3F; | |||
border-radius: 32rpx; | |||
} | |||
} | |||
.label { | |||
margin-top: 12rpx; | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 28rpx; | |||
line-height: 1; | |||
color: #252545; | |||
} | |||
</style> |
@ -0,0 +1,180 @@ | |||
<template> | |||
<view class="card"> | |||
<view class="flex header"> | |||
<view class="title">体检报告</view> | |||
<button class="btn">体检入口</button> | |||
</view> | |||
<view class="flex cols"> | |||
<view class="flex flex-column col score"> | |||
<view class="flex"> | |||
<view class="score-value">{{ data.BMI || '--' }}</view> | |||
<view v-if="data.BMIchange < 0" class="flex change"> | |||
<text>{{ data.BMIchange }}</text> | |||
<image class="change-icon" src="@/pages_order/static/report/arrow-down.png" mode="widthFix"></image> | |||
</view> | |||
<view v-else-if="data.BMIchange > 0" class="flex change rise"> | |||
<text>{{ data.BMIchange }}</text> | |||
<image class="change-icon" src="@/pages_order/static/report/arrow-down.png" mode="widthFix"></image> | |||
</view> | |||
</view> | |||
<view class="flex"> | |||
<view class="label">BMI</view> | |||
<view class="tag"> | |||
{{ data.BMItag || '-' }} | |||
</view> | |||
</view> | |||
</view> | |||
<view class="divider"></view> | |||
<view class="flex flex-column col score"> | |||
<view class="flex"> | |||
<view class="score-value">{{ data.fat || '--' }}</view> | |||
<view v-if="data.fatChange < 0" class="flex change"> | |||
<text>{{ data.fatChange }}</text> | |||
<image class="change-icon" src="@/pages_order/static/report/arrow-down.png" mode="widthFix"></image> | |||
</view> | |||
<view v-else-if="data.fatChange > 0" class="flex change rise"> | |||
<text>{{ data.fatChange }}</text> | |||
<image class="change-icon" src="@/pages_order/static/report/arrow-down.png" mode="widthFix"></image> | |||
</view> | |||
</view> | |||
<view class="flex"> | |||
<view class="label">脂肪</view> | |||
<view class="tag"> | |||
{{ data.fatTag || '-' }} | |||
</view> | |||
</view> | |||
</view> | |||
<view class="divider"></view> | |||
<view class="flex flex-column col"> | |||
<view class="label">解锁更多</view> | |||
<view class="label">身体数据</view> | |||
</view> | |||
</view> | |||
</view> | |||
</template> | |||
<script> | |||
export default { | |||
data() { | |||
return { | |||
data: { | |||
BMI: 20.3, | |||
BMIchange: -0.2, | |||
BMItag: '正常', | |||
fat: null, | |||
fatChange: null, | |||
fatTag: null, | |||
}, | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
@import './styles/card.scss'; | |||
.card { | |||
padding: 32rpx; | |||
background-image: linear-gradient(#FAFAFF, #F3F3F3); | |||
} | |||
.header { | |||
justify-content: space-between; | |||
margin-bottom: 24rpx; | |||
.title { | |||
font-family: PingFang SC; | |||
font-weight: 600; | |||
font-size: 36rpx; | |||
line-height: 1.2; | |||
color: #252545; | |||
} | |||
.btn { | |||
font-family: PingFang SC; | |||
font-weight: 600; | |||
font-size: 28rpx; | |||
line-height: 1.5; | |||
color: #FFFFFF; | |||
padding: 8rpx 24rpx; | |||
background-image: linear-gradient(to right, #4B348F, #845CFA); | |||
border: 1rpx solid #FFFFFF; | |||
border-radius: 32rpx; | |||
box-shadow: -5rpx -5rpx 10rpx 0 #FFFFFF, | |||
10rpx 10rpx 20rpx 0 #AAAACC80, | |||
4rpx 4rpx 10rpx 0 #AAAACC40, | |||
-2rpx -2rpx 5rpx 0 #FFFFFF; | |||
} | |||
} | |||
.col { | |||
&.score { | |||
.score { | |||
&-value { | |||
font-family: PingFang SC; | |||
line-height: 1.4; | |||
font-weight: 600; | |||
font-size: 40rpx; | |||
color: $uni-color; | |||
} | |||
} | |||
.change { | |||
margin-left: 8rpx; | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 24rpx; | |||
line-height: 1.4; | |||
color: #F79205; | |||
&-icon { | |||
width: 24rpx; | |||
height: auto; | |||
} | |||
&.rise { | |||
.change-icon { | |||
transform: rotate(180deg); | |||
} | |||
} | |||
} | |||
.tag { | |||
margin-left: 16rpx; | |||
padding: 6rpx 16rpx; | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 20rpx; | |||
line-height: 1.4; | |||
color: #FFFFFF; | |||
background-image: linear-gradient(90deg, #4B348F, #845CFA); | |||
border-top-left-radius: 24rpx; | |||
border-bottom-right-radius: 24rpx; | |||
} | |||
} | |||
.label { | |||
font-size: 26rpx; | |||
font-weight: 400; | |||
line-height: 1.4; | |||
font-family: PingFang SC; | |||
color: transparent; | |||
background-image: linear-gradient(to right, #4B348F, #845CFA); | |||
background-clip: text; | |||
display: inline-block; | |||
} | |||
} | |||
.divider { | |||
flex: none; | |||
// todo | |||
width: 4rpx; | |||
height: 32rpx; | |||
background: #B5B8CE; | |||
} | |||
</style> |
@ -0,0 +1,15 @@ | |||
.card { | |||
margin-top: 32rpx; | |||
width: 100%; | |||
background: #FAFAFF; | |||
border: 2rpx solid #FFFFFF; | |||
border-radius: 32rpx; | |||
box-sizing: border-box; | |||
} | |||
.cols { | |||
.col { | |||
flex: 1; | |||
} | |||
} |
@ -0,0 +1,353 @@ | |||
<template> | |||
<view class="page"> | |||
<navbar title="个人中心" /> | |||
<view class="head"> | |||
<view class="headImage"> | |||
<image src="" mode=""></image> | |||
</view> | |||
<view class="info"> | |||
<view class="name"> | |||
倾心. | |||
</view> | |||
<!-- <view class="vip"> | |||
VIP1 | |||
</view> --> | |||
<view class="tips"> | |||
今天是您来的的第32天 | |||
</view> | |||
</view> | |||
<!-- <view class="headBtn" @click="headBtn"> | |||
角色切换 | |||
</view> --> | |||
<view class="setting"> | |||
<uv-icon name="setting" size="40rpx"></uv-icon> | |||
</view> | |||
</view> | |||
<!-- 水洗店 --> | |||
<view class="userShop" v-if="userShop"> | |||
<userShopCommission /> | |||
<view class="userList"> | |||
<view class="title"> | |||
我的用户 | |||
</view> | |||
<view class="list"> | |||
<view class="item" v-for="(item, index) in 20" :key="index"> | |||
<view class="name"> | |||
客户:王生 | |||
</view> | |||
<view class="num"> | |||
剩余水洗布:198 | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 酒店 --> | |||
<view class="user" v-else> | |||
<view class="line"> | |||
<view class="item"> | |||
<view class="image"> | |||
<image src="/static/image/center/1.png" mode=""></image> | |||
</view> | |||
<view class=""> | |||
余额¥3000 | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="image"> | |||
<image src="/static/image/center/4.png" mode=""></image> | |||
</view> | |||
<view class=""> | |||
押金¥30000 | |||
</view> | |||
</view> | |||
</view> | |||
<view class="line grid"> | |||
<view class="title"> | |||
常用功能 | |||
</view> | |||
<uv-grid :col="4" :border="false"> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/mine/address')"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">地址管理</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.redirectTo('/index/order')"> | |||
<image class="image" src="/static/image/center/8.png" mode=""></image> | |||
<text class="grid-text">订单管理</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+0)"> | |||
<image class="image" src="/static/image/center/5.png" mode=""></image> | |||
<text class="grid-text">换货</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+1)"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">退货</text> | |||
</uv-grid-item> | |||
</uv-grid> | |||
</view> | |||
<view class="line grid"> | |||
<uv-grid :col="4" :border="false"> | |||
<uv-grid-item @click="contactUs"> | |||
<image class="image" src="/static/image/center/9.png" mode=""></image> | |||
<text class="grid-text">联系客服</text> | |||
</uv-grid-item> | |||
<uv-grid-item> | |||
<image class="image" src="/static/image/center/6.png" mode=""></image> | |||
<text class="grid-text">我的租赁</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.redirectTo('/index/cart')"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">租赁车</text> | |||
</uv-grid-item> | |||
<uv-grid-item | |||
@click="$utils.navigateTo('/pages_order/auth/loginAndRegisterAndForgetPassword?index='+2)"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">申请成为水洗店</text> | |||
</uv-grid-item> | |||
</uv-grid> | |||
</view> | |||
</view> | |||
<tabber select="center" /> | |||
</view> | |||
</template> | |||
<script> | |||
import tabber from '@/components/base/tabbar.vue' | |||
import { | |||
mapGetters | |||
} from 'vuex' | |||
import userShopCommission from '@/components/userShop/userShopCommission.vue' | |||
export default { | |||
components: { | |||
tabber, | |||
userShopCommission, | |||
}, | |||
computed: { | |||
...mapGetters(['userShop']), | |||
}, | |||
data() { | |||
return { | |||
} | |||
}, | |||
methods: { | |||
headBtn() { | |||
let self = this | |||
uni.showModal({ | |||
title: '演示切换角色之后的效果', | |||
success(res) { | |||
if (res.confirm) { | |||
self.$store.state.shop = !self.$store.state.shop | |||
} | |||
} | |||
}) | |||
}, | |||
} | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.page { | |||
.warp { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
height: 100%; | |||
} | |||
.rect { | |||
width: 600rpx; | |||
height: 300rpx; | |||
background-color: #fff; | |||
border-radius: 20rpx; | |||
overflow: hidden; | |||
.title { | |||
padding: 10rpx 0 0 15rpx; | |||
background-color: #fd5100; | |||
color: #FFF; | |||
text-align: left; | |||
width: 100%; | |||
height: 18%; | |||
font-size: 36rpx; | |||
} | |||
.center { | |||
height: 40%; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
font-size: 36rpx; | |||
} | |||
.bottom { | |||
display: flex; | |||
justify-content: center; | |||
gap: 50rpx; | |||
} | |||
} | |||
} | |||
image { | |||
width: 100%; | |||
height: 100%; | |||
} | |||
.head { | |||
display: flex; | |||
background-color: #fff; | |||
padding: 40rpx 20rpx; | |||
align-items: center; | |||
position: relative; | |||
.headImage { | |||
width: 120rpx; | |||
height: 120rpx; | |||
// background-image: url(/static/image/center/3.png); | |||
background-size: 100% 100%; | |||
overflow: hidden; | |||
border-radius: 50%; | |||
margin-right: 40rpx; | |||
} | |||
.info { | |||
font-size: 28rpx; | |||
.vip { | |||
background-color: #FCCC92; | |||
color: #FA6239; | |||
width: 100rpx; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
height: 40rpx; | |||
border-radius: 20rpx; | |||
margin-top: 20rpx; | |||
} | |||
.name { | |||
font-size: 32rpx; | |||
} | |||
.tips { | |||
font-size: 26rpx; | |||
color: #ABABAB; | |||
} | |||
} | |||
.headBtn { | |||
margin-left: auto; | |||
padding: 15rpx 20rpx; | |||
background-color: $uni-color; | |||
color: #fff; | |||
border-radius: 20rpx; | |||
margin-top: 50rpx; | |||
} | |||
.setting { | |||
position: absolute; | |||
right: 50rpx; | |||
top: 50rpx; | |||
} | |||
} | |||
.userShop { | |||
.userList { | |||
.title { | |||
font-size: 32rpx; | |||
font-weight: 900; | |||
padding: 20rpx; | |||
} | |||
.list { | |||
display: flex; | |||
flex-wrap: wrap; | |||
.item { | |||
width: 270rpx; | |||
margin: 20rpx; | |||
display: flex; | |||
flex-direction: column; | |||
padding: 40rpx 30rpx; | |||
background-color: #fff; | |||
border-radius: 30rpx; | |||
line-height: 60rpx; | |||
.name {} | |||
.num { | |||
color: $uni-color; | |||
font-weight: 600; | |||
font-size: 28rpx; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.user { | |||
.line { | |||
display: flex; | |||
background-color: #fff; | |||
margin-top: 20rpx; | |||
padding: 20rpx 0; | |||
.item { | |||
flex: 1; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
padding: 20rpx 0; | |||
&:nth-child(1) { | |||
border-right: 1px solid #00000013; | |||
} | |||
.image { | |||
width: 100rpx; | |||
height: 70rpx; | |||
margin-right: 20rpx; | |||
} | |||
} | |||
} | |||
.grid { | |||
flex-direction: column; | |||
font-size: 26rpx; | |||
padding: 20rpx; | |||
.title { | |||
margin-bottom: 30rpx; | |||
font-size: 28rpx; | |||
font-weight: 600; | |||
} | |||
.image { | |||
width: 70rpx; | |||
height: 70rpx; | |||
margin-bottom: 10rpx; | |||
} | |||
text { | |||
text-align: center; | |||
width: 120rpx; | |||
} | |||
} | |||
} | |||
</style> |
@ -1,352 +1,209 @@ | |||
<template> | |||
<view class="page"> | |||
<view class="page__view"> | |||
<navbar title="个人中心" /> | |||
<image class="bg" src="@/pages_order/static/center/bg.png" mode="widthFix"></image> | |||
<view class="head"> | |||
<view class="headImage"> | |||
<image src="" mode=""></image> | |||
</view> | |||
<view class="info"> | |||
<view class="name"> | |||
倾心. | |||
</view> | |||
<!-- <view class="vip"> | |||
VIP1 | |||
</view> --> | |||
<view class="tips"> | |||
今天是您来的的第32天 | |||
</view> | |||
</view> | |||
<!-- <view class="headBtn" @click="headBtn"> | |||
角色切换 | |||
</view> --> | |||
<view class="setting"> | |||
<uv-icon name="setting" size="40rpx"></uv-icon> | |||
</view> | |||
</view> | |||
<view class="main"> | |||
<!-- 水洗店 --> | |||
<view class="userShop" v-if="userShop"> | |||
<userShopCommission /> | |||
<view class="userList"> | |||
<view class="title"> | |||
我的用户 | |||
</view> | |||
<view class="list"> | |||
<view class="item" v-for="(item, index) in 20" :key="index"> | |||
<view class="name"> | |||
客户:王生 | |||
</view> | |||
<view class="num"> | |||
剩余水洗布:198 | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<navbar bgColor="transparent" > | |||
<image class="nav-icon" src="@/pages_order/static/center/icon-nav.png" mode="widthFix"></image> | |||
</navbar> | |||
<!-- 酒店 --> | |||
<view class="user" v-else> | |||
<view class="line"> | |||
<view class="item"> | |||
<view class="image"> | |||
<image src="/static/image/center/1.png" mode=""></image> | |||
<view class="content"> | |||
<view class="flex user"> | |||
<view class="user-avatar"> | |||
<image class="user-avatar-img" src="@/pages_order/static/report/avatar.png" mode="scaleToFill"></image> | |||
</view> | |||
<view class=""> | |||
余额¥3000 | |||
<view class="user-info"> | |||
<view class="user-info-name">战斗世界</view> | |||
<view class="user-info-desc">世界这么美,身体要健康~</view> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view class="image"> | |||
<image src="/static/image/center/4.png" mode=""></image> | |||
</view> | |||
<view class=""> | |||
押金¥30000 | |||
<reportCard></reportCard> | |||
<orderCard></orderCard> | |||
<accountCard></accountCard> | |||
<view class="card"> | |||
<view v-for="item in list1" :key="item.id"> | |||
<!-- todo: key -> custom --> | |||
<view class="flex row" @click="$utils.navigateTo(item.path)"> | |||
<view class="flex label"> | |||
<image class="icon" :src="item.icon" mode="scaleToFill"></image> | |||
<view>{{ item.label }}</view> | |||
</view> | |||
<uv-icon name="arrow-right" color="#C6C6C6" size="24rpx"></uv-icon> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="line grid"> | |||
<view class="title"> | |||
常用功能 | |||
<view class="card"> | |||
<view v-for="item in list2" :key="item.id"> | |||
<!-- todo: key -> custom --> | |||
<view class="flex row" @click="$utils.navigateTo(item.path)"> | |||
<view class="flex label"> | |||
<image class="icon" :src="item.icon" mode="scaleToFill"></image> | |||
<view>{{ item.label }}</view> | |||
</view> | |||
<uv-icon name="arrow-right" color="#C6C6C6" size="24rpx"></uv-icon> | |||
</view> | |||
</view> | |||
</view> | |||
<uv-grid :col="4" :border="false"> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/mine/address')"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">地址管理</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.redirectTo('/index/order')"> | |||
<image class="image" src="/static/image/center/8.png" mode=""></image> | |||
<text class="grid-text">订单管理</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+0)"> | |||
<image class="image" src="/static/image/center/5.png" mode=""></image> | |||
<text class="grid-text">换货</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+1)"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">退货</text> | |||
</uv-grid-item> | |||
</uv-grid> | |||
</view> | |||
<view class="line grid"> | |||
<uv-grid :col="4" :border="false"> | |||
<uv-grid-item @click="contactUs"> | |||
<image class="image" src="/static/image/center/9.png" mode=""></image> | |||
<text class="grid-text">联系客服</text> | |||
</uv-grid-item> | |||
<uv-grid-item> | |||
<image class="image" src="/static/image/center/6.png" mode=""></image> | |||
<text class="grid-text">我的租赁</text> | |||
</uv-grid-item> | |||
<uv-grid-item @click="$utils.redirectTo('/index/cart')"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">租赁车</text> | |||
</uv-grid-item> | |||
<tabber select="center" /> | |||
<uv-grid-item | |||
@click="$utils.navigateTo('/pages_order/auth/loginAndRegisterAndForgetPassword?index='+2)"> | |||
<image class="image" src="/static/image/center/7.png" mode=""></image> | |||
<text class="grid-text">申请成为水洗店</text> | |||
</uv-grid-item> | |||
</uv-grid> | |||
</view> | |||
</view> | |||
<tabber select="center" /> | |||
</view> | |||
</template> | |||
<script> | |||
import tabber from '@/components/base/tabbar.vue' | |||
import { | |||
mapGetters | |||
} from 'vuex' | |||
import userShopCommission from '@/components/userShop/userShopCommission.vue' | |||
import reportCard from '@/components/center/reportCard.vue' | |||
import orderCard from '@/components/center/orderCard.vue' | |||
import accountCard from '@/components/center/accountCard.vue' | |||
export default { | |||
components: { | |||
reportCard, | |||
orderCard, | |||
accountCard, | |||
tabber, | |||
userShopCommission, | |||
}, | |||
computed: { | |||
...mapGetters(['userShop']), | |||
}, | |||
data() { | |||
return { | |||
list1: [ | |||
// todo | |||
{ id: '001', label: '检测预约', icon: '/pages_order/static/center/icon-detectBook.png', path: '/pages_order/mine/detectBook' }, | |||
// todo | |||
{ id: '002', label: '联系客服', icon: '/pages_order/static/center/icon-service.png', key: 'service' }, | |||
// todo | |||
{ id: '003', label: '服用说明', icon: '/pages_order/static/center/icon-instruc.png', path: '/pages_order/mine/instruc' }, | |||
// todo | |||
{ id: '004', label: '用户须知', icon: '/pages_order/static/center/icon-userAgreement.png', path: '/pages_order/mine/userAgreement' }, | |||
], | |||
list2: [ | |||
// todo | |||
{ id: '005', label: '我的评价', icon: '/pages_order/static/center/icon-comment.png', path: '/pages_order/mine/detectBook' }, | |||
// todo | |||
{ id: '006', label: '关于我们', icon: '/pages_order/static/center/icon-aboutUs.png', path: '/pages_order/mine/service' }, | |||
// todo | |||
{ id: '007', label: '修改信息', icon: '/pages_order/static/center/icon-modifyInfo.png', path: '/pages_order/mine/instruc' }, | |||
// todo | |||
{ id: '008', label: '退出登录', icon: '/pages_order/static/center/icon-logout.png', key: 'logout' }, | |||
], | |||
} | |||
}, | |||
methods: { | |||
headBtn() { | |||
let self = this | |||
uni.showModal({ | |||
title: '演示切换角色之后的效果', | |||
success(res) { | |||
if (res.confirm) { | |||
self.$store.state.shop = !self.$store.state.shop | |||
} | |||
} | |||
}) | |||
}, | |||
} | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.page { | |||
.warp { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
height: 100%; | |||
} | |||
.rect { | |||
width: 600rpx; | |||
height: 300rpx; | |||
background-color: #fff; | |||
border-radius: 20rpx; | |||
overflow: hidden; | |||
.title { | |||
padding: 10rpx 0 0 15rpx; | |||
background-color: #fd5100; | |||
color: #FFF; | |||
text-align: left; | |||
width: 100%; | |||
height: 18%; | |||
font-size: 36rpx; | |||
} | |||
.page__view { | |||
width: 100vw; | |||
min-height: 100vh; | |||
background-color: $uni-bg-color; | |||
position: relative; | |||
.center { | |||
height: 40%; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
font-size: 36rpx; | |||
} | |||
/deep/ .nav-bar__view { | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
} | |||
.bottom { | |||
display: flex; | |||
justify-content: center; | |||
gap: 50rpx; | |||
} | |||
.nav-icon { | |||
width: 200rpx; | |||
height: auto; | |||
vertical-align: top; | |||
} | |||
} | |||
.bg { | |||
width: 100vw; | |||
height: auto; | |||
} | |||
.main { | |||
position: absolute; | |||
top: 176rpx; | |||
left: 0; | |||
width: 100%; | |||
} | |||
image { | |||
.content { | |||
width: 100%; | |||
height: 100%; | |||
padding: 16rpx 32rpx 80rpx 32rpx; | |||
box-sizing: border-box; | |||
} | |||
.head { | |||
display: flex; | |||
background-color: #fff; | |||
padding: 40rpx 20rpx; | |||
align-items: center; | |||
position: relative; | |||
.user { | |||
column-gap: 24rpx; | |||
.headImage { | |||
width: 120rpx; | |||
height: 120rpx; | |||
// background-image: url(/static/image/center/3.png); | |||
background-size: 100% 100%; | |||
overflow: hidden; | |||
&-avatar { | |||
flex: none; | |||
width: 100rpx; | |||
height: 100rpx; | |||
border: 4rpx solid #FFFFFF; | |||
border-radius: 50%; | |||
margin-right: 40rpx; | |||
} | |||
.info { | |||
font-size: 28rpx; | |||
.vip { | |||
background-color: #FCCC92; | |||
color: #FA6239; | |||
width: 100rpx; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
height: 40rpx; | |||
border-radius: 20rpx; | |||
margin-top: 20rpx; | |||
} | |||
.name { | |||
font-size: 32rpx; | |||
} | |||
overflow: hidden; | |||
.tips { | |||
font-size: 26rpx; | |||
color: #ABABAB; | |||
&-img { | |||
width: 100%; | |||
height: 100%; | |||
} | |||
} | |||
.headBtn { | |||
margin-left: auto; | |||
padding: 15rpx 20rpx; | |||
background-color: $uni-color; | |||
color: #fff; | |||
border-radius: 20rpx; | |||
margin-top: 50rpx; | |||
} | |||
.setting { | |||
position: absolute; | |||
right: 50rpx; | |||
top: 50rpx; | |||
} | |||
} | |||
&-info { | |||
flex: 1; | |||
.userShop { | |||
.userList { | |||
.title { | |||
font-size: 32rpx; | |||
font-weight: 900; | |||
padding: 20rpx; | |||
&-name { | |||
font-family: PingFang SC; | |||
font-weight: 600; | |||
font-size: 36rpx; | |||
line-height: 1.2; | |||
color: #FFFFFF; | |||
} | |||
.list { | |||
display: flex; | |||
flex-wrap: wrap; | |||
.item { | |||
width: 270rpx; | |||
margin: 20rpx; | |||
display: flex; | |||
flex-direction: column; | |||
padding: 40rpx 30rpx; | |||
background-color: #fff; | |||
border-radius: 30rpx; | |||
line-height: 60rpx; | |||
.name {} | |||
.num { | |||
color: $uni-color; | |||
font-weight: 600; | |||
font-size: 28rpx; | |||
} | |||
} | |||
&-desc { | |||
margin-top: 8rpx; | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 24rpx; | |||
line-height: 1.5; | |||
color: #F4F4F4; | |||
} | |||
} | |||
} | |||
.user { | |||
.line { | |||
display: flex; | |||
background-color: #fff; | |||
margin-top: 20rpx; | |||
padding: 20rpx 0; | |||
.item { | |||
flex: 1; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
padding: 20rpx 0; | |||
&:nth-child(1) { | |||
border-right: 1px solid #00000013; | |||
} | |||
.image { | |||
width: 100rpx; | |||
height: 70rpx; | |||
margin-right: 20rpx; | |||
} | |||
} | |||
} | |||
.grid { | |||
flex-direction: column; | |||
font-size: 26rpx; | |||
padding: 20rpx; | |||
.title { | |||
margin-bottom: 30rpx; | |||
.card { | |||
margin-top: 32rpx; | |||
width: 100%; | |||
background: #FAFAFF; | |||
border: 2rpx solid #FFFFFF; | |||
border-radius: 32rpx; | |||
box-sizing: border-box; | |||
.row { | |||
justify-content: space-between; | |||
width: 100%; | |||
padding: 40rpx; | |||
box-sizing: border-box; | |||
.label { | |||
font-family: PingFang SC; | |||
font-weight: 400; | |||
font-size: 28rpx; | |||
font-weight: 600; | |||
} | |||
.image { | |||
width: 70rpx; | |||
height: 70rpx; | |||
margin-bottom: 10rpx; | |||
} | |||
line-height: 1; | |||
color: #252545; | |||
text { | |||
text-align: center; | |||
width: 120rpx; | |||
.icon { | |||
margin-right: 16rpx; | |||
width: 40rpx; | |||
height: 40rpx; | |||
} | |||
} | |||
} | |||
} |