From 41c55c1f103658b997f7a828a7067bdb228f1df0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 04 十月 2022 23:35:10 +0800 Subject: [PATCH] 2022-10-04 --- src/pc/menushell/card.jsx | 71 +++++++++++++++++++++++++++++------ 1 files changed, 58 insertions(+), 13 deletions(-) diff --git a/src/pc/menushell/card.jsx b/src/pc/menushell/card.jsx index cd6aa65..7ecb332 100644 --- a/src/pc/menushell/card.jsx +++ b/src/pc/menushell/card.jsx @@ -7,24 +7,33 @@ const AntvBar = asyncComponent(() => import('@/menu/components/chart/antv-bar')) const MainSearch = asyncComponent(() => import('@/menu/components/search/main-search')) const AntvPie = asyncComponent(() => import('@/menu/components/chart/antv-pie')) +const AntvDashboard = asyncComponent(() => import('@/menu/components/chart/antv-dashboard')) +const AntvScatter = asyncComponent(() => import('@/menu/components/chart/antv-scatter')) const AntvTabs = asyncComponent(() => import('@/menu/components/tabs/antv-tabs')) const DataCard = asyncComponent(() => import('@/menu/components/card/data-card')) const PropCard = asyncComponent(() => import('@/menu/components/card/prop-card')) +const NormalTree = asyncComponent(() => import('@/menu/components/tree/antd-tree')) const TableCard = asyncComponent(() => import('@/menu/components/card/table-card')) const NormalTable = asyncComponent(() => import('@/menu/components/table/normal-table')) +const EditTable = asyncComponent(() => import('@/menu/components/table/edit-table')) const NormalGroup = asyncComponent(() => import('@/menu/components/group/normal-group')) -const NormalForm = asyncComponent(() => import('@/menu/components/form/normal-form')) +const SimpleForm = asyncComponent(() => import('@/menu/components/form/simple-form')) +const StepForm = asyncComponent(() => import('@/menu/components/form/step-form')) +const TabForm = asyncComponent(() => import('@/menu/components/form/tab-form')) const BraftEditor = asyncComponent(() => import('@/menu/components/editor/braft-editor')) const CodeSandbox = asyncComponent(() => import('@/menu/components/code/sandbox')) const NormalNavbar = asyncComponent(() => import('@/pc/components/navbar/normal-navbar')) const NormalLogin = asyncComponent(() => import('@/pc/components/login/normal-login')) const CarouselDataCard = asyncComponent(() => import('@/menu/components/carousel/data-card')) const CarouselPropCard = asyncComponent(() => import('@/menu/components/carousel/prop-card')) +const Balcony = asyncComponent(() => import('@/menu/components/card/balcony')) +const CustomChart = asyncComponent(() => import('@/menu/components/chart/chart-custom')) +const Timeline = asyncComponent(() => import('@/menu/components/timeline/normal-timeline')) const Card = ({ id, card, moveCard, findCard, delCard, updateConfig }) => { const originalIndex = findCard(id).index const [{ isDragging }, drag] = useDrag({ - item: { type: 'menu', id, originalIndex, floor: card.floor }, + item: { type: 'menu', id, originalIndex }, collect: monitor => ({ isDragging: monitor.isDragging(), }), @@ -33,10 +42,11 @@ accept: 'menu', canDrop: () => true, drop: (item) => { - const { id: draggedId, originalIndex, floor } = item + const { id: draggedId, originalIndex } = item + if (originalIndex === undefined) { item.dropTargetId = id - } else if (draggedId && floor === card.floor) { + } else if (draggedId) { if (draggedId === id) return const { index: originIndex } = findCard(draggedId) @@ -54,8 +64,20 @@ style = { opacity: 0.3} } let col = ' ant-col ant-col-' + (card.width || 24) - if (card.type === 'navbar') { - col = '' + if (card.type === 'login') { + let height = '' + if (card.wrap && card.wrap.height) { + // scaleview + height = card.wrap.height.replace(/\d+vw/ig, (word) => { + return parseFloat(word) * (window.GLOB.winWidth || 420) / 100 + 'px' + // return parseFloat(word) * 350 / 100 + 'px' + }).replace(/\d+vh/ig, (word) => { + return parseFloat(word) * (window.GLOB.winHeight || 738) / 100 + 'px' + // return parseFloat(word) * 615 / 100 + 'px' + }) + } + + style.minHeight = height } const getCardComponent = () => { @@ -63,12 +85,22 @@ return (<AntvBar card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'navbar') { return (<NormalNavbar card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) - } else if (card.type === 'form') { - return (<NormalForm card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'form' && card.subtype === 'simpleform') { + return (<SimpleForm card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'form' && card.subtype === 'stepform') { + return (<StepForm card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'form' && card.subtype === 'tabform') { + return (<TabForm card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'search') { return (<MainSearch card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'pie') { return (<AntvPie card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'dashboard') { + return (<AntvDashboard card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'tree') { + return (<NormalTree card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'scatter') { + return (<AntvScatter card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'tabs') { return (<AntvTabs tabs={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'card' && card.subtype === 'datacard') { @@ -83,6 +115,8 @@ return (<TableCard card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'table' && card.subtype === 'normaltable') { return (<NormalTable card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'table' && card.subtype === 'editable') { + return (<EditTable card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'group' && card.subtype === 'normalgroup') { return (<NormalGroup group={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'editor') { @@ -91,12 +125,23 @@ return (<CodeSandbox card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } else if (card.type === 'login') { return (<NormalLogin card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'balcony') { + return (<Balcony card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'timeline') { + return (<Timeline card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) + } else if (card.type === 'chart') { + return (<CustomChart card={card} updateConfig={updateConfig} deletecomponent={delCard}/>) } } - return ( - <div className={`mk-component-card ${col}`} ref={node => drag(drop(node))} style={style}> - {getCardComponent()} - </div> - ) + + if (card.type === 'navbar') { + return getCardComponent() + } else { + return ( + <div className={`mk-component-card ${col}`} ref={node => drag(drop(node))} style={style}> + {getCardComponent()} + </div> + ) + } } export default Card -- Gitblit v1.8.0