Browse Source

图表分组切换逻辑bug/刷新图标更新

zhuth 6 years ago
parent
commit
87e5d039e9

+ 17 - 13
src/components/chart/list.jsx

@@ -17,7 +17,6 @@ import TransferBox from '../common/selectUserBox/selectUserBox'
 import DeleteBox from '../common/deleteBox/deleteBox'
 import { arrayToTree } from '../../utils/baseUtils'
 import ListFilter from '../common/listFilter/index'
-import CusIcon from '../common/cusIcon/index'
 import './list.less'
 const { Content } = Layout
 const CardGrid = Card.Grid
@@ -109,20 +108,20 @@ class ChartList extends React.Component {
         let list = cardList.filter(l => {
             if(filterItem.type === 'date') {
                 if(filterLabel===""){
-                    if(!noGroup || !currentGroup || (noGroup && l.groupCode === '-1') || (!!currentGroup && l.groupCode === currentGroup.code)) {
-                        return true;
+                    if(noGroup) {
+                        return l.groupCode === '-1'
                     }else {
-                        return false;
+                        return !!currentGroup ? l.groupCode === currentGroup.code : true;
                     }
                 }else if(filterLabel.indexOf('#')>-1){
                     let start = filterLabel.split('#')[0]
                     let end = filterLabel.split('#')[1]
                     let nowTime = new Date(l[filterItem.name]).getTime();
                     if(nowTime>=start && nowTime<=end){
-                        if(!noGroup || !currentGroup || (noGroup && l.groupCode === '-1') || (!!currentGroup && l.groupCode === currentGroup.code)) {
-                            return true;
+                        if(noGroup) {
+                            return l.groupCode === '-1'
                         }else {
-                            return false;
+                            return !!currentGroup ? l.groupCode === currentGroup.code : true;
                         }
                     }
                     return false;
@@ -131,10 +130,10 @@ class ChartList extends React.Component {
                 }
             }else {
                 if((l[filterItem.name] + '').search(filterReg) > -1) {
-                    if(!noGroup || !currentGroup || (noGroup && l.groupCode === '-1') || (!!currentGroup && l.groupCode === currentGroup.code)) {
-                        return true;
+                    if(noGroup) {
+                        return l.groupCode === '-1'
                     }else {
-                        return false;
+                        return !!currentGroup ? l.groupCode === currentGroup.code : true;
                     }
                 }else {
                     return false;
@@ -332,7 +331,7 @@ class ChartList extends React.Component {
                                     } {moment(l.createTime).format('YYYY-MM-DD')}</Row>
                                 </Col>
                                 <Col span={3} style={{ textAlign: 'right' }}>
-                                    <Dropdown overlay={this.generateOperationMenu()} trigger={['click']}>
+                                    <Dropdown getPopupContainer={() => document.querySelector('.layout-chart .ant-card-body')} overlay={this.generateOperationMenu()} trigger={['click']}>
                                         <Icon style={{ fontSize: '24px' }} type="ellipsis" theme="outlined" />
                                     </Dropdown>
                                 </Col>
@@ -360,6 +359,7 @@ class ChartList extends React.Component {
                     onTitleClick={() => {
                         dispatch({ type: 'chart/remoteSetGroup', chart: selectedRecord, group: t });
                         dispatch({ type: 'chart/setCurrentGroup', group: t });
+                        this.setState({noGroup: false})
                     }}
                 >
                     {this.createGroupMenu(t.children)}
@@ -368,6 +368,7 @@ class ChartList extends React.Component {
                 return <Menu.Item key={t.code} onClick={() => {
                     dispatch({ type: 'chart/remoteSetGroup', chart: selectedRecord, group: t });
                     dispatch({ type: 'chart/setCurrentGroup', group: t });
+                    this.setState({noGroup: false})
                 }}>{selectedRecord.groupCode === t.code ? <span className='current' style={{ fontWeight: 'bold' }}>{t.label}</span> : t.label}</Menu.Item>
             }
         })
@@ -426,7 +427,8 @@ class ChartList extends React.Component {
                                         dispatch({ type: 'chart/setFilterLabel', label: '' });
                                         dispatch({ type: 'chart/fetchList', mandatory: true });
                                     }}>
-                                        <CusIcon type='bi-refresh'/>
+                                        {/* <CusIcon type='bi-refresh'/> */}
+                                        <Icon type='sync'/>
                                     </Button>
                                 </Col>
                                 <Col>
@@ -454,7 +456,9 @@ class ChartList extends React.Component {
                             { this.generateCard(viewList) }
                         </div>
                     </Card>
-                    <Pagination showQuickJumper pageSize={pageSize} current={page} total={reduceList.length} onChange={this.onPageChange} />
+                    <Pagination showQuickJumper pageSize={pageSize} current={page} total={reduceList.length} onChange={this.onPageChange}
+                        showTotal={total => `共${total}个图表`}
+                    />
                 </Content>
                 {visibleGroupManageMentBox && <GroupManagementBox
                     visibleBox={visibleGroupManageMentBox}

+ 1 - 1
src/components/chartDesigner/header.jsx

@@ -145,7 +145,7 @@ class Header extends React.Component {
                         dispatch({ type: 'chartDesigner/setDirty', dirty: false });
                     }}>保存</Button>}
                     {this.isOwner() && <Tooltip title='复制新增'>
-                        <Button className='tools-btn' onClick={() => {
+                        <Button disabled={!this.isValid()} className='tools-btn' onClick={() => {
                             this.setState({
                                 visibleCopyBox: true,
                                 newHeaderLabel: chartDesigner.header.label + '_副本'

+ 1 - 1
src/components/common/listFilter/index.jsx

@@ -28,7 +28,7 @@ class ListFilter extends React.Component {
             showArrow={filterItems.length > 1}
             disabled={filterItems.length === 1}
             value={filterItem.name}
-            style={{ width: 120 }}
+            style={{ width: 100 }}
             onChange={value => {
                 let item = filterItems.find(i => i.name === value);
                 modelName && dispatch({ type: modelName + '/setFilterItem', item });

+ 0 - 2
src/components/common/login/relogin.less

@@ -1,10 +1,8 @@
 .relogin-box {
     .ant-modal-content {
         .ant-modal-header {
-            padding: 8px 24px;
         }
         .ant-modal-body {
-            padding: 16px 24px;
 
             .relogin-item {
                 margin-bottom: 8px;

+ 2 - 2
src/components/dashboard/list.jsx

@@ -9,7 +9,6 @@ import ShareBox from './shareBox'
 import CopyBox from './copyBox'
 import ListFilter from '../common/listFilter/index'
 import EllipsisTooltip from '../common/ellipsisTooltip/index'
-import CusIcon from '../common/cusIcon/index'
 import './list.less'
 const { Content } = Layout
 const { Option } = Select
@@ -352,7 +351,8 @@ class DashboardList extends React.Component {
                                             dispatch({ type: 'dashboard/remoteMenuDashboardList', menuCode: currentMenu.code });
                                         }
                                     }}>
-                                        <CusIcon type='bi-refresh'/>
+                                        {/* <CusIcon type='bi-refresh'/> */}
+                                        <Icon type='sync'/>
                                     </Button>
                                 </Col>
                                 <Col>

+ 2 - 2
src/components/dataConnect/list.jsx

@@ -5,7 +5,6 @@ import DeleteBox from '../common/deleteBox/deleteBox'
 import EmptyContent from '../common/emptyContent/index'
 import DataConnectBox from '../dataSourceDetail/dataConnectBox'
 import ListFilter from '../common/listFilter/index'
-import CusIcon from '../common/cusIcon/index'
 import './list.less'
 const CardGrid = Card.Grid
 const { Content } = Layout
@@ -248,7 +247,8 @@ class DataConnect extends React.Component {
                                         dispatch({ type: 'dataConnect/setFilterLabel', label: '' });
                                         dispatch({ type: 'dataConnect/fetchList', mandatory: true });
                                     }}>
-                                        <CusIcon type='bi-refresh'/>
+                                        {/* <CusIcon type='bi-refresh'/> */}
+                                        <Icon type='sync'/>
                                     </Button>
                                 </Col>
                                 <Col>

+ 4 - 2
src/components/dataSource/list.jsx

@@ -10,7 +10,6 @@ import DeleteBox from '../common/deleteBox/deleteBox'
 import DataPreview from '../common/dataPreview/dataPreview'
 import ListFilter from '../common/listFilter/index'
 import EllipsisTooltip from '../common/ellipsisTooltip/index'
-import CusIcon from '../common/cusIcon/index'
 import './list.less'
 const { Content } = Layout
 const { Option } = Select
@@ -187,6 +186,7 @@ class DataSource extends React.Component {
                     onTitleClick={() => {
                         dispatch({ type: 'dataSource/remoteSetGroup', dataSource: selectedRecord, group: t });
                         dispatch({ type: 'dataSource/setCurrentGroup', group: t });
+                        this.setState({noGroup: false})
                     }}
                 >
                     {this.createGroupMenu(t.children)}
@@ -195,6 +195,7 @@ class DataSource extends React.Component {
                 return <Menu.Item key={t.code} onClick={() => {
                     dispatch({ type: 'dataSource/remoteSetGroup', dataSource: selectedRecord, group: t });
                     dispatch({ type: 'dataSource/setCurrentGroup', group: t });
+                    this.setState({noGroup: false})
                 }}>
                     {selectedRecord.groupCode === t.code ? <span className='current' style={{ fontWeight: 'bold' }}>{t.label}</span> : t.label}
                 </Menu.Item>
@@ -399,7 +400,8 @@ class DataSource extends React.Component {
                                         dispatch({ type: 'dataSource/setFilterLabel', label: '' });
                                         dispatch({ type: 'dataSource/fetchList', mandatory: true });
                                     }}>
-                                        <CusIcon type='bi-refresh'/>
+                                        {/* <CusIcon type='bi-refresh'/> */}
+                                        <Icon type='sync'/>
                                     </Button>
                                 </Col>
                                 <Col>