hookehuyr

feat(Dashboard): 更新活动排行榜标题并添加家庭成员数据

refactor(UserAgreement): 重构用户协议页面样式和结构
refactor(PrivacyPolicy): 重构隐私政策页面样式和结构
...@@ -106,7 +106,7 @@ ...@@ -106,7 +106,7 @@
106 <view @tap="openFamilyRank" class="w-full bg-blue-500 text-white py-3 rounded-lg flex flex-col items-center justify-center"> 106 <view @tap="openFamilyRank" class="w-full bg-blue-500 text-white py-3 rounded-lg flex flex-col items-center justify-center">
107 <view class="flex items-center justify-center"> 107 <view class="flex items-center justify-center">
108 <Category size="16" class="mr-2" /> 108 <Category size="16" class="mr-2" />
109 - 活动排行榜 109 + 昨日活动步数排行榜
110 </view> 110 </view>
111 </view> 111 </view>
112 </view> 112 </view>
...@@ -201,7 +201,10 @@ import TotalPointsDisplay from '@/components/TotalPointsDisplay.vue'; ...@@ -201,7 +201,10 @@ import TotalPointsDisplay from '@/components/TotalPointsDisplay.vue';
201 import PointsCollector from '@/components/PointsCollector.vue' 201 import PointsCollector from '@/components/PointsCollector.vue'
202 import WeRunAuth from '@/components/WeRunAuth.vue' 202 import WeRunAuth from '@/components/WeRunAuth.vue'
203 import { useMediaPreview } from '@/composables/useMediaPreview'; 203 import { useMediaPreview } from '@/composables/useMediaPreview';
204 +// 默认家庭封面图
204 import defaultFamilyCover from '@/assets/images/default-family-cover.png'; 205 import defaultFamilyCover from '@/assets/images/default-family-cover.png';
206 +// 默认头像
207 +const defaultAvatar = 'https://cdn.ipadbiz.cn/mlaj/images/icon_1.jpeg'
205 208
206 const todaySteps = ref(0); 209 const todaySteps = ref(0);
207 const isWeRunAuthorized = ref(false); 210 const isWeRunAuthorized = ref(false);
...@@ -326,7 +329,19 @@ const familyMembers = ref([ ...@@ -326,7 +329,19 @@ const familyMembers = ref([
326 name: '女儿', 329 name: '女儿',
327 steps: 4000, 330 steps: 4000,
328 avatar: 'https://randomuser.me/api/portraits/women/29.jpg' 331 avatar: 'https://randomuser.me/api/portraits/women/29.jpg'
329 - } 332 + },
333 + {
334 + id: 5,
335 + name: '孙子',
336 + steps: 3000,
337 + avatar: 'https://randomuser.me/api/portraits/men/25.jpg'
338 + },
339 + {
340 + id: 6,
341 + name: '孙女',
342 + steps: 20000,
343 + avatar: 'https://randomuser.me/api/portraits/women/27.jpg'
344 + },
330 ]); 345 ]);
331 346
332 // 注意:totalSteps 计算逻辑已移至 getTotalSteps 方法中 347 // 注意:totalSteps 计算逻辑已移至 getTotalSteps 方法中
......
This diff is collapsed. Click to expand it.
1 <!-- 1 <!--
2 * @Date: 2025-08-27 17:50:27 2 * @Date: 2025-08-27 17:50:27
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2025-08-28 00:31:28 4 + * @LastEditTime: 2025-09-02 14:26:36
5 * @FilePath: /lls_program/src/pages/UserAgreement/index.vue 5 * @FilePath: /lls_program/src/pages/UserAgreement/index.vue
6 * @Description: 文件描述 6 * @Description: 文件描述
7 --> 7 -->
...@@ -9,89 +9,89 @@ ...@@ -9,89 +9,89 @@
9 <view class="min-h-screen flex flex-col bg-white"> 9 <view class="min-h-screen flex flex-col bg-white">
10 <!-- <AppHeader title="用户协议" /> --> 10 <!-- <AppHeader title="用户协议" /> -->
11 <view class="flex-1 px-4 py-6 pb-20"> 11 <view class="flex-1 px-4 py-6 pb-20">
12 - <view class="prose prose-sm max-w-none"> 12 + <view class="max-w-none">
13 - <h2 class="text-xl font-bold mb-4">老来赛用户协议</h2> 13 + <view class="text-xl font-bold mb-4">老来赛用户协议</view>
14 - <p class="text-gray-700 mb-4"> 14 + <view class="text-gray-600 mb-4">
15 欢迎您使用老来赛应用服务。在使用老来赛应用服务之前,请您务必仔细阅读并透彻理解本用户协议。 15 欢迎您使用老来赛应用服务。在使用老来赛应用服务之前,请您务必仔细阅读并透彻理解本用户协议。
16 - </p> 16 + </view>
17 - <h3 class="text-lg font-semibold mt-6 mb-2">一、协议的范围</h3> 17 + <view class="text-lg font-semibold mt-6 mb-2">一、协议的范围</view>
18 - <p class="text-gray-700 mb-4"> 18 + <view class="text-gray-600 mb-4">
19 本协议是您与老来赛应用之间关于您使用老来赛应用服务所订立的协议。"老来赛"是指老来赛应用及其开发者。"用户"是指注册、登录、使用本服务的个人或组织。本服务包括老来赛应用及相关网站。 19 本协议是您与老来赛应用之间关于您使用老来赛应用服务所订立的协议。"老来赛"是指老来赛应用及其开发者。"用户"是指注册、登录、使用本服务的个人或组织。本服务包括老来赛应用及相关网站。
20 - </p> 20 + </view>
21 - <h3 class="text-lg font-semibold mt-6 mb-2"> 21 + <view class="text-lg font-semibold mt-6 mb-2">
22 二、账号注册与使用 22 二、账号注册与使用
23 - </h3> 23 + </view>
24 - <p class="text-gray-700 mb-4"> 24 + <view class="text-gray-600 mb-4">
25 1. 25 1.
26 用户在使用本服务前需要注册一个老来赛账号。老来赛账号应当使用手机号码绑定注册,请用户使用尚未与老来赛账号绑定的手机号码,以及未被老来赛根据本协议封禁的手机号码注册老来赛账号。 26 用户在使用本服务前需要注册一个老来赛账号。老来赛账号应当使用手机号码绑定注册,请用户使用尚未与老来赛账号绑定的手机号码,以及未被老来赛根据本协议封禁的手机号码注册老来赛账号。
27 - </p> 27 + </view>
28 - <p class="text-gray-700 mb-4"> 28 + <view class="text-gray-600 mb-4">
29 2. 29 2.
30 用户应当对账号信息的真实性、合法性、有效性承担全部责任。用户不得冒充他人或利用他人的名义注册账号,不得利用多个手机号注册多个账号,不得使用可能侵犯他人合法权益的账号名称。 30 用户应当对账号信息的真实性、合法性、有效性承担全部责任。用户不得冒充他人或利用他人的名义注册账号,不得利用多个手机号注册多个账号,不得使用可能侵犯他人合法权益的账号名称。
31 - </p> 31 + </view>
32 - <h3 class="text-lg font-semibold mt-6 mb-2">三、用户行为规范</h3> 32 + <view class="text-lg font-semibold mt-6 mb-2">三、用户行为规范</view>
33 - <p class="text-gray-700 mb-4"> 33 + <view class="text-gray-600 mb-4">
34 1. 34 1.
35 用户在使用老来赛服务时,必须遵守中华人民共和国相关法律法规的规定,不得利用本服务进行任何违法或不正当的活动,包括但不限于: 35 用户在使用老来赛服务时,必须遵守中华人民共和国相关法律法规的规定,不得利用本服务进行任何违法或不正当的活动,包括但不限于:
36 - </p> 36 + </view>
37 - <ul class="list-disc pl-5 mb-4 text-gray-700"> 37 + <view class="mb-4 text-gray-600">
38 - <li>发布、传送、传播、储存违反国家法律法规禁止的内容</li> 38 + <view class="flex flex-row"><view class="mr-2">・</view><view>发布、传送、传播、储存违反国家法律法规禁止的内容</view></view>
39 - <li> 39 + <view class="flex flex-row"><view class="mr-2">・</view><view>
40 发布、传送、传播、储存侵害他人名誉权、肖像权、知识产权、商业秘密等合法权利的内容 40 发布、传送、传播、储存侵害他人名誉权、肖像权、知识产权、商业秘密等合法权利的内容
41 - </li> 41 + </view></view>
42 - <li>虚构事实、隐瞒真相以误导、欺骗他人</li> 42 + <view class="flex flex-row"><view class="mr-2">・</view><view>虚构事实、隐瞒真相以误导、欺骗他人</view></view>
43 - <li>发布、传送、传播广告信息及垃圾信息</li> 43 + <view class="flex flex-row"><view class="mr-2">・</view><view>发布、传送、传播广告信息及垃圾信息</view></view>
44 - </ul> 44 + </view>
45 - <h3 class="text-lg font-semibold mt-6 mb-2"> 45 + <view class="text-lg font-semibold mt-6 mb-2">
46 四、服务变更、中断或终止 46 四、服务变更、中断或终止
47 - </h3> 47 + </view>
48 - <p class="text-gray-700 mb-4"> 48 + <view class="text-gray-600 mb-4">
49 1. 49 1.
50 鉴于网络服务的特殊性,老来赛有权根据实际情况随时变更、中断或终止部分或全部的服务而无需对用户或第三方负责。 50 鉴于网络服务的特殊性,老来赛有权根据实际情况随时变更、中断或终止部分或全部的服务而无需对用户或第三方负责。
51 - </p> 51 + </view>
52 - <p class="text-gray-700 mb-4"> 52 + <view class="text-gray-600 mb-4">
53 2. 53 2.
54 如发生下列任何一种情形,老来赛有权随时中断或终止向用户提供本协议项下的服务而无需对用户或任何第三方承担责任: 54 如发生下列任何一种情形,老来赛有权随时中断或终止向用户提供本协议项下的服务而无需对用户或任何第三方承担责任:
55 - </p> 55 + </view>
56 - <ul class="list-disc pl-5 mb-4 text-gray-700"> 56 + <view class="mb-4 text-gray-600">
57 - <li>用户提供的个人资料不真实</li> 57 + <view class="flex flex-row"><view class="mr-2">・</view><view>用户提供的个人资料不真实</view></view>
58 - <li>用户违反本协议中规定的使用规则</li> 58 + <view class="flex flex-row"><view class="mr-2">・</view><view>用户违反本协议中规定的使用规则</view></view>
59 - <li>用户在使用老来赛服务时有违法行为</li> 59 + <view class="flex flex-row"><view class="mr-2">・</view><view>用户在使用老来赛服务时有违法行为</view></view>
60 - </ul> 60 + </view>
61 - <h3 class="text-lg font-semibold mt-6 mb-2">五、免责声明</h3> 61 + <view class="text-lg font-semibold mt-6 mb-2">五、免责声明</view>
62 - <p class="text-gray-700 mb-4"> 62 + <view class="text-gray-600 mb-4">
63 1. 63 1.
64 用户明确同意其使用老来赛服务所存在的风险将完全由其自己承担;因其使用老来赛服务而产生的一切后果也由其自己承担,老来赛对用户不承担任何责任。 64 用户明确同意其使用老来赛服务所存在的风险将完全由其自己承担;因其使用老来赛服务而产生的一切后果也由其自己承担,老来赛对用户不承担任何责任。
65 - </p> 65 + </view>
66 - <p class="text-gray-700 mb-4"> 66 + <view class="text-gray-600 mb-4">
67 2. 67 2.
68 老来赛不保证服务一定能满足用户的要求,也不保证服务不会中断,对服务的及时性、安全性、准确性也都不作保证。 68 老来赛不保证服务一定能满足用户的要求,也不保证服务不会中断,对服务的及时性、安全性、准确性也都不作保证。
69 - </p> 69 + </view>
70 - <h3 class="text-lg font-semibold mt-6 mb-2">六、协议修改</h3> 70 + <view class="text-lg font-semibold mt-6 mb-2">六、协议修改</view>
71 - <p class="text-gray-700 mb-4"> 71 + <view class="text-gray-600 mb-4">
72 1. 72 1.
73 老来赛有权随时修改本协议的任何条款,一旦本协议的内容发生变动,老来赛将会在应用内更新并提示修改内容。 73 老来赛有权随时修改本协议的任何条款,一旦本协议的内容发生变动,老来赛将会在应用内更新并提示修改内容。
74 - </p> 74 + </view>
75 - <p class="text-gray-700 mb-4"> 75 + <view class="text-gray-600 mb-4">
76 2. 76 2.
77 如果不同意老来赛对本协议相关条款所做的修改,用户有权停止使用老来赛服务。如果用户继续使用服务,则视为用户接受老来赛对本协议相关条款所做的修改。 77 如果不同意老来赛对本协议相关条款所做的修改,用户有权停止使用老来赛服务。如果用户继续使用服务,则视为用户接受老来赛对本协议相关条款所做的修改。
78 - </p> 78 + </view>
79 - <h3 class="text-lg font-semibold mt-6 mb-2">七、通知送达</h3> 79 + <view class="text-lg font-semibold mt-6 mb-2">七、通知送达</view>
80 - <p class="text-gray-700 mb-4"> 80 + <view class="text-gray-600 mb-4">
81 1. 81 1.
82 本协议项下老来赛对于用户所有的通知均可通过网页公告、电子邮件、手机短信或常规的信件传送等方式进行。 82 本协议项下老来赛对于用户所有的通知均可通过网页公告、电子邮件、手机短信或常规的信件传送等方式进行。
83 - </p> 83 + </view>
84 - <h3 class="text-lg font-semibold mt-6 mb-2"> 84 + <view class="text-lg font-semibold mt-6 mb-2">
85 八、法律适用与争议解决 85 八、法律适用与争议解决
86 - </h3> 86 + </view>
87 - <p class="text-gray-700 mb-4"> 87 + <view class="text-gray-600 mb-4">
88 1. 本协议的订立、执行和解释及争议的解决均应适用中华人民共和国法律。 88 1. 本协议的订立、执行和解释及争议的解决均应适用中华人民共和国法律。
89 - </p> 89 + </view>
90 - <p class="text-gray-700 mb-4"> 90 + <view class="text-gray-600 mb-4">
91 2. 91 2.
92 如双方就本协议内容或其执行发生任何争议,双方应尽量友好协商解决;协商不成时,任何一方均可向老来赛所在地的人民法院提起诉讼。 92 如双方就本协议内容或其执行发生任何争议,双方应尽量友好协商解决;协商不成时,任何一方均可向老来赛所在地的人民法院提起诉讼。
93 - </p> 93 + </view>
94 - <p class="text-gray-700 mt-8">本协议最终解释权归老来赛所有。</p> 94 + <view class="text-gray-600 mt-8">本协议最终解释权归老来赛所有。</view>
95 </view> 95 </view>
96 </view> 96 </view>
97 <!-- <BottomNav /> --> 97 <!-- <BottomNav /> -->
...@@ -99,6 +99,6 @@ ...@@ -99,6 +99,6 @@
99 </template> 99 </template>
100 100
101 <script setup> 101 <script setup>
102 -import AppHeader from '../../components/AppHeader.vue';
103 -import BottomNav from '../../components/BottomNav.vue';
104 </script> 102 </script>
103 +<style lang="less" scoped>
104 +</style>
......