Commit 426ef0f8 by zhaochengxiang

模型权限

parent 7bf3b20e
...@@ -6,7 +6,6 @@ import ResizeObserver from 'rc-resize-observer'; ...@@ -6,7 +6,6 @@ import ResizeObserver from 'rc-resize-observer';
import { dispatch } from '../../../../model'; import { dispatch } from '../../../../model';
import { isSzseEnv, formatDate, getDataModelerRole } from '../../../../util'; import { isSzseEnv, formatDate, getDataModelerRole } from '../../../../util';
import { DataModelerRoleReader } from '../../../../util/constant';
// import Tag from "../../Tag"; // import Tag from "../../Tag";
...@@ -288,7 +287,7 @@ const ExpandedModelTable = (props) => { ...@@ -288,7 +287,7 @@ const ExpandedModelTable = (props) => {
} }
const detailItem = (record) => { const detailItem = (record) => {
onItemAction && onItemAction(record, 'detail', getDataModelerRole(user)===DataModelerRoleReader); onItemAction && onItemAction(record, 'detail');
} }
const onExpandedSelectChange = keys => { const onExpandedSelectChange = keys => {
setSelectedRowKeys(keys); setSelectedRowKeys(keys);
......
...@@ -5,7 +5,7 @@ import LocalStorage from 'local-storage'; ...@@ -5,7 +5,7 @@ import LocalStorage from 'local-storage';
import DataGrid, { defaultPageSize } from '../../VirtualTable'; import DataGrid, { defaultPageSize } from '../../VirtualTable';
import { dispatch } from '../../../../model'; import { dispatch } from '../../../../model';
import { showMessage, getQueryParam, isSzseEnv, formatDate, getDataModelerRole } from '../../../../util'; import { showMessage, getQueryParam, isSzseEnv, formatDate, getDataModelerRole } from '../../../../util';
import { AnchorId, AnchorTimestamp, Action, CatalogId, ModelerId, DataModelerRoleReader } from '../../../../util/constant'; import { AnchorId, AnchorTimestamp, Action, CatalogId, ModelerId } from '../../../../util/constant';
import ExpandedModelTable from "./ExpandedModelTable"; import ExpandedModelTable from "./ExpandedModelTable";
// import Tag from "../../Tag"; // import Tag from "../../Tag";
import { useContextMenu, Menu as RcMenu, Item as RcItem } from "react-contexify"; import { useContextMenu, Menu as RcMenu, Item as RcItem } from "react-contexify";
...@@ -305,7 +305,7 @@ const ModelTable = (props) => { ...@@ -305,7 +305,7 @@ const ModelTable = (props) => {
} }
const detailItem = (record) => { const detailItem = (record) => {
onItemAction && onItemAction(record, 'detail', getDataModelerRole(user)===DataModelerRoleReader); onItemAction && onItemAction(record, 'detail');
} }
const deployAction = (record) => { const deployAction = (record) => {
...@@ -532,30 +532,26 @@ const ModelTable = (props) => { ...@@ -532,30 +532,26 @@ const ModelTable = (props) => {
getComparator={getComparator} getComparator={getComparator}
/> />
<RcMenu id={MENU_ID}> <RcMenu id={MENU_ID}>
{ <PermissionRcItem
(getDataModelerRole(user)!==DataModelerRoleReader) && <PermissionRcItem id="edit"
id="edit" disabled={disableEdit}
disabled={disableEdit} onClick={handleItemClick}
onClick={handleItemClick} tip={editTip}
tip={editTip} permissionKey='编辑'
permissionKey='编辑' permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)}
permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)} >
> { editMenuTitle }
{ editMenuTitle } </PermissionRcItem>
</PermissionRcItem> <PermissionRcItem
} id="delete"
{ disabled={disableDelete}
(getDataModelerRole(user)!==DataModelerRoleReader) && <PermissionRcItem onClick={handleItemClick}
id="delete" tip={deleteTip}
disabled={disableDelete} permissionKey='删除'
onClick={handleItemClick} permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)}
tip={deleteTip} >
permissionKey='删除' 删除
permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)} </PermissionRcItem>
>
删除
</PermissionRcItem>
}
<PermissionRcItem <PermissionRcItem
id="history" id="history"
onClick={handleItemClick} onClick={handleItemClick}
...@@ -564,18 +560,16 @@ const ModelTable = (props) => { ...@@ -564,18 +560,16 @@ const ModelTable = (props) => {
> >
历史版本 历史版本
</PermissionRcItem> </PermissionRcItem>
<PermissionRcItem
id="copy"
onClick={handleItemClick}
permissionKey='新增'
permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)}
>
复制模型
</PermissionRcItem>
{ {
(getDataModelerRole(user)!==DataModelerRoleReader) && <PermissionRcItem (currentItem?.state?.supportedActions||[]).length>0 && currentItem?.state?.supportedActions.map((item, index) => {
id="copy"
onClick={handleItemClick}
permissionKey='新增'
permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)}
>
复制模型
</PermissionRcItem>
}
{
getDataModelerRole(user)!==DataModelerRoleReader && (currentItem?.state?.supportedActions||[]).length>0 && currentItem?.state?.supportedActions.map((item, index) => {
return ( return (
<PermissionRcItem <PermissionRcItem
id={`action-${index}`} id={`action-${index}`}
...@@ -589,7 +583,12 @@ const ModelTable = (props) => { ...@@ -589,7 +583,12 @@ const ModelTable = (props) => {
}) })
} }
{ {
getDataModelerRole(user)!==DataModelerRoleReader &&currentItem?.deployable && <PermissionRcItem id='createTable' onClick={handleItemClick}> currentItem?.deployable && <PermissionRcItem
id='createTable'
onClick={handleItemClick}
permissionKey='建表'
permissions={currentItem?.optionList?.filter(item => item.enabled).map(item => item.name)}
>
建表 建表
</PermissionRcItem> </PermissionRcItem>
} }
......
...@@ -16,7 +16,7 @@ import HistoryAndVersionDrawer from './Component/HistoryAndVersionDrawer'; ...@@ -16,7 +16,7 @@ import HistoryAndVersionDrawer from './Component/HistoryAndVersionDrawer';
import StartFlowModal from './Component/StartFlowModal'; import StartFlowModal from './Component/StartFlowModal';
import { showMessage, showNotifaction, inputWidth, DeleteTipModal, getDataModelerRole } from '../../../util'; import { showMessage, showNotifaction, inputWidth, DeleteTipModal, getDataModelerRole } from '../../../util';
import { dispatch, dispatchLatestHomepage } from '../../../model'; import { dispatch, dispatchLatestHomepage } from '../../../model';
import { Action, CatalogId, ModelerId, Hints, ModelerData, PermitCheckOut, Editable, StateId, Holder, DDL, DataModelerRoleReader, ReadOnly } from '../../../util/constant'; import { Action, CatalogId, ModelerId, Hints, ModelerData, PermitCheckOut, Editable, StateId, Holder, DDL, ReadOnly } from '../../../util/constant';
import { AppContext } from '../../../App'; import { AppContext } from '../../../App';
import DebounceInput from './Component/DebounceInput'; import DebounceInput from './Component/DebounceInput';
import ColSettingModal from './Component/ColSettingModal'; import ColSettingModal from './Component/ColSettingModal';
...@@ -569,67 +569,63 @@ class Model extends React.Component { ...@@ -569,67 +569,63 @@ class Model extends React.Component {
}} }}
> >
<Space> <Space>
{ <Space>
(getDataModelerRole(value?.user)!==DataModelerRoleReader) && <React.Fragment> <PermissionButton
<Space> defaultPermission={canAdd}
<PermissionButton onClick={() => { this.setState({ importModalVisible: true }); }}
defaultPermission={canAdd} >
onClick={() => { this.setState({ importModalVisible: true }); }} 新建
> </PermissionButton>
新建 </Space>
</PermissionButton>
</Space>
<Space> <Space>
<PermissionButton <PermissionButton
defaultPermission={canExport} defaultPermission={canExport}
tip={(selectModelerIds||[]).length===0?'请先选择模型':''} tip={(selectModelerIds||[]).length===0?'请先选择模型':''}
onClick={this.onExportOtherBtnClick} onClick={this.onExportOtherBtnClick}
disabled={(selectModelerIds||[]).length===0} disabled={(selectModelerIds||[]).length===0}
> >
导出 导出
</PermissionButton> </PermissionButton>
</Space> </Space>
<Space> <Space>
<PermissionButton <PermissionButton
defaultPermission={canStartFlow} defaultPermission={canStartFlow}
tip={startFlowTip} tip={startFlowTip}
onClick={this.startFlow} onClick={this.startFlow}
disabled={disableStartFlow} disabled={disableStartFlow}
> >
送审 送审
</PermissionButton> </PermissionButton>
</Space> </Space>
<Space> <Space>
<PermissionButton
defaultPermission={canChangeCatalog}
tip={(selectModelerIds||[]).length===0?'请先选择模型':''}
onClick={this.onRecatalogBtnClick}
disabled={(selectModelerIds||[]).length===0}
>
变更目录
</PermissionButton>
</Space>
<Space>
<Tooltip title={canDelete?((selectModelerIds||[]).length===0?'请先选择模型':''):'暂无权限'}>
<PermissionButton <PermissionButton
defaultPermission={canChangeCatalog} defaultPermission={canDelete}
tip={(selectModelerIds||[]).length===0?'请先选择模型':''} tip={(selectModelerIds||[]).length===0?'请先选择模型':''}
onClick={this.onRecatalogBtnClick} onClick={this.onBatchDeleteBtnClick}
disabled={(selectModelerIds||[]).length===0} disabled={(selectModelerIds||[]).length===0}
> >
变更目录 删除
</PermissionButton> </PermissionButton>
</Space> </Tooltip>
</Space>
<Space> <Space>
<Tooltip title={canDelete?((selectModelerIds||[]).length===0?'请先选择模型':''):'暂无权限'}> <Button onClick={this.onVisibleColSettingClick}>可见列设置</Button>
<PermissionButton </Space>
defaultPermission={canDelete}
tip={(selectModelerIds||[]).length===0?'请先选择模型':''}
onClick={this.onBatchDeleteBtnClick}
disabled={(selectModelerIds||[]).length===0}
>
删除
</PermissionButton>
</Tooltip>
</Space>
<Space>
<Button onClick={this.onVisibleColSettingClick}>可见列设置</Button>
</Space>
</React.Fragment>
}
</Space> </Space>
<Space> <Space>
......
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