Merge remote-tracking branch 'origin/main' into dev/chat

dev/chat
Lei OT 2 years ago
commit 4b8cce5f8f

@ -15,6 +15,7 @@ const useOrderStore = create((set, get) => ({
quotationList: [], quotationList: [],
fetchOrderDetail: async (colisn) => { fetchOrderDetail: async (colisn) => {
const { orderDetail, updateQuotation } = get()
const json = await fetchJSON(`${API_HOST}/getorderinfo`, { colisn }) const json = await fetchJSON(`${API_HOST}/getorderinfo`, { colisn })
if (json.errcode === 0 && json.result.length > 0) { if (json.errcode === 0 && json.result.length > 0) {
const orderResult = json.result[0] const orderResult = json.result[0]

@ -17,11 +17,6 @@ const CustomerProfile = (() => {
useEffect(() => { useEffect(() => {
fetchOrderDetail(order_sn) fetchOrderDetail(order_sn)
}, [order_sn]) }, [order_sn])
const paginationProps = {
showLessItems: true,
showTotal: (total) => { return `总数:${total}` }
}
let regularText = '' let regularText = ''
if (orderDetail.buytime > 0) regularText = '(R' + orderDetail.buytime + ')' if (orderDetail.buytime > 0) regularText = '(R' + orderDetail.buytime + ')'
@ -84,24 +79,8 @@ const CustomerProfile = (() => {
<Typography.Text strong>最新报价</Typography.Text> <Typography.Text strong>最新报价</Typography.Text>
<p className='m-0 py-2 line-clamp-2 '><a target='_blank' href={lastQuotation.letterurl}>{lastQuotation.lettertitle}<LinkOutlined /></a></p> <p className='m-0 py-2 line-clamp-2 '><a target='_blank' href={lastQuotation.letterurl}>{lastQuotation.lettertitle}<LinkOutlined /></a></p>
<Flex justify={'space-between'} > <Flex justify={'space-between'} >
<QuotesHistory /> <QuotesHistory dataSource={quotationList} />
</Flex> </Flex>
<List
itemLayout="vertical"
pagination={paginationProps}
dataSource={quotationList}
renderItem={(item) => (
<List.Item
key={item.letterid}
>
<List.Item.Meta
title={<a href={item.letterurl}>{item.lettertitle}</a>}
description={item.letterdate}
/>
</List.Item>
)}
/>
</Flex> </Flex>
<p className='p-2 shadow-inner overflow-auto max-h-72 m-0 break-words whitespace-pre-wrap ' dangerouslySetInnerHTML={{__html: orderDetail.order_detail}}></p> <p className='p-2 shadow-inner overflow-auto max-h-72 m-0 break-words whitespace-pre-wrap ' dangerouslySetInnerHTML={{__html: orderDetail.order_detail}}></p>
</div> </div>

@ -1,49 +1,46 @@
import { createContext, useContext, useEffect, useState } from 'react'; import { useState } from 'react'
import { Popover, Flex, Button, List, Popconfirm } from 'antd'; import { Popover, Flex, Button, List, Popconfirm } from 'antd'
// import { useConversationState } from '@/stores/ConversationContext';
const QuotesHistory = ((props) => { const QuotesHistory = ((props) => {
// const { customerOrderProfile: orderInfo } = useConversationState();
const { quotes, ...order } = {} // orderInfo;
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false)
const handleOpenChange = (newOpen) => { const handleOpenChange = (newOpen) => {
setOpen(newOpen); setOpen(newOpen)
}; }
const onSend = () => { const onSend = () => {
setOpen(false); setOpen(false)
// todo: send // todo: send
}; }
return ( return (
<> <>
<Popover <Popover
// content={<a onClick={hide}>Close</a>}
content={ content={
<List <List
className='w-96 h-4/6 overflow-y-auto text-slate-900' className='w-96 h-4/6 overflow-y-auto text-slate-900'
itemLayout='horizontal' itemLayout='horizontal'
dataSource={quotes} pagination={{
pageSize: 5,
showLessItems: true,
showTotal: (total) => { return `总数:${total}` }
}}
dataSource={props.dataSource}
renderItem={(item, index) => ( renderItem={(item, index) => (
<List.Item className='' key={item.letterid} > <List.Item className='' key={item.letterid} >
<List.Item.Meta <List.Item.Meta
className=' text-neutral-800' className='text-neutral-800'
title={item.lettertitle} title={<a target='_blank' href={item.letterurl}>{item.lettertitle}</a>}
description={ description={
<Flex justify='space-between'> <Flex justify='space-between'>
<Button onClick={onSend} size={'small'} type='link' key={'send'}>
详细报价
</Button>
<span>{item.letterdate}</span> <span>{item.letterdate}</span>
<Flex gap={8}> <Button onClick={() => {
<Popconfirm title='删除报价信' description='确认要删除报价信吗?' onConfirm={() => {}} onCancel={onSend} okText='Yes' cancelText='No'> navigator.clipboard.writeText(item.letterurl)
<Button size={'small'} type='link' danger key={'send'}> setOpen(false)
删除 }} size={'small'} type='link' key={'send'}>
</Button> 复制
</Popconfirm> </Button>
<Button onClick={onSend} size={'small'} type='link' key={'send'}>
复制
</Button>
</Flex>
</Flex> </Flex>
} }
/> />
@ -59,6 +56,7 @@ const QuotesHistory = ((props) => {
<Button size={'small'}>报价历史</Button> <Button size={'small'}>报价历史</Button>
</Popover> </Popover>
</> </>
); )
}); })
export default QuotesHistory;
export default QuotesHistory

Loading…
Cancel
Save