Files
xinlong-shop-taro/src/passport/agreement.tsx
赵忠林 d8e0563b9d fix(passport): 更新协议和隐私政策中的联系方式及公司名称
- 将协议及隐私政策中公司名称由南宁市网宿信息科技有限公司改为鑫龙家电
- 修改联系电话为18269229683
- 更新客服邮箱为support@163.comprivacy@163.com
2026-07-17 00:10:18 +08:00

179 lines
6.7 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { useEffect, useState } from 'react'
import Taro from '@tarojs/taro'
import { Loading } from '@nutui/nutui-react-taro'
import { RichText, View } from '@tarojs/components'
import { wxParse } from '@/utils/common'
import './agreement.scss'
/** 用户服务协议内容 */
const TERMS_CONTENT = `
<h2>用户服务协议</h2>
<p><strong>最后更新日期2026年5月16日</strong></p>
<h3>一、协议的范围与接受</h3>
<p>欢迎使用鑫龙家电(以下简称"本小程序")。本小程序由鑫龙家电(以下简称"我们")开发并运营。请您在使用本小程序服务之前,仔细阅读并充分理解本协议的全部内容。您点击"同意"或实际使用本小程序服务,即视为您已阅读、理解并同意接受本协议的约束。</p>
<h3>二、服务内容</h3>
<p>本小程序为用户提供以下服务:</p>
<ul>
<li>体育用品在线浏览与购买</li>
<li>商品搜索、收藏与分享</li>
<li>订单管理与物流查询</li>
<li>会员积分与优惠活动</li>
<li>在线客服咨询</li>
</ul>
<h3>三、账号注册与安全</h3>
<p>1. 您需要使用微信账号授权登录本小程序。您应确保提供的个人信息真实、准确、完整。</p>
<p>2. 您应妥善保管自己的账号信息,对使用您账号进行的所有行为承担法律责任。</p>
<p>3. 如发现账号异常,请立即联系我们。</p>
<h3>四、用户行为规范</h3>
<p>您在使用本小程序时,应当遵守法律法规,不得从事以下行为:</p>
<ul>
<li>发布违法违规信息</li>
<li>侵犯他人知识产权或其他合法权益</li>
<li>恶意刷单、虚假交易</li>
<li>利用漏洞或技术手段干扰本小程序正常运行</li>
</ul>
<h3>五、订单与支付</h3>
<p>1. 您下单后,我们将根据您提供的收货信息安排发货。</p>
<p>2. 商品价格以您下单时的页面显示为准。</p>
<p>3. 您可以选择微信支付等方式完成付款。</p>
<h3>六、售后服务</h3>
<p>我们提供7天无理由退换货服务特殊商品除外。如有售后问题请联系在线客服。</p>
<h3>七、免责声明</h3>
<p>1. 因不可抗力导致的服务中断,我们不承担责任。</p>
<p>2. 因您自身原因导致的损失,我们不承担责任。</p>
<h3>八、协议的变更</h3>
<p>我们可能会根据业务需要修改本协议。修改后的协议将在本小程序内公布,您继续使用服务视为接受修改后的协议。</p>
<h3>九、联系我们</h3>
<p>如您对本协议有任何疑问,请联系:</p>
<p>客服电话18269229683</p>
<p>客服邮箱support@163.com</p>
`
/** 隐私政策内容 */
const PRIVACY_CONTENT = `
<h2>隐私政策</h2>
<p><strong>最后更新日期2026年5月16日</strong></p>
<p>鑫龙家电(以下简称"我们")非常重视您的个人信息保护。本隐私政策说明我们如何收集、使用、存储和保护您的个人信息。</p>
<h3>一、我们收集的信息</h3>
<p>为了向您提供服务,我们可能需要收集以下信息:</p>
<h4>1. 您主动提供的信息</h4>
<ul>
<li><strong>账号信息</strong>微信昵称、头像、OpenID用于登录识别</li>
<li><strong>收货信息</strong>:收货人姓名、手机号码、详细地址(用于商品配送)</li>
<li><strong>联系信息</strong>:您在与客服沟通时提供的信息</li>
</ul>
<h4>2. 我们自动收集的信息</h4>
<ul>
<li><strong>设备信息</strong>:设备型号、操作系统版本</li>
<li><strong>日志信息</strong>:访问时间、浏览记录、操作记录</li>
<li><strong>位置信息</strong>:经您授权后获取的地理位置(用于推荐附近门店)</li>
</ul>
<h3>二、我们如何使用您的信息</h3>
<p>我们收集您的信息用于以下目的:</p>
<ul>
<li><strong>用户识别与登录</strong>:使用微信 OpenID 识别您的身份,实现免密登录</li>
<li><strong>商品配送</strong>:使用收货地址信息完成订单配送</li>
<li><strong>订单管理</strong>:处理您的订单、退换货申请</li>
<li><strong>客户服务</strong>:响应您的咨询、投诉和建议</li>
<li><strong>安全风控</strong>:防范欺诈、保障交易安全</li>
<li><strong>服务优化</strong>:分析用户行为,改进产品体验</li>
</ul>
<h3>三、信息的存储与保护</h3>
<p>1. 我们采用加密技术保护您的个人信息安全。</p>
<p>2. 您的个人信息存储在中国大陆境内的服务器上。</p>
<p>3. 我们仅在实现服务目的所必需的期限内保留您的信息。</p>
<h3>四、信息的共享与披露</h3>
<p>我们不会向第三方出售您的个人信息。仅在以下情况下可能共享:</p>
<ul>
<li>经您明确同意</li>
<li>为完成商品配送,向物流公司提供必要的收货信息</li>
<li>根据法律法规要求或政府机关的合法要求</li>
</ul>
<h3>五、您的权利</h3>
<p>您享有以下权利:</p>
<ul>
<li>查询、更正您的个人信息</li>
<li>删除您的个人信息</li>
<li>撤回授权同意</li>
<li>注销账号</li>
</ul>
<p>如需行使上述权利,请联系我们的客服。</p>
<h3>六、未成年人保护</h3>
<p>我们非常重视未成年人的个人信息保护。如果您是未成年人,请在监护人指导下使用本小程序。</p>
<h3>七、政策更新</h3>
<p>我们可能会适时更新本隐私政策。更新后的政策将在本小程序内公布。</p>
<h3>八、联系我们</h3>
<p>如您对本隐私政策有任何疑问,请联系:</p>
<p>客服电话18269229683</p>
<p>客服邮箱privacy@163.com</p>
`
const Agreement = () => {
const [loading, setLoading] = useState(true)
const [content, setContent] = useState<string>('')
const [title, setTitle] = useState<string>('')
useEffect(() => {
const init = async () => {
try {
// 获取页面参数 type=terms 或 type=privacy
const pages = Taro.getCurrentPages()
const current = pages[pages.length - 1]
const type = (current as any)?.options?.type || 'terms'
if (type === 'privacy') {
setTitle('隐私政策')
setContent(wxParse(PRIVACY_CONTENT))
} else {
setTitle('用户服务协议')
setContent(wxParse(TERMS_CONTENT))
}
} catch (e) {
console.error('load agreement failed', e)
setContent('<p>协议内容加载失败</p>')
} finally {
setLoading(false)
}
}
init()
}, [])
// 动态设置导航栏标题
useEffect(() => {
if (title) {
Taro.setNavigationBarTitle({ title })
}
}, [title])
if (loading) {
return <Loading className='px-2'></Loading>
}
return (
<View className='agreement-page'>
<RichText nodes={content} />
</View>
)
}
export default Agreement