Commit 12082f00 by zhaochengxiang

是否需要保存为草稿接口修改

parent 8367fce5
...@@ -339,6 +339,10 @@ export function* checkAdmin() { ...@@ -339,6 +339,10 @@ export function* checkAdmin() {
return yield call(service.checkAdmin) return yield call(service.checkAdmin)
} }
export function* checkIsNeedSaveAsDraft(payload) {
return yield call(service.checkIsNeedSaveAsDraft, payload)
}
export function* checkDataKeyUser() { export function* checkDataKeyUser() {
return yield call(service.checkDataKeyUser) return yield call(service.checkDataKeyUser)
} }
......
...@@ -320,6 +320,10 @@ export function checkAdmin() { ...@@ -320,6 +320,10 @@ export function checkAdmin() {
return Post("/dataassetmanager/dataAssetApi/checkCurrentUserIsAdmin") return Post("/dataassetmanager/dataAssetApi/checkCurrentUserIsAdmin")
} }
export function checkIsNeedSaveAsDraft(payload) {
return Post("/dataassetmanager/dataAssetApi/checkIsNeedSaveAsDraft", payload)
}
export function checkDataKeyUser() { export function checkDataKeyUser() {
return Post("/dataassetmanager/dataAssetApi/checkCurrentUserIsDataKeyUser") return Post("/dataassetmanager/dataAssetApi/checkCurrentUserIsDataKeyUser")
} }
......
...@@ -50,12 +50,12 @@ const AddAssetModel = (props) => { ...@@ -50,12 +50,12 @@ const AddAssetModel = (props) => {
showMessage('warn', '已存在相同的资产目录编号,请重新输入'); showMessage('warn', '已存在相同的资产目录编号,请重新输入');
} else { } else {
dispatch({ dispatch({
type: 'assetmanage.checkAdmin', type: 'assetmanage.checkIsNeedSaveAsDraft',
callback: (data) => { callback: (data) => {
const isAdmin = (data==='true')?true:false const needSaveAsDraft = (data==='true')?true:false
dispatch({ dispatch({
type: isAdmin?'assetmanage.addOrUpdateDataAsset':'assetmanage.saveAsDraft', type: needSaveAsDraft?'assetmanage.saveAsDraft':'assetmanage.addOrUpdateDataAsset',
payload: { payload: {
params: { params: {
dirId: nodeId, dirId: nodeId,
......
...@@ -72,8 +72,8 @@ const AssetAction = (props) => { ...@@ -72,8 +72,8 @@ const AssetAction = (props) => {
const [keyword, setKeyword] = useState(''); const [keyword, setKeyword] = useState('');
const [publishedAsset, setPublishedAsset] = useState(); const [publishedAsset, setPublishedAsset] = useState();
const [isMetadataEdit, setMetadataEdit] = useState(false); const [isMetadataEdit, setMetadataEdit] = useState(false);
const [loadingAdmin, setLoadingAdmin] = useState(false); const [loadingSaveAsDraft, setLoadingSaveAsDraft] = React.useState(false)
const [isAdmin, setAdmin] = React.useState() const [needSaveAsDraft, setNeedSaveAsDraft] = React.useState()
const app = useContext(AppContext); const app = useContext(AppContext);
const uploadRef = useRef(undefined); const uploadRef = useRef(undefined);
...@@ -411,7 +411,6 @@ const AssetAction = (props) => { ...@@ -411,7 +411,6 @@ const AssetAction = (props) => {
setPagination({...pagination, pageNum: 1}); setPagination({...pagination, pageNum: 1});
getAssetPaths(); getAssetPaths();
checkDataAssetEditable(); checkDataAssetEditable();
getAdmin();
getAsset(); getAsset();
} else { } else {
...@@ -424,6 +423,12 @@ const AssetAction = (props) => { ...@@ -424,6 +423,12 @@ const AssetAction = (props) => {
}, [id, dirId]) }, [id, dirId])
useEffect(() => { useEffect(() => {
if (assets?.templateType) {
judgeNeedSaveAsDraft()
}
}, [assets])
useEffect(() => {
if (permissionId) { if (permissionId) {
getPermission(); getPermission();
} }
...@@ -626,16 +631,21 @@ const AssetAction = (props) => { ...@@ -626,16 +631,21 @@ const AssetAction = (props) => {
}) })
} }
const getAdmin = () => { const judgeNeedSaveAsDraft = () => {
setLoadingAdmin(true) setLoadingSaveAsDraft(true)
dispatch({ dispatch({
type: 'assetmanage.checkAdmin', type: 'assetmanage.checkIsNeedSaveAsDraft',
payload: {
params: {
templateType: assets?.templateType,
}
},
callback: (data) => { callback: (data) => {
setLoadingAdmin(false) setLoadingSaveAsDraft(false)
setAdmin((data==='true')?true:false) setNeedSaveAsDraft((data==='true')?true:false)
}, },
error: () => { error: () => {
setLoadingAdmin(false) setLoadingSaveAsDraft(false)
} }
}) })
} }
...@@ -913,7 +923,7 @@ const AssetAction = (props) => { ...@@ -913,7 +923,7 @@ const AssetAction = (props) => {
} }
dispatch({ dispatch({
type: isAdmin?'assetmanage.addOrUpdateDataAsset':'assetmanage.saveAsDraft', type: needSaveAsDraft?'assetmanage.saveAsDraft':'assetmanage.addOrUpdateDataAsset',
payload: { payload: {
params, params,
data, data,
...@@ -1219,7 +1229,7 @@ const AssetAction = (props) => { ...@@ -1219,7 +1229,7 @@ const AssetAction = (props) => {
flexDirection: 'column', flexDirection: 'column',
}} }}
> >
<Spin spinning={loading||loadingAdmin||loadingEditPermission}> <Spin spinning={loading||loadingSaveAsDraft||loadingEditPermission}>
{ {
(action!=='add' && (id||'')!=='') && <div> (action!=='add' && (id||'')!=='') && <div>
<div className='mb-3'> <div className='mb-3'>
...@@ -1263,7 +1273,7 @@ const AssetAction = (props) => { ...@@ -1263,7 +1273,7 @@ const AssetAction = (props) => {
{ {
currentAction==='detail' ? <Button onClick={onActionButtonClick}>编辑</Button> : <React.Fragment> currentAction==='detail' ? <Button onClick={onActionButtonClick}>编辑</Button> : <React.Fragment>
<Button onClick={onCancelButtonClick}>取消</Button> <Button onClick={onCancelButtonClick}>取消</Button>
<Button onClick={onActionButtonClick}>{(reference===AssetDraftReference||isAdmin)?'保存':'保存草稿'}</Button> <Button onClick={onActionButtonClick}>{(reference===AssetDraftReference||!needSaveAsDraft)?'保存':'保存草稿'}</Button>
</React.Fragment> </React.Fragment>
} }
{ {
......
...@@ -155,13 +155,13 @@ const ImportAssetDrawer = (props) => { ...@@ -155,13 +155,13 @@ const ImportAssetDrawer = (props) => {
setConfirmLoading(true); setConfirmLoading(true);
dispatch({ dispatch({
type: 'assetmanage.checkAdmin', type: 'assetmanage.checkIsNeedSaveAsDraft',
callback: (data) => { callback: (data) => {
const isAdmin = (data==='true')?true:false const needSaveAsDraft = (data==='true')?true:false
dispatch({ dispatch({
type: 'assetmanage.assetImport', type: 'assetmanage.assetImport',
payload: { fileList: fileList, params: { env: `${app?.env?.domainId}`, saveAsDraft: isAdmin?false:true } }, payload: { fileList: fileList, params: { env: `${app?.env?.domainId}`, saveAsDraft: needSaveAsDraft } },
callback: data => { callback: data => {
setConfirmLoading(false); setConfirmLoading(false);
setFileList([]); setFileList([]);
......
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