Commit 80c467a9 by zhaochengxiang

规则增删改

parent 6fe3d7f7
...@@ -5,6 +5,7 @@ import { dispatch } from '../../../../model' ...@@ -5,6 +5,7 @@ import { dispatch } from '../../../../model'
import Table from '../../../../util/Component/Table' import Table from '../../../../util/Component/Table'
import AddRule from './add-rule' import AddRule from './add-rule'
import UpdateRule from './update-rule' import UpdateRule from './update-rule'
import UpdateRuleTemplate from './update-rule-template'
import PermissionButton from '../../../../util/Component/PermissionButton' import PermissionButton from '../../../../util/Component/PermissionButton'
import { showMessage } from "../../../../util" import { showMessage } from "../../../../util"
...@@ -30,6 +31,11 @@ const FC = (props) => { ...@@ -30,6 +31,11 @@ const FC = (props) => {
visible: false, visible: false,
item: undefined, item: undefined,
}) })
const [updateRuleTemplateParams, setUpdateRuleTemplateParams] = React.useState({
visible: false,
type: undefined,
item: undefined
})
const [modal, contextHolder] = Modal.useModal() const [modal, contextHolder] = Modal.useModal()
...@@ -58,9 +64,7 @@ const FC = (props) => { ...@@ -58,9 +64,7 @@ const FC = (props) => {
render: (text, record) => ( render: (text, record) => (
<Tooltip title={text}> <Tooltip title={text}>
<Typography.Text ellipsis={true}> <Typography.Text ellipsis={true}>
<a>
{ text } { text }
</a>
</Typography.Text> </Typography.Text>
</Tooltip> </Tooltip>
) )
...@@ -112,7 +116,7 @@ const FC = (props) => { ...@@ -112,7 +116,7 @@ const FC = (props) => {
{ {
title: '操作', title: '操作',
key: 'action', key: 'action',
width: 120, width: 200,
render: (text, record) => { render: (text, record) => {
return ( return (
<div style={{ display: 'flex', alignItems: 'center' }}> <div style={{ display: 'flex', alignItems: 'center' }}>
...@@ -120,6 +124,26 @@ const FC = (props) => { ...@@ -120,6 +124,26 @@ const FC = (props) => {
type='link' type='link'
size='small' size='small'
onClick={() => { onClick={() => {
setUpdateRuleTemplateParams({
visible: true,
type: 'detail',
item: {
id: record?.ruleTemplateId
},
})
}}
style={{ padding: 0 }}
defaultPermission={true}
>
规则详情
</PermissionButton>
<div style={{ margin: '0 5px' }}>
<Divider type='vertical' />
</div>
<PermissionButton
type='link'
size='small'
onClick={() => {
setUpdateRuleParams({ setUpdateRuleParams({
visible: true, visible: true,
item: record, item: record,
...@@ -233,7 +257,13 @@ const FC = (props) => { ...@@ -233,7 +257,13 @@ const FC = (props) => {
return return
} }
window.open(`/api/shandatamodeler/easyDataModelerRule/exportRules?catalogId=${node?.id}`) modal.confirm({
title: '提示',
content: '确定导出该规范吗?',
onOk: () => {
window.open(`/api/shandatamodeler/easyDataModelerRule/exportRules?catalogId=${node?.id}`)
}
})
} }
const onBatchDeteteClick = () => { const onBatchDeteteClick = () => {
...@@ -374,6 +404,18 @@ const FC = (props) => { ...@@ -374,6 +404,18 @@ const FC = (props) => {
refresh && getRules() refresh && getRules()
}} }}
/> />
<UpdateRuleTemplate
{...updateRuleTemplateParams}
onCancel={(refresh) => {
setUpdateRuleTemplateParams({
visible: false,
type: undefined,
item: undefined,
})
refresh && getRules()
}}
/>
{contextHolder} {contextHolder}
</div> </div>
) )
......
...@@ -6,10 +6,18 @@ import { IsArr } from "../../../../util" ...@@ -6,10 +6,18 @@ import { IsArr } from "../../../../util"
const FC = (props) => { const FC = (props) => {
const { visible, type, item, onCancel } = props const { visible, type, item, onCancel } = props
const [loading, setLoading] = React.useState(false)
const [waiting, setWaiting] = React.useState(false) const [waiting, setWaiting] = React.useState(false)
const [data, setData] = React.useState()
const basicRef = React.useRef() const basicRef = React.useRef()
React.useEffect(() => {
if (item?.id) {
getDetail()
}
}, [item])
const title = React.useMemo(() => { const title = React.useMemo(() => {
if (type === 'add') return '新增检查规则' if (type === 'add') return '新增检查规则'
if (type === 'edit') return '修改检查规则' if (type === 'edit') return '修改检查规则'
...@@ -18,8 +26,27 @@ const FC = (props) => { ...@@ -18,8 +26,27 @@ const FC = (props) => {
return '' return ''
}, [type]) }, [type])
const getDetail = () => {
setLoading(true)
dispatch({
type: 'datamodel.getRuleTemplateDetail',
payload: {
ruleTemplateId: item?.id
},
callback: data => {
setLoading(false)
setData(data)
},
error: () => {
setLoading(false)
}
})
}
const close = (refresh = false) => { const close = (refresh = false) => {
setLoading(false)
setWaiting(false) setWaiting(false)
setData()
onCancel?.(refresh) onCancel?.(refresh)
} }
...@@ -81,8 +108,8 @@ const FC = (props) => { ...@@ -81,8 +108,8 @@ const FC = (props) => {
centered destroyOnClose centered destroyOnClose
onCancel={() => { close() }} onCancel={() => { close() }}
> >
<Spin spinning={waiting}> <Spin spinning={waiting||loading}>
<Basic ref={basicRef} type={type} item={item} /> <Basic ref={basicRef} type={type} item={data} />
</Spin> </Spin>
</Modal> </Modal>
) )
......
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