- 移除新增客户页面对手机号的必填和格式校验 - 修改手机号字段标签为“手机号/微信号”,取消必填和长度限制 - 新增判断当前用户是否为超级管理员逻辑 - 抽取并统一构建客户查询参数方法,根据权限动态设置筛选条件 - 优化客户列表数据获取逻辑,支持超级管理员查看全部客户 - 调整依赖项,更新使用了新构建的查询参数函数 - 增强状态统计接口参数构建,统一调用参数生成函数 - 优化副作用 Hook 依赖,保证数据加载时机正确
152 lines
5.1 KiB
TypeScript
152 lines
5.1 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, LogisticsError} from '@nutui/icons-react-taro'
|
|
import {useUser} from '@/hooks/useUser'
|
|
|
|
const UserCell = () => {
|
|
const {logoutUser, isAdmin} = 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={'p-4'}>
|
|
|
|
{isAdmin() && (
|
|
<Cell.Group divider={true}>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title={
|
|
<Text style={{color: '#f97316', fontWeight: 500}}>后台管理</Text>
|
|
}
|
|
align="center"
|
|
extra={<ArrowRight color="#f97316" size={18}/>}
|
|
onClick={() => navTo('/admin/redirect/index', true)}
|
|
/>
|
|
</Cell.Group>
|
|
)}
|
|
|
|
<Cell.Group divider={true}>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title="个人资料"
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={() => navTo('/user/profile/profile', true)}
|
|
/>
|
|
</Cell.Group>
|
|
<Cell.Group divider={true}>
|
|
<Cell
|
|
className="nutui-cell-clickable"
|
|
title="退出登录"
|
|
align="center"
|
|
extra={<ArrowRight color="#cccccc" size={18}/>}
|
|
onClick={onLogout}
|
|
/>
|
|
</Cell.Group>
|
|
<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.Group>*/}
|
|
</View>
|
|
</>
|
|
)
|
|
}
|
|
export default UserCell
|