perf: 邮件的订单

dev/ckeditor
Lei OT 4 months ago
parent 46fa96694f
commit 1a0328303d

@ -31,9 +31,14 @@ export const useEmailSignature = (opi_sn) => {
}
/**
* 邮件详情
*
* @param mai_sn 邮件编号ID
* @param data 直接传递, 不重复获取
* * 在详情点击`回复`呼出编辑时
* @param {number|boolean} oid 订单ID
* - If `number`: 直接传递, 直接获取订单详情
* - If `false`: 不需要获取订单信息
*/
export const useEmailDetail = (mai_sn, data={}, oid=0) => {
const {notification} = App.useApp()
@ -54,7 +59,7 @@ export const useEmailDetail = (mai_sn, data={}, oid=0) => {
const data = await getEmailDetailAction({ mai_sn })
// console.log(data)
setMailData(data)
setColiSN(data.info.MAI_COLI_SN)
setColiSN(oid===false ? 0 : data.info.MAI_COLI_SN)
// if (!isEmpty(data.info.MAI_COLI_SN)) {
// const orderData = await getEmailOrderAction({ colisn: data.info.MAI_COLI_SN })
// setOrderDetail(orderData)

@ -98,6 +98,10 @@ const emailSlice = (set, get) => ({
setMailboxActiveMAI: (mai) => {
return set(() => ({ mailboxActiveMAI: mai }))
},
mailboxActiveCOLI: 0,
setMailboxActiveCOLI: (coli) => {
return set(() => ({ mailboxActiveCOLI: coli }))
},
getOPIEmailDir: async (opi_sn = 0, userIdStr='') => {
// console.log('🌐requesting opi dir', opi_sn, typeof opi_sn)

@ -82,7 +82,7 @@ const EmailDetailInline = ({ mailID, emailMsg = {}, disabled = false, variant, s
}
}
const { loading, mailData, orderDetail, postEmailResend } = useEmailDetail(mailID)
const { loading, mailData, orderDetail, postEmailResend } = useEmailDetail(mailID, null, false)
const [showBindBtn, setShowBindBtn] = useState(false)
useEffect(() => {
setShowBindBtn(mailID ? isEmpty(mailData.info?.MAI_COLI_SN) : false)

@ -58,6 +58,7 @@ function Follow() {
const [currentMailboxOPI, setCurrentMailboxOPI] = useConversationStore(state => [state.currentMailboxOPI, state.setCurrentMailboxOPI]);
const [mailboxActiveNode, setMailboxActiveNode] = useConversationStore(state => [state.mailboxActiveNode, state.setMailboxActiveNode]);
const [activeEmailId, setActiveEmailId] = useConversationStore(state => [state.mailboxActiveMAI, state.setMailboxActiveMAI]);
const [mailboxActiveCOLI, setMailboxActiveCOLI] = useConversationStore(state => [state.mailboxActiveCOLI, state.setMailboxActiveCOLI]);
const computedBreadcrumb = useMemo(() => {
const { title, iconIndex, parentTitle, parentIconIndex } = mailboxActiveNode
@ -86,6 +87,7 @@ function Follow() {
if (VKey && !(!IsTrue && !COLI_SN)) {
setMailboxActiveNode({...treeNode, ...node._raw, key: treeNode.key, OPI_SN: currentMailboxOPI});
setActiveEmailId(0);
setMailboxActiveCOLI(COLI_SN);
} else {
const _expandTree = expandTree.includes(node.key) ? expandTree.filter(ele => ele !== node.key) : [...expandTree, ...selectedKeys]
setExpandTree(_expandTree)
@ -96,6 +98,7 @@ function Follow() {
const onClickEmailItem = (emailItem) => {
const mai_sn = emailItem.MAI_SN;
setActiveEmailId(mai_sn);
setMailboxActiveCOLI(emailItem.MAI_COLI_SN || 0)
const emailMsg = {
conversationid: '',
order_opi: currentMailboxOPI,
@ -174,7 +177,7 @@ function Follow() {
collapsedWidth={0}
trigger={null}
reverseArrow={true}>
<OrderProfile coliSN={mailboxActiveNode.COLI_SN} />
<OrderProfile coliSN={mailboxActiveCOLI} />
</Layout.Sider>
</Layout>
</>

Loading…
Cancel
Save