From cb9ade2afd2a367ad767bc605ab7086c695dd010 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 09 十二月 2022 15:53:32 +0800 Subject: [PATCH] 2022-12-09 --- src/menu/components/share/searchcomponent/dragsearch/index.jsx | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 50 insertions(+), 1 deletions(-) diff --git a/src/menu/components/share/searchcomponent/dragsearch/index.jsx b/src/menu/components/share/searchcomponent/dragsearch/index.jsx index a5013eb..8a063a7 100644 --- a/src/menu/components/share/searchcomponent/dragsearch/index.jsx +++ b/src/menu/components/share/searchcomponent/dragsearch/index.jsx @@ -81,7 +81,56 @@ const [, drop] = useDrop({ accept: 'search', - drop() {} + drop(item) { + if (item.hasOwnProperty('originalIndex')) { + return + } + + let newcard = {} + newcard.uuid = Utils.getuuid() + newcard.focus = true + + newcard.label = 'label' + newcard.initval = '' + newcard.type = item.subType + newcard.resourceType = '0' + newcard.options = [] + newcard.orderType = 'asc' + + let _match = 'like' + if (item.subType === 'select' || item.subType === 'link' || item.subType === 'checkcard') { + _match = '=' + } else if (item.subType === 'date' || item.subType === 'datemonth') { + _match = '>=' + } else if (item.subType === 'dateweek' || item.subType === 'daterange') { + _match = 'between' + } else if (item.subType === 'group') { + _match = 'between' + newcard.items = ['day', 'week', 'month', 'quarter', 'year', 'customized'] + } + + newcard.match = _match + + let targetId = '' + + if (item.dropTargetId) { + targetId = item.dropTargetId + delete item.dropTargetId + } else if (cards.length > 0) { + targetId = cards[cards.length - 1].uuid + } + + const { index: overIndex, card } = findCard(`${targetId}`) + + if (card) { + newcard.ratio = card.ratio || 6 + newcard.labelwidth = card.labelwidth || 33.3 + } + + const _cards = update(cards, { $splice: [[overIndex + 1, 0, newcard]] }) + + handleList(_cards, newcard) + } }) return ( -- Gitblit v1.8.0