From b7ce92d35fde3704297163010c320e336a5dd681 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 13 一月 2026 10:17:16 +0800
Subject: [PATCH] 页面调整优化
---
pages/tabbar/user/utils/tool.vue | 359 +++++++------
pages/tabbar/user/my.vue | 694 ++++++++++++++------------
pages/kitchen/KitchenCover.vue | 6
pages/kitchen/KitchenCustomize.vue | 17
components/custom-tabbar.vue | 4
pages/tabbar/index/home.vue | 477 +++++++++--------
6 files changed, 818 insertions(+), 739 deletions(-)
diff --git a/components/custom-tabbar.vue b/components/custom-tabbar.vue
index 4713f8b..4894ea5 100644
--- a/components/custom-tabbar.vue
+++ b/components/custom-tabbar.vue
@@ -99,8 +99,10 @@
display: flex;
align-items: center;
justify-content: space-around;
- border-top: 1px solid #ededed;
+ border-top: 1rpx solid rgba(255, 255, 255, 0.1);
box-sizing: border-box;
+ backdrop-filter: blur(10px);
+ -webkit-backdrop-filter: blur(10px);
}
.tabbar-item {
diff --git a/pages/kitchen/KitchenCover.vue b/pages/kitchen/KitchenCover.vue
index 82ad194..69d646e 100644
--- a/pages/kitchen/KitchenCover.vue
+++ b/pages/kitchen/KitchenCover.vue
@@ -7,7 +7,7 @@
<!-- 搴曢儴鐣欏嚭瀵艰埅鏍忛珮搴︾殑绌洪棿 -->
<view class="safe-area-bottom"></view>
</scroll-view>
- <custom-tabbar bgColor="#ffffff" selected="kitchen"></custom-tabbar>
+ <custom-tabbar bgColor="rgba(0, 0, 0, 0.3)" selectedTextColor="#ffffff" selected="kitchen"></custom-tabbar>
</view>
</template>
@@ -43,7 +43,7 @@
height: 100vh;
position: relative;
overflow: hidden;
- background-color: #ffffff;
+ background-color: #000000;
}
.scroll-view {
@@ -59,7 +59,7 @@
.empty-text {
text-align: center;
padding-top: 300rpx;
- color: #999;
+ color: #ffffff;
font-size: 28rpx;
}
diff --git a/pages/kitchen/KitchenCustomize.vue b/pages/kitchen/KitchenCustomize.vue
index b1a4701..42f2fbf 100644
--- a/pages/kitchen/KitchenCustomize.vue
+++ b/pages/kitchen/KitchenCustomize.vue
@@ -9,7 +9,7 @@
<scroll-view class="tags-scroll" scroll-x="true" :show-scrollbar="false">
<view class="tags">
<view v-for="tag in tags" :key="tag.value" class="tag" :class="{ active: tag.selected }"
- @click="toggleTag(tag)">
+ :style="{ width: tags.length <= 4 ? (100 / tags.length) + '%' : '25%' }" @click="toggleTag(tag)">
<text>{{ tag.label }}</text>
</view>
</view>
@@ -218,7 +218,7 @@
}
.content {
- padding: 24rpx;
+ padding: 0 24rpx 0 24rpx;
}
.tags-scroll {
@@ -230,11 +230,12 @@
display: flex;
flex-wrap: nowrap;
padding: 10rpx 0;
+ width: 100%;
}
.tag {
height: 80rpx;
- display: inline-flex;
+ display: flex;
align-items: center;
justify-content: center;
font-size: 30rpx;
@@ -244,6 +245,7 @@
background-color: #f7f7f7;
white-space: nowrap;
flex-shrink: 0;
+ box-sizing: border-box;
}
.tag.active {
@@ -275,11 +277,11 @@
.product-info {
flex: 1;
- margin-left: 20rpx;
display: flex;
- align-items: center;
+ align-items: flex-end;
justify-content: space-between;
overflow: hidden; // 纭繚瀛愬厓绱犳孩鍑洪殣钘�
+ margin-top: 10rpx;
}
.product-top {
@@ -333,14 +335,19 @@
.product-price {
color: #ff573e;
+ display: flex;
+ align-items: flex-end;
.symbol {
font-size: 24rpx;
+ line-height: 1.2; // 绋嶅井璋冩暣琛岄珮浠ュ榻�
+ margin-bottom: 6rpx; // 绗﹀彿閫氬父杈冨皬锛屾墜鍔ㄥ井璋冧娇鍏剁湅璧锋潵鏇磋创鍚堝簳閮�
}
.value {
font-size: 50rpx;
font-weight: bold;
+ line-height: 1;
}
}
diff --git a/pages/tabbar/index/home.vue b/pages/tabbar/index/home.vue
index d38ceb0..3613931 100644
--- a/pages/tabbar/index/home.vue
+++ b/pages/tabbar/index/home.vue
@@ -1,10 +1,10 @@
<template>
<view class="video-container">
- <view class="fixed-float-window" @click="gotoPrizeActivity" v-if="prizeActivity.id">
- <!-- 鎮诞绐楀唴瀹癸細鍙浛鎹负鍥炬爣+鏂囧瓧/绾浘鏍�/鍥剧墖 -->
- <text style="font-size: 36rpx;">馃巵</text>
- <text class="float-text">鎶藉娲诲姩</text>
- </view>
+ <view class="fixed-float-window" @click="gotoPrizeActivity" v-if="prizeActivity.id">
+ <!-- 鎮诞绐楀唴瀹癸細鍙浛鎹负鍥炬爣+鏂囧瓧/绾浘鏍�/鍥剧墖 -->
+ <text style="font-size: 36rpx;">馃巵</text>
+ <text class="float-text">鎶藉娲诲姩</text>
+ </view>
<top-bar selectedTitleIndex="home" textColor="white" @changeTab="topBarChange" class="topBar"></top-bar>
<!-- 瑙嗛鍔犺浇 -->
@@ -271,21 +271,21 @@
import ActivityPopup from '@/pages/ActivityPopup/ActivityPopup.vue'
import { mapState, mapMutations } from 'vuex'
-import { setPopupRedisTime, getPopupAcitivty,hideActivityPopupToday } from '@/api/popup.js'
+import { setPopupRedisTime, getPopupAcitivty, hideActivityPopupToday } from '@/api/popup.js'
import { changeCollect } from "@/api/collect.js";
-import { saveShare, saveShareClickRecord} from "@/api/share.js";
-import { getSessionId, userAction,userShare } from "@/api/userAction.js";
+import { saveShare, saveShareClickRecord } from "@/api/share.js";
+import { getSessionId, userAction, userShare } from "@/api/userAction.js";
import { silentLogin } from "@/api/connect.js";
import { getUserInfo } from "@/api/members";
import storage from "@/utils/storage.js";
import TopBar from "@/components/TopBar.vue";
import { nextTick } from "vue";
import { getVideoCover } from "@/api/common.js"
-import {addPrizeNum} from '@/api/prize.js'
+import { addPrizeNum } from '@/api/prize.js'
import UIcon from "../../subComponents/uview-components/uview-ui/components/u-icon/u-icon.vue";
-import {getONPrizeActivity} from "../../../api/prize-activity";
+import { getONPrizeActivity } from "../../../api/prize-activity";
export default {
- components: {UIcon, TopBar, ActivityPopup },
+ components: { UIcon, TopBar, ActivityPopup },
computed: {
hasPlayTime() {
return this.sliderFormatTime(this.progress > 0 ? this.duration * this.progress / 100 : 0);
@@ -380,104 +380,104 @@
similarlyNomore: false, // 鏄惁杩樻湁鏇村鐩镐技瑙嗛
similaryVideoIndex: 0, // 鐩镐技瑙嗛鐨勬挱鏀句綅缃�
similarlyLoading: false, // 鐩镐技瑙嗛鍔犺浇
- marginBottom: 0 ,// 搴曢儴瀹夊叏鍖哄煙
- pageSessionNo:"",
- shareId:"",
- actionParam:{
- sessionId:'',
- actionType:"PAGE",
- joinType:"SELF",
- pageCode:"RECOMMEND_VIDEO",
- pageParams:"{}",
- pageStatus:"JOIN",
- pageType:"LIST"
- },
- shareParam:{
- pageCode:"RECOMMEND_VIDEO",
- shareOption:"{}",
- pageType:"LIST"
- },
- prizeActivity:{},
+ marginBottom: 0,// 搴曢儴瀹夊叏鍖哄煙
+ pageSessionNo: "",
+ shareId: "",
+ actionParam: {
+ sessionId: '',
+ actionType: "PAGE",
+ joinType: "SELF",
+ pageCode: "RECOMMEND_VIDEO",
+ pageParams: "{}",
+ pageStatus: "JOIN",
+ pageType: "LIST"
+ },
+ shareParam: {
+ pageCode: "RECOMMEND_VIDEO",
+ shareOption: "{}",
+ pageType: "LIST"
+ },
+ prizeActivity: {},
}
},
onShow() {
- getSessionId().then(res=>{
+ getSessionId().then(res => {
console.log('鎵ц浜唎nshow')
- if (res.statusCode === 200){
- this.pageSessionNo = res.data.data
- if(this.pageSessionNo){
- let param = Object.assign({},this.actionParam);
- console.log("鎵撳嵃param",param)
- this.actionParam.sessionId = this.pageSessionNo
- console.log("鎵撳嵃this.actionParam",this.actionParam)
- param.sessionId = this.pageSessionNo
- userAction(param)
- }
- this.getONPrizeActivity()
- let showPopup = storage.getPopupShow();
- console.log(showPopup)
- if (showPopup) {
- console.log("棣栨鎵撳紑锛屾樉绀哄脊绐�");
- storage.setPopupShow(true); // 鏍囪涓哄凡鏄剧ず
- } else {
- console.log("宸叉樉绀鸿繃锛屼笉寮圭獥");
- }
- if(showPopup){
- this.openActivityPopup()
- }
- if (!this.userId) {
- this.getUserId()
- }
- // const token = storage.getAccessToken();
- // if (! token) {
- // this.wxSilentLogin(() => {
- // this.loadVideos();
- // })
- // } else {
- // this.loadVideos();
- // }
- if (this.videoList.length < 1) {
- this.loading = false;
- this.videoNoMore = false;
- console.log('瑙﹀彂鏁版嵁鍔犺浇')
- this.loadVideos();
- }
- // 濡傛灉瑙嗛鎸変笅鏆傚仠鍚庡垏鎹㈤〉闈㈠啀鍥炲埌椤甸潰鏃讹紝鍙畻鏆傚仠鏃堕棿锛堝洜涓烘殏鍋滄椂闂村拰绂诲紑椤甸潰鏃堕棿鏄噸澶嶇殑锛屽彧绠椾竴涓級
- if (this.startHidenTime !== 0 && this.currentVideoIsPlaying) {
- const duration = Date.now() - this.startHidenTime
- this.totalHidenTime += duration
- }
+ if (res.statusCode === 200) {
+ this.pageSessionNo = res.data.data
+ if (this.pageSessionNo) {
+ let param = Object.assign({}, this.actionParam);
+ console.log("鎵撳嵃param", param)
+ this.actionParam.sessionId = this.pageSessionNo
+ console.log("鎵撳嵃this.actionParam", this.actionParam)
+ param.sessionId = this.pageSessionNo
+ userAction(param)
+ }
+ this.getONPrizeActivity()
+ let showPopup = storage.getPopupShow();
+ console.log(showPopup)
+ if (showPopup) {
+ console.log("棣栨鎵撳紑锛屾樉绀哄脊绐�");
+ storage.setPopupShow(true); // 鏍囪涓哄凡鏄剧ず
+ } else {
+ console.log("宸叉樉绀鸿繃锛屼笉寮圭獥");
+ }
+ if (showPopup) {
+ this.openActivityPopup()
+ }
+ if (!this.userId) {
+ this.getUserId()
+ }
+ // const token = storage.getAccessToken();
+ // if (! token) {
+ // this.wxSilentLogin(() => {
+ // this.loadVideos();
+ // })
+ // } else {
+ // this.loadVideos();
+ // }
+ if (this.videoList.length < 1) {
+ this.loading = false;
+ this.videoNoMore = false;
+ console.log('瑙﹀彂鏁版嵁鍔犺浇')
+ this.loadVideos();
+ }
+ // 濡傛灉瑙嗛鎸変笅鏆傚仠鍚庡垏鎹㈤〉闈㈠啀鍥炲埌椤甸潰鏃讹紝鍙畻鏆傚仠鏃堕棿锛堝洜涓烘殏鍋滄椂闂村拰绂诲紑椤甸潰鏃堕棿鏄噸澶嶇殑锛屽彧绠椾竴涓級
+ if (this.startHidenTime !== 0 && this.currentVideoIsPlaying) {
+ const duration = Date.now() - this.startHidenTime
+ this.totalHidenTime += duration
+ }
- }
+ }
})
},
- onUnload() {
- let param = Object.assign({},this.actionParam);
- if (this.sendOnShow)return
- param.pageStatus = "LEAVE"
- // if (this.isNotEmpty(param.sessionId)){
- console.log(param)
- console.log("onUnload绂诲紑椤甸潰寮�濮嬭褰�")
- //TODO 椤甸潰鍒锋柊 瀵艰嚧onshow鏈墽琛岋紝瀵艰嚧sessionId鏈祴鍊�
- userAction(param)
- // }
+ onUnload() {
+ let param = Object.assign({}, this.actionParam);
+ if (this.sendOnShow) return
+ param.pageStatus = "LEAVE"
+ // if (this.isNotEmpty(param.sessionId)){
+ console.log(param)
+ console.log("onUnload绂诲紑椤甸潰寮�濮嬭褰�")
+ //TODO 椤甸潰鍒锋柊 瀵艰嚧onshow鏈墽琛岋紝瀵艰嚧sessionId鏈祴鍊�
+ userAction(param)
+ // }
- },
- onHide() {
- this.startHidenTime = Date.now()
- let param = Object.assign({},this.actionParam);
- this.sendOnShow = true;
- param.pageStatus = "LEAVE"
- console.log("鎵цonHide鐨剈serAction")
- userAction(param)
- },
+ },
+ onHide() {
+ this.startHidenTime = Date.now()
+ let param = Object.assign({}, this.actionParam);
+ this.sendOnShow = true;
+ param.pageStatus = "LEAVE"
+ console.log("鎵цonHide鐨剈serAction")
+ userAction(param)
+ },
onLoad(option) {
console.log('瑙﹀彂onLoad')
- if(option.shareId){
-
+ if (option.shareId) {
+
this.actionParam.shareId = option.shareId;
this.actionParam.joinType = 'SHARE'
uni.setStorage({
@@ -488,15 +488,15 @@
}
});
}
- const shareId = uni.getStorageSync("shareId");
- if(shareId){
- let param = {
- addType:"SHARE_USER_REGISTRY",
- extend:"",
- }
- let extend = {shareId:shareId}
- param.extend = JSON.stringify(extend)
- addPrizeNum(param);
+ const shareId = uni.getStorageSync("shareId");
+ if (shareId) {
+ let param = {
+ addType: "SHARE_USER_REGISTRY",
+ extend: "",
+ }
+ let extend = { shareId: shareId }
+ param.extend = JSON.stringify(extend)
+ addPrizeNum(param);
}
console.log('-----------鍒嗕韩鍑虹殑鏁版嵁---------->', option)
//澶勭悊鎵爜鍑烘潵鐨勮棰�
@@ -515,7 +515,7 @@
queryParam.videoId = videoId
this.actionParam.joinType = "SCAN";
this.actionParam.pageParams = JSON.stringify(params);
-
+
console.log('瑙f瀽鍙傛暟:', { shareType, videoId });
}
const token = storage.getAccessToken();
@@ -572,86 +572,86 @@
// 杩斿洖涓�涓狿romise
return new Promise((resolve) => {
- this.shareId = '';
- let shareObj ={
- videoId:videoInfo.id,
- userId:userInfo.id
+ this.shareId = '';
+ let shareObj = {
+ videoId: videoInfo.id,
+ userId: userInfo.id
+ }
+ this.shareParam.shareOption = JSON.stringify(shareObj)
+ userShare(this.shareParam).then(res => {
+ this.shareId = res.data.data;
+ let param = {
+ addType: "SHARE_GOODS_VIDEO",
+ extend: "",
+ }
+ let extend = { shareId: this.shareId }
+ param.extend = JSON.stringify(extend)
+ addPrizeNum(param);
+ // 褰撹幏鍙栧埌shareId鍚庯紝鍐峳esolve鍒嗕韩閰嶇疆
+ resolve({
+ title: videoInfo.title,
+ path: `/pages/tabbar/index/home?videoId=${videoInfo.id}&userId=${userInfo.id}&shareId=${this.shareId}`,
+ imageUrl: videoInfo.coverUrl,
+ success(e) {
+ console.log("鍒嗕韩鎴愬姛", e);
+ },
+ fail(e) {
+ console.log('鍒嗕韩澶辫触', e);
}
- this.shareParam.shareOption = JSON.stringify(shareObj)
- userShare(this.shareParam).then(res => {
- this.shareId = res.data.data;
- let param = {
- addType:"SHARE_GOODS_VIDEO",
- extend:"",
- }
- let extend = {shareId:this.shareId}
- param.extend = JSON.stringify(extend)
- addPrizeNum(param);
- // 褰撹幏鍙栧埌shareId鍚庯紝鍐峳esolve鍒嗕韩閰嶇疆
- resolve({
- title: videoInfo.title,
- path: `/pages/tabbar/index/home?videoId=${videoInfo.id}&userId=${userInfo.id}&shareId=${this.shareId}`,
- imageUrl: videoInfo.coverUrl,
- success(e) {
- console.log("鍒嗕韩鎴愬姛", e);
- },
- fail(e) {
- console.log('鍒嗕韩澶辫触', e);
- }
- });
- }).catch(err => {
- // 澶勭悊閿欒鎯呭喌锛屼緥濡備娇鐢ㄩ粯璁ゅ弬鏁�
- console.error('鑾峰彇鍒嗕韩ID澶辫触', err);
- resolve({
- title: videoInfo.title,
- path: `/pages/tabbar/index/home?videoId=${videoInfo.id}&userId=${userInfo.id}`,
- imageUrl: videoInfo.coverUrl
- });
- });
+ });
+ }).catch(err => {
+ // 澶勭悊閿欒鎯呭喌锛屼緥濡備娇鐢ㄩ粯璁ゅ弬鏁�
+ console.error('鑾峰彇鍒嗕韩ID澶辫触', err);
+ resolve({
+ title: videoInfo.title,
+ path: `/pages/tabbar/index/home?videoId=${videoInfo.id}&userId=${userInfo.id}`,
+ imageUrl: videoInfo.coverUrl
+ });
+ });
});
},
methods: {
- isNotEmpty(value) {
- if (value === null || value === undefined) {
- return false;
- }
- if (typeof value === 'string') {
- return value.trim() !== '';
- }
- return true;
- },
- getONPrizeActivity(){
- getONPrizeActivity().then(res =>{
- if(res.statusCode=== 200){
- //鍚庣娌℃煡鍒板紑鍚殑鎶藉娲诲姩 res.data.data.id鍊间负null
- this.prizeActivity = res.data.data; // 瀛樺偍瀹屾暣娲诲姩鏁版嵁
- if (this.prizeActivity.endTime) {
- }else {
- this.prizeActivity = {}; // 鏃犳椿鍔ㄦ椂娓呯┖
- }
- }
- })
- },
- gotoPrizeActivity(){
- uni.navigateTo({
- url:'/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivity.id,
- });
- },
+ isNotEmpty(value) {
+ if (value === null || value === undefined) {
+ return false;
+ }
+ if (typeof value === 'string') {
+ return value.trim() !== '';
+ }
+ return true;
+ },
+ getONPrizeActivity() {
+ getONPrizeActivity().then(res => {
+ if (res.statusCode === 200) {
+ //鍚庣娌℃煡鍒板紑鍚殑鎶藉娲诲姩 res.data.data.id鍊间负null
+ this.prizeActivity = res.data.data; // 瀛樺偍瀹屾暣娲诲姩鏁版嵁
+ if (this.prizeActivity.endTime) {
+ } else {
+ this.prizeActivity = {}; // 鏃犳椿鍔ㄦ椂娓呯┖
+ }
+ }
+ })
+ },
+ gotoPrizeActivity() {
+ uni.navigateTo({
+ url: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivity.id,
+ });
+ },
async openActivityPopup() {
await getPopupAcitivty().then(res => {
if (res.statusCode === 200) {
- //璇锋眰鎴愬姛淇敼寮圭獥灞曠ず鐘舵�� 涓篺alse
- storage.setPopupShow(false);
+ //璇锋眰鎴愬姛淇敼寮圭獥灞曠ず鐘舵�� 涓篺alse
+ storage.setPopupShow(false);
let obj = res.data.data;
if (obj.enableStatus === 'ON') {
- this.showActivityPopup({
- title: obj.activityName,
- desc: obj.activityDes,
- image: obj.activityCoverUrl,
- endTime: new Date(obj.endTime).getTime(),
- prizeActivityId: obj.id
- })
+ this.showActivityPopup({
+ title: obj.activityName,
+ desc: obj.activityDes,
+ image: obj.activityCoverUrl,
+ endTime: new Date(obj.endTime).getTime(),
+ prizeActivityId: obj.id
+ })
// setPopupRedisTime().then(res => {
// if (res.statusCode === 200) {
// if (res.data.state) {
@@ -665,7 +665,7 @@
// } else {
// this.hideActivityPopup()
// }
- //
+ //
// }
// });
}
@@ -681,8 +681,7 @@
this.hideActivityPopup()
},
replyClick(reply) {
-
- if (this.userId === reply.userId) {
+ if (this.userId === reply.userId) {
let that = this;
uni.showModal({
title: '鎻愮ず',
@@ -2020,82 +2019,94 @@
left: 20rpx;
z-index: 1000
}
+
.fixed-float-window {
- position: fixed;
- right: 20rpx;
- top: 10%;
- z-index: 1000;
- width: 150rpx;
- height: 150rpx;
- border-radius: 50%;
- box-shadow: 0 10rpx 16rpx rgba(110, 103, 103, 0.4);
- background-color: rgba(50, 48, 48, 0.7); /* 鍔犳繁涓讳綋鑳屾櫙锛屽寮哄姣� */
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- transition: all 0.2s ease;
- overflow: visible;
+ position: fixed;
+ right: 20rpx;
+ top: 10%;
+ z-index: 1000;
+ width: 150rpx;
+ height: 150rpx;
+ border-radius: 50%;
+ box-shadow: 0 10rpx 16rpx rgba(110, 103, 103, 0.4);
+ background-color: rgba(50, 48, 48, 0.7);
+ /* 鍔犳繁涓讳綋鑳屾櫙锛屽寮哄姣� */
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ transition: all 0.2s ease;
+ overflow: visible;
}
/* 鍐呭眰涓诲厜鍦堬紙绮楃嚎鏉�+寮哄姣旓級 */
.fixed-float-window::after {
- content: "";
- position: absolute;
- width: calc(100% + 25rpx);
- height: calc(100% + 25rpx);
- border-radius: 50%;
- /* 閲戣壊娓愬彉杈规锛岀嚎鏉″姞绮楄嚦5rpx */
- border: 5rpx solid transparent;
- border-top-color: rgba(255, 215, 0, 0.9);
- border-right-color: rgba(255, 180, 0, 0.6);
- border-bottom-color: rgba(255, 215, 0, 0.9);
- border-left-color: rgba(255, 180, 0, 0.6);
- /* 鍔犲揩鏃嬭浆閫熷害锛�4绉掍竴鍦堬級 */
- animation: rotate 4s linear infinite;
- pointer-events: none;
+ content: "";
+ position: absolute;
+ width: calc(100% + 25rpx);
+ height: calc(100% + 25rpx);
+ border-radius: 50%;
+ /* 閲戣壊娓愬彉杈规锛岀嚎鏉″姞绮楄嚦5rpx */
+ border: 5rpx solid transparent;
+ border-top-color: rgba(255, 215, 0, 0.9);
+ border-right-color: rgba(255, 180, 0, 0.6);
+ border-bottom-color: rgba(255, 215, 0, 0.9);
+ border-left-color: rgba(255, 180, 0, 0.6);
+ /* 鍔犲揩鏃嬭浆閫熷害锛�4绉掍竴鍦堬級 */
+ animation: rotate 4s linear infinite;
+ pointer-events: none;
}
/* 澶栧眰鎵╂暎鍏夋晥锛堝寮哄瓨鍦ㄦ劅锛� */
.fixed-float-window::before {
- content: "";
- position: absolute;
- width: calc(100% + 25rpx);
- height: calc(100% + 25rpx);
- border-radius: 50%;
- /* 妯$硦鍏夋晥 */
- background: radial-gradient(circle, rgba(255,215,0,0.5) 0%, rgba(255,215,0,0) 70%);
- /* 鍛煎惛寮忕缉鏀惧姩鐢� */
- animation: pulse 3s ease-in-out infinite;
- pointer-events: none;
+ content: "";
+ position: absolute;
+ width: calc(100% + 25rpx);
+ height: calc(100% + 25rpx);
+ border-radius: 50%;
+ /* 妯$硦鍏夋晥 */
+ background: radial-gradient(circle, rgba(255, 215, 0, 0.5) 0%, rgba(255, 215, 0, 0) 70%);
+ /* 鍛煎惛寮忕缉鏀惧姩鐢� */
+ animation: pulse 3s ease-in-out infinite;
+ pointer-events: none;
}
/* 鏃嬭浆鍔ㄧ敾 */
@keyframes rotate {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(360deg); }
+ 0% {
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ transform: rotate(360deg);
+ }
}
/* 鍛煎惛鎵╂暎鍔ㄧ敾 */
@keyframes pulse {
- 0%, 100% {
- transform: scale(1);
- opacity: 0.3;
- }
- 50% {
- transform: scale(1.15);
- opacity: 0.6;
- }
+
+ 0%,
+ 100% {
+ transform: scale(1);
+ opacity: 0.3;
+ }
+
+ 50% {
+ transform: scale(1.15);
+ opacity: 0.6;
+ }
}
.float-text {
- color: rgba(255, 215, 0, 0.95); /* 鏂囧瓧鏇翠寒 */
- font-size: 26rpx;
- font-weight: bold; /* 鍔犵矖鏂囧瓧 */
- margin-top: 8rpx;
+ color: rgba(255, 215, 0, 0.95);
+ /* 鏂囧瓧鏇翠寒 */
+ font-size: 26rpx;
+ font-weight: bold;
+ /* 鍔犵矖鏂囧瓧 */
+ margin-top: 8rpx;
}
.fixed-float-window:active {
- transform: scale(0.95);
+ transform: scale(0.95);
}
</style>
diff --git a/pages/tabbar/user/my.vue b/pages/tabbar/user/my.vue
index a6c78d1..90c3ead 100644
--- a/pages/tabbar/user/my.vue
+++ b/pages/tabbar/user/my.vue
@@ -1,159 +1,140 @@
<template>
<view class="user">
<!-- 涓汉淇℃伅 -->
- <view class="status_bar">
- <!-- 杩欓噷鏄姸鎬佹爮 -->
- </view>
- <view class="header" @click="userDetail" :style="{ backgroundImage: `url(${base64image2.userInfoBg})` }">
- <view class="head-1">
- <image v-if="userInfo.face" :src="endpoint + '/' + userInfo.face"></image>
- <image v-else :src="userImage"></image>
+ <view class="header-wrapper" @click="userDetail"
+ :style="{ backgroundColor: '#e9cc80', backgroundImage: `url(${base64image2.userInfoBg})` }">
+ <view class="status_bar">
+ <!-- 杩欓噷鏄姸鎬佹爮 -->
</view>
- <view class="head-2" v-if="userInfo.id">
- <view class="user-name">{{ userInfo.nickName }}</view>
+ <view class="header">
+ <view class="head-1">
+ <image v-if="userInfo.face" :src="endpoint + '/' + userInfo.face"></image>
+ <image v-else :src="userImage"></image>
+ </view>
+ <view class="head-2" v-if="userInfo.id">
+ <view class="user-name">{{ userInfo.nickName }}</view>
+ <!-- <view class="member-name"> 浼氬憳鍚�: {{ userInfo.username ? userInfo.username : '鏈缃�' }}</view> -->
+ </view>
+ <view class="head-2" v-else>
+ <view class="user-name">鐧诲綍/娉ㄥ唽</view>
+ </view>
+ <u-icon style="display: flex;align-items: flex-start;" name="arrow-right"></u-icon>
</view>
- <view class="head-2" v-else>
- <view class="user-name">鐧诲綍/娉ㄥ唽</view>
- </view>
- <u-icon style="display: flex;align-items: flex-start;" name="arrow-right"></u-icon>
- </view>
- <!-- <button type="default" @click="goTOSuccess">绔嬪嵆鏌ョ湅</button> -->
- <view class="member-gradient-bg" v-if="prizeActivity.enableStatus === 'ON'"
- :style="{ backgroundImage: `url(${base64image.prizeActivityBg})` }"
- >
- <view class="member-gradient-bg" @click="gotoPrizeActivity" >
- <!-- <view class="activity-content">
-
- <view class="activity-icon">
- <view class="floating-btn-content">
- <text class="floating-btn-icon">馃巵</text>
+
+ <!-- 绉垎锛屼紭鎯犲埜锛屽叧娉紝 -->
+ <div class="pointBox1">
+ <view class="point">
+ <view class="point-col" @click="navigateTo('/pages/cart/coupon/myCoupon')">
+ <view class="point-item">
+ <text class="label">浼樻儬鍒�</text>
+ <text class="value">{{ couponNum || 0 }}</text>
+ <text class="label">寮�</text>
+ </view>
</view>
-
+ <view class="point-col" @click="navigateTo('/pages/mine/deposit/operation')">
+ <view class="point-item">
+ <text class="label">浣欓</text>
+ <text class="value">{{ walletNum | unitPrice }}</text>
+ </view>
+ </view>
</view>
-
- <view class="activity-info">
- <p class="activity-name">{{ prizeActivity.activityName }}</p>
- <p class="activity-desc">{{ prizeActivity.activityDes }}</p>
- <p class="activity-desc">{{ formatDate(prizeActivity.beginTime) }} - {{ formatDate(prizeActivity.endTime)}}</p>
+ <!-- 鎴戠殑璁㈠崟锛屼唬浠樻 -->
+ <view class="order">
+ <view class="order-header" @click="navigateTo('/pages/order/myOrder?status=0')">
+ <view class="left">鎴戠殑璁㈠崟</view>
+ <view class="right">
+ <text>鍏ㄩ儴璁㈠崟</text>
+ <u-icon name="arrow-right" size="24" color="#999"></u-icon>
+ </view>
+ </view>
+ <view class="order-content">
+ <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=1')">
+ <view class="icon-box">
+ <image src="/static/tool/寰呬粯娆�.png" mode="aspectFit"></image>
+ </view>
+ <view>寰呬粯娆�</view>
+ </view>
+ <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=2')">
+ <view class="icon-box">
+ <image src="/static/tool/寰呭彂璐�.png" mode="aspectFit"></image>
+ </view>
+ <view>寰呭彂璐�</view>
+ </view>
+ <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=3')">
+ <view class="icon-box">
+ <image src="/static/tool/寰呮敹璐�.png" mode="aspectFit"></image>
+ </view>
+ <view>寰呮敹璐�</view>
+ </view>
+ <view class="order-item" @click="navigateTo('/pages/order/evaluate/myEvaluate')">
+ <view class="icon-box">
+ <image src="/static/tool/璇勪环涓績.png" mode="aspectFit"></image>
+ </view>
+ <view>寰呰瘎浠�</view>
+ </view>
+ <view class="order-item" @click="navigateTo('/pages/order/afterSales/afterSales')">
+ <view class="icon-box">
+ <image src="/static/tool/鎴戠殑璁㈠崟-閫�璐鍞悗.png" mode="aspectFit"></image>
+ </view>
+ <view>鍞悗</view>
+ </view>
+ </view>
</view>
- <view class="activity-enter">
- <text class="enter-text">绔嬪嵆鍙備笌</text>
- <u-icon name="arrow-right"></u-icon>
- </view>
- </view> -->
+ </div>
</view>
- </view>
- <!-- 绉垎锛屼紭鎯犲埜锛屽叧娉紝 -->
- <div class="pointBox box">
- <u-row text-align="center" gutter="16" class="point">
- <u-col text-align="center" span="4" @click="navigateTo('/pages/mine/deposit/operation')">
- <view>浣欓</view>
- <view class="money">{{ walletNum | unitPrice }}</view>
- </u-col>
+ <view class="member-gradient-bg" v-if="prizeActivity.enableStatus === 'ON'"
+ :style="{ backgroundImage: `url(${base64image.prizeActivityBg})` }">
+ <view class="member-gradient-bg" @click="gotoPrizeActivity">
+ </view>
+ </view>
- <u-col text-align="center" span="4" @click="navigateTo('/pages/cart/coupon/myCoupon')">
- <view>浼樻儬鍒�</view>
- <view>{{ couponNum || 0 }}</view>
- </u-col>
- <u-col text-align="center" span="4" @click="navigateTo('/pages/mine/myTracks')">
- <view>瓒宠抗</view>
- <view>{{ footNum || 0 }}</view>
- </u-col>
- </u-row>
- <!-- 鎴戠殑璁㈠崟锛屼唬浠樻 -->
- <view class="order">
- <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=1')">
- <div class="bag bag2">
- <u-icon name="bag-fill" size="35" color="#fff"></u-icon>
- </div>
- <view>寰呬粯娆�</view>
+ <!-- 瑙嗛鐩稿叧锛� -->
+ <!-- <div class="pointBox box" style="margin-top: 20rpx;">
+ <view class="order-content">
+ <view class="order-item" @click="jumpToVideoHome()">
+ <view class="icon-box">
+ <text class="iconfont"></text>
+ </view>
+ <view>鎴戠殑瑙嗛</view>
</view>
- <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=3')">
- <div class="bag bag3">
- <u-icon name="car-fill" size="35" color="#fff"></u-icon>
- </div>
- <view>寰呮敹璐�</view>
+ <view class="order-item" @click="navigateTo('/pages/mine/myAttention')">
+ <view class="icon-box">
+ <image src="/static/mine/myfavorite.png" mode="aspectFit"></image>
+ </view>
+ <view>鎴戠殑鍏虫敞</view>
</view>
- <view class="order-item" @click="navigateTo('/pages/order/evaluate/myEvaluate')">
- <div class="bag bag4">
- <u-icon name="star-fill" size="35" color="#fff"></u-icon>
- </div>
- <view>寰呰瘎浠�</view>
- </view>
- <view class="order-item" @click="navigateTo('/pages/order/afterSales/afterSales')">
- <div class="bag bag5">
- <u-icon name="server-fill" size="35" color="#fff"></u-icon>
- </div>
- <view>鍞悗</view>
- </view>
- <view class="order-item" @click="navigateTo('/pages/order/myOrder?status=0')">
- <div class="bag bag1">
- <u-icon name="order" size="35" color="#fff"></u-icon>
- </div>
- <view>鎴戠殑璁㈠崟</view>
+ <view class="order-item" @click="navigateTo('/pages/mine/activity/myActivity')">
+ <view class="icon-box">
+ <image src="/static/mine/prize-activity.png" mode="aspectFit"></image>
+ </view>
+ <view>鎴戠殑娲诲姩</view>
</view>
</view>
- </div>
-
- <!-- 瑙嗛鐩稿叧锛� -->
- <div class="pointBox box" style="margin-top: 20rpx;">
- <view class="order">
- <view class="order-item" @click="jumpToVideoHome()">
- <view>
- <text class="iconfont"></text>
- </view>
- <view>鎴戠殑瑙嗛</view>
- </view>
- <view class="order-item" @click="navigateTo('/pages/mine/myAttention')">
- <view>
- <text class="iconfont"></text>
- </view>
- <view>鎴戠殑鍏虫敞</view>
- </view>
-<!-- <view class="order-item" @click="navigateTo('/pages/mine/myCollect/myCollect')">
- <view>
- <text class="iconfont"></text>
- </view>
- <view>鏀惰棌鍒楄〃</view>
- </view -->
- <view class="order-item" @click="navigateTo('/pages/mine/activity/myActivity')">
- <view>
- <text class="iconfont"></text>
- </view>
- <view>鎴戠殑娲诲姩</view>
- </view>
-<!-- <view class="order-item" @click="navigateTo('/pages/mine/myTracks')">
- <view>
- <text class="iconfont"></text>
- </view>
- <view>娴忚璁板綍</view>
- </view> -->
- </view>
- </div>
-
+ </div> -->
+
<!-- 甯哥敤宸ュ叿 -->
- <view class="pointBox box" style="margin-top: 20rpx;">
- <tool />
- </view>
+ <view class="pointBox box" style="margin-top: 20rpx;">
+ <tool />
+ </view>
<!-- 鎾戣捣涓嬫柟 -->
- <view style="height:64px;">
-
- </view>
- <custom-tabbar bgColor="#ffffff" selected="my"></custom-tabbar>
-
+ <view style="height:64px;">
+
+ </view>
+ <custom-tabbar bgColor="#ffffff" selected="my"></custom-tabbar>
+
</view>
</template>
<script>
import '@/pages/subComponents/uview-components/uview-ui';
import tool from "@/pages/tabbar/user/utils/tool.vue";
import { getSTSToken } from "@/api/common.js";
-import { getCouponsNum, getFootprintNum,bindMemberAndStore } from "@/api/members.js";
+import { getCouponsNum, getFootprintNum, bindMemberAndStore } from "@/api/members.js";
import { getUserWallet } from "@/api/members";
import configs from '@/config/config'
import storage from '@/utils/storage.js'
import { getSessionId, userAction } from "@/api/userAction.js";
-import {getONPrizeActivity} from "@/api/prize-activity";
+import { getONPrizeActivity } from "@/api/prize-activity";
import UIcon from "../../subComponents/uview-components/uview-ui/components/u-icon/u-icon.vue";
import base64image from '@/static/mine/base64image.js';
import base64image2 from '@/static/mine/base64image2.js';
@@ -164,12 +145,12 @@
},
data() {
return {
- base64image,
- base64image2,
+ base64image,
+ base64image2,
prizeActivity: {},
- endpoint: '',
+ endpoint: '',
configs,
- userImage:configs.defaultUserPhoto,
+ userImage: configs.defaultUserPhoto,
coverTransform: "translateY(0px)",
coverTransition: "0s",
moving: false,
@@ -177,16 +158,16 @@
couponNum: "",
footNum: "",
walletNum: "",
- pageSessionNo:"",
- actionParam:{
- sessionId:'',
- actionType:"PAGE",
- joinType:"SELF",
- pageCode:"TBA_BAR_MY",
- pageParams:"{}",
- pageStatus:"JOIN",
- pageType:"DETAIL"
- }
+ pageSessionNo: "",
+ actionParam: {
+ sessionId: '',
+ actionType: "PAGE",
+ joinType: "SELF",
+ pageCode: "TBA_BAR_MY",
+ pageParams: "{}",
+ pageStatus: "JOIN",
+ pageType: "DETAIL"
+ }
};
},
onLoad(option) {
@@ -224,35 +205,35 @@
}
}
this.initCOS()
- },
+ },
onUnload() {
- let param = Object.assign({}, this.actionParam);
- if (this.sendOnShow)return
+ let param = Object.assign({}, this.actionParam);
+ if (this.sendOnShow) return
param.pageStatus = "LEAVE"
userAction(param)
},
onHide() {
this.startHidenTime = Date.now()
- let param =Object.assign({}, this.actionParam);
+ let param = Object.assign({}, this.actionParam);
this.sendOnShow = true;
param.pageStatus = "LEAVE"
userAction(param)
},
// onLoad(options) {
- //
- // this.initCOS()
+ //
+ // this.initCOS()
// },
onShow() {
this.getONPrizeActivity();
- getSessionId().then(res=>{
- this.pageSessionNo = res.data.data
- this.actionParam.sessionId = res.data.data
- if(this.pageSessionNo){
- let param = Object.assign({}, this.actionParam);
- param.sessionId = this.pageSessionNo
- userAction(param)
- }
- })
+ getSessionId().then(res => {
+ this.pageSessionNo = res.data.data
+ this.actionParam.sessionId = res.data.data
+ if (this.pageSessionNo) {
+ let param = Object.assign({}, this.actionParam);
+ param.sessionId = this.pageSessionNo
+ userAction(param)
+ }
+ })
this.userInfo = this.$options.filters.isLogin() || {};
if (this.$options.filters.isLogin("auth")) {
@@ -263,15 +244,15 @@
this.footNum = 0;
}
- let shareStoreId = uni.getStorageSync('shareStoreId');
- let shareTime = uni.getStorageSync('shareTime');
- console.log('浠庣紦瀛樿鍙栧弬鏁�:', { shareStoreId, shareTime });
- if (shareStoreId && shareTime) {
- console.log('妫�娴嬪埌鏈夋晥鍙傛暟锛岃皟鐢ㄥ悗绔帴鍙�');
- this.bindMemberAndStore(shareStoreId, shareTime);
- } else {
- console.log('鏃犳湁鏁堝弬鏁帮紝鎵ц姝e父閫昏緫');
- }
+ let shareStoreId = uni.getStorageSync('shareStoreId');
+ let shareTime = uni.getStorageSync('shareTime');
+ console.log('浠庣紦瀛樿鍙栧弬鏁�:', { shareStoreId, shareTime });
+ if (shareStoreId && shareTime) {
+ console.log('妫�娴嬪埌鏈夋晥鍙傛暟锛岃皟鐢ㄥ悗绔帴鍙�');
+ this.bindMemberAndStore(shareStoreId, shareTime);
+ } else {
+ console.log('鏃犳湁鏁堝弬鏁帮紝鎵ц姝e父閫昏緫');
+ }
},
onPullDownRefresh() {
this.getUserOrderNum();
@@ -297,42 +278,42 @@
const day = String(date.getDate()).padStart(2, '0');
return `${year}骞�${month}鏈�${day}鏃; // 杞崲涓轰腑鏂囨牸寮�
},
- getONPrizeActivity(){
- getONPrizeActivity().then(res =>{
- if(res.statusCode=== 200){
+ getONPrizeActivity() {
+ getONPrizeActivity().then(res => {
+ if (res.statusCode === 200) {
//鍚庣娌℃煡鍒板紑鍚殑鎶藉娲诲姩 res.data.data.id鍊间负null
this.prizeActivity = res.data.data; // 瀛樺偍瀹屾暣娲诲姩鏁版嵁
if (this.prizeActivity.endTime) {
- }else {
+ } else {
this.prizeActivity = {}; // 鏃犳椿鍔ㄦ椂娓呯┖
}
}
})
},
- gotoPrizeActivity(){
+ gotoPrizeActivity() {
uni.navigateTo({
- url:'/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivity.id,
+ url: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivity.id,
});
},
- // 瑙f瀽URL鍙傛暟
- parseUrlParams(url) {
- const params = {};
- // 澶勭悊鍙兘瀛樺湪鐨刪ash锛堝鏋滄湁鐨勮瘽锛�
- const cleanUrl = url.split('#')[0];
- const queryStr = cleanUrl.split('?')[1] || '';
+ // 瑙f瀽URL鍙傛暟
+ parseUrlParams(url) {
+ const params = {};
+ // 澶勭悊鍙兘瀛樺湪鐨刪ash锛堝鏋滄湁鐨勮瘽锛�
+ const cleanUrl = url.split('#')[0];
+ const queryStr = cleanUrl.split('?')[1] || '';
- queryStr.split('&').forEach(pair => {
- const [key, value] = pair.split('=');
- if (key) {
- // 濡傛灉鍊煎瓨鍦紝鍒欒В鐮侊紝鍚﹀垯璁句负绌哄瓧绗︿覆
- params[key] = value ? decodeURIComponent(value) : '';
- }
- });
+ queryStr.split('&').forEach(pair => {
+ const [key, value] = pair.split('=');
+ if (key) {
+ // 濡傛灉鍊煎瓨鍦紝鍒欒В鐮侊紝鍚﹀垯璁句负绌哄瓧绗︿覆
+ params[key] = value ? decodeURIComponent(value) : '';
+ }
+ });
- return params;
- },
- async bindMemberAndStore(shareStoreId, shareTime){
- let form ={
+ return params;
+ },
+ async bindMemberAndStore(shareStoreId, shareTime) {
+ let form = {
shareStoreId: shareStoreId,
shareTime: shareTime
}
@@ -342,36 +323,36 @@
// }
try {
const res = await bindMemberAndStore(form);
- if(res.statusCode === 200){
+ if (res.statusCode === 200) {
//娓呴櫎缂撳瓨
uni.removeStorageSync('shareStoreId');
uni.removeStorageSync('shareTime');
}
}
- catch(error) {
+ catch (error) {
console.error('鍑洪敊:', error);
};
},
- // goTOSuccess(){
- // uni.redirectTo({
- // url:"/pages/cart/payment/success?paymentMethod=WECHAT" +
- // "&payPrice=" +
- // 10,
- // });
- // },
- // 鍒濆鍖栬吘璁簯cos瀹㈡埛绔�
- initCOS() {
- // 璋冪敤鍚庣鑾峰彇sts涓存椂璁块棶鍑瘉
- getSTSToken().then(res => {
- this.endpoint = res.data.data.endpoint
- })
- },
- // 璺宠浆瑙嗛涓婚〉
- jumpToVideoHome() {
- uni.navigateTo({
- url: '/pages/video/home-page?authorId=' + storage.getUserInfo().id
- });
- },
+ // goTOSuccess(){
+ // uni.redirectTo({
+ // url:"/pages/cart/payment/success?paymentMethod=WECHAT" +
+ // "&payPrice=" +
+ // 10,
+ // });
+ // },
+ // 鍒濆鍖栬吘璁簯cos瀹㈡埛绔�
+ initCOS() {
+ // 璋冪敤鍚庣鑾峰彇sts涓存椂璁块棶鍑瘉
+ getSTSToken().then(res => {
+ this.endpoint = res.data.data.endpoint
+ })
+ },
+ // 璺宠浆瑙嗛涓婚〉
+ jumpToVideoHome() {
+ uni.navigateTo({
+ url: '/pages/video/home-page?authorId=' + storage.getUserInfo().id
+ });
+ },
/**
* 缁熶竴璺宠浆鎺ュ彛,鎷︽埅鏈櫥褰曡矾鐢�
* navigator鏍囩鐜板湪榛樿娌℃湁杞満鍔ㄧ敾锛屾墍浠ョ敤view
@@ -404,48 +385,56 @@
</script>
<style lang="scss" scoped>
- @import url("/pages/subComponents/static/bgStyle.css");
+@import url("/pages/subComponents/static/bgStyle.css");
+
html,
body {
overflow: auto;
}
- .floating-btn-content {
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- z-index: 1;
- position: relative;
- }
- .floating-btn-icon {
- font-size: 75rpx;
- color: white;
- filter: drop-shadow(0 2rpx 4rpx rgba(0, 0, 0, 0.2));
- margin-bottom: 5rpx;
- }
- .floating-btn-text {
- font-size: 20rpx;
- color: white;
- z-index: 1;
- position: relative;
- text-shadow: 0 1rpx 3rpx rgba(0, 0, 0, 0.2);
- white-space: nowrap;
- }
+
+.floating-btn-content {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ z-index: 1;
+ position: relative;
+}
+
+.floating-btn-icon {
+ font-size: 75rpx;
+ color: white;
+ filter: drop-shadow(0 2rpx 4rpx rgba(0, 0, 0, 0.2));
+ margin-bottom: 5rpx;
+}
+
+.floating-btn-text {
+ font-size: 20rpx;
+ color: white;
+ z-index: 1;
+ position: relative;
+ text-shadow: 0 1rpx 3rpx rgba(0, 0, 0, 0.2);
+ white-space: nowrap;
+}
+
.member-gradient-bg {
- width: 98%;
- height: 250rpx;
- margin: 1% 1%;
- border-radius: 24rpx;
- box-shadow: 0 8rpx 30rpx rgba(255, 82, 82, 0.3);
- transition: all 0.3s ease;
- background-size: cover;
- background-position: center;
- background-repeat: no-repeat;
- &:active {
- transform: scale(0.98);
- }
+ width: 98%;
+ height: 250rpx;
+ margin: 1% 1%;
+ border-radius: 24rpx;
+ box-shadow: 0 8rpx 30rpx rgba(255, 82, 82, 0.3);
+ transition: all 0.3s ease;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+
+ &:active {
+ transform: scale(0.98);
+ }
+
cursor: pointer; // 澧炲姞鐐瑰嚮鎸囬拡鏍峰紡
overflow: hidden; // 闃叉鍐呭婧㈠嚭
+
.activity-content {
width: 100%;
height: 100%;
@@ -462,6 +451,7 @@
margin-right: 24rpx;
border-radius: 16rpx;
overflow: hidden;
+
image {
width: 100%;
height: 100%;
@@ -472,16 +462,18 @@
// 娲诲姩淇℃伅鍖哄煙
.activity-info {
flex: 1;
+
.activity-name {
font-size: 32rpx;
font-weight: bold;
color: #fff;
margin: 0 0 8rpx 0;
- text-shadow: 0 2rpx 4rpx rgba(0,0,0,0.1);
+ text-shadow: 0 2rpx 4rpx rgba(0, 0, 0, 0.1);
}
+
.activity-desc {
font-size: 22rpx;
- color: rgba(255,255,255,0.9);
+ color: rgba(255, 255, 255, 0.9);
margin: 0;
}
}
@@ -491,27 +483,31 @@
display: flex;
align-items: center;
margin-top: 12rpx;
+
.countdown-label {
font-size: 20rpx;
- color: rgba(255,255,255,0.8);
+ color: rgba(255, 255, 255, 0.8);
margin-right: 8rpx;
}
+
.countdown-box {
display: flex;
align-items: center;
}
+
.countdown-item {
display: inline-block;
width: 36rpx;
height: 36rpx;
line-height: 36rpx;
- background: rgba(255,255,255,0.3);
+ background: rgba(255, 255, 255, 0.3);
border-radius: 8rpx;
color: #fff;
font-size: 20rpx;
text-align: center;
margin: 0 4rpx;
}
+
.countdown-sep {
color: #fff;
font-size: 22rpx;
@@ -523,6 +519,7 @@
.activity-enter {
display: flex;
align-items: center;
+
.enter-text {
font-size: 24rpx;
color: #fff;
@@ -541,9 +538,11 @@
padding: 0 40rpx;
box-sizing: border-box;
}
+
/* 浼氬憳淇℃伅 */
.vip-info {
flex: 1;
+
.vip-level {
font-size: 40rpx;
font-weight: bold;
@@ -552,7 +551,7 @@
line-height: 1;
text-shadow: 0 2rpx 4rpx rgba(0, 0, 0, 0.1);
}
-
+
.vip-validity {
font-size: 26rpx;
color: rgba(255, 255, 255, 0.9);
@@ -576,6 +575,7 @@
width: 60rpx;
height: 60rpx;
}
+
/* 鐗规潈鏍囪瘑 */
.vip-badge {
padding: 8rpx 20rpx;
@@ -597,34 +597,37 @@
}
.user {
- background: #e7e7e7;
+ background: #e7e7e7;
+
+ .header-wrapper {
+ background-size: 100% auto;
+ background-repeat: no-repeat;
+ background-position: bottom;
+ }
+
.header {
max-width: 100%;
- padding: calc(50rpx + var(--status-bar-height)) 30rpx 0 6%;
- height: calc(360rpx);
- background-size: cover;
- border-bottom-left-radius: 30rpx;
- border-bottom-right-radius: 30rpx;
- background-size: cover;
- background-position: center;
- background-repeat: no-repeat;
- color: #ffffff;
+ padding: 100rpx 30rpx 0 5%;
display: flex;
justify-content: space-between;
+ box-sizing: border-box;
+ position: relative;
+ overflow: hidden;
.head-1 {
text-align: center;
- width: 152rpx;
+ width: 140rpx;
position: relative;
display: flex;
align-items: center;
+ margin-top: 20rpx;
image {
- width: 152rpx;
- height: 144rpx;
+ width: 140rpx;
+ height: 140rpx;
border-radius: 50%;
- margin-bottom: 30rpx;
border: 3px solid #fff;
+ box-sizing: border-box;
}
.edti-head {
@@ -657,30 +660,52 @@
}
.point {
- text-align: center;
- height: 160rpx;
+ width: 100%;
+ height: 120rpx;
+ display: flex;
+ align-items: center;
- font-size: $font-sm;
- // #ifdef MP-WEIXIN
- padding: 24rpx;
+ .point-col {
+ flex: 1;
+ position: relative;
+ display: flex;
+ justify-content: center;
+ align-items: center;
- // #endif
- .u-col {
- view {
- color: $u-main-color;
- font-size: 28rpx;
+ &:not(:last-child)::after {
+ content: "";
+ position: absolute;
+ left: 100%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ height: 40rpx;
+ width: 1rpx;
+ background-color: #ccc;
}
- view:last-child {
- margin-top: 8rpx;
- color: $main-color;
- font-size: $font-lg;
+ .point-item {
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: baseline;
+
+ .value {
+ color: #1f1b13;
+ font-size: 34rpx;
+ font-weight: bold;
+ margin: 0 20rpx 0 20rpx;
+ }
+
+ .label {
+ color: #999;
+ font-size: 24rpx;
+ }
}
}
}
- .order {
- height: 140rpx;
+ .order-content {
+ height: 160rpx;
text-align: center;
font-size: $font-sm;
display: flex;
@@ -688,62 +713,91 @@
align-items: center;
padding: 0 3%;
color: #666;
+
+ .order-item {
+ position: relative;
+ line-height: 1.5;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+
+ .icon-box {
+ width: 60rpx;
+ height: 60rpx;
+ margin-bottom: 10rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+
+ image {
+ width: 100%;
+ height: 100%;
+ }
+ }
+ }
+ }
+
+ .order {
background: #fff;
border-radius: 20rpx;
box-shadow: 0 4rpx 24rpx 0 #f6f6f6;
margin: 0 20rpx;
-
- .order-item {
- position: relative;
- line-height: 2em;
- width: 96rpx;
+ padding-bottom: 20rpx;
- :first-child {
- font-size: 48rpx;
- margin-bottom: 12rpx;
+ .order-header {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 30rpx 30rpx 10rpx 30rpx;
+
+ .left {
+ font-size: 32rpx;
+ font-weight: bold;
color: #333;
+ }
+
+ .right {
+ display: flex;
+ align-items: center;
+ font-size: 24rpx;
+ color: #999;
+
+ text {
+ margin-right: 4rpx;
+ }
}
}
}
}
+.pointBox1 {
+ position: relative;
+ z-index: 10;
+ background: #f5f5f5;
+ border-radius: 40rpx 40rpx 0 0;
+ box-shadow: 0 -4rpx 24rpx 0 rgba(0, 0, 0, 0.05);
+ margin-top: 40rpx;
+}
+
.box {
- width: 95%;
- margin: auto;
- background: #fff;
- border-radius: 20rpx;
- box-shadow: 0 4rpx 24rpx 0 #f6f6f6;
+ width: 95%;
+ margin: auto;
+ background: #fff;
+ border-radius: 20rpx;
+ box-shadow: 0 4rpx 24rpx 0 #f6f6f6;
}
.user-name {
font-size: 34rpx;
+ font-weight: bolder;
+ color: #1f1b13;
}
-.bag {
- width: 56rpx;
- height: 56rpx;
- border-radius: 50%;
- margin: 0 auto;
-}
-
-.bag1 {
- background: #ff4a48;
-}
-
-.bag2 {
- background: #ff992f;
-}
-
-.bag3 {
- background: #009ee0;
-}
-
-.bag4 {
- background: #00d5d5;
-}
-
-.bag5 {
- background: #28ccb0;
+.member-name {
+ margin-top: 25rpx;
+ font-size: 28rpx;
+ color: #8d867a;
}
</style>
diff --git a/pages/tabbar/user/utils/tool.vue b/pages/tabbar/user/utils/tool.vue
index f7280c8..02dc5ff 100644
--- a/pages/tabbar/user/utils/tool.vue
+++ b/pages/tabbar/user/utils/tool.vue
@@ -5,19 +5,30 @@
<view class="paddingBox">
<view class="interact-container">
- <view class="interact-item" @click="navigateTo('/pages/mine/address/addressManage')">
- <image src="/static/mine/myaddress.png" mode=""></image>
- <view>鍦板潃绠$悊</view>
+
+ <view class="interact-item" @click="navigateTo('/pages/mine/set/setUp')">
+ <image src="/static/tool/璁剧疆.png" mode=""></image>
+ <view>璁剧疆</view>
</view>
-<!-- <view class="interact-item" @click="navigateTo('/pages/mine/myTracks')">
- <image src="/static/mine/logistics.png" mode=""></image>
- <view>鎴戠殑瓒宠抗</view>
- </view> -->
+ <view class="interact-item" @click="navigateTo('/pages/mine/address/addressManage')">
+ <image src="/static/tool/鏀惰揣鍦板潃.png" mode=""></image>
+ <view>鏀惰揣鍦板潃</view>
+ </view>
- <view class="interact-item" @click="navigateTo('/pages/order/evaluate/myEvaluate')">
+ <view class="interact-item" @click="navigateTo('/pages/mine/myTracks')">
+ <image src="/static/tool/娴忚璁板綍.png" mode=""></image>
+ <view>娴忚璁板綍</view>
+ </view>
+
+ <!-- <view class="interact-item" @click="navigateTo('/pages/order/evaluate/myEvaluate')">
<image src="/static/mine/feedback.png" mode=""></image>
<view>鎴戠殑璇勪环</view>
+ </view> -->
+
+ <view class="interact-item" @click="navigateTo('/pages/mine/point/myPoint')">
+ <image src="/static/tool/绉垎.png" mode=""></image>
+ <view>鎴戠殑绉垎</view>
</view>
<!-- <view class="interact-item" @click="linkMsgDetail()">
<image src="/static/mine/mycommit.png" mode=""></image>
@@ -25,110 +36,104 @@
</view> -->
-<!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect')">
<image src="/static/mine/myfavorite.png" mode=""></image>
<view>鎴戠殑鍏虫敞</view>
</view> -->
- <view class="interact-item" @click="navigateTo('/pages/mine/point/myPoint')">
- <image src="/static/mine/mypoint.png" mode=""></image>
- <view>鎴戠殑绉垎</view>
- </view>
+
<!-- <view class="interact-item" @click="distribution">
<image src="/static/mine/distribution.png" mode=""></image>
<view>鎴戠殑鍒嗛攢</view>
</view> -->
- <!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鎴戠殑鏀惰棌</view>
</view> -->
-<!-- <view class="interact-item" @click="navigateTo('/pages/mine/activity/myActivity')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/activity/myActivity')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鎴戠殑娲诲姩</view>
</view> -->
-<!-- </view>-->
+ <!-- </view>-->
- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/mine/activity/applyActivityList')">
+ <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/mine/activity/applyActivityList')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鐢宠娲诲姩</view>
- </view>
+ </view> -->
- <!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect/myCollect')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/myCollect/myCollect')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鎴戠殑鏀惰棌</view>
</view> -->
- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/userPermissions/userPermissions')">
+ <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/userPermissions/userPermissions')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>搴楀憳绠$悊</view>
- </view>
- <view class="interact-item" @click="navigateTo('/pages/news/news')">
+ </view> -->
+ <!-- <view class="interact-item" @click="navigateTo('/pages/news/news')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>蹇</view>
- </view>
+ </view> -->
- <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/customerManager/customerManager')">
+ <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/customerManager/customerManager')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>瀹㈡埛绠$悊</view>
</view> -->
- <view class="interact-item" @click="navigateTo('/pages/order/complain/complainList')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/order/complain/complainList')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鎴戠殑鎶曡瘔</view>
- </view>
+ </view> -->
- <view class="interact-item" @click="navigateTo('/pages/cart/coupon/myCoupon')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/cart/coupon/myCoupon')">
<image src="/static/mine/mycoupon.png" mode=""></image>
<view>浼樻儬鍒�</view>
- </view>
+ </view> -->
-<!-- <view class="interact-item" @click="navigateTo('/pages/mine/signIn')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/signIn')">
<image src="/static/mine/sign.png" mode=""></image>
<view>姣忔棩绛惧埌</view>
</view> -->
- <view class="interact-item" @click="navigateTo('/pages/cart/coupon/couponCenter')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/cart/coupon/couponCenter')">
<image src="/static/mine/couponcenter.png" mode=""></image>
<view>棰嗗埜涓績</view>
- </view>
+ </view> -->
-<!-- <view class="interact-item" @click="navigateTo('/pages/promotion/bargain/log')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/promotion/bargain/log')">
<image src="/static/mine/kanjia.png" mode=""></image>
<view>鐮嶄环璁板綍</view>
</view> -->
- <view class="interact-item" @click="navigateTo('/pages/mine/set/feedBack')">
+ <!-- <view class="interact-item" @click="navigateTo('/pages/mine/set/feedBack')">
<image src="/static/mine/feedback.png" mode=""></image>
<view>鎰忚鍙嶉</view>
- </view>
+ </view> -->
- <view class="interact-item" @click="navigateTo('/pages/mine/set/editionIntro')">
- <image src="/static/mine/pointgift.png" mode=""></image>
- <view>鍏充簬</view>
- </view>
+
<view class="interact-item" @click="navigateTo('/pages/passport/entry/seller/index')">
- <image src="/static/mine/feedback.png" mode=""></image>
+ <image src="/static/tool/渚涘簲鍟嗗叆椹�.png" mode=""></image>
<view>渚涘簲鍟嗗叆椹�</view>
</view>
-
- <view class="interact-item" @click="navigateTo('/pages/mine/set/setUp')">
- <image src="/static/mine/setting.png" mode=""></image>
- <view>璁剧疆</view>
+ <view class="interact-item" @click="navigateTo('/pages/mine/set/editionIntro')">
+ <image src="/static/tool/鍏充簬鎴戜滑.png" mode=""></image>
+ <view>鍏充簬鎴戜滑</view>
</view>
- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/goods-manager/goodsList/goodsList')">
+
+ <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/goods-manager/goodsList/goodsList')">
<image src="/static/mine/setting.png" mode=""></image>
<view>鍟嗗搧绠$悊</view>
</view>
@@ -144,7 +149,7 @@
<view class="interact-item" @click="navigateTo('/pages/prizeRecord/prizeRecord')">
<image src="/static/mine/prize-record.png"></image>
<view>鎶藉璁板綍</view>
- </view>
+ </view> -->
</view>
</view>
@@ -153,165 +158,165 @@
</template>
<script>
- import { getUserInfo } from "@/api/members";
- import {getONPrizeActivity} from '@/api/prize-activity.js'
+import { getUserInfo } from "@/api/members";
+import { getONPrizeActivity } from '@/api/prize-activity.js'
import {
- distribution
- } from "@/api/goods";
- import configs from "@/config/config";
- import storage from "@/utils/storage";
+ distribution
+} from "@/api/goods";
+import configs from "@/config/config";
+import storage from "@/utils/storage";
- export default {
- data() {
- return {
- prizeActivityId:'',
- isStoreManger:false,
- configs,
- storage
+export default {
+ data() {
+ return {
+ prizeActivityId: '',
+ isStoreManger: false,
+ configs,
+ storage
+ }
+ },
+ onReady() {
+ getUserInfo().then(res => {
+ if (res.data.result) {
+ if (res.data.result.storeId) {
+ this.isStoreManger = true;
+ } else {
+ this.isStoreManger = false;
+ }
}
- },
- onReady(){
- getUserInfo().then(res => {
- if(res.data.result){
- if(res.data.result.storeId){
- this.isStoreManger = true;
- }else{
- this.isStoreManger = false;
- }
+ })
+ this.getONPrizeActivity();
+ },
+
+ methods: {
+ getONPrizeActivity() {
+ getONPrizeActivity().then(res => {
+ if (res.statusCode === 200) {
+ //鍚庣娌℃煡鍒板紑鍚殑鎶藉娲诲姩 res.data.data.id鍊间负null
+ this.prizeActivityId = res.data.data.id;
}
})
- this.getONPrizeActivity();
},
-
- methods: {
- getONPrizeActivity(){
- getONPrizeActivity().then(res =>{
- if(res.statusCode=== 200){
- //鍚庣娌℃煡鍒板紑鍚殑鎶藉娲诲姩 res.data.data.id鍊间负null
- this.prizeActivityId = res.data.data.id;
- }
- })
- },
- gotoPrizeActivity(){
- uni.navigateTo({
- url:'/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivityId,
- });
- },
-
- handleNavigate(url) {
- uni.navigateTo({
- url,
- });
- },
- navigateTo(url) {
- const ignores = [
- '/pages/mine/set/setUp',
- '/pages/mine/set/editionIntro',
- '/pages/mine/set/feedBack',
- '/pages/goods-manager/goodsList/goodsList',
- '/pages/mine/set/feedBack',
- '/pages/mine/activity/myActivity',
- '/pages/mine/myCollect/myCollect',
- '/pages/mine/myCollect'
- ]
- if (!ignores.includes(url)) {
- if (this.$options.filters.tipsToLogin('normal')) {
- this.handleNavigate(url)
- }
- } else {
+ gotoPrizeActivity() {
+ uni.navigateTo({
+ url: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.prizeActivityId,
+ });
+ },
+
+ handleNavigate(url) {
+ uni.navigateTo({
+ url,
+ });
+ },
+ navigateTo(url) {
+ const ignores = [
+ '/pages/mine/set/setUp',
+ '/pages/mine/set/editionIntro',
+ '/pages/mine/set/feedBack',
+ '/pages/goods-manager/goodsList/goodsList',
+ '/pages/mine/set/feedBack',
+ '/pages/mine/activity/myActivity',
+ '/pages/mine/myCollect/myCollect',
+ '/pages/mine/myCollect'
+ ]
+ if (!ignores.includes(url)) {
+ if (this.$options.filters.tipsToLogin('normal')) {
this.handleNavigate(url)
}
- },
+ } else {
+ this.handleNavigate(url)
+ }
+ },
- linkMsgDetail() {
- uni.navigateTo({
- url: `/pages/mine/im/list`,
- });
- },
+ linkMsgDetail() {
+ uni.navigateTo({
+ url: `/pages/mine/im/list`,
+ });
+ },
- distribution() {
- distribution().then((res) => {
- if (res.data.result) {
- let type = res.data.result.distributionStatus;
- if (type == "PASS") {
- uni.navigateTo({
- url: "/pages/mine/distribution/home",
- });
- } else if (type == "REFUSE") {
- uni.navigateTo({
- url: "/pages/mine/distribution/auth",
- });
- } else if (type == "RETREAT") {
- uni.showToast({
- title: "鎮ㄧ殑鍒嗛攢璧勬牸宸茶娓呴��銆傝鑱旂郴绠$悊鍛橈紒",
- duration: 2000,
- icon: "none",
- });
- } else {
- uni.showToast({
- title: "鎮ㄧ殑淇℃伅姝e湪瀹℃牳",
- duration: 2000,
- icon: "none",
- });
- }
- } else if (!res.data.success && res.data.code == 22000) {
+ distribution() {
+ distribution().then((res) => {
+ if (res.data.result) {
+ let type = res.data.result.distributionStatus;
+ if (type == "PASS") {
+ uni.navigateTo({
+ url: "/pages/mine/distribution/home",
+ });
+ } else if (type == "REFUSE") {
+ uni.navigateTo({
+ url: "/pages/mine/distribution/auth",
+ });
+ } else if (type == "RETREAT") {
uni.showToast({
- title: "鍒嗛攢鍔熻兘鏆傛湭寮�鍚�",
+ title: "鎮ㄧ殑鍒嗛攢璧勬牸宸茶娓呴��銆傝鑱旂郴绠$悊鍛橈紒",
duration: 2000,
icon: "none",
});
} else {
- // 娌℃湁璧勬牸鐢宠 鍏堝幓瀹炲悕璁よ瘉
- uni.navigateTo({
- url: "/pages/mine/distribution/auth",
+ uni.showToast({
+ title: "鎮ㄧ殑淇℃伅姝e湪瀹℃牳",
+ duration: 2000,
+ icon: "none",
});
}
- });
- },
+ } else if (!res.data.success && res.data.code == 22000) {
+ uni.showToast({
+ title: "鍒嗛攢鍔熻兘鏆傛湭寮�鍚�",
+ duration: 2000,
+ icon: "none",
+ });
+ } else {
+ // 娌℃湁璧勬牸鐢宠 鍏堝幓瀹炲悕璁よ瘉
+ uni.navigateTo({
+ url: "/pages/mine/distribution/auth",
+ });
+ }
+ });
},
- };
+ },
+};
</script>
<style lang="scss" scoped>
- .interact-tools {
- border-left: none;
- border-right: none;
+.interact-tools {
+ border-left: none;
+ border-right: none;
- .interactBox {
- height: 156rpx;
+ .interactBox {
+ height: 156rpx;
+ }
+
+ .interact-container {
+ margin: 0 20rpx;
+ background: #fff;
+ border-radius: 20rpx;
+ box-shadow: 0 4rpx 24rpx 0 rgba($color: #f6f6f6, $alpha: 1);
+
+ .interact-item-img {
+ width: 52rpx !important;
+ height: 52rpx !important;
+ // margin-bottom: !important;
+ margin: 0 auto 6rpx auto !important;
}
- .interact-container {
- margin: 0 20rpx;
- background: #fff;
- border-radius: 20rpx;
- box-shadow: 0 4rpx 24rpx 0 rgba($color: #f6f6f6, $alpha: 1);
+ image {
+ width: 52rpx;
+ height: 52rpx;
+ margin-bottom: 6rpx;
+ }
- .interact-item-img {
- width: 52rpx !important;
- height: 52rpx !important;
- // margin-bottom: !important;
- margin: 0 auto 6rpx auto !important;
- }
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+ text-align: center;
- image {
- width: 52rpx;
- height: 52rpx;
- margin-bottom: 6rpx;
- }
-
- display: flex;
- align-items: center;
- flex-wrap: wrap;
- text-align: center;
-
- .interact-item {
- font-size: $font-sm;
- width: 25%;
- height: 160rpx;
- padding: 30rpx;
- }
+ .interact-item {
+ font-size: $font-sm;
+ width: 25%;
+ height: 160rpx;
+ padding: 30rpx;
}
}
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0