Commit 8b08bc9d by zhaochengxiang

模型字段加入标准

parent 9cecc1cf
......@@ -158,6 +158,10 @@ export function* getDataModel(payload) {
return yield call(datamodelerService.getDataModel, payload);
}
export function* getDataModelWithRecommendedDefinitionAndTermDiscovery(payload) {
return yield call(datamodelerService.getDataModelWithRecommendedDefinitionAndTermDiscovery, payload);
}
export function* getDataModelLocation(payload) {
return yield call(datamodelerService.getDataModelLocation, payload);
}
......
......@@ -113,6 +113,10 @@ export function getDataModel(payload) {
return GetJSON("/datamodeler/easyDataModelerCURD/getDataModel", payload);
}
export function getDataModelWithRecommendedDefinitionAndTermDiscovery(payload) {
return GetJSON("/datamodeler/easyDataModelerCURD/getDataModelWithRecommendedDefinitionAndTermDiscovery", payload);
}
export function getDataModelLocation(payload) {
return GetJSON("/datamodeler/easyDataModelerCURD/getDataModelLocation", payload);
}
......
......@@ -5,8 +5,7 @@ import { SettingFilled } from '@ant-design/icons';
import { AppContext } from '../../../../App';
const MetadataInfo = ({ value = '', config = true }) => {
const metadata = ((value||'')===''?{}:JSON.parse(value));
const metadata = (typeof (value||'')==='string')?{}:JSON.parse(value);
return (
<AppContext.Consumer>
......@@ -17,10 +16,10 @@ const MetadataInfo = ({ value = '', config = true }) => {
message: 'data-govern-show-metadata-message',
data: metadata
})
}} style={{ marginRight: 5 }}>{metadata.tableName||''}</a>
}} style={{ marginRight: 5 }}>{metadata?.tableName||''}</a>
{
config && <Button icon={<SettingFilled />} onClick={() => {
value?.setGlobalState({
value?.setGlobalState && value?.setGlobalState({
message: 'data-govern-show-metadata-list-message',
data: metadata
})
......
......@@ -48,29 +48,27 @@ const AssetMount = (props) => {
}
return(
<div>
{
visible && <Modal
title='挂载详情'
visible={ visible }
width={ 400 }
confirmLoading={ confirmLoading }
onCancel={()=>{
reset();
onCancel && onCancel()
}}
onOk={ onOk }
>
<AssetTree
<Modal
title='挂载详情'
visible={ visible }
width={ 400 }
confirmLoading={ confirmLoading }
onCancel={()=>{
reset();
onCancel && onCancel()
}}
onOk={ onOk }
>
{
visible && <AssetTree
readOnly={true}
checkable={true}
onCheck={onCheck}
tableId={id}
{...props}
/>
</Modal>
}
</div>
}
</Modal>
)
}
......
......@@ -125,8 +125,16 @@ const ImportAction = (props) => {
}
const getCurrentDataModel = () => {
let type = 'datamodel.getDataModel';
if (action === 'add') {
type = 'datamodel.modelCopy';
} else if (action === 'flow') {
type = 'datamodel.getDataModelWithRecommendedDefinitionAndTermDiscovery';
}
dispatch({
type: (action==='add') ? 'datamodel.modelCopy' : 'datamodel.getDataModel',
type,
payload: {
id: modelerId||''
},
......@@ -324,7 +332,8 @@ const ImportAction = (props) => {
validateReports={validateReports}
supportedDatatypes={supportedDatatypes}
onChange={onTableChange}
editable={action!=='detail'&&action!=='flow'}
editable={action!=='detail'&&action!=='flow'}
action={action}
terms={terms}
/>
<ImportActionIndex
......
......@@ -8,6 +8,8 @@ import update from 'immutability-helper';
import { generateUUID, highlightSearchContentByTerms, showMessage } from '../../../../util';
import { dispatchLatest } from '../../../../model';
import Helper from './Help';
import { AppContext } from '../../../../App';
import './ImportActionTable.less';
const { Option } = Select;
......@@ -230,7 +232,7 @@ const DragableBodyRow = ({ index, moveRow, className, style, ...restProps }) =>
};
const ImportActionTable = (props) => {
const { modelerData, onChange, editable, supportedDatatypes, constraint, template, validateReports, type = 'model', terms } = props;
const { modelerData, onChange, editable, supportedDatatypes, constraint, template, validateReports, type = 'model', terms, action } = props;
const [ data, setData ] = useState([]);
const [ form ] = Form.useForm();
......@@ -676,30 +678,72 @@ const ImportActionTable = (props) => {
{
title: '操作',
dataIndex: 'action',
width: 100,
width: 180,
fixed: 'right',
render: (_, record) => {
if (!editable) return null;
return isEditing(record) ? (
<>
<Typography.Link className='mr-3' disabled={editingKey === ''} onClick={() => save()}>
保存
</Typography.Link>
<Typography.Link disabled={editingKey === ''} onClick={() => {cancel()}}>
取消
</Typography.Link>
</>
) : (
<>
<Typography.Link className='mr-3' disabled={editingKey !== ''} onClick={() => edit(record)}>
编辑
</Typography.Link>
<Popconfirm disabled={editingKey !== ''} title="删除字段会删除相关的索引,您确定删除吗?" onConfirm={() => remove(record)}>
<a disabled={editingKey !== ''} href="">删除</a>
</Popconfirm>
</>
);
return (
<AppContext.Consumer>
{
value => <React.Fragment>
{
!isEditing(record) && <React.Fragment>
{
record?.isPossibleNewRecommendedDefinition?.possible && <Typography.Link className='mr-3' onClick={() => {
value?.setGlobalState && value?.setGlobalState({
message: 'data-govern-show-standard-create',
data: {
column: record,
type: record?.isPossibleNewRecommendedDefinition?.type
}
})
}}>
加入标准
</Typography.Link>
}
{
record?.isPossibleNewTerm?.possible && <Typography.Link className='mr-3' onClick={() => {
value?.setGlobalState({
message: 'data-govern-show-standard-create',
data: {
column: record,
type: record?.isPossibleNewTerm?.type
}
})
}}>
加入词汇
</Typography.Link>
}
</React.Fragment>
}
{
editable && <React.Fragment>
{
isEditing(record) ? (
<React.Fragment>
<Typography.Link className='mr-3' disabled={editingKey === ''} onClick={() => save()}>
保存
</Typography.Link>
<Typography.Link disabled={editingKey === ''} onClick={() => {cancel()}}>
取消
</Typography.Link>
</React.Fragment>
) : (
<React.Fragment>
<Typography.Link className='mr-3' disabled={editingKey !== ''} onClick={() => edit(record)}>
编辑
</Typography.Link>
<Popconfirm disabled={editingKey !== ''} title="删除字段会删除相关的索引,您确定删除吗?" onConfirm={() => remove(record)}>
<a disabled={editingKey !== ''} href="">删除</a>
</Popconfirm>
</React.Fragment>
)
}
</React.Fragment>
}
</React.Fragment>
}
</AppContext.Consumer>
)
},
},
]
......@@ -775,7 +819,7 @@ const ImportActionTable = (props) => {
const mergedColumns = () => {
const hasValidateReports = (validateReports||[]).filter(report => report.type==='DataModelAttribute').length>0;
if (editable) {
if (editable || action==='flow') {
let _columns = hasValidateReports ? includeValidateEditableColumn: editableColumn;
......
......@@ -325,11 +325,6 @@ const ModelTree = (props) => {
alignItems: 'center'
}}
>
<Dropdown overlay={exportMenu} placement="bottomLeft">
<Tooltip title="视角">
<UnorderedListOutlined style={{ fontSize:16,cursor:'pointer' }} />
</Tooltip>
</Dropdown>
{
viewSelectedKey==='dir' && (
<Tooltip title="新增目录" className='ml-4'>
......
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