feat(fe): 隐藏「我的帖子」入口 + 设置新增用户协议/隐私政策页
- mine 页「我的帖子」入口随社区下线隐藏(代码注释保留,恢复社区时解开) - 新增 pages/agreement:一页两用(type=user/privacy),含完整协议/政策文案 - 设置页新增「用户协议」「隐私政策」两个入口 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
"pages/mine/mine",
|
||||
"pages/decorate/decorate",
|
||||
"pages/settings/settings",
|
||||
"pages/agreement/agreement",
|
||||
"pages/user/user",
|
||||
"pages/relations/relations"
|
||||
],
|
||||
|
||||
@@ -0,0 +1,133 @@
|
||||
// 用户协议 / 隐私协议。两份都放这一个页面,靠 query.type 切换。
|
||||
// 文案是通用模板,正式上线前请让法务/运营按主体信息再核对一遍。
|
||||
const UPDATED = '2026年8月4日';
|
||||
|
||||
const DOCS = {
|
||||
user: {
|
||||
title: '用户协议',
|
||||
intro:
|
||||
'欢迎使用「肉垫计划」(以下简称"本小程序")。本协议是您与本小程序之间就使用本服务所订立的协议。请您在使用前仔细阅读,一旦您开始使用本小程序,即视为您已阅读并同意本协议的全部内容。',
|
||||
sections: [
|
||||
{
|
||||
h: '一、服务内容',
|
||||
ps: [
|
||||
'本小程序是一款面向养宠人群的养护助手,提供养护日历、健康记录、提醒、成长报告等功能,帮助你更好地照顾宠物。',
|
||||
'本小程序提供的养护建议、健康提示等内容仅供参考,不构成任何专业兽医诊断或治疗方案。当宠物出现异常时,请及时咨询专业宠物医院。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '二、账号与登录',
|
||||
ps: [
|
||||
'本小程序通过微信授权登录,你无需单独注册账号。你应对通过你的微信账号进行的操作负责。',
|
||||
'你承诺提供真实、准确的宠物及个人信息。因信息不实导致的养护建议偏差,由你自行承担。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '三、用户行为规范',
|
||||
ps: [
|
||||
'你在使用本小程序(包括社区发帖、评论等功能)时,不得发布任何违反法律法规、侵犯他人权益、含有暴力、色情、谣言、广告等违规内容。',
|
||||
'本小程序有权对涉嫌违规的内容进行审核、屏蔽或删除,并可视情况限制相关功能的使用。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '四、内容与知识产权',
|
||||
ps: [
|
||||
'你在本小程序中创建的宠物档案、记录、图片等内容归你所有;你授予本小程序在提供服务所必需的范围内使用这些内容的权利。',
|
||||
'本小程序的界面、图标、文案、代码等由开发者享有知识产权,未经许可不得复制、传播或用于商业用途。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '五、免责声明',
|
||||
ps: [
|
||||
'本小程序按"现状"提供服务。对于因不可抗力、网络故障、第三方服务中断等非本小程序原因导致的服务中断或数据丢失,本小程序在法律允许范围内不承担责任。',
|
||||
'你理解并同意,养护建议仅为辅助参考,最终的养护及医疗决策应由你结合专业意见作出。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '六、服务变更与协议修改',
|
||||
ps: [
|
||||
'本小程序可能根据运营需要调整、暂停或终止部分功能。我们会尽量提前告知。',
|
||||
'本协议可能不时更新,更新后将在本页面公示。若你在协议更新后继续使用,即视为接受修改后的协议。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '七、联系我们',
|
||||
ps: ['如对本协议有任何疑问,可通过「设置 → 意见反馈」与我们联系。'],
|
||||
},
|
||||
],
|
||||
},
|
||||
privacy: {
|
||||
title: '隐私政策',
|
||||
intro:
|
||||
'「肉垫计划」(以下简称"本小程序")非常重视你的个人信息与隐私保护。本政策说明我们如何收集、使用、存储和保护你的信息。请你仔细阅读并了解相关内容。',
|
||||
sections: [
|
||||
{
|
||||
h: '一、我们收集的信息',
|
||||
ps: [
|
||||
'账号信息:经你授权,我们可能获取你的微信昵称、头像;在你使用需要手机号的功能(如身份卡)时,经你授权获取你的手机号。',
|
||||
'宠物与养护数据:你主动填写的宠物档案(名字、品种、生日、体重等)、健康记录、提醒、账单及上传的图片。',
|
||||
'设备与日志信息:为保障服务稳定与安全,我们可能收集必要的设备型号、系统版本、操作日志等信息。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '二、我们如何使用信息',
|
||||
ps: [
|
||||
'用于向你提供养护日历、健康记录、提醒、成长报告等核心功能。',
|
||||
'用于生成宠物身份卡、成长报告卡片等由你主动发起的功能。',
|
||||
'用于内容安全审核、故障排查、服务优化与安全防护。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '三、信息的存储',
|
||||
ps: [
|
||||
'你的信息存储于我们的服务器,存储期限为提供服务所必需的期间,法律法规另有规定的除外。',
|
||||
'你上传的图片等文件存储于对象存储服务,仅用于向你及(在社区等公开功能中)你选择公开的对象展示。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '四、信息的共享与披露',
|
||||
ps: [
|
||||
'我们不会向第三方出售你的个人信息。',
|
||||
'为实现内容安全合规,你发布的文字与图片会调用微信官方内容安全接口进行检测;该过程由微信提供,遵循微信的相关规则。',
|
||||
'在法律法规要求、或为保护本小程序及用户合法权益的必要情形下,我们可能依法披露相关信息。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '五、信息安全',
|
||||
ps: [
|
||||
'我们采取合理的技术与管理措施保护你的信息安全,防止未经授权的访问、泄露或篡改。',
|
||||
'但请理解,任何措施都无法保证百分之百的安全,请你妥善保管好自己的设备与账号。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '六、你的权利',
|
||||
ps: [
|
||||
'你可以随时在小程序内查看、修改你的宠物档案与记录,也可以删除你创建的记录、帖子与评论。',
|
||||
'如需注销账号或删除全部数据,可通过「设置 → 意见反馈」与我们联系,我们将在核实后依法处理。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '七、未成年人保护',
|
||||
ps: [
|
||||
'本小程序主要面向成年人。若你是未成年人,请在监护人的陪同与同意下使用,并在监护人指导下提供个人信息。',
|
||||
],
|
||||
},
|
||||
{
|
||||
h: '八、本政策的更新',
|
||||
ps: [
|
||||
'本政策可能不时更新,更新后将在本页面公示。重大变更我们会以适当方式提醒你。',
|
||||
'如对本政策有任何疑问,可通过「设置 → 意见反馈」与我们联系。',
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
Page({
|
||||
data: { doc: null, updated: UPDATED },
|
||||
onLoad(q) {
|
||||
const doc = DOCS[q && q.type === 'privacy' ? 'privacy' : 'user'];
|
||||
this.setData({ doc });
|
||||
wx.setNavigationBarTitle && wx.setNavigationBarTitle({ title: doc.title });
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"nav-bar": "/components/nav-bar/nav-bar"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
<nav-bar title="{{doc.title}}" show-back="{{true}}"></nav-bar>
|
||||
|
||||
<scroll-view class="page-scroll" scroll-y="{{true}}" enhanced="{{true}}" show-scrollbar="{{false}}">
|
||||
<view class="page-body no-fab ag-body">
|
||||
<view class="ag-title">{{doc.title}}</view>
|
||||
<view class="ag-updated">最后更新:{{updated}}</view>
|
||||
|
||||
<view class="ag-intro">{{doc.intro}}</view>
|
||||
|
||||
<view wx:for="{{doc.sections}}" wx:key="h" class="ag-sec">
|
||||
<view class="ag-h">{{item.h}}</view>
|
||||
<view wx:for="{{item.ps}}" wx:for-item="p" wx:key="*this" class="ag-p">{{p}}</view>
|
||||
</view>
|
||||
|
||||
<view class="ag-foot">感谢你对「肉垫计划」的信任 🐾</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
@@ -0,0 +1,18 @@
|
||||
.ag-body{padding:var(--sp-4) var(--pad-x) 60rpx}
|
||||
.ag-title{font-size:var(--fs-2xl);font-weight:var(--fw-b);letter-spacing:-.6rpx}
|
||||
.ag-updated{margin-top:var(--sp-2);color:var(--muted2);font-size:var(--fs-cap)}
|
||||
|
||||
.ag-intro{
|
||||
margin-top:var(--sp-4);padding:var(--sp-4);border-radius:var(--r-md);
|
||||
background:var(--primary-soft);color:var(--primary-ink);
|
||||
font-size:var(--fs-sm);line-height:1.75;
|
||||
}
|
||||
|
||||
.ag-sec{margin-top:var(--sp-5)}
|
||||
.ag-h{font-size:var(--fs-lg);font-weight:var(--fw-b);color:var(--text);margin-bottom:var(--sp-2)}
|
||||
.ag-p{
|
||||
color:var(--text-2);font-size:var(--fs-md);line-height:1.8;
|
||||
margin-top:var(--sp-2);text-align:justify;
|
||||
}
|
||||
|
||||
.ag-foot{margin-top:var(--sp-6);text-align:center;color:var(--muted2);font-size:var(--fs-sm)}
|
||||
@@ -35,13 +35,15 @@
|
||||
<view wx:if="{{!pets.length}}" class="empty">还没有毛孩子,先建一份档案</view>
|
||||
</view>
|
||||
|
||||
<!-- 档案/计划/多宠都从首页和宠物卡进,这里留「我的帖子」+ 设置 -->
|
||||
<!-- 档案/计划/多宠都从首页和宠物卡进,这里留「设置」-->
|
||||
<view class="profile-list">
|
||||
<!-- 社区下线期间隐藏「我的帖子」入口(goMyPosts 代码保留,恢复社区时把这块解开即可)
|
||||
<view class="profile-row" bindtap="goMyPosts">
|
||||
<view class="pr-ic"><pt-icon name="community" size="{{34}}"></pt-icon></view>
|
||||
<text class="pr-label">我的帖子</text><text class="pr-val">看审核状态</text>
|
||||
<view class="pr-arrow"><pt-icon name="next" size="{{28}}"></pt-icon></view>
|
||||
</view>
|
||||
-->
|
||||
<view class="profile-row" bindtap="goSettings">
|
||||
<view class="pr-ic"><pt-icon name="settings" size="{{34}}"></pt-icon></view>
|
||||
<text class="pr-label">设置</text><view class="pr-arrow"><pt-icon name="next" size="{{28}}"></pt-icon></view>
|
||||
|
||||
@@ -40,6 +40,10 @@ Page({
|
||||
openSheet(e) {
|
||||
this.setData({ sheetType: e.currentTarget.dataset.type, sheetShow: true });
|
||||
},
|
||||
// 用户协议 / 隐私政策
|
||||
goAgreement(e) {
|
||||
wx.navigateTo({ url: '/pages/agreement/agreement?type=' + e.currentTarget.dataset.type });
|
||||
},
|
||||
// 自己的关注/粉丝。之前只有帖子上的「+关注」按钮,关注完没有任何地方能看
|
||||
goRelations(e) {
|
||||
const uid = (this.data.user && this.data.user.id) || '';
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
<view class="profile-row" data-type="about" bindtap="openSheet"><view class="pr-ic"><pt-icon name="book" size="{{34}}"></pt-icon></view><text class="pr-label">关于我们</text><text class="pr-val">v0.2</text><view class="pr-arrow"><pt-icon name="next" size="{{28}}"></pt-icon></view></view>
|
||||
</view>
|
||||
|
||||
<view class="profile-list">
|
||||
<view class="profile-row" data-type="user" bindtap="goAgreement"><view class="pr-ic"><pt-icon name="doc" size="{{34}}"></pt-icon></view><text class="pr-label">用户协议</text><view class="pr-arrow"><pt-icon name="next" size="{{28}}"></pt-icon></view></view>
|
||||
<view class="profile-row" data-type="privacy" bindtap="goAgreement"><view class="pr-ic"><pt-icon name="note" size="{{34}}"></pt-icon></view><text class="pr-label">隐私政策</text><view class="pr-arrow"><pt-icon name="next" size="{{28}}"></pt-icon></view></view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</scroll-view>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user