- 在用户注册时支持从邀请参数中获取推荐人ID并绑定 - 修改管理员面板UI,添加统一扫码功能入口- 更新用户管理相关API地址,统一使用SERVER_API_URL - 调整优惠券卡片样式,移除小程序不支持的CSS属性 - 添加聊天会话和消息管理相关API模块 - 新增分销商银行卡管理API接口 - 修改系统用户模型,增加推荐人ID字段 - 更新广告位查询接口,支持根据code获取广告位 - 调整邀请绑定接口参数,将refereeId改为dealerId - 修改环境配置中的应用名称为"时里院子市集" - 移除分享到朋友圈的相关代码 - 添加管理员面板组件,提供统一扫码等管理功能 -修复用户管理API请求参数传递问题 - 添加聊天消息和会话管理的完整CRUD接口 - 更新系统用户相关接口URL,确保正确调用后端服务 - 添加分销商银行卡管理的完整API接口实现 - 修改邀请绑定接口,使用dealerId替代refereeId参数 - 修复扫码登录相关API的URL拼接问题 - 添加二维码内容解析功能,支持多种格式的token提取 - 更新用户信息模型,增加推荐人ID字段 -优化管理员面板样式和交互逻辑- 调整优惠券组件样式,兼容小程序环境限制- 修复用户管理模块的API调用问题 - 添加聊天相关数据模型和接口定义 - 更新环境配置中的应用名称 -修复邀请绑定相关的参数传递问题- 添加扫码登录状态枚举和相关数据结构定义- 优化管理员功能面板的UI展示和交互体验- 修复系统用户管理接口的请求参数问题 - 添加分销商银行卡管理相关接口实现- 调整聊天消息和会话管理接口的数据结构定义 -修复用户管理模块中的API调用路径问题 - 添加扫码登录相关工具函数,如设备信息获取等 - 更新邀请绑定接口的数据模型定义 -优化管理员面板组件的样式和功能实现 -修复系统用户管理接口中的参数传递问题 - 添加聊天相关模块的完整API接口实现 - 调整分销商银行卡管理模块的数据结构定义- 修复扫码登录相关接口的URL拼接问题- 更新用户管理模块中的API调用方式 - 添加聊天消息批量发送等相关接口实现- 修复邀请绑定接口中的参数名称问题- 优化管理员面板组件的功能和交互逻辑 - 调整系统用户管理接口的请求参数传递方式 - 添加分销商银行卡管理模块的完整接口实现 -修复聊天相关接口中的数据结构问题 - 更新扫码登录相关接口的数据模型定义 - 优化管理员功能面板的展示效果和用户体验
145 lines
4.7 KiB
TypeScript
145 lines
4.7 KiB
TypeScript
import {Cell} from '@nutui/nutui-react-taro'
|
|
import navTo from "@/utils/common";
|
|
import Taro from '@tarojs/taro'
|
|
import {View, Text} from '@tarojs/components'
|
|
import {ArrowRight, ShieldCheck, LogisticsError, Location, Tips, Ask} from '@nutui/icons-react-taro'
|
|
import {useUser} from '@/hooks/useUser'
|
|
|
|
const UserCell = () => {
|
|
const {logoutUser, isCertified} = useUser();
|
|
|
|
const onLogout = () => {
|
|
Taro.showModal({
|
|
title: '提示',
|
|
content: '确定要退出登录吗?',
|
|
success: function (res) {
|
|
if (res.confirm) {
|
|
// 使用 useUser hook 的 logoutUser 方法
|
|
logoutUser();
|
|
Taro.reLaunch({
|
|
url: '/pages/index/index'
|
|
})
|
|
}
|
|
}
|
|
})
|
|
}
|
|
|
|
return (
|
|
<>
|
|
<View className={'px-4'} style={{ marginTop: '8px', position: 'relative', zIndex: 20 }}>
|
|
|
|
<Cell.Group divider={true} description={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<Text style={{marginTop: '12px'}}>我的服务</Text>
|
|
</View>
|
|
}>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
style={{
|
|
display: 'none'
|
|
}}
|
|
title={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<LogisticsError size={16}/>
|
|
<Text className={'pl-3 text-sm'}>我的钱包</Text>
|
|
</View>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => {
|
|
navTo('/user/wallet/index', true)
|
|
}}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<Location size={16}/>
|
|
<Text className={'pl-3 text-sm'}>收货地址</Text>
|
|
</View>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => {
|
|
navTo('/user/address/index', true)
|
|
}}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<ShieldCheck size={16} color={isCertified() ? '#52c41a' : '#666'}/>
|
|
<Text className={'pl-3 text-sm'}>实名认证</Text>
|
|
{isCertified() && (
|
|
<Text className={'pl-2 text-xs text-green-500'}>已认证</Text>
|
|
)}
|
|
</View>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => {
|
|
navTo('/user/userVerify/index', true)
|
|
}}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<Ask size={16}/>
|
|
<Text className={'pl-3 text-sm'}>常见问题</Text>
|
|
</View>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => {
|
|
navTo('/user/help/index')
|
|
}}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<Tips size={16}/>
|
|
<Text className={'pl-3 text-sm'}>关于我们</Text>
|
|
</View>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => {
|
|
navTo('/user/about/index')
|
|
}}
|
|
/>
|
|
</Cell.Group>
|
|
<Cell.Group divider={true} description={
|
|
<View style={{display: 'inline-flex', alignItems: 'center'}}>
|
|
<Text style={{marginTop: '12px'}}>账号管理</Text>
|
|
</View>
|
|
}>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title="账号安全"
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => navTo('/user/profile/profile', true)}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title="切换主题"
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => navTo('/user/theme/index', true)}
|
|
/>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title="退出登录"
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={onLogout}
|
|
/>
|
|
</Cell.Group>
|
|
</View>
|
|
</>
|
|
)
|
|
}
|
|
export default UserCell
|