From 31ec63f0419895876cbaba99637a884a32d33d0d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 01 九月 2021 10:31:45 +0800 Subject: [PATCH] 2021-09-01 --- src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx | 47 +++++++++++++++++++++++++---------------------- 1 files changed, 25 insertions(+), 22 deletions(-) diff --git a/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx b/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx index 3d546f6..0a4383f 100644 --- a/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx +++ b/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx @@ -2,14 +2,12 @@ import { useDrop } from 'react-dnd' import { is, fromJS } from 'immutable' import update from 'immutability-helper' -import { Col } from 'antd' +import { Col, Button } from 'antd' import Utils from '@/utils/utils.js' import Card from './card' import './index.scss' -const Container = ({list, placeholder, handleList, handleMenu, deleteMenu }) => { - let target = null - +const Container = ({list, placeholder, showField, handleList, handleMenu, deleteMenu }) => { const [cards, setCards] = useState(list) const moveCard = (id, atIndex) => { const { card, index } = findCard(id) @@ -54,7 +52,7 @@ try { _val.uuid = Utils.getuuid() _val = window.btoa(window.encodeURIComponent(JSON.stringify(_val))) - } catch { + } catch (e) { console.warn('Stringify Failure') _val = '' } @@ -73,10 +71,6 @@ const _cards = update(cards, { $splice: [[overIndex + 1, 0, copycard]] }) handleList(_cards, copycard) - } - - const hasDrop = (item) => { - target = item } const [, drop] = useDrop({ @@ -100,7 +94,7 @@ newcard.display = 'dropdown' let _match = 'like' - if (item.subType === 'select' || item.subType === 'link') { + if (item.subType === 'select' || item.subType === 'link' || item.subType === 'checkcard') { _match = '=' } else if (item.subType === 'date' || item.subType === 'datemonth') { _match = '>=' @@ -112,21 +106,20 @@ } newcard.match = _match - - let targetId = cards.length > 0 ? cards[cards.length - 1].uuid : 0 - if (target) { - targetId = target.uuid + + 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 } = findCard(`${targetId}`) - let targetIndex = overIndex - - targetIndex++ - - const _cards = update(cards, { $splice: [[targetIndex, 0, newcard]] }) + const _cards = update(cards, { $splice: [[overIndex + 1, 0, newcard]] }) handleList(_cards, newcard) - target = null } }) @@ -137,16 +130,26 @@ <Card id={`${card.uuid}`} card={card} + showField={showField} moveCard={moveCard} copyCard={copyCard} editCard={editCard} delCard={delCard} findCard={findCard} - hasDrop={hasDrop} /> </Col> ))} - + {cards.length > 0 ? <Col key="action" className="action" span={6}> + <div className="ant-row ant-form-item" style={{whiteSpace: 'nowrap', lineHeight: '40px', height: '55px', marginBottom: 0}}> + <div className="ant-col ant-form-item-label ant-col-xs-24 ant-col-sm-8"> + </div> + <div className="ant-col ant-form-item-control-wrapper ant-col-xs-24 ant-col-sm-16"> + <Button type="primary">鎼滅储</Button> + <Button style={{ marginLeft: 8 }}>閲嶇疆</Button> + <div style={{position: 'absolute', top: 0, bottom: 0, left: 0, right: 0}}></div> + </div> + </div> + </Col> : null} {cards.length === 0 ? <div className="common-drawarea-placeholder"> {placeholder} -- Gitblit v1.8.0