Browse Source

bug修改

hy 6 years ago
parent
commit
7c98245b19
2 changed files with 39 additions and 3 deletions
  1. 18 3
      src/components/dashboard/menu.jsx
  2. 21 0
      src/models/chart.js

+ 18 - 3
src/components/dashboard/menu.jsx

@@ -250,7 +250,7 @@ class DashboardMenu extends React.Component {
     }
     }
 
 
     render() {
     render() {
-        const { dashboard, dispatch, hideHeader, editable, model } = this.props;
+        const { dashboard, dispatch, hideHeader, editable, model, onSearch: propsOnSearch } = this.props;
         const { visibleDeleteBox, selectedMenu } = this.state;
         const { visibleDeleteBox, selectedMenu } = this.state;
         const { menuTree } = dashboard;
         const { menuTree } = dashboard;
         const { menuFilterLabel, menuExpandedKeys, menuSelectedKeys, menuAutoExpandParent } = model;
         const { menuFilterLabel, menuExpandedKeys, menuSelectedKeys, menuAutoExpandParent } = model;
@@ -261,12 +261,27 @@ class DashboardMenu extends React.Component {
             
             
             {!hideHeader && <div className='menu-search'>
             {!hideHeader && <div className='menu-search'>
                 <Search
                 <Search
-                    defaultValue={menuFilterLabel}
+                    value={menuFilterLabel}
                     placeholder='搜索'
                     placeholder='搜索'
-                    onSearch={this.onSearch}
+                    //onSearch={this.onSearch}
+                    onChange={(e) => {
+                        // 获得需要展开的目录(存在包含关键字的报表或目录)
+                        const expandedMenus = this.findExpandedKeys(dashboard.menuTree, {code: '-1'}, e.target.value);
+                        if(typeof propsOnSearch === 'function') {
+                            propsOnSearch(e.target.value, expandedMenus);
+                        }
+                        dispatch({ type: 'dashboard/setFields', fields: [
+                            { name: 'menuFilterLabel', value: e.target.value },
+                            { name: 'menuAutoExpandParent', value: true },
+                        ] });
+                    }}
                 />
                 />
                 <Button onClick={() => {
                 <Button onClick={() => {
                     dispatch({ type: 'dashboard/remoteMenuTree', mandatory: true });
                     dispatch({ type: 'dashboard/remoteMenuTree', mandatory: true });
+                    dispatch({ type: 'dashboard/setFields', fields: [
+                        { name: 'menuFilterLabel', value: '' },
+                        { name: 'menuAutoExpandParent', value: false },
+                    ] });
                 }}><Icon type='sync' /></Button>
                 }}><Icon type='sync' /></Button>
             </div>}
             </div>}
             <div className='menu-content'>
             <div className='menu-content'>

+ 21 - 0
src/models/chart.js

@@ -38,6 +38,27 @@ export default {
                         message.error('获取数据源下拉列表失败: ' + e.message);
                         message.error('获取数据源下拉列表失败: ' + e.message);
                     });
                     });
                 } },
                 } },
+                { name: 'dataConnectCode', label: '数据链接', type: 'enum', options: () => {
+                    return service.fetch({
+                        url: URLS.DATACONNECT_LIST,
+                        method: 'GET',
+                        body: {
+                            pageNum: 1,
+                            pageSize: 999
+                        }
+                    }).then(res => {
+                        if(!res.error && res.data.code > 0) {
+                            return res.data.data.list.map(l => ({
+                                name: l.id,
+                                label: l.name,
+                            }));
+                        }else {
+                            message.error('获取数据链接下拉列表失败: ' + res.data.msg);
+                        }
+                    }).catch(e => {
+                        message.error('获取数据链接下拉列表失败: ' + e.message);
+                    });
+                } }
             ],
             ],
             filterItem: { name: 'name', label: '图表名称', type: 'string' }, // 已选过滤字段
             filterItem: { name: 'name', label: '图表名称', type: 'string' }, // 已选过滤字段
         },
         },