| | |
| | | import Card from './card' |
| | | import './index.scss' |
| | | |
| | | const Container = ({list, setting, placeholder, handleList, handleMenu, deleteMenu, profileMenu, doubleClickCard }) => { |
| | | let target = null |
| | | |
| | | const Container = ({list, setting, handleList, handleMenu, deleteMenu, profileMenu, doubleClickCard }) => { |
| | | const [cards, setCards] = useState(list) |
| | | const moveCard = (id, atIndex) => { |
| | | const { card, index } = findCard(id) |
| | |
| | | copycard.uuid = Utils.getuuid() |
| | | copycard.origin = false |
| | | copycard.copyType = 'action' |
| | | copycard.label = copycard.label + '(copy)' |
| | | copycard.focus = true |
| | | |
| | | copycard.originCard = card |
| | | copycard.originCard = {...card, appkey: window.GLOB.appkey} |
| | | |
| | | if (copycard.OpenType === 'popview') { // 待完善 |
| | | copycard.linkTab = '' |
| | |
| | | let _val = fromJS(copycard).toJS() |
| | | |
| | | try { |
| | | if (_val.control) { |
| | | delete _val.controlField |
| | | delete _val.controlVal |
| | | } |
| | | delete _val.$srcId |
| | | |
| | | let srcid = localStorage.getItem(window.location.href.split('#')[0] + 'srcId') |
| | | if (srcid) { |
| | | _val.$srcId = srcid |
| | | } |
| | | |
| | | _val.uuid = Utils.getuuid() |
| | | _val = window.btoa(window.encodeURIComponent(JSON.stringify(_val))) |
| | | } catch { |
| | | } catch (e) { |
| | | console.warn('Stringify Failure') |
| | | _val = '' |
| | | } |
| | |
| | | handleList(_cards, copycard) |
| | | } |
| | | |
| | | const hasDrop = (item) => { |
| | | target = item |
| | | } |
| | | |
| | | const [, drop] = useDrop({ |
| | | accept: 'action', |
| | | drop(item) { |
| | |
| | | newcard.tabType = 'SubTable' |
| | | newcard.icon = '' |
| | | newcard.class = 'default' |
| | | newcard.intertype = 'inner' |
| | | newcard.method = 'POST' |
| | | newcard.intertype = 'system' |
| | | newcard.position = 'toolbar' |
| | | newcard.execSuccess = 'grid' |
| | | newcard.execError = 'never' |
| | | newcard.popClose = 'never' |
| | | newcard.errorTime = 10 |
| | | newcard.verify = null |
| | | |
| | | if (item.subType === 'excelIn') { |
| | |
| | | newcard.sysInterface = setting.sysInterface |
| | | newcard.outerFunc = setting.outerFunc |
| | | newcard.interface = setting.interface |
| | | newcard.execSuccess = 'never' |
| | | newcard.class = 'dgreen' |
| | | } |
| | | |
| | | 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.slice(-1)[0].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 |
| | | } |
| | | }) |
| | | |
| | |
| | | editCard={editCard} |
| | | delCard={delCard} |
| | | findCard={findCard} |
| | | hasDrop={hasDrop} |
| | | profileCard={profileCard} |
| | | doubleClickCard={doubleClickBtn} |
| | | /> |
| | |
| | | |
| | | {cards.length === 0 ? |
| | | <div className="common-drawarea-placeholder"> |
| | | {placeholder} |
| | | 请添加按钮 |
| | | </div> : null |
| | | } |
| | | </div> |