Commit 021312e7 by zhaochengxiang

增加权限

parent 84dee46d
......@@ -331,6 +331,10 @@ export function* getTemplates() {
return yield call(service.getTemplates)
}
export function* checkAdmin() {
return yield call(service.checkAdmin)
}
export function* getDrafts(payload) {
return yield call(service.getDrafts, payload);
}
......@@ -347,6 +351,14 @@ export function* deleteDrafts(payload) {
return yield call(service.deleteDrafts, payload);
}
export function* getDraftAssetPaths(payload) {
return yield call(service.getDraftAssetPaths, payload);
}
export function* checkDraftEditable(payload) {
return yield call(service.checkDraftEditable, payload);
}
export function* publishDrafts(payload) {
return yield call(service.publishDrafts, payload);
}
......
......@@ -316,6 +316,10 @@ export function getTemplates() {
return GetJSON("/dataassetmanager/elementTemplateApi/listSupportTemplates")
}
export function checkAdmin() {
return PostJSON("/dataassetmanager/dataAssetApi/checkCurrentUserIsAdmin")
}
export function getDrafts(payload) {
return GetJSON("/dataassetmanager/draftApi/listDataAssetsByPage", payload)
}
......@@ -332,6 +336,14 @@ export function deleteDrafts(payload) {
return PostJSON("/dataassetmanager/draftApi/deleteDrafts", payload)
}
export function getDraftAssetPaths(payload) {
return GetJSON("/dataassetmanager/draftApi/getMultiPath", payload)
}
export function checkDraftEditable(payload) {
return PostJSON("/dataassetmanager/draftApi/checkDraftEditable", payload)
}
export function publishDrafts(payload) {
return PostJSON("/dataassetmanager/draftApi/publishDrafts", payload)
}
......
......@@ -11,7 +11,6 @@ import { AssetItem } from "../AssetManage/Component/AssetTable"
import UpdateAsset from "../AssetManage/Component/AssetDetailDrawer"
import { AssetDraftReference } from "../../../util/constant"
const isAdmin = false
const specialCol = ['数据关键用户', '业务数据owner', 'it责任人', '创建人', '更新人']
const FC = (props) => {
......@@ -30,6 +29,7 @@ const FC = (props) => {
const [data, setData] = React.useState()
const [users, setUsers] = React.useState()
const [row, setRow] = React.useState()
const [isAdmin, setAdmin] = React.useState()
const [updateAssetParams, setUpdateAssetParams] = React.useState({
visible: false,
id: undefined,
......@@ -39,22 +39,23 @@ const FC = (props) => {
const [modal, contextHolder] = Modal.useModal();
React.useEffect(() => {
getAdmin()
getUsers()
getTemplates()
}, [])
React.useEffect(() => {
if (currentTemplateValue) {
if (currentTemplateValue && isAdmin!==undefined) {
getElements()
getFilterElements()
}
}, [currentTemplateValue])
}, [currentTemplateValue, isAdmin])
useDebounceEffect(() => {
if (currentTemplateValue) {
if (currentTemplateValue && isAdmin!==undefined) {
getDrafts()
}
}, [currentTemplateValue, keyword, currentElementValue, pagination], { wait: 300 })
}, [currentTemplateValue, keyword, currentElementValue, pagination, isAdmin], { wait: 300 })
const [columns, tableData, total] = React.useMemo(() => {
const [newColumns, newTableData] = [[], []]
......@@ -132,6 +133,15 @@ const FC = (props) => {
return [newColumns, newTableData, data?.total??0]
}, [filterElements, data, loadingFilterElements, users])
const getAdmin = () => {
dispatch({
type: 'assetmanage.checkAdmin',
callback: (data) => {
setAdmin(data)
}
})
}
const getUsers = () => {
dispatch({
type: 'pds.getOwners',
......
......@@ -244,12 +244,7 @@ const AssetAction = (props) => {
if (id) {
setPagination({...pagination, pageNum: 1});
getAssetPaths();
if (reference !== AssetDraftReference) {
checkDataAssetEditable();
} else {
setEdit(true);
}
getAsset();
} else {
......@@ -329,11 +324,18 @@ const AssetAction = (props) => {
}
const getAssetPaths = () => {
dispatch({
type: 'assetmanage.getAssetPaths',
payload: {
let payload = {
dataAssetId: id,
},
}
if (reference === AssetDraftReference) {
payload = {
draftId: id,
}
}
dispatch({
type: (reference===AssetDraftReference)?'assetmanage.getDraftAssetPaths':'assetmanage.getAssetPaths',
payload,
callback: data => {
setAssetPaths(data||[]);
}
......@@ -401,15 +403,21 @@ const AssetAction = (props) => {
}
const checkDataAssetEditable = () => {
dispatch({
type: 'assetmanage.checkDataAssetEditable',
payload: {
params: {
let params = {
dataAssetId: id,
}
if (reference === AssetDraftReference) {
params = {
draftId: id,
}
}
dispatch({
type: (reference===AssetDraftReference)?'assetmanage.checkDraftEditable':'assetmanage.checkDataAssetEditable',
payload: {
params
},
callback: value => {
setEdit(value==='true'?true:false);
setEdit(value);
}
})
}
......
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