|
|
|
@ -6,6 +6,7 @@ import { memo, useCallback, useEffect, useState } from 'react'
|
|
|
|
|
import { Link } from 'react-router-dom'
|
|
|
|
|
import dayjs from 'dayjs'
|
|
|
|
|
import { Conditional } from '@/components/Conditional'
|
|
|
|
|
import useOrderStore from '@/stores/OrderStore'
|
|
|
|
|
import useAuthStore from '@/stores/AuthStore'
|
|
|
|
|
import { prepareUrl, isNotEmpty } from '@/utils/commons'
|
|
|
|
|
import { API_HOST } from '@/config'
|
|
|
|
@ -49,8 +50,7 @@ const AdvanceSearchForm = memo(function ({ onSubmit }) {
|
|
|
|
|
layout={'vertical'}
|
|
|
|
|
form={form}
|
|
|
|
|
initialValues={{
|
|
|
|
|
orderLabel: '', orderStatus: '', remindState: '',
|
|
|
|
|
startDateRange: [dayjs().startOf('M'), dayjs().endOf('M')]
|
|
|
|
|
orderLabel: '', orderStatus: '', remindState: ''
|
|
|
|
|
}}
|
|
|
|
|
onFinish={handleSubmit}
|
|
|
|
|
>
|
|
|
|
@ -120,7 +120,7 @@ const AdvanceSearchForm = memo(function ({ onSubmit }) {
|
|
|
|
|
<Col span={4}>
|
|
|
|
|
<Form.Item label='出发日期' name='startDateRange'>
|
|
|
|
|
<RangePicker
|
|
|
|
|
allowClear={false}
|
|
|
|
|
allowClear={true}
|
|
|
|
|
inputReadOnly={true}
|
|
|
|
|
presets={DATE_RANGE_PRESETS}
|
|
|
|
|
/>
|
|
|
|
@ -143,7 +143,7 @@ const AdvanceSearchForm = memo(function ({ onSubmit }) {
|
|
|
|
|
)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
function OrderList({ formValues }) {
|
|
|
|
|
function OrderCollapseTable({ formValues }) {
|
|
|
|
|
|
|
|
|
|
const orderColumns = [
|
|
|
|
|
{
|
|
|
|
@ -203,53 +203,13 @@ function OrderList({ formValues }) {
|
|
|
|
|
},
|
|
|
|
|
]
|
|
|
|
|
const { notification } = App.useApp()
|
|
|
|
|
const [orderData, setOrderData] = useState([])
|
|
|
|
|
const [loading, setLoading] = useState(false)
|
|
|
|
|
const { orderData, fetchOrderList } = useOrderStore()
|
|
|
|
|
const { loginUser } = useAuthStore()
|
|
|
|
|
let fetchOrderUrl = `${API_HOST}/getwlorder?opisn=${loginUser.userIdStr}&otype=${formValues.type}`
|
|
|
|
|
|
|
|
|
|
if (formValues.type === 'advance') {
|
|
|
|
|
const fromDate = formValues.startDateRange[0].format('YYYY-MM-DD')
|
|
|
|
|
const thruDate = formValues.startDateRange[1].format('YYYY-MM-DD')
|
|
|
|
|
let confirmFromDate = null
|
|
|
|
|
let confirmThruDate = null
|
|
|
|
|
|
|
|
|
|
if (isNotEmpty(formValues.confirmDateRange)) {
|
|
|
|
|
confirmFromDate = formValues.confirmDateRange[0].format('YYYY-MM-DD')
|
|
|
|
|
confirmThruDate = formValues.confirmDateRange[1].format('YYYY-MM-DD')
|
|
|
|
|
}
|
|
|
|
|
fetchOrderUrl = prepareUrl('https://p9axztuwd7x8a7.mycht.cn/whatsapp_server/getdvancedwlorder')
|
|
|
|
|
.append('opisn', loginUser.userIdStr)
|
|
|
|
|
.append('startdate', fromDate)
|
|
|
|
|
.append('enddate', thruDate)
|
|
|
|
|
.append('tag', formValues.orderLabel)
|
|
|
|
|
.append('orderstate', formValues.orderStatus)
|
|
|
|
|
.append('remindstate', formValues.remindState)
|
|
|
|
|
.append('coli_id', formValues.orderNumber)
|
|
|
|
|
.append('firstName', formValues.firstName)
|
|
|
|
|
.append('lastName', formValues.lastName)
|
|
|
|
|
.append('emailphone', formValues.emailOrPhone)
|
|
|
|
|
.append('ConfirmDateStart', confirmFromDate)
|
|
|
|
|
.append('ConfirmDateEnd', confirmThruDate)
|
|
|
|
|
.build()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
setLoading(true)
|
|
|
|
|
fetch(fetchOrderUrl)
|
|
|
|
|
.then(response => response.json())
|
|
|
|
|
.then(json => {
|
|
|
|
|
if (json.errcode === 0) {
|
|
|
|
|
setOrderData(json.result.map((order) => { return { ...order, key: order.COLI_ID } }))
|
|
|
|
|
} else {
|
|
|
|
|
notification.error({
|
|
|
|
|
message: '查询出错',
|
|
|
|
|
description: json?.errmsg,
|
|
|
|
|
placement: 'top',
|
|
|
|
|
duration: 60,
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
fetchOrderList(formValues, loginUser)
|
|
|
|
|
.finally(() => setLoading(false))
|
|
|
|
|
.catch(reason => {
|
|
|
|
|
notification.error({
|
|
|
|
@ -320,7 +280,7 @@ function OrderList({ formValues }) {
|
|
|
|
|
label: deptMap.get(deptNo) + '订单',
|
|
|
|
|
children: <Table key={'Order Table' + deptNo} loading={loading} dataSource={deptOrderList}
|
|
|
|
|
columns={orderColumns}
|
|
|
|
|
pagination={paginationProps} />
|
|
|
|
|
pagination={deptOrderList.length <= 10 ? false : paginationProps} />
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
})
|
|
|
|
@ -373,7 +333,7 @@ function OrderFollow() {
|
|
|
|
|
</Flex>
|
|
|
|
|
<Conditional condition={advanceChecked} whenTrue={<AdvanceSearchForm onSubmit={handleSubmit} />}
|
|
|
|
|
/>
|
|
|
|
|
<OrderList formValues={formValues} />
|
|
|
|
|
<OrderCollapseTable formValues={formValues} />
|
|
|
|
|
</Space>
|
|
|
|
|
</>
|
|
|
|
|
)
|
|
|
|
|