Commit c321419a by zhaochengxiang

是否分支

parent 0134ee3e
......@@ -306,6 +306,17 @@ const ModelTable = (props) => {
}
];
const forkCol = {
name: '是否分支',
key: 'fork',
width: 100,
sortable: true,
resizable: true,
formatter(props) {
return props.row.fork?'是':'否'
}
}
const columns = useMemo(() => {
let newCols = [...cols];
if ((visibleColNames||[]).length > 0) {
......@@ -318,11 +329,12 @@ const ModelTable = (props) => {
if (view === 'branch') {
newCols = newCols.filter(col => col.name!=='标签')
newCols = [...newCols, forkCol]
}
return newCols;
//eslint-disable-next-line react-hooks/exhaustive-deps
}, [visibleColNames, resoureTagMap, view, behindAlramData])
}, [visibleColNames, resoureTagMap, view, behindAlramData, forkCol])
const summarySelectedCount = useMemo(() => {
let newSelectedRowKeys = Array.from(new Set([...selectedRowKeys, ...expandedSelectedRowKeys]));
......@@ -847,6 +859,10 @@ function getComparator(sortColumn) {
return (a, b) => {
return a[sortColumn] - b[sortColumn];
};
case 'fork':
return (a, b) => {
return (a[sortColumn]?'是':'否').localeCompare((b[sortColumn]?'是':'否'));
};
default:
throw new Error(`unsupported sortColumn: "${sortColumn}"`);
}
......
......@@ -100,6 +100,7 @@ class Model extends React.Component {
visible: false,
item: undefined,
},
branchModelForkState: undefined,
}
}
......@@ -236,7 +237,7 @@ class Model extends React.Component {
}
onTableChange = () => {
const { currentView, catalogId, keyword, currentModelState, searchProperties, rootNode } = this.state;
const { currentView, catalogId, keyword, currentModelState, searchProperties, rootNode, branchModelForkState } = this.state;
this.setState({ loadingTableData: true }, () => {
if (keyword) {
......@@ -256,7 +257,12 @@ class Model extends React.Component {
type: 'datamodel.searchModel',
payload: params,
callback: data => {
this.setState({ loadingTableData: false, tableData: data||[], filterTableData: data||[] });
let filterTableData = [...data||[]]
if (currentView === 'branch') {
filterTableData = filterTableData.filter(item => branchModelForkState===null || branchModelForkState===undefined || item.fork === branchModelForkState)
}
this.setState({ loadingTableData: false, tableData: data||[], filterTableData });
},
error: () => {
this.setState({ loadingTableData: false });
......@@ -322,7 +328,9 @@ class Model extends React.Component {
type: 'datamodel.getCurrentDataModelCatalog',
payload: params,
callback: data => {
this.setState({ loadingTableData: false, tableData: data.easyDataModelerDataModels||[], filterTableData: data.easyDataModelerDataModels||[] });
const filterTableData = [...data?.easyDataModelerDataModels||[]].filter(item => branchModelForkState===null || branchModelForkState===undefined || item.fork === branchModelForkState)
this.setState({ loadingTableData: false, tableData: data?.easyDataModelerDataModels||[], filterTableData });
},
error: () => {
this.setState({ loadingTableData: false });
......@@ -827,6 +835,21 @@ class Model extends React.Component {
<Space>
{
currentView === 'branch' && <Select placeholder='请选择是否分支' value={this.state.branchModelForkState}
onChange={(val) => {
this.setState({ branchModelForkState: val }, () => {
this.onTableChange()
})
}}
style={{ width: 150 }}
allowClear
>
<Select.Option value={true}>是</Select.Option>
<Select.Option value={false}>否</Select.Option>
</Select>
}
{
currentView !== 'branch' && <TagSelect
options={this.state.tagSelectOptions}
onChange={(val) => {
......
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