Commit 63b30b92 by zhaochengxiang

调整数据源管理

parent 9452d8af
import React, { useEffect, useState } from 'react';
import { Row, Col, Typography, Divider } from 'antd';
import { Row, Col, Typography, Divider, Spin, Empty } from 'antd';
import TaskItem from './TaskItem';
import { dispatch } from '../../../../model';
......@@ -9,6 +9,7 @@ import './DatasourceItem.less';
const DatasourceItem = (props) => {
const { data, onStartTask, onEditTask, onDeleteTask, expanded, refresh, refreshSuccess } = props;
const [ tasks, setTasks ] = useState(null);
const [ loading, setLoading ] = useState(false);
useEffect(() => {
if (expanded && !tasks) {
......@@ -27,14 +28,19 @@ const DatasourceItem = (props) => {
}, [refresh])
const getTasks = () => {
setLoading(true);
dispatch({
type: 'datasource.getTasksByDatasourceId',
payload: {
datasourceId: data.id
},
callback: data => {
setLoading(false);
setTasks(data);
refresh && refreshSuccess && refreshSuccess();
},
error: () => {
setLoading(false);
}
})
}
......@@ -67,13 +73,18 @@ const DatasourceItem = (props) => {
}
</Row>
{
expanded && <>
<Divider />
expanded && <Divider />
}
{
expanded && <Spin spinning={loading}>
{
(tasks||[]).length===0 ? <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description="暂无任务" /> : <>
<Divider>任务列表</Divider>
<Row gutter={10}>
{
(tasks||[]).map((task, index) => {
return (
<Col key={index} md={8}>
<Col className='mt-3' key={index} md={8}>
<TaskItem
key={index}
data={task}
......@@ -88,6 +99,9 @@ const DatasourceItem = (props) => {
</Row>
</>
}
</Spin>
}
</div>
);
}
......
import React, { useState } from 'react';
import { List, Space, Button, Tooltip } from "antd";
import { EditOutlined, DiffOutlined, DeleteOutlined, DatabaseOutlined } from '@ant-design/icons';
import { EditOutlined, DiffOutlined, DeleteOutlined, DatabaseOutlined, ArrowDownOutlined, ArrowUpOutlined } from '@ant-design/icons';
import DatasourceItem from './DatasourceItem';
......@@ -57,8 +57,8 @@ const DatasourceList = (props) => {
<Tooltip placement='bottom' title={'删除'}>
<Button icon={<DeleteOutlined />} size='small' onClick={() => { onDelete && onDelete(item); }} />
</Tooltip>
<Tooltip placement='bottom' title={'任务列表'}>
<Button icon={<DatabaseOutlined />} size='small' onClick={() => { onExpanded(item); }} />
<Tooltip placement='bottom' title={expanded?'隐藏任务列表':'显示任务列表'}>
<Button icon={expanded ? <ArrowUpOutlined /> : <ArrowDownOutlined />} size='small' onClick={() => { onExpanded(item); }} />
</Tooltip>
</Space>
</div>
......
......@@ -68,7 +68,7 @@ const UpdateTaskModal = (props) => {
task && (task.targetConfParameters||[]).forEach(item => {
if (item.name === 'schema') {
setSelectedSchemas((item.value||'').split(','));
setSelectedSchemas((item.value||'').split(',').filter(value=> value!==''));
} else {
_fieldsValue[item.name||''] = item.value||'';
}
......@@ -194,8 +194,11 @@ const UpdateTaskModal = (props) => {
label={param.cnName||''}
name={param.name||''}
key={index}
rules={[{ required: param.required, message: '必填项'}]}
>
<Input />
{
( param.show ? <Input /> : <Input.Password /> )
}
</Form.Item>
)
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment