diff --git a/gym-manage-uniapp/common/memberInfo/mockData.js b/gym-manage-uniapp/common/memberInfo/mockData.js
index 573deaa..e88bacc 100644
--- a/gym-manage-uniapp/common/memberInfo/mockData.js
+++ b/gym-manage-uniapp/common/memberInfo/mockData.js
@@ -5,7 +5,7 @@ export const memberCenterMock = {
name: '张小芳',
phone: '13812345678 已绑定微信',
memberLevel: '黄金会员',
- avatar: '/static/images/AvatarEditWrap.png'
+ avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AvatarEditWrap.png'
},
stats: {
checkInCount: 128,
@@ -75,7 +75,7 @@ export const userInfoMock = {
height: '165',
weight: '63.5',
fitnessGoals: ['减脂', '塑形'],
- avatar: '/static/images/AvatarEditWrap.png'
+ avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AvatarEditWrap.png'
}
export const fitnessGoalOptions = ['减脂', '塑形', '增肌', '提升耐力', '改善体态']
@@ -102,7 +102,7 @@ export const memberCardMock = {
time: '2024-07-12 09:05',
value: '-1次',
valueType: 'negative',
- icon: '/static/images/dumbbell.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/dumbbell.png',
iconTheme: 'orange'
},
{
@@ -112,7 +112,7 @@ export const memberCardMock = {
time: '2024-07-11 18:30',
value: '-1天',
valueType: 'negative',
- icon: '/static/images/mappin.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/mappin.png',
iconTheme: 'green'
},
{
@@ -122,7 +122,7 @@ export const memberCardMock = {
time: '2024-07-01 10:00',
value: '+90天',
valueType: 'positive',
- icon: '/static/images/pluscircle.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/pluscircle.png',
iconTheme: 'orange'
}
],
@@ -156,14 +156,14 @@ export const bodyTestMock = {
{ step: 3, title: '确认连接', desc: '点击下方按钮搜索并配对设备' }
],
metricDefs: [
- { key: 'weight', label: '体重', unit: 'kg', icon: '/static/images/target.png' },
- { key: 'bmi', label: 'BMI', unit: '', icon: '/static/images/activity.png' },
- { key: 'bodyFat', label: '体脂率', unit: '%', icon: '/static/images/trendingdown.png' },
- { key: 'muscleMass', label: '肌肉量', unit: 'kg', icon: '/static/images/dumbbell.png' },
- { key: 'visceralFat', label: '内脏脂肪', unit: '级', icon: '/static/images/alertcircle.png' },
- { key: 'bmr', label: '基础代谢', unit: 'kcal', icon: '/static/images/clock.png' },
- { key: 'bodyWater', label: '体水分', unit: '%', icon: '/static/images/shield.png' },
- { key: 'boneMass', label: '骨量', unit: 'kg', icon: '/static/images/user.png' }
+ { key: 'weight', label: '体重', unit: 'kg', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/target.png' },
+ { key: 'bmi', label: 'BMI', unit: '', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/activity.png' },
+ { key: 'bodyFat', label: '体脂率', unit: '%', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/trendingdown.png' },
+ { key: 'muscleMass', label: '肌肉量', unit: 'kg', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/dumbbell.png' },
+ { key: 'visceralFat', label: '内脏脂肪', unit: '级', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/alertcircle.png' },
+ { key: 'bmr', label: '基础代谢', unit: 'kcal', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/clock.png' },
+ { key: 'bodyWater', label: '体水分', unit: '%', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/shield.png' },
+ { key: 'boneMass', label: '骨量', unit: 'kg', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user.png' }
],
radarLabels: [
{ key: 'weight', label: '体重控制' },
@@ -185,7 +185,7 @@ export const bodyTestMock = {
title: '燃脂 HIIT 团课',
coach: '李明教练',
schedule: '每周二、四 19:00',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
tag: '减脂推荐'
},
{
@@ -193,7 +193,7 @@ export const bodyTestMock = {
title: '核心力量塑形',
coach: '王强教练',
schedule: '每周一、三 18:30',
- banner: '/static/images/AC2Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
tag: '塑形推荐'
}
],
@@ -352,7 +352,7 @@ export const bookingMock = {
{
id: 1,
title: '瑜伽基础班',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
status: 'booked',
statusLabel: '已预约',
schedule: '07月15日 09:00-10:00',
@@ -368,7 +368,7 @@ export const bookingMock = {
{
id: 2,
title: '私教健身课',
- banner: '/static/images/AC2Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
status: 'pending',
statusLabel: '待上课',
schedule: '07月18日 14:00-15:00',
@@ -386,7 +386,7 @@ export const bookingMock = {
{
id: 3,
title: '动感单车',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
status: 'completed',
statusLabel: '已完成',
schedule: '07月10日 19:00-20:00',
@@ -397,7 +397,7 @@ export const bookingMock = {
{
id: 4,
title: '普拉提进阶',
- banner: '/static/images/AC2Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
status: 'cancelled',
statusLabel: '已取消',
schedule: '07月05日 10:00-11:00',
@@ -428,7 +428,7 @@ export const courseCatalogMock = {
title: '瑜伽基础班',
type: 'group',
coach: '李明教练',
- coachAvatar: '/static/images/user0.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user0.png',
date: '2024-07-15',
startTime: '09:00',
endTime: '10:00',
@@ -438,7 +438,7 @@ export const courseCatalogMock = {
price: '次卡扣 1 次',
payType: 'session',
period: 'morning',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
intro: '适合零基础学员,重点提升柔韧性与呼吸控制。',
suitable: '久坐办公族、初学者、想改善体态者',
coachBio: '国家一级瑜伽指导员,5年教学经验',
@@ -454,7 +454,7 @@ export const courseCatalogMock = {
title: 'HIIT 燃脂团课',
type: 'group',
coach: '赵敏教练',
- coachAvatar: '/static/images/user1.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user1.png',
date: '2024-07-15',
startTime: '19:00',
endTime: '20:00',
@@ -464,7 +464,7 @@ export const courseCatalogMock = {
price: '时长卡',
payType: 'duration',
period: 'evening',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
intro: '高强度间歇训练,快速燃脂提升心肺。',
suitable: '有一定运动基础、目标减脂者',
coachBio: 'ACE 认证教练,擅长 HIIT 与动感单车',
@@ -477,7 +477,7 @@ export const courseCatalogMock = {
title: '私教 · 力量训练',
type: 'private',
coach: '王强教练',
- coachAvatar: '/static/images/user2.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user2.png',
date: '2024-07-16',
startTime: '14:00',
endTime: '15:00',
@@ -487,7 +487,7 @@ export const courseCatalogMock = {
price: '私教课时卡',
payType: 'private',
period: 'afternoon',
- banner: '/static/images/AC2Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
intro: '一对一力量训练,定制训练计划。',
suitable: '增肌塑形、康复训练',
coachBio: 'NSCA 认证私教,8年从业经验',
@@ -500,7 +500,7 @@ export const courseCatalogMock = {
title: '普拉提进阶',
type: 'group',
coach: '李明教练',
- coachAvatar: '/static/images/user0.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user0.png',
date: '2024-07-17',
startTime: '10:30',
endTime: '11:30',
@@ -510,7 +510,7 @@ export const courseCatalogMock = {
price: '次卡扣 1 次',
payType: 'session',
period: 'morning',
- banner: '/static/images/AC2Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
intro: '核心稳定与体态矫正进阶课程。',
suitable: '有普拉提基础者',
coachBio: '国家一级瑜伽指导员',
@@ -523,7 +523,7 @@ export const courseCatalogMock = {
title: '动感单车',
type: 'group',
coach: '赵敏教练',
- coachAvatar: '/static/images/user1.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user1.png',
date: '2024-07-18',
startTime: '18:30',
endTime: '19:30',
@@ -533,7 +533,7 @@ export const courseCatalogMock = {
price: '储值卡 ¥39',
payType: 'stored',
period: 'evening',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
intro: '音乐骑行,团队氛围燃脂。',
suitable: '所有级别,可调节阻力',
coachBio: 'ACE 认证教练',
@@ -720,10 +720,10 @@ export const moduleMock = {
rule: '签到、训练、邀请好友、购课均可获得积分;积分可用于商城兑换。'
},
pointsRewards: [
- { id: 1, name: '团课体验券', cost: 500, stock: 12, icon: '/static/images/ticket.png' },
- { id: 2, name: '运动毛巾', cost: 800, stock: 5, icon: '/static/images/dumbbell.png' },
- { id: 3, name: '私教体验30分钟', cost: 2000, stock: 3, icon: '/static/images/usercheck.png' },
- { id: 4, name: '蛋白粉小样', cost: 350, stock: 20, icon: '/static/images/star.png' }
+ { id: 1, name: '团课体验券', cost: 500, stock: 12, icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/ticket.png' },
+ { id: 2, name: '运动毛巾', cost: 800, stock: 5, icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/dumbbell.png' },
+ { id: 3, name: '私教体验30分钟', cost: 2000, stock: 3, icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/usercheck.png' },
+ { id: 4, name: '蛋白粉小样', cost: 350, stock: 20, icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/star.png' }
],
pointsHistory: [
{ id: 1, type: 'earn', title: '团课签到', amount: 50, time: '2024-07-12 09:10', balance: 1250 },
@@ -739,11 +739,11 @@ export const moduleMock = {
'积分可用于兑换课程体验券及周边礼品'
],
referralRecords: [
- { id: 1, name: '李**', avatar: '/static/images/user0.png', status: 'purchased', statusLabel: '已购课', time: '2024-07-05', reward: '+300积分', rewardStatus: '已发放' },
- { id: 2, name: '王**', avatar: '/static/images/user1.png', status: 'registered', statusLabel: '已注册', time: '2024-06-20', reward: '+100积分', rewardStatus: '已发放' },
- { id: 3, name: '陈**', avatar: '/static/images/user2.png', status: 'invited', statusLabel: '已邀请', time: '2024-06-15', reward: '待注册', rewardStatus: '待发放' },
- { id: 4, name: '赵**', avatar: '/static/images/user3.png', status: 'purchased', statusLabel: '已购课', time: '2024-06-01', reward: '+300积分', rewardStatus: '已发放' },
- { id: 5, name: '刘**', avatar: '/static/images/user0.png', status: 'registered', statusLabel: '已注册', time: '2024-05-28', reward: '+100积分', rewardStatus: '已发放' }
+ { id: 1, name: '李**', avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user0.png', status: 'purchased', statusLabel: '已购课', time: '2024-07-05', reward: '+300积分', rewardStatus: '已发放' },
+ { id: 2, name: '王**', avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user1.png', status: 'registered', statusLabel: '已注册', time: '2024-06-20', reward: '+100积分', rewardStatus: '已发放' },
+ { id: 3, name: '陈**', avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user2.png', status: 'invited', statusLabel: '已邀请', time: '2024-06-15', reward: '待注册', rewardStatus: '待发放' },
+ { id: 4, name: '赵**', avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user3.png', status: 'purchased', statusLabel: '已购课', time: '2024-06-01', reward: '+300积分', rewardStatus: '已发放' },
+ { id: 5, name: '刘**', avatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user0.png', status: 'registered', statusLabel: '已注册', time: '2024-05-28', reward: '+100积分', rewardStatus: '已发放' }
],
referralRewardSummary: {
totalPoints: 800,
@@ -763,7 +763,7 @@ export const moduleMock = {
id: 1,
title: '瑜伽基础班',
coach: '李明教练',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
progress: 6,
total: 12,
schedule: '每周二、四 09:00',
@@ -778,7 +778,7 @@ export const moduleMock = {
id: 3,
title: '动感单车入门',
coach: '赵敏教练',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
progress: 8,
total: 8,
schedule: '已结课',
@@ -791,7 +791,7 @@ export const moduleMock = {
private: {
remaining: 7,
coach: '王强教练',
- coachAvatar: '/static/images/user2.png',
+ coachAvatar: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/user2.png',
nextClass: '07月15日 14:00',
bookings: [
{ id: 2, title: '私教 · 力量训练', time: '07月18日 14:00', status: '已预约', location: 'B区私教室' }
@@ -804,7 +804,7 @@ export const moduleMock = {
{
id: 201,
title: '居家核心训练',
- cover: '/static/images/AC2Banner.png',
+ cover: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC2Banner.png',
duration: '45分钟',
progress: 60,
chapters: 6,
@@ -814,7 +814,7 @@ export const moduleMock = {
{
id: 202,
title: '直播 · 晨间拉伸',
- cover: '/static/images/AC1Banner.png',
+ cover: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
duration: '30分钟',
progress: 0,
liveTime: '07月20日 07:00',
@@ -825,7 +825,7 @@ export const moduleMock = {
{
id: 301,
title: '28天减脂训练营',
- banner: '/static/images/AC1Banner.png',
+ banner: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AC1Banner.png',
progress: 3,
total: 10,
coach: '李明教练',
diff --git a/gym-manage-uniapp/common/memberInfo/store.js b/gym-manage-uniapp/common/memberInfo/store.js
index b161e7d..3d79750 100644
--- a/gym-manage-uniapp/common/memberInfo/store.js
+++ b/gym-manage-uniapp/common/memberInfo/store.js
@@ -275,7 +275,7 @@ export function renewMemberCard(store, addDays = 90) {
time: formatRecordTime(new Date()),
value: `+${addDays}天`,
valueType: 'positive',
- icon: '/static/images/pluscircle.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/pluscircle.png',
iconTheme: 'orange'
})
diff --git a/gym-manage-uniapp/common/style/tabbar_icon/tabbar.css b/gym-manage-uniapp/common/style/tabbar_icon/tabbar.css
new file mode 100644
index 0000000..a690072
--- /dev/null
+++ b/gym-manage-uniapp/common/style/tabbar_icon/tabbar.css
@@ -0,0 +1,33 @@
+@font-face {
+ font-family: "iconfont"; /* Project id */
+ src: url('tabbar.ttf?t=1780818759010') format('truetype');
+}
+
+.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+.icon-home:before {
+ content: "\e666";
+}
+
+.icon-course:before {
+ content: "\e692";
+}
+
+.icon-train:before {
+ content: "\e8be";
+}
+
+.icon-discover:before {
+ content: "\e726";
+}
+
+.icon-profile:before {
+ content: "\e501";
+}
+
diff --git a/gym-manage-uniapp/common/style/tabbar_icon/tabbar.ttf b/gym-manage-uniapp/common/style/tabbar_icon/tabbar.ttf
new file mode 100644
index 0000000..0712fed
Binary files /dev/null and b/gym-manage-uniapp/common/style/tabbar_icon/tabbar.ttf differ
diff --git a/gym-manage-uniapp/components/Skeleton/SkeletonBase.vue b/gym-manage-uniapp/components/Skeleton/SkeletonBase.vue
new file mode 100644
index 0000000..5d8710d
--- /dev/null
+++ b/gym-manage-uniapp/components/Skeleton/SkeletonBase.vue
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/TabBar.vue b/gym-manage-uniapp/components/TabBar.vue
index a7054e6..0fdb25b 100644
--- a/gym-manage-uniapp/components/TabBar.vue
+++ b/gym-manage-uniapp/components/TabBar.vue
@@ -8,11 +8,13 @@
hover-class="tab-item--hover"
@tap.stop="onTabTap(index)"
>
-
+
+
{{ tab.label }}
@@ -34,32 +36,27 @@ const props = defineProps({
const emit = defineEmits(['update:active', 'tab-change'])
-// 当前激活的索引 - 默认从路由获取
const currentActiveIndex = ref(-1)
-
-// 是否需要显示 TabBar
const shouldShowTabBar = ref(true)
-// 不需要显示 TabBar 的页面路径列表(注意:不要带开头的 /)
const HIDE_TABBAR_PAGES = [
- 'pages/memberInfo/courseList', // 预约课程
- 'pages/memberInfo/courseDetail', // 课程详情
- 'pages/memberInfo/booking', // 我的预约
- 'pages/memberInfo/bodyTestReport', // 体测报告
- 'pages/groupCourse/list', // 团课列表
- 'pages/groupCourse/detail', // 团课详情
- 'pages/searchCourse/searchCourse', // 搜索课程
- 'pages/checkIn/checkIn', // 会员签到
- 'pages/memberInfo/myCourses', // 我的课程
- 'pages/memberInfo/coupons', // 我的优惠券
- 'pages/memberInfo/points', // 我的积分
- 'pages/memberInfo/pointsMall', // 积分商城
- 'pages/memberInfo/referral', // 邀请好友
- 'pages/memberInfo/userInfo', // 个人信息
- 'pages/memberInfo/memberCard', // 我的会员卡
+ 'pages/memberInfo/courseList',
+ 'pages/memberInfo/courseDetail',
+ 'pages/memberInfo/booking',
+ 'pages/memberInfo/bodyTestReport',
+ 'pages/groupCourse/list',
+ 'pages/groupCourse/detail',
+ 'pages/searchCourse/searchCourse',
+ 'pages/checkIn/checkIn',
+ 'pages/memberInfo/myCourses',
+ 'pages/memberInfo/coupons',
+ 'pages/memberInfo/points',
+ 'pages/memberInfo/pointsMall',
+ 'pages/memberInfo/referral',
+ 'pages/memberInfo/userInfo',
+ 'pages/memberInfo/memberCard',
]
-// 从路由获取当前激活的 tab
function getActiveIndexFromRoute() {
const routePath = getCurrentRoutePath()
const index = getTabIndexByRoute(routePath)
@@ -67,16 +64,12 @@ function getActiveIndexFromRoute() {
return index >= 0 ? index : 0
}
-// 同步激活状态(高优先级:路由 > props)
function syncActiveState() {
- // 优先从路由获取(最准确)
const routeIndex = getActiveIndexFromRoute()
if (routeIndex >= 0) {
currentActiveIndex.value = routeIndex
return
}
-
- // 其次使用 props
if (props.active >= 0) {
currentActiveIndex.value = props.active
} else if (props.activeTab >= 0) {
@@ -86,23 +79,16 @@ function syncActiveState() {
}
}
-// 检查当前页面是否需要隐藏 TabBar
function checkShouldShow() {
let routePath = getCurrentRoutePath()
-
- // 标准化路径:去掉开头的 /
if (routePath.startsWith('/')) {
routePath = routePath.slice(1)
}
- // 去掉查询参数(?后面的内容)
if (routePath.includes('?')) {
routePath = routePath.split('?')[0]
}
-
- // 检查是否在隐藏列表中
const shouldHide = HIDE_TABBAR_PAGES.includes(routePath)
shouldShowTabBar.value = !shouldHide
-
console.log('=== TabBar 显示控制 ===')
console.log('原始路径:', getCurrentRoutePath())
console.log('标准化路径:', routePath)
@@ -110,25 +96,19 @@ function checkShouldShow() {
console.log('是否显示 TabBar:', shouldShowTabBar.value)
}
-// 监听路由变化(页面切换时自动同步)
let routeWatcher = null
let appRouteCallback = null
onMounted(() => {
- // 初始同步
syncActiveState()
checkShouldShow()
-
// #ifdef APP-PLUS
- // App 端:监听页面显示
routeWatcher = setInterval(() => {
syncActiveState()
checkShouldShow()
}, 300)
// #endif
-
// #ifdef MP-WEIXIN
- // 小程序端:监听路由变化
if (typeof uni.onAppRoute === 'function') {
appRouteCallback = () => {
setTimeout(() => {
@@ -143,11 +123,8 @@ onMounted(() => {
onBeforeUnmount(() => {
// #ifdef APP-PLUS
- if (routeWatcher) {
- clearInterval(routeWatcher)
- }
+ if (routeWatcher) { clearInterval(routeWatcher) }
// #endif
-
// #ifdef MP-WEIXIN
if (appRouteCallback && typeof uni.offAppRoute === 'function') {
uni.offAppRoute(appRouteCallback)
@@ -155,44 +132,48 @@ onBeforeUnmount(() => {
// #endif
})
-// 监听 props 变化
watch(() => props.active, () => {
const routeIndex = getActiveIndexFromRoute()
- if (routeIndex !== currentActiveIndex.value) {
- syncActiveState()
- }
+ if (routeIndex !== currentActiveIndex.value) { syncActiveState() }
})
+// tabs 配置:只有"我的"用字体图标
const tabs = [
{
path: PAGE.INDEX,
- icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/home.png',
- iconActive: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/active/home.png',
- label: '首页'
+ icon: 'icon-home',
+ label: '首页',
+ useFontIcon: true,
+ fontSize:"36rpx"
},
{
path: PAGE.COURSE,
- icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/course.png',
- iconActive: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/active/course.png',
- label: '课程'
+ icon: 'icon-course',
+ iconActive: '/static/tabBar/active/course.png',
+ label: '课程',
+ useFontIcon: true,
+ fontSize:"36rpx"
},
{
path: PAGE.TRAIN,
- icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/train.png',
- iconActive: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/active/train.png',
- label: '训练'
+ icon: 'icon-train',
+ label: '训练',
+ useFontIcon: true,
+ fontSize:"48rpx"
},
{
path: PAGE.DISCOVER,
- icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/discover.png',
- iconActive: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/active/discover.png',
- label: '发现'
+ icon: 'icon-discover',
+ label: '发现',
+ useFontIcon: true,
+ fontSize:"48rpx"
},
{
path: PAGE.MEMBER,
- icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/profile.png',
- iconActive: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/tabBar/active/profile.png',
- label: '我的'
+ icon: 'icon-profile',
+ label: '我的',
+ useFontIcon: true,
+ fontSize:"36rpx"
}
]
@@ -200,37 +181,22 @@ let isSwitching = false
function onTabTap(index) {
if (isSwitching) return
-
const targetPath = TAB_ROUTES[index]
const currentPath = TAB_ROUTES[currentActiveIndex.value]
-
if (targetPath === currentPath) return
-
console.log('Tab 点击:', index, targetPath)
-
- // 1. 立即更新 UI 高亮
currentActiveIndex.value = index
-
- // 2. 通知父组件
emit('update:active', index)
emit('tab-change', index)
-
- // 3. 显示 loading(可选)
let timer = setTimeout(() => {
uni.showLoading({ title: '加载中...', mask: true })
}, 50)
-
isSwitching = true
-
- // 4. 执行跳转
uni.switchTab({
url: targetPath,
- success: () => {
- console.log('switchTab 成功:', targetPath)
- },
+ success: () => { console.log('switchTab 成功:', targetPath) },
fail: (err) => {
console.error('switchTab 失败:', err)
- // 降级
uni.reLaunch({ url: targetPath })
},
complete: () => {
@@ -238,7 +204,6 @@ function onTabTap(index) {
uni.hideLoading()
setTimeout(() => {
isSwitching = false
- // 跳转完成后,再次同步确保高亮正确
syncActiveState()
checkShouldShow()
}, 100)
@@ -248,19 +213,24 @@ function onTabTap(index) {
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/global/GlobalLoading.vue b/gym-manage-uniapp/components/global/GlobalLoading.vue
new file mode 100644
index 0000000..a99b35d
--- /dev/null
+++ b/gym-manage-uniapp/components/global/GlobalLoading.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+ {{ text }}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/index/BannerSwiper.vue b/gym-manage-uniapp/components/index/BannerSwiper.vue
index 25eb838..094d64f 100644
--- a/gym-manage-uniapp/components/index/BannerSwiper.vue
+++ b/gym-manage-uniapp/components/index/BannerSwiper.vue
@@ -1,7 +1,5 @@
-
-
-
-
-
-
-
{{ banner.title }}
{{ banner.subtitle }}
@@ -28,7 +21,6 @@
-
import { ref } from 'vue'
-// 轮播图数据列表
const banners = [
{
image: 'https://images.unsplash.com/photo-1534438327276-14e5300c3a48?w=800&q=80',
@@ -64,29 +55,25 @@ const banners = [
}
]
-// 当前轮播索引,用于控制指示器激活状态
const currentIndex = ref(0)
-// 轮播图切换时的回调函数,更新当前索引
const onSwiperChange = (e) => {
currentIndex.value = e.detail.current
}
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/index/QuickEntry.vue b/gym-manage-uniapp/components/index/QuickEntry.vue
index 02a4581..fffc970 100644
--- a/gym-manage-uniapp/components/index/QuickEntry.vue
+++ b/gym-manage-uniapp/components/index/QuickEntry.vue
@@ -1,21 +1,15 @@
-
-
-
-
-
{{ item.title }}
-
{{ item.desc }}
@@ -28,7 +22,6 @@ const QEClick = path => {
url:path
})
}
-// 快捷入口数据列表
const entries = [
{
icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/icons/course.png',
@@ -66,18 +59,21 @@ const entries = [
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/index/RecommendCourses.vue b/gym-manage-uniapp/components/index/RecommendCourses.vue
index e3d26bc..d3c781d 100644
--- a/gym-manage-uniapp/components/index/RecommendCourses.vue
+++ b/gym-manage-uniapp/components/index/RecommendCourses.vue
@@ -9,7 +9,7 @@
查看更多
-
+
@@ -94,41 +94,21 @@ const getCourseTypeName = (type) => {
// 根据课程信息获取标签文本
const getTag = (course) => {
- // 满员标签
- if (course.currentMembers >= course.maxMembers) {
- return '已满员'
- }
- // 已结束的课程
- if (course.status === '2') {
- return '已结束'
- }
- // 高人气标签(参与人数超过最大人数的80%)
- if (course.currentMembers / course.maxMembers >= 0.8) {
- return '热门'
- }
- // 课程类型标签
+ if (course.currentMembers >= course.maxMembers) return '已满员'
+ if (course.status === '2') return '已结束'
+ if (course.currentMembers / course.maxMembers >= 0.8) return '热门'
return getCourseTypeName(course.courseType)
}
// 根据课程信息获取标签样式类型
const getTagType = (course) => {
- // 满员标签样式
- if (course.currentMembers >= course.maxMembers) {
- return 'full'
- }
- // 已结束标签样式
- if (course.status === '2') {
- return 'ended'
- }
- // 热门标签样式
- if (course.currentMembers / course.maxMembers >= 0.8) {
- return 'hot'
- }
- // 默认样式
+ if (course.currentMembers >= course.maxMembers) return 'full'
+ if (course.status === '2') return 'ended'
+ if (course.currentMembers / course.maxMembers >= 0.8) return 'hot'
return 'default'
}
-// 计算课程时长(从startTime和endTime计算)
+// 计算课程时长
const calculateDuration = (startTime, endTime) => {
if (!startTime || !endTime) return '60分钟'
const start = new Date(startTime)
@@ -137,9 +117,8 @@ const calculateDuration = (startTime, endTime) => {
return `${durationMinutes}分钟`
}
-// 获取课程难度(基于课程类型和描述简单判断)
+// 获取课程难度
const getCourseLevel = (course) => {
- // 可以根据实际需求调整逻辑
if (course.courseType === '2') return '中级'
if (course.courseType === '3') return '高级'
if (course.courseType === '1') return '初级'
@@ -148,169 +127,61 @@ const getCourseLevel = (course) => {
// 处理图片URL
const getImageUrl = (coverImage) => {
- if (!coverImage) {
- return 'https://images.unsplash.com/photo-1534438327276-14e5300c3a48?w=400&q=80'
- }
- // 如果已经是完整URL直接返回,否则拼接基础路径
- if (coverImage.startsWith('http')) {
- return coverImage
- }
- // 这里需要根据您的实际图片基础路径配置
+ if (!coverImage) return 'https://images.unsplash.com/photo-1534438327276-14e5300c3a48?w=400&q=80'
+ if (coverImage.startsWith('http')) return coverImage
return `https://your-domain.com${coverImage}`
}
-// 获取推荐课程(按最火排序,返回5条)
+// 获取推荐课程
const fetchRecommendCourses = async () => {
try {
const res = await getGroupCoursePage({
- page: 0,
- size: 5,
- sort: 'current_members', // 按参与人数排序
- order: 'desc' // 降序,即最火的在前
+ page: 0, size: 5, sort: 'current_members', order: 'desc'
}, { cache: true, cacheTime: 5 * 60 * 1000 })
-
if (res && res.content && Array.isArray(res.content)) {
- // 将后端数据转换为组件所需格式
courses.value = res.content.map(course => ({
- id: course.id,
- image: getImageUrl(course.coverImage),
- tag: getTag(course),
- tagType: getTagType(course),
- name: course.courseName || '未知课程',
+ id: course.id, image: getImageUrl(course.coverImage), tag: getTag(course),
+ tagType: getTagType(course), name: course.courseName || '未知课程',
duration: calculateDuration(course.startTime, course.endTime),
- level: getCourseLevel(course),
- participants: course.currentMembers || 0,
- // 保存原始数据供点击事件使用
- rawData: course
+ level: getCourseLevel(course), participants: course.currentMembers || 0, rawData: course
}))
- } else {
- // 如果没有数据,使用提供的示例数据作为fallback
- useFallbackData()
- }
- } catch (err) {
- // console.error('获取推荐课程失败:', err)
- // 使用提供的示例数据作为fallback
- useFallbackData()
- }
+ } else { useFallbackData() }
+ } catch (err) { useFallbackData() }
}
-// 使用提供的响应数据作为默认数据
const useFallbackData = () => {
const fallbackContent = [
- {
- id: "3",
- courseName: "燃脂搏击",
- courseType: "2",
- startTime: "2026-06-10T18:30:00",
- endTime: "2026-06-10T19:30:00",
- maxMembers: 20,
- currentMembers: 20,
- status: "0",
- coverImage: "/images/kickboxing.jpg",
- description: "高强度间歇训练,配合音乐快速燃脂,释放压力。名额已满,无法预约。"
- },
- {
- id: "2",
- courseName: "清晨流瑜伽",
- courseType: "1",
- startTime: "2026-06-12T09:00:00",
- endTime: "2026-06-12T10:30:00",
- maxMembers: 15,
- currentMembers: 5,
- status: "0",
- coverImage: "/images/yoga_flow.jpg",
- description: "适合有一定基础的学员,通过流畅的体式连接呼吸,唤醒身体能量。"
- },
- {
- id: "4",
- courseName: "哈他瑜伽",
- courseType: "1",
- startTime: "2026-06-01T15:20:00",
- endTime: "2026-06-01T16:50:00",
- maxMembers: 12,
- currentMembers: 3,
- status: "0",
- coverImage: "/images/hatha_yoga.jpg",
- description: "基础哈他瑜伽,适合所有级别。距开始不足30分钟,已停止预约。"
- },
- {
- id: "6",
- courseName: "蜜桃臀塑造",
- courseType: "3",
- startTime: "2026-05-30T19:00:00",
- endTime: "2026-05-30T20:00:00",
- maxMembers: 10,
- currentMembers: 8,
- status: "2",
- coverImage: "/images/glute.jpg",
- description: "针对性训练臀部肌肉群,课程已于5月30日结束,无法预约。"
- },
- {
- id: "7",
- courseName: "午间冥想放松",
- courseType: "1",
- startTime: "2026-05-31T12:00:00",
- endTime: "2026-05-31T13:00:00",
- maxMembers: 15,
- currentMembers: 6,
- status: "2",
- coverImage: "/images/meditation_noon.jpg",
- description: "午间冥想课程,已于5月31日结束。"
- }
+ { id: "3", courseName: "燃脂搏击", courseType: "2", startTime: "2026-06-10T18:30:00", endTime: "2026-06-10T19:30:00", maxMembers: 20, currentMembers: 20, status: "0", coverImage: "/images/kickboxing.jpg", description: "高强度间歇训练" },
+ { id: "2", courseName: "清晨流瑜伽", courseType: "1", startTime: "2026-06-12T09:00:00", endTime: "2026-06-12T10:30:00", maxMembers: 15, currentMembers: 5, status: "0", coverImage: "/images/yoga_flow.jpg", description: "流畅体式" },
+ { id: "4", courseName: "哈他瑜伽", courseType: "1", startTime: "2026-06-01T15:20:00", endTime: "2026-06-01T16:50:00", maxMembers: 12, currentMembers: 3, status: "0", coverImage: "/images/hatha_yoga.jpg", description: "基础瑜伽" },
+ { id: "6", courseName: "蜜桃臀塑造", courseType: "3", startTime: "2026-05-30T19:00:00", endTime: "2026-05-30T20:00:00", maxMembers: 10, currentMembers: 8, status: "2", coverImage: "/images/glute.jpg", description: "臀部训练" },
+ { id: "7", courseName: "午间冥想放松", courseType: "1", startTime: "2026-05-31T12:00:00", endTime: "2026-05-31T13:00:00", maxMembers: 15, currentMembers: 6, status: "2", coverImage: "/images/meditation_noon.jpg", description: "冥想" }
]
-
courses.value = fallbackContent.map(course => ({
- id: course.id,
- image: getImageUrl(course.coverImage),
- tag: getTag(course),
- tagType: getTagType(course),
- name: course.courseName || '未知课程',
+ id: course.id, image: getImageUrl(course.coverImage), tag: getTag(course),
+ tagType: getTagType(course), name: course.courseName || '未知课程',
duration: calculateDuration(course.startTime, course.endTime),
- level: getCourseLevel(course),
- participants: course.currentMembers || 0,
- rawData: course
+ level: getCourseLevel(course), participants: course.currentMembers || 0, rawData: course
}))
}
-// 处理参与课程点击
const handleJoinCourse = (course) => {
- // 根据课程状态判断是否可以参与
- if (course.rawData.status === '2') {
- uni.showToast({
- title: '课程已结束',
- icon: 'none'
- })
- return
- }
-
- if (course.rawData.currentMembers >= course.rawData.maxMembers) {
- uni.showToast({
- title: '课程已满员',
- icon: 'none'
- })
- return
- }
-
- // 跳转到课程详情页
- uni.navigateTo({
- url: `/pages/course/detail?id=${course.id}`
- })
+ if (course.rawData.status === '2') { uni.showToast({ title: '课程已结束', icon: 'none' }); return }
+ if (course.rawData.currentMembers >= course.rawData.maxMembers) { uni.showToast({ title: '课程已满员', icon: 'none' }); return }
+ uni.navigateTo({ url: `/pages/course/detail?id=${course.id}` })
}
-// 组件挂载时获取数据
-onMounted(() => {
- fetchRecommendCourses()
-})
+onMounted(() => { fetchRecommendCourses() })
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/index/TodayRecommend.vue b/gym-manage-uniapp/components/index/TodayRecommend.vue
index 8e73eca..ba700d6 100644
--- a/gym-manage-uniapp/components/index/TodayRecommend.vue
+++ b/gym-manage-uniapp/components/index/TodayRecommend.vue
@@ -9,7 +9,7 @@
查看更多
-
+
@@ -77,12 +77,12 @@ const recommends = [
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoBodyReport.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoBodyReport.vue
index 553c33b..d40ed16 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoBodyReport.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoBodyReport.vue
@@ -13,7 +13,7 @@
历史记录
@@ -34,7 +34,7 @@
>
查看报告
@@ -77,7 +77,7 @@
@@ -87,7 +87,7 @@
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoBookingList.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoBookingList.vue
index 62c1067..f783ca2 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoBookingList.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoBookingList.vue
@@ -13,7 +13,7 @@
预约记录
@@ -41,13 +41,13 @@
教练:{{ item.coach }}
{{ item.location }}
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoCheckInList.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoCheckInList.vue
index 508cb87..49b0411 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoCheckInList.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoCheckInList.vue
@@ -13,7 +13,7 @@
查看全部
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoCouponPoints.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoCouponPoints.vue
index f1fb48f..b764791 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoCouponPoints.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoCouponPoints.vue
@@ -13,7 +13,7 @@
更多详情
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoHeader.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoHeader.vue
index a9fd5b0..2e4c6b0 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoHeader.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoHeader.vue
@@ -6,12 +6,12 @@
@@ -37,7 +37,7 @@
@@ -49,7 +49,7 @@
@@ -46,7 +46,7 @@
class="member-card-preview__icon-stroke"
>
-
+
-
+
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoQuickActions.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoQuickActions.vue
index b2b935b..64a5e83 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoQuickActions.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoQuickActions.vue
@@ -17,12 +17,12 @@
@@ -31,12 +31,12 @@
@@ -94,15 +94,15 @@ export default {
return {
row1: [
{ key: 'booking', label: '预约课程', textClass: 'quick-actions__title', icon: '' },
- { key: 'bodyTest', label: '智能体测', textClass: 'quick-actions__title-2', icon: '/static/images/mappin2.png' },
- { key: 'bodyReport', label: '体测报告', textClass: 'quick-actions__title-3', icon: '/static/images/activity.png' },
- { key: 'trainReport', label: '训练报告', textClass: 'quick-actions__coach', icon: '/static/images/usercheck.png' }
+ { key: 'bodyTest', label: '智能体测', textClass: 'quick-actions__title-2', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/mappin2.png' },
+ { key: 'bodyReport', label: '体测报告', textClass: 'quick-actions__title-3', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/activity.png' },
+ { key: 'trainReport', label: '训练报告', textClass: 'quick-actions__coach', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/usercheck.png' }
],
row2: [
- { key: 'coupon', label: '我的优惠券', textClass: 'quick-actions__text', icon: '/static/images/ticket.png' },
- { key: 'points', label: '我的积分', textClass: 'quick-actions__points-desc', icon: '/static/images/star.png' },
- { key: 'referral', label: '邀请好友', textClass: 'quick-actions__title-4', icon: '/static/images/share2.png' },
- { key: 'course', label: '我的课程', textClass: 'quick-actions__text-2', icon: '/static/images/play.png' }
+ { key: 'coupon', label: '我的优惠券', textClass: 'quick-actions__text', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/ticket.png' },
+ { key: 'points', label: '我的积分', textClass: 'quick-actions__points-desc', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/star.png' },
+ { key: 'referral', label: '邀请好友', textClass: 'quick-actions__title-4', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/share2.png' },
+ { key: 'course', label: '我的课程', textClass: 'quick-actions__text-2', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/play.png' }
]
}
}
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoReferral.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoReferral.vue
index 86461e4..49ef64d 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoReferral.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoReferral.vue
@@ -12,7 +12,7 @@
规则说明
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoSettings.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoSettings.vue
index 50fa947..7063220 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoSettings.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoSettings.vue
@@ -43,7 +43,7 @@
@@ -68,32 +68,32 @@ export default {
{
key: 'notify',
label: '通知设置',
- icon: '/static/images/bell.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/bell.png',
iconWrapClass: ''
},
{
key: 'password',
label: '修改密码',
- icon: '/static/images/Vector_2_727.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/Vector_2_727.png',
iconWrapClass: 'settings-section__item-icon-wrap--blue'
},
{
key: 'privacy',
label: '隐私政策',
- icon: '/static/images/shield.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/shield.png',
iconWrapClass: 'settings-section__item-icon-wrap--green'
},
{
key: 'nfc',
label: 'NFC 门禁卡',
subtitle: '已绑定',
- icon: '/static/images/ticket.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/ticket.png',
iconWrapClass: ''
},
{
key: 'delete',
label: '注销账户',
- icon: '/static/images/userx.png',
+ icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/userx.png',
iconWrapClass: 'settings-section__item-icon-wrap--red',
labelClass: 'settings-section__item-label--danger'
}
diff --git a/gym-manage-uniapp/components/memberInfo/MemberInfoSubNav.vue b/gym-manage-uniapp/components/memberInfo/MemberInfoSubNav.vue
index eb7cdac..dd0f9c6 100644
--- a/gym-manage-uniapp/components/memberInfo/MemberInfoSubNav.vue
+++ b/gym-manage-uniapp/components/memberInfo/MemberInfoSubNav.vue
@@ -5,7 +5,7 @@
diff --git a/gym-manage-uniapp/pages.json b/gym-manage-uniapp/pages.json
index a224e17..0a10e5e 100644
--- a/gym-manage-uniapp/pages.json
+++ b/gym-manage-uniapp/pages.json
@@ -3,6 +3,7 @@
{
"path": "pages/index/index",
"style": {
+ "navigationStyle":"custom",
"navigationBarTitleText": "健身房",
"app-plus": {
"animationType": "fade-in",
diff --git a/gym-manage-uniapp/pages/index/index.vue b/gym-manage-uniapp/pages/index/index.vue
index 9144000..583c755 100644
--- a/gym-manage-uniapp/pages/index/index.vue
+++ b/gym-manage-uniapp/pages/index/index.vue
@@ -1,28 +1,43 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -36,23 +51,161 @@ import TabBar from '@/components/TabBar.vue'
import HomeSkeleton from '@/components/Skeleton/HomeSkeleton.vue'
const loading = ref(true)
+const isShow = ref(false)
+const handHeight = ref(0)
+const scrollDistance = ref(0)
+const isRefreshing = ref(false)
+
+// 滚动监听
+const handleScroll = (e) => {
+ const distance = e.detail.scrollTop
+ scrollDistance.value = distance
+
+ // 控制白色块显示/隐藏
+ isShow.value = distance > 238
+}
+
+// 下拉刷新处理
+const onRefresh = async () => {
+ console.log('开始下拉刷新')
+ isRefreshing.value = true
+
+ try {
+ await refreshData()
+ isRefreshing.value = false
+ uni.showToast({
+ title: '刷新成功',
+ icon: 'success'
+ })
+ } catch (error) {
+ console.error('刷新失败', error)
+ isRefreshing.value = false
+ uni.showToast({
+ title: '刷新失败',
+ icon: 'error'
+ })
+ }
+}
+
+// 刷新数据
+const refreshData = () => {
+ return new Promise((resolve) => {
+ setTimeout(() => {
+ console.log('数据已刷新')
+ resolve()
+ }, 1500)
+ })
+}
onMounted(() => {
setTimeout(() => {
loading.value = false
}, 1500)
+ // 获取胶囊按钮高度
+ const menuButtonInfo = uni.getMenuButtonBoundingClientRect()
+ const navTotalHeight = menuButtonInfo.top + menuButtonInfo.height
+ handHeight.value = navTotalHeight * 2
})
+/* 其他样式保持不变 */
+.glow {
+ position: absolute;
+ border-radius: 50%;
+ pointer-events: none;
+ z-index: 0;
+}
+
+.glow-1 {
+ width: 400rpx;
+ height: 400rpx;
+ top: 60rpx;
+ right: -100rpx;
+ background: radial-gradient(circle, rgba(160, 210, 235, 0.35) 0%, transparent 70%);
+}
+
+.glow-2 {
+ width: 300rpx;
+ height: 300rpx;
+ top: 500rpx;
+ left: -80rpx;
+ background: radial-gradient(circle, rgba(180, 220, 240, 0.3) 0%, transparent 70%);
+}
+
+.glow-3 {
+ width: 250rpx;
+ height: 250rpx;
+ top: 900rpx;
+ right: -60rpx;
+ background: radial-gradient(circle, rgba(170, 215, 238, 0.25) 0%, transparent 70%);
+}
+
\ No newline at end of file
diff --git a/gym-manage-uniapp/pages/memberInfo/bodyTestConnect.vue b/gym-manage-uniapp/pages/memberInfo/bodyTestConnect.vue
index 4977f50..5529199 100644
--- a/gym-manage-uniapp/pages/memberInfo/bodyTestConnect.vue
+++ b/gym-manage-uniapp/pages/memberInfo/bodyTestConnect.vue
@@ -35,7 +35,7 @@
-
+
连接成功
diff --git a/gym-manage-uniapp/pages/memberInfo/bodyTestHome.vue b/gym-manage-uniapp/pages/memberInfo/bodyTestHome.vue
index d47f81e..d524f23 100644
--- a/gym-manage-uniapp/pages/memberInfo/bodyTestHome.vue
+++ b/gym-manage-uniapp/pages/memberInfo/bodyTestHome.vue
@@ -34,7 +34,7 @@
:hover-stay-time="150"
@tap="startMeasure"
>
-
+
开始体测
设备状态
-
+
{{ device.name }}
@@ -121,10 +121,10 @@ export default {
latest: null,
device: {},
quickLinks: [
- { key: 'history', label: '历史记录', icon: '/static/images/clock.png' },
- { key: 'compare', label: '历史对比', icon: '/static/images/trendingdown.png' },
- { key: 'trend', label: '趋势分析', icon: '/static/images/activity.png' },
- { key: 'report', label: '体测报告', icon: '/static/images/filetext.png' }
+ { key: 'history', label: '历史记录', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/clock.png' },
+ { key: 'compare', label: '历史对比', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/trendingdown.png' },
+ { key: 'trend', label: '趋势分析', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/activity.png' },
+ { key: 'report', label: '体测报告', icon: 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/filetext.png' }
]
}
},
diff --git a/gym-manage-uniapp/pages/memberInfo/bodyTestReport.vue b/gym-manage-uniapp/pages/memberInfo/bodyTestReport.vue
index 75fcd4c..5a49e91 100644
--- a/gym-manage-uniapp/pages/memberInfo/bodyTestReport.vue
+++ b/gym-manage-uniapp/pages/memberInfo/bodyTestReport.vue
@@ -94,7 +94,7 @@
查看完整趋势分析
@@ -140,7 +140,7 @@
:hover-stay-time="150"
@tap="exportReport"
>
-
+
导出 PDF
-
+
分享
设备管理
-
+
{{ device.name }}
diff --git a/gym-manage-uniapp/pages/memberInfo/booking.vue b/gym-manage-uniapp/pages/memberInfo/booking.vue
index 9a3db82..f3543d6 100644
--- a/gym-manage-uniapp/pages/memberInfo/booking.vue
+++ b/gym-manage-uniapp/pages/memberInfo/booking.vue
@@ -44,7 +44,7 @@
>
{{ upcomingAlert }}
@@ -82,7 +82,7 @@
{{ item.schedule }}
@@ -90,7 +90,7 @@
{{ item.coach }}
diff --git a/gym-manage-uniapp/pages/memberInfo/checkInHistory.vue b/gym-manage-uniapp/pages/memberInfo/checkInHistory.vue
index a50968d..844eb0c 100644
--- a/gym-manage-uniapp/pages/memberInfo/checkInHistory.vue
+++ b/gym-manage-uniapp/pages/memberInfo/checkInHistory.vue
@@ -27,7 +27,7 @@
@tap="showDetail(item)"
>
-
+
{{ item.title }}
diff --git a/gym-manage-uniapp/pages/memberInfo/courseList.vue b/gym-manage-uniapp/pages/memberInfo/courseList.vue
index 541f779..1d2ac0e 100644
--- a/gym-manage-uniapp/pages/memberInfo/courseList.vue
+++ b/gym-manage-uniapp/pages/memberInfo/courseList.vue
@@ -39,13 +39,13 @@
{{ coach }}
-
+
{{ periodLabel }}
-
+
@@ -103,7 +103,7 @@
hover-class="mi-tap-btn--hover"
@tap="goMyBooking"
>
-
+
我的预约
diff --git a/gym-manage-uniapp/pages/memberInfo/memberCard.vue b/gym-manage-uniapp/pages/memberInfo/memberCard.vue
index 59a5e91..eaca6de 100644
--- a/gym-manage-uniapp/pages/memberInfo/memberCard.vue
+++ b/gym-manage-uniapp/pages/memberInfo/memberCard.vue
@@ -8,7 +8,7 @@
{{ card.name }}
@@ -31,7 +31,7 @@
>
立即续费
diff --git a/gym-manage-uniapp/pages/memberInfo/onlineCourseDetail.vue b/gym-manage-uniapp/pages/memberInfo/onlineCourseDetail.vue
index 4b057c5..e56ea57 100644
--- a/gym-manage-uniapp/pages/memberInfo/onlineCourseDetail.vue
+++ b/gym-manage-uniapp/pages/memberInfo/onlineCourseDetail.vue
@@ -16,7 +16,7 @@
视频播放
-
+
点击播放(支持倍速与拖拽)
diff --git a/gym-manage-uniapp/pages/memberInfo/points.vue b/gym-manage-uniapp/pages/memberInfo/points.vue
index bd755b6..e42710f 100644
--- a/gym-manage-uniapp/pages/memberInfo/points.vue
+++ b/gym-manage-uniapp/pages/memberInfo/points.vue
@@ -13,19 +13,19 @@
快捷入口
-
+
积分商城
-
+
积分明细
-
+
签到赚积分
-
+
邀请赚积分
diff --git a/gym-manage-uniapp/pages/memberInfo/referral.vue b/gym-manage-uniapp/pages/memberInfo/referral.vue
index 6c29540..0c65979 100644
--- a/gym-manage-uniapp/pages/memberInfo/referral.vue
+++ b/gym-manage-uniapp/pages/memberInfo/referral.vue
@@ -25,7 +25,7 @@
:hover-stay-time="150"
@tap="shareInvite"
>
-
+
分享给好友
diff --git a/gym-manage-uniapp/pages/memberInfo/userInfo.vue b/gym-manage-uniapp/pages/memberInfo/userInfo.vue
index e9b0c3a..a2fe8e0 100644
--- a/gym-manage-uniapp/pages/memberInfo/userInfo.vue
+++ b/gym-manage-uniapp/pages/memberInfo/userInfo.vue
@@ -21,7 +21,7 @@
>
更换
@@ -41,7 +41,7 @@
{{ name }}
@@ -70,7 +70,7 @@
@@ -90,7 +90,7 @@
>
女
@@ -104,7 +104,7 @@
>
男
@@ -125,7 +125,7 @@
{{ birthday }}
@@ -228,7 +228,7 @@ import {
showValidationError
} from '@/common/memberInfo/validate.js'
-const DEFAULT_AVATAR = '/static/images/AvatarEditWrap.png'
+const DEFAULT_AVATAR = 'https://gymfuture.oss-cn-chengdu.aliyuncs.com/static/images/AvatarEditWrap.png'
export default {
components: { MemberInfoSubNav },
diff --git a/gym-manage-uniapp/static/images/450d4bd301c5a08dc7f1deb2261fc4ffebfcf731.png b/gym-manage-uniapp/static/images/450d4bd301c5a08dc7f1deb2261fc4ffebfcf731.png
deleted file mode 100644
index df289c5..0000000
Binary files a/gym-manage-uniapp/static/images/450d4bd301c5a08dc7f1deb2261fc4ffebfcf731.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/83cc9c01fd93530ca0848f4f9ddc12da1d40aacd.png b/gym-manage-uniapp/static/images/83cc9c01fd93530ca0848f4f9ddc12da1d40aacd.png
deleted file mode 100644
index 2f5707f..0000000
Binary files a/gym-manage-uniapp/static/images/83cc9c01fd93530ca0848f4f9ddc12da1d40aacd.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/AC1Banner.png b/gym-manage-uniapp/static/images/AC1Banner.png
deleted file mode 100644
index 8e31aba..0000000
Binary files a/gym-manage-uniapp/static/images/AC1Banner.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/AC2Banner.png b/gym-manage-uniapp/static/images/AC2Banner.png
deleted file mode 100644
index 6763e61..0000000
Binary files a/gym-manage-uniapp/static/images/AC2Banner.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/AvatarEditWrap.png b/gym-manage-uniapp/static/images/AvatarEditWrap.png
deleted file mode 100644
index b69c7f2..0000000
Binary files a/gym-manage-uniapp/static/images/AvatarEditWrap.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/AvatarWrap.png b/gym-manage-uniapp/static/images/AvatarWrap.png
deleted file mode 100644
index 87e42e0..0000000
Binary files a/gym-manage-uniapp/static/images/AvatarWrap.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Line_2_468.png b/gym-manage-uniapp/static/images/Line_2_468.png
deleted file mode 100644
index e51e81c..0000000
Binary files a/gym-manage-uniapp/static/images/Line_2_468.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Line_2_744.png b/gym-manage-uniapp/static/images/Line_2_744.png
deleted file mode 100644
index bc2e721..0000000
Binary files a/gym-manage-uniapp/static/images/Line_2_744.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_490.png b/gym-manage-uniapp/static/images/Vector_2_490.png
deleted file mode 100644
index 95b32d3..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_490.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_491.png b/gym-manage-uniapp/static/images/Vector_2_491.png
deleted file mode 100644
index 95b32d3..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_491.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_493.png b/gym-manage-uniapp/static/images/Vector_2_493.png
deleted file mode 100644
index 35367f7..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_493.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_494.png b/gym-manage-uniapp/static/images/Vector_2_494.png
deleted file mode 100644
index e0ca4e0..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_494.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_697.png b/gym-manage-uniapp/static/images/Vector_2_697.png
deleted file mode 100644
index 4428912..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_697.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_727.png b/gym-manage-uniapp/static/images/Vector_2_727.png
deleted file mode 100644
index 7e891f8..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_727.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_777.png b/gym-manage-uniapp/static/images/Vector_2_777.png
deleted file mode 100644
index 2214547..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_777.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_778.png b/gym-manage-uniapp/static/images/Vector_2_778.png
deleted file mode 100644
index 2214547..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_778.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/Vector_2_780.png b/gym-manage-uniapp/static/images/Vector_2_780.png
deleted file mode 100644
index 46141ff..0000000
Binary files a/gym-manage-uniapp/static/images/Vector_2_780.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/activity.png b/gym-manage-uniapp/static/images/activity.png
deleted file mode 100644
index 982f663..0000000
Binary files a/gym-manage-uniapp/static/images/activity.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/alertcircle.png b/gym-manage-uniapp/static/images/alertcircle.png
deleted file mode 100644
index 3ad9106..0000000
Binary files a/gym-manage-uniapp/static/images/alertcircle.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/bell.png b/gym-manage-uniapp/static/images/bell.png
deleted file mode 100644
index 910f17d..0000000
Binary files a/gym-manage-uniapp/static/images/bell.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/bell0.png b/gym-manage-uniapp/static/images/bell0.png
deleted file mode 100644
index f52381d..0000000
Binary files a/gym-manage-uniapp/static/images/bell0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/bookmark.png b/gym-manage-uniapp/static/images/bookmark.png
deleted file mode 100644
index 7ce9160..0000000
Binary files a/gym-manage-uniapp/static/images/bookmark.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/camera.png b/gym-manage-uniapp/static/images/camera.png
deleted file mode 100644
index 078965d..0000000
Binary files a/gym-manage-uniapp/static/images/camera.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/cfea795ae741bbd7d3c2a9d4c085ecac17595e98.png b/gym-manage-uniapp/static/images/cfea795ae741bbd7d3c2a9d4c085ecac17595e98.png
deleted file mode 100644
index 0368dfc..0000000
Binary files a/gym-manage-uniapp/static/images/cfea795ae741bbd7d3c2a9d4c085ecac17595e98.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronleft.png b/gym-manage-uniapp/static/images/chevronleft.png
deleted file mode 100644
index 054f332..0000000
Binary files a/gym-manage-uniapp/static/images/chevronleft.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronleft0.png b/gym-manage-uniapp/static/images/chevronleft0.png
deleted file mode 100644
index 054f332..0000000
Binary files a/gym-manage-uniapp/static/images/chevronleft0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronleft1.png b/gym-manage-uniapp/static/images/chevronleft1.png
deleted file mode 100644
index 054f332..0000000
Binary files a/gym-manage-uniapp/static/images/chevronleft1.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright.png b/gym-manage-uniapp/static/images/chevronright.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright0.png b/gym-manage-uniapp/static/images/chevronright0.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright1.png b/gym-manage-uniapp/static/images/chevronright1.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright1.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright10.png b/gym-manage-uniapp/static/images/chevronright10.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright10.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright11.png b/gym-manage-uniapp/static/images/chevronright11.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright11.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright12.png b/gym-manage-uniapp/static/images/chevronright12.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright12.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright2.png b/gym-manage-uniapp/static/images/chevronright2.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright2.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright3.png b/gym-manage-uniapp/static/images/chevronright3.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright3.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright4.png b/gym-manage-uniapp/static/images/chevronright4.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright4.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright5.png b/gym-manage-uniapp/static/images/chevronright5.png
deleted file mode 100644
index a574e5c..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright5.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright6.png b/gym-manage-uniapp/static/images/chevronright6.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright6.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright7.png b/gym-manage-uniapp/static/images/chevronright7.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright7.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright8.png b/gym-manage-uniapp/static/images/chevronright8.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright8.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/chevronright9.png b/gym-manage-uniapp/static/images/chevronright9.png
deleted file mode 100644
index 23f5318..0000000
Binary files a/gym-manage-uniapp/static/images/chevronright9.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/clock.png b/gym-manage-uniapp/static/images/clock.png
deleted file mode 100644
index 599cf31..0000000
Binary files a/gym-manage-uniapp/static/images/clock.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/clock0.png b/gym-manage-uniapp/static/images/clock0.png
deleted file mode 100644
index 599cf31..0000000
Binary files a/gym-manage-uniapp/static/images/clock0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/clock1.png b/gym-manage-uniapp/static/images/clock1.png
deleted file mode 100644
index 29cc0fd..0000000
Binary files a/gym-manage-uniapp/static/images/clock1.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/crown.png b/gym-manage-uniapp/static/images/crown.png
deleted file mode 100644
index 8d3f334..0000000
Binary files a/gym-manage-uniapp/static/images/crown.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/crown0.png b/gym-manage-uniapp/static/images/crown0.png
deleted file mode 100644
index e2fcf0d..0000000
Binary files a/gym-manage-uniapp/static/images/crown0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/dumbbell.png b/gym-manage-uniapp/static/images/dumbbell.png
deleted file mode 100644
index 771f122..0000000
Binary files a/gym-manage-uniapp/static/images/dumbbell.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/e26f79100d95392c0d384144c52f1941b4305c96.png b/gym-manage-uniapp/static/images/e26f79100d95392c0d384144c52f1941b4305c96.png
deleted file mode 100644
index d9c225b..0000000
Binary files a/gym-manage-uniapp/static/images/e26f79100d95392c0d384144c52f1941b4305c96.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/filetext.png b/gym-manage-uniapp/static/images/filetext.png
deleted file mode 100644
index 5a32c0a..0000000
Binary files a/gym-manage-uniapp/static/images/filetext.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/home.png b/gym-manage-uniapp/static/images/home.png
deleted file mode 100644
index c4220cc..0000000
Binary files a/gym-manage-uniapp/static/images/home.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/logout.png b/gym-manage-uniapp/static/images/logout.png
deleted file mode 100644
index 1ceabe6..0000000
Binary files a/gym-manage-uniapp/static/images/logout.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/mappin.png b/gym-manage-uniapp/static/images/mappin.png
deleted file mode 100644
index aa20abf..0000000
Binary files a/gym-manage-uniapp/static/images/mappin.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/mappin0.png b/gym-manage-uniapp/static/images/mappin0.png
deleted file mode 100644
index 7ebe493..0000000
Binary files a/gym-manage-uniapp/static/images/mappin0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/mappin1.png b/gym-manage-uniapp/static/images/mappin1.png
deleted file mode 100644
index 7ebe493..0000000
Binary files a/gym-manage-uniapp/static/images/mappin1.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/mappin2.png b/gym-manage-uniapp/static/images/mappin2.png
deleted file mode 100644
index 6c947cb..0000000
Binary files a/gym-manage-uniapp/static/images/mappin2.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/mars.png b/gym-manage-uniapp/static/images/mars.png
deleted file mode 100644
index 320f25e..0000000
Binary files a/gym-manage-uniapp/static/images/mars.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/play.png b/gym-manage-uniapp/static/images/play.png
deleted file mode 100644
index de8122c..0000000
Binary files a/gym-manage-uniapp/static/images/play.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/pluscircle.png b/gym-manage-uniapp/static/images/pluscircle.png
deleted file mode 100644
index a9dc1fe..0000000
Binary files a/gym-manage-uniapp/static/images/pluscircle.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/refreshcw.png b/gym-manage-uniapp/static/images/refreshcw.png
deleted file mode 100644
index 47a8c1e..0000000
Binary files a/gym-manage-uniapp/static/images/refreshcw.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/settings.png b/gym-manage-uniapp/static/images/settings.png
deleted file mode 100644
index 1e9727d..0000000
Binary files a/gym-manage-uniapp/static/images/settings.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/share2.png b/gym-manage-uniapp/static/images/share2.png
deleted file mode 100644
index 2941d88..0000000
Binary files a/gym-manage-uniapp/static/images/share2.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/shield.png b/gym-manage-uniapp/static/images/shield.png
deleted file mode 100644
index 468a5e1..0000000
Binary files a/gym-manage-uniapp/static/images/shield.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/star.png b/gym-manage-uniapp/static/images/star.png
deleted file mode 100644
index adb59b8..0000000
Binary files a/gym-manage-uniapp/static/images/star.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/target.png b/gym-manage-uniapp/static/images/target.png
deleted file mode 100644
index dbdcb87..0000000
Binary files a/gym-manage-uniapp/static/images/target.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/ticket.png b/gym-manage-uniapp/static/images/ticket.png
deleted file mode 100644
index 5661236..0000000
Binary files a/gym-manage-uniapp/static/images/ticket.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/trendingdown.png b/gym-manage-uniapp/static/images/trendingdown.png
deleted file mode 100644
index 4819621..0000000
Binary files a/gym-manage-uniapp/static/images/trendingdown.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/user.png b/gym-manage-uniapp/static/images/user.png
deleted file mode 100644
index 53b2496..0000000
Binary files a/gym-manage-uniapp/static/images/user.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/user0.png b/gym-manage-uniapp/static/images/user0.png
deleted file mode 100644
index 53b2496..0000000
Binary files a/gym-manage-uniapp/static/images/user0.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/user1.png b/gym-manage-uniapp/static/images/user1.png
deleted file mode 100644
index 7a2ac21..0000000
Binary files a/gym-manage-uniapp/static/images/user1.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/user2.png b/gym-manage-uniapp/static/images/user2.png
deleted file mode 100644
index 7a2ac21..0000000
Binary files a/gym-manage-uniapp/static/images/user2.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/user3.png b/gym-manage-uniapp/static/images/user3.png
deleted file mode 100644
index 0eff33d..0000000
Binary files a/gym-manage-uniapp/static/images/user3.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/usercheck.png b/gym-manage-uniapp/static/images/usercheck.png
deleted file mode 100644
index aa981c2..0000000
Binary files a/gym-manage-uniapp/static/images/usercheck.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/userx.png b/gym-manage-uniapp/static/images/userx.png
deleted file mode 100644
index abc78e9..0000000
Binary files a/gym-manage-uniapp/static/images/userx.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/images/venus.png b/gym-manage-uniapp/static/images/venus.png
deleted file mode 100644
index d5c043f..0000000
Binary files a/gym-manage-uniapp/static/images/venus.png and /dev/null differ
diff --git a/gym-manage-uniapp/static/tabBar/home.png b/gym-manage-uniapp/static/tabBar/home.png
deleted file mode 100644
index c4220cc..0000000
Binary files a/gym-manage-uniapp/static/tabBar/home.png and /dev/null differ