From 526d2be8959e6e99c1afd31cf213f0f1e7a56a8b Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 26 四月 2022 15:43:58 +0800 Subject: [PATCH] 2022-04-26 --- src/tabviews/custom/components/card/prop-card/index.scss | 18 ++++ src/tabviews/custom/components/card/cardcellList/index.jsx | 15 +-- src/tabviews/custom/components/card/prop-card/index.jsx | 16 --- src/menu/components/tree/antd-tree/index.scss | 2 src/menu/components/card/data-card/options.jsx | 5 src/menu/components/card/prop-card/index.scss | 18 ++++ src/menu/components/card/cardcomponent/index.jsx | 5 src/menu/components/card/data-card/index.jsx | 15 --- src/menu/components/card/data-card/index.scss | 18 ++++ src/tabviews/custom/components/tree/antd-tree/index.scss | 3 src/menu/components/card/prop-card/index.jsx | 16 --- src/tabviews/custom/components/card/data-card/index.scss | 18 ++++ src/menu/datasource/verifycard/index.jsx | 23 +++++ src/tabviews/custom/components/card/data-card/index.jsx | 28 ------ 14 files changed, 118 insertions(+), 82 deletions(-) diff --git a/src/menu/components/card/cardcomponent/index.jsx b/src/menu/components/card/cardcomponent/index.jsx index 7e36906..5554b8f 100644 --- a/src/menu/components/card/cardcomponent/index.jsx +++ b/src/menu/components/card/cardcomponent/index.jsx @@ -19,7 +19,6 @@ class CardBoxComponent extends Component { static propTpyes = { - offset: PropTypes.any, // 鍋忕Щ閲� cards: PropTypes.object, // 鍗$墖琛岄厤缃俊鎭� card: PropTypes.object, // 鍗$墖閰嶇疆淇℃伅 move: PropTypes.func, // 鍗$墖绉诲姩 @@ -320,7 +319,7 @@ } render() { - const { cards, offset } = this.props + const { cards } = this.props const { card, elements, side, visible } = this.state let _style = {...card.style} @@ -338,7 +337,7 @@ _style = resetStyle(_style) return ( - <Col span={card.setting.width || 6} offset={offset || 0}> + <Col span={card.setting.width || 6}> <div className={'card-item ' + (card.setting.btnControl || '')} style={_style} onClick={this.clickComponent} onDoubleClick={(e) => {e.stopPropagation(); this.doubleClickCard()}} id={card.uuid}> <CardCellComponent cards={cards} cardCell={card} side={side} elements={elements} updateElement={this.updateCard}/> <div className="card-control" onDoubleClick={(e) => e.stopPropagation()}> diff --git a/src/menu/components/card/data-card/index.jsx b/src/menu/components/card/data-card/index.jsx index 4b81300..7b10cf3 100644 --- a/src/menu/components/card/data-card/index.jsx +++ b/src/menu/components/card/data-card/index.jsx @@ -643,17 +643,6 @@ render() { const { card, appType } = this.state - let offset = 0 - if (card.wrap.cardFloat && card.wrap.cardFloat !== 'left') { - let _width = 0 - card.subcards.forEach(card => { - _width += card.setting.width - }) - offset = _width < 24 ? 24 - _width : 0 - if (card.wrap.cardFloat === 'center') { - offset = Math.floor(offset / 2) - } - } let _style = resetStyle(card.style) return ( @@ -679,7 +668,9 @@ <ToolOutlined /> </Popover> <ActionComponent config={card} type="datacard" setSubConfig={this.setSubConfig} updateaction={this.updateComponent}/> - {card.subcards.map((subcard, index) => (<CardComponent key={subcard.uuid} offset={!index ? offset : 0} cards={card} card={subcard} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} + <div className={'float-' + (card.wrap.cardFloat || 'left')}> + {card.subcards.map((subcard, index) => (<CardComponent key={subcard.uuid} cards={card} card={subcard} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} + </div> <div style={{clear: 'both'}}></div> {card.wrap.pagestyle === 'page' && card.setting.laypage === 'true' && appType !== 'mob' ? <Pagination total={85} size="small" showTotal={total => `鍏� ${total} 鏉} pageSize={20} defaultCurrent={1}/> : null} {card.wrap.pagestyle === 'page' && card.setting.laypage === 'true' && appType === 'mob' ? <MobPagination /> : null} diff --git a/src/menu/components/card/data-card/index.scss b/src/menu/components/card/data-card/index.scss index 900f85c..c49a471 100644 --- a/src/menu/components/card/data-card/index.scss +++ b/src/menu/components/card/data-card/index.scss @@ -91,6 +91,24 @@ font-size: 16px; } } + .float-center { + text-align: center; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } + .float-right { + text-align: right; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } } .menu-data-card-edit-box::-webkit-scrollbar { diff --git a/src/menu/components/card/data-card/options.jsx b/src/menu/components/card/data-card/options.jsx index 9e8f1b5..913aba8 100644 --- a/src/menu/components/card/data-card/options.jsx +++ b/src/menu/components/card/data-card/options.jsx @@ -104,7 +104,8 @@ ], controlFields: subtype !== 'propcard' ? [ {field: 'printHeight', values: ['flex']}, - ] : [], + {field: 'cardFloat', values: ['grid']}, + ] : [{field: 'cardFloat', values: ['grid']}], forbid: subtype === 'tablecard' }, { @@ -202,7 +203,7 @@ field: 'cardFloat', label: '瀵归綈鏂瑰紡', initval: wrap.cardFloat || 'left', - tooltip: '璁剧疆涓哄眳涓榻愭垨鍙冲榻愶紝鍙湪鍗$墖涓�1琛屾椂鏈夋晥銆�', + tooltip: '璁剧疆鍗$墖鐨勫榻愭柟寮忋��', required: false, options: [ {value: 'left', label: '宸﹀榻�'}, diff --git a/src/menu/components/card/prop-card/index.jsx b/src/menu/components/card/prop-card/index.jsx index 280f2d7..b42cc9a 100644 --- a/src/menu/components/card/prop-card/index.jsx +++ b/src/menu/components/card/prop-card/index.jsx @@ -467,18 +467,6 @@ render() { const { card } = this.state - let offset = 0 - if (card.wrap.cardFloat && card.wrap.cardFloat !== 'left') { - let _width = 0 - card.subcards.forEach(card => { - _width += card.setting.width - }) - offset = _width < 24 ? 24 - _width : 0 - if (card.wrap.cardFloat === 'center') { - offset = Math.floor(offset / 2) - } - } - let _style = resetStyle(card.style) return ( @@ -503,8 +491,8 @@ } trigger="hover"> <ToolOutlined /> </Popover> - <div className={(card.wrap.layout || 'grid') + '-layout'}> - {card.subcards.map((subcard, index) => (<CardComponent key={subcard.uuid} offset={!index ? offset : 0} cards={card} card={subcard} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} + <div className={(card.wrap.layout || 'grid') + '-layout float-' + (card.wrap.cardFloat || 'left')}> + {card.subcards.map(subcard => (<CardComponent key={subcard.uuid} cards={card} card={subcard} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} </div> </div> ) diff --git a/src/menu/components/card/prop-card/index.scss b/src/menu/components/card/prop-card/index.scss index 025f29a..f8633d4 100644 --- a/src/menu/components/card/prop-card/index.scss +++ b/src/menu/components/card/prop-card/index.scss @@ -79,6 +79,24 @@ flex: 1; } } + .float-center { + text-align: center; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } + .float-right { + text-align: right; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } } .menu-prop-card-edit-box::after { display: block; diff --git a/src/menu/components/tree/antd-tree/index.scss b/src/menu/components/tree/antd-tree/index.scss index ff7b7fb..a1255ef 100644 --- a/src/menu/components/tree/antd-tree/index.scss +++ b/src/menu/components/tree/antd-tree/index.scss @@ -5,7 +5,7 @@ background-position: center center; background-repeat: no-repeat; background-size: cover; - min-height: 50px; + min-height: 100px; overflow-y: auto; .anticon-tool { diff --git a/src/menu/datasource/verifycard/index.jsx b/src/menu/datasource/verifycard/index.jsx index 09277c8..51338af 100644 --- a/src/menu/datasource/verifycard/index.jsx +++ b/src/menu/datasource/verifycard/index.jsx @@ -379,6 +379,18 @@ this.setState({loading: false}) }) } else if (activeKey === 'columns') { + if (this.datasource && this.datasource.state.editingKey) { + notification.warning({ + top: 92, + message: '瀛楁鏈繚瀛橈紝璇蜂繚瀛樺悗鍒囨崲锛�', + duration: 5 + }) + this.setState({ + loading: false + }) + return + } + this.setState({ activeKey: val, loading: false @@ -508,6 +520,15 @@ reject() }) } else if (activeKey === 'columns') { + if (this.datasource && this.datasource.state.editingKey) { + notification.warning({ + top: 92, + message: '瀛楁鏈繚瀛橈紝璇蜂繚瀛樺悗鎻愪氦锛�', + duration: 5 + }) + reject() + return + } this.sqlverify(() => { resolve({setting, columns, scripts }) }, reject, false) } else if (activeKey === 'scripts') { let _loading = false @@ -674,7 +695,7 @@ updatefield={this.updatefields} /> <CopyOutlined title="浠ラ�楀彿鎷兼帴褰㈠紡澶嶅埗瀛楁" onClick={this.copyColumns} style={{position: 'absolute', cursor: 'pointer', zIndex: 1, top: '-35px', right: '0px', color: '#1890ff'}} /> - <EditTable actions={['edit', 'move', 'copy', 'del', 'clear']} type="datasourcefield" data={columns} columns={colColumns} onChange={(columns) => this.setState({columns})}/> + <EditTable actions={['edit', 'move', 'copy', 'del', 'clear']} type="datasourcefield" wrappedComponentRef={(inst) => this.datasource = inst} data={columns} columns={colColumns} onChange={(columns) => this.setState({columns})}/> </TabPane> <TabPane tab={ <span> diff --git a/src/tabviews/custom/components/card/cardcellList/index.jsx b/src/tabviews/custom/components/card/cardcellList/index.jsx index 4b3f375..de5702b 100644 --- a/src/tabviews/custom/components/card/cardcellList/index.jsx +++ b/src/tabviews/custom/components/card/cardcellList/index.jsx @@ -585,14 +585,13 @@ </Col> ) } else if (card.eleType === 'currentDate') { - let val = card.dateFormat ? moment().format(card.dateFormat) : '' - if (val !== '') { - if (card.fixStyle === 'alone') { - let _s = {fontSize: card.fixSize, color: card.fixColor, marginLeft: card.fixLeft, marginRight: card.fixRight} - val = <><span style={_s}>{card.prefix || ''}</span>{val}<span style={_s}>{card.postfix || ''}</span></> - } else { - val = `${card.prefix || ''}${val}${card.postfix || ''}` - } + let val = moment().format(card.dateFormat || 'YYYY-MM-DD') + + if (card.fixStyle === 'alone') { + let _s = {fontSize: card.fixSize, color: card.fixColor, marginLeft: card.fixLeft, marginRight: card.fixRight} + val = <><span style={_s}>{card.prefix || ''}</span>{val}<span style={_s}>{card.postfix || ''}</span></> + } else { + val = `${card.prefix || ''}${val}${card.postfix || ''}` } return ( diff --git a/src/tabviews/custom/components/card/data-card/index.jsx b/src/tabviews/custom/components/card/data-card/index.jsx index 3176642..3b9a2bc 100644 --- a/src/tabviews/custom/components/card/data-card/index.jsx +++ b/src/tabviews/custom/components/card/data-card/index.jsx @@ -98,20 +98,6 @@ _sync = false } - if (_config.wrap.cardFloat && _config.wrap.cardFloat !== 'left') { - let _width = 0 - precards.forEach(card => { - _width += card.setting.width - }) - nextcards.forEach(card => { - _width += card.setting.width - }) - - _config.$offset = _width - } else { - _config.wrap.cardFloat = null - } - let selected = 'false' if (_config.wrap.selected === 'always' || _config.wrap.selected === 'init') { selected = _config.wrap.selected @@ -170,7 +156,7 @@ _config.wrap.selStyle = _config.wrap.selStyle || 'active' _config.wrap.scale = _config.wrap.scale === 'true' ? 'scale' : '' - _config.wrap.layout = (_config.wrap.layout || 'grid') + '-layout' + _config.wrap.layout = (_config.wrap.layout || 'grid') + '-layout float-' + (_config.wrap.cardFloat || 'left') _config.wrap.wrapClass = `${_config.wrap.selStyle} ${_config.wrap.cardType || ''} ${_config.wrap.scale}` @@ -750,17 +736,6 @@ _total = config.setting.pageSize * pageIndex switchable = true } - let offset = 0 - - if (config.wrap.cardFloat) { - let length = data ? data.length : 0 - if (card.setting.width * length + config.$offset < 24) { - offset = 24 - card.setting.width * length - config.$offset - if (config.wrap.cardFloat === 'center') { - offset = Math.floor(offset / 2) - } - } - } let extendData = {$$BID: BID, $$BData: BData, $$selectedData: selectedData, $$type: 'extendCard'} @@ -790,7 +765,6 @@ <div className={`data-zoom ${config.wrap.wrapClass}`}> {switchable ? <div className={'prev-page ' + (pageIndex === 1 ? 'disabled' : '')} onClick={this.prevPage}><div><div><img src={preImg} alt=""/></div></div></div> : null} <Row className={'card-row-list ' + config.wrap.layout}> - {offset ? <Col span={offset} style={{height: '10px'}}> </Col> : null} {precards.map((item, index) => ( <Col key={'pre' + index} className="extend-card" span={item.setting.width || 6}> <CardItem card={item} cards={config} data={extendData}/> diff --git a/src/tabviews/custom/components/card/data-card/index.scss b/src/tabviews/custom/components/card/data-card/index.scss index 5e80317..4c1bbb5 100644 --- a/src/tabviews/custom/components/card/data-card/index.scss +++ b/src/tabviews/custom/components/card/data-card/index.scss @@ -54,6 +54,24 @@ flex: 1; } } + .card-row-list.float-center { + text-align: center; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } + .card-row-list.float-right { + text-align: right; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } .card-item-box { position: relative; background-color: #ffffff; diff --git a/src/tabviews/custom/components/card/prop-card/index.jsx b/src/tabviews/custom/components/card/prop-card/index.jsx index 5df7934..921b4a9 100644 --- a/src/tabviews/custom/components/card/prop-card/index.jsx +++ b/src/tabviews/custom/components/card/prop-card/index.jsx @@ -72,7 +72,6 @@ _cols.set(item.field, item) }) - let _width = 0 _config.subcards.forEach(card => { if (card.setting.click === 'button' && !card.setting.linkbtn) { card.elements.forEach(ele => { @@ -84,7 +83,6 @@ card.setting.click = '' } } - _width += card.setting.width card.elements = card.elements.map(item => { if (item.eleType === 'number' && item.field && _cols.has(item.field) && typeof(item.decimal) !== 'number') { item.decimal = _cols.get(item.field).decimal || 0 @@ -99,23 +97,13 @@ }) }) - let offset = 0 - if (_config.wrap.cardFloat && _config.wrap.cardFloat !== 'left' && _width < 24) { - offset = 24 - _width - if (_config.wrap.cardFloat === 'center') { - offset = Math.floor(offset / 2) - } - _config.subcards[0].offset = offset - } - let selected = _config.wrap.selected || 'false' _config.wrap.selStyle = _config.wrap.selStyle || 'active' _config.wrap.priKeyType = _config.wrap.priKeyType || 'static' _config.wrap.scale = _config.wrap.scale === 'true' ? 'scale' : '' - _config.wrap.layout = (_config.wrap.layout || 'grid') + '-layout' - _config.wrap.wrapClass = `${_config.wrap.selStyle} ${_config.wrap.cardType || ''} ${_config.wrap.scale || ''}` + _config.wrap.wrapClass = `${_config.wrap.selStyle} ${_config.wrap.cardType || ''} ${_config.wrap.scale || ''} ${_config.wrap.layout || 'grid'}-layout float-${_config.wrap.cardFloat || 'left'}` this.setState({ selected, @@ -419,7 +407,7 @@ </div> : null } <NormalHeader config={config}/> - <Row className={`card-row-list data-zoom ${config.wrap.wrapClass} ${config.wrap.layout}`}> + <Row className={`card-row-list data-zoom ${config.wrap.wrapClass}`}> {config.subcards.map((item, index) => { let className = item.setting.click ? 'mk-card pointer ' : 'mk-card ' if (activeKey === index) { diff --git a/src/tabviews/custom/components/card/prop-card/index.scss b/src/tabviews/custom/components/card/prop-card/index.scss index 03534dc..7b10775 100644 --- a/src/tabviews/custom/components/card/prop-card/index.scss +++ b/src/tabviews/custom/components/card/prop-card/index.scss @@ -25,6 +25,24 @@ flex: 1; } } + .card-row-list.float-center { + text-align: center; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } + .card-row-list.float-right { + text-align: right; + >.ant-col { + display: inline-block; + float: none; + text-align: left; + vertical-align: top; + } + } .card-row-list.scale { .mk-card:hover { >.card-item-box { diff --git a/src/tabviews/custom/components/tree/antd-tree/index.scss b/src/tabviews/custom/components/tree/antd-tree/index.scss index e60ec78..859f346 100644 --- a/src/tabviews/custom/components/tree/antd-tree/index.scss +++ b/src/tabviews/custom/components/tree/antd-tree/index.scss @@ -75,6 +75,9 @@ height: 60px; } } + .tree-header + .ant-empty { + margin-top: 35px; + } .loading-mask { position: absolute; left: 0px; -- Gitblit v1.8.0