Commit c321419a by zhaochengxiang

是否分支

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