1
This commit is contained in:
@@ -7,6 +7,7 @@ import {pageShopDealerOrder} from '@/api/shop/shopDealerOrder'
|
|||||||
import {useDealerUser} from '@/hooks/useDealerUser'
|
import {useDealerUser} from '@/hooks/useDealerUser'
|
||||||
import type {ShopDealerOrder} from '@/api/shop/shopDealerOrder/model'
|
import type {ShopDealerOrder} from '@/api/shop/shopDealerOrder/model'
|
||||||
import {useUser} from "@/hooks/useUser";
|
import {useUser} from "@/hooks/useUser";
|
||||||
|
import {pageUsers} from "@/api/system/user";
|
||||||
|
|
||||||
interface OrderWithDetails extends ShopDealerOrder {
|
interface OrderWithDetails extends ShopDealerOrder {
|
||||||
orderNo?: string
|
orderNo?: string
|
||||||
@@ -22,20 +23,6 @@ interface PickerOption {
|
|||||||
className?: string | number
|
className?: string | number
|
||||||
}
|
}
|
||||||
|
|
||||||
const listData1 = [
|
|
||||||
[
|
|
||||||
{ value: 1, text: '南京市' },
|
|
||||||
{ value: 2, text: '无锡市' },
|
|
||||||
{ value: 3, text: '海北藏族自治区' },
|
|
||||||
{ value: 4, text: '北京市' },
|
|
||||||
{ value: 5, text: '连云港市' },
|
|
||||||
{ value: 8, text: '大庆市' },
|
|
||||||
{ value: 9, text: '绥化市' },
|
|
||||||
{ value: 10, text: '潍坊市' },
|
|
||||||
{ value: 12, text: '乌鲁木齐市' },
|
|
||||||
],
|
|
||||||
]
|
|
||||||
|
|
||||||
const DealerOrder: React.FC = () => {
|
const DealerOrder: React.FC = () => {
|
||||||
const [loading, setLoading] = useState<boolean>(false)
|
const [loading, setLoading] = useState<boolean>(false)
|
||||||
const d = new Date()
|
const d = new Date()
|
||||||
@@ -48,14 +35,20 @@ const DealerOrder: React.FC = () => {
|
|||||||
const [orders, setOrders] = useState<OrderWithDetails[]>([])
|
const [orders, setOrders] = useState<OrderWithDetails[]>([])
|
||||||
const [currentPage, setCurrentPage] = useState<number>(1)
|
const [currentPage, setCurrentPage] = useState<number>(1)
|
||||||
const [hasMore, setHasMore] = useState<boolean>(true)
|
const [hasMore, setHasMore] = useState<boolean>(true)
|
||||||
|
const [users, setUsers] = useState<any[]>([])
|
||||||
const [visible1, setVisible1] = useState(false)
|
const [visible1, setVisible1] = useState(false)
|
||||||
const [baseDesc, setBaseDesc] = useState('')
|
const [text1, setText1] = useState('')
|
||||||
|
const [visible2, setVisible2] = useState(false)
|
||||||
|
const [text2, setText2] = useState('')
|
||||||
|
const [visible3, setVisible3] = useState(false)
|
||||||
|
const [text3, setText3] = useState('')
|
||||||
|
|
||||||
|
|
||||||
const {dealerUser} = useDealerUser()
|
const {dealerUser} = useDealerUser()
|
||||||
const {user} = useUser()
|
const {user} = useUser()
|
||||||
|
|
||||||
// 获取订单数据
|
// 获取订单数据
|
||||||
const fetchOrders = useCallback(async (page: number = 1, isRefresh: boolean = false) => {
|
const fetchOrders = useCallback(async (page: number = 1, isRefresh: boolean = false,userId?: number) => {
|
||||||
if (!dealerUser?.userId) return
|
if (!dealerUser?.userId) return
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -66,8 +59,8 @@ const DealerOrder: React.FC = () => {
|
|||||||
} else {
|
} else {
|
||||||
setLoadingMore(true)
|
setLoadingMore(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
const result = await pageShopDealerOrder({
|
const result = await pageShopDealerOrder({
|
||||||
|
userId: userId || undefined,
|
||||||
isInvalid: 0,
|
isInvalid: 0,
|
||||||
isSettled: 1,
|
isSettled: 1,
|
||||||
resourceId: getResourceId(),
|
resourceId: getResourceId(),
|
||||||
@@ -136,29 +129,43 @@ const DealerOrder: React.FC = () => {
|
|||||||
return user.roles.some(role => role.roleCode === roleCode);
|
return user.roles.some(role => role.roleCode === roleCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
const changePicker = (list: any[], option: any, columnIndex: number) => {
|
const confirmPicker1 = (
|
||||||
console.log(list,'list>>>')
|
|
||||||
console.log(columnIndex, option)
|
|
||||||
}
|
|
||||||
|
|
||||||
const confirmPicker = (
|
|
||||||
options: PickerOption[],
|
options: PickerOption[],
|
||||||
values: (string | number)[]
|
values: (string | number)[]
|
||||||
) => {
|
) => {
|
||||||
let description = ''
|
// let description = ''
|
||||||
|
// options.forEach((option: any) => {
|
||||||
|
// description += ` ${option.text}`
|
||||||
|
// })
|
||||||
|
if(values && values.length > 0){
|
||||||
|
Number(values[0])
|
||||||
options.forEach((option: any) => {
|
options.forEach((option: any) => {
|
||||||
description += ` ${option.text}`
|
setText1(`${option.text}`)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const confirmPicker2 = (
|
||||||
|
options: PickerOption[],
|
||||||
|
values: (string | number)[]
|
||||||
|
) => {
|
||||||
|
if(values && values.length > 0){
|
||||||
|
Number(values[0])
|
||||||
|
options.forEach((option: any) => {
|
||||||
|
setText2(`${option.text}`)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const confirmPicker3 = (
|
||||||
|
options: PickerOption[],
|
||||||
|
values: (string | number)[]
|
||||||
|
) => {
|
||||||
|
if(values && values.length > 0){
|
||||||
|
Number(values[0])
|
||||||
|
options.forEach((option: any) => {
|
||||||
|
setText3(`${option.text}`)
|
||||||
})
|
})
|
||||||
console.log(values,'values')
|
|
||||||
setBaseDesc(description)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 初始化加载数据
|
|
||||||
useEffect(() => {
|
|
||||||
if (dealerUser?.userId) {
|
|
||||||
fetchOrders(1)
|
|
||||||
}
|
}
|
||||||
}, [fetchOrders, date])
|
|
||||||
|
|
||||||
const getStatusText = (isSettled?: number, isInvalid?: number) => {
|
const getStatusText = (isSettled?: number, isInvalid?: number) => {
|
||||||
if (isInvalid === 1) return '未签约'
|
if (isInvalid === 1) return '未签约'
|
||||||
@@ -166,6 +173,34 @@ const DealerOrder: React.FC = () => {
|
|||||||
return '待结算'
|
return '待结算'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fetchUsers() {
|
||||||
|
|
||||||
|
pageUsers({}).then(data => {
|
||||||
|
console.log(data,'datadatadatadatadatadata')
|
||||||
|
const userList = data?.list.map(d => {
|
||||||
|
return {
|
||||||
|
text: d.nickname,
|
||||||
|
value: d.userId,
|
||||||
|
disabled: false,
|
||||||
|
children: [],
|
||||||
|
className: ''
|
||||||
|
}
|
||||||
|
})
|
||||||
|
setUsers(userList || [])
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 初始化加载数据
|
||||||
|
useEffect(() => {
|
||||||
|
if (dealerUser?.userId) {
|
||||||
|
fetchOrders(1).then()
|
||||||
|
}
|
||||||
|
}, [fetchOrders, date])
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
fetchUsers()
|
||||||
|
},[])
|
||||||
|
|
||||||
const renderOrderItem = (order: OrderWithDetails) => (
|
const renderOrderItem = (order: OrderWithDetails) => (
|
||||||
<View key={order.id} className="bg-white rounded-lg p-4 mb-3 shadow-sm">
|
<View key={order.id} className="bg-white rounded-lg p-4 mb-3 shadow-sm">
|
||||||
<View className="flex justify-between items-start mb-1">
|
<View className="flex justify-between items-start mb-1">
|
||||||
@@ -280,9 +315,9 @@ const DealerOrder: React.FC = () => {
|
|||||||
<ArrowDown size={10} className={'text-gray-400'} onClick={() => setShow1(true)}/>
|
<ArrowDown size={10} className={'text-gray-400'} onClick={() => setShow1(true)}/>
|
||||||
</View>
|
</View>
|
||||||
<Space className={'select-user'}>
|
<Space className={'select-user'}>
|
||||||
<Button size={'mini'}>{baseDesc || '业务员'}</Button>
|
<Button size={'mini'} onClick={() => setVisible1(!visible1)}>{text1 || '业务员'}</Button>
|
||||||
<Button size={'mini'}>渠道一</Button>
|
<Button size={'mini'} onClick={() => setVisible2(!visible2)}>{text2 || '渠道一'}</Button>
|
||||||
<Button size={'mini'} onClick={() => setVisible1(!visible1)}>渠道二</Button>
|
<Button size={'mini'} onClick={() => setVisible3(!visible3)}>{text3 || '渠道二'}</Button>
|
||||||
</Space>
|
</Space>
|
||||||
</View>
|
</View>
|
||||||
{/*账单列表*/}
|
{/*账单列表*/}
|
||||||
@@ -331,12 +366,25 @@ const DealerOrder: React.FC = () => {
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<Picker
|
<Picker
|
||||||
title="请选择城市"
|
title="请选择"
|
||||||
visible={visible1}
|
visible={visible1}
|
||||||
options={listData1}
|
options={users}
|
||||||
onConfirm={(list, values) => confirmPicker(list, values)}
|
onConfirm={(list, values) => confirmPicker1(list, values)}
|
||||||
onClose={() => setVisible1(false)}
|
onClose={() => setVisible1(false)}
|
||||||
onChange={changePicker}
|
/>
|
||||||
|
<Picker
|
||||||
|
title="请选择"
|
||||||
|
visible={visible2}
|
||||||
|
options={users}
|
||||||
|
onConfirm={(list, values) => confirmPicker2(list, values)}
|
||||||
|
onClose={() => setVisible2(false)}
|
||||||
|
/>
|
||||||
|
<Picker
|
||||||
|
title="请选择"
|
||||||
|
visible={visible3}
|
||||||
|
options={users}
|
||||||
|
onConfirm={(list, values) => confirmPicker3(list, values)}
|
||||||
|
onClose={() => setVisible3(false)}
|
||||||
/>
|
/>
|
||||||
</View>
|
</View>
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user