|
|
@@ -19,7 +19,7 @@
|
|
|
<el-link type="primary" @click="gobackHistory">回到上一次填报部位</el-link>
|
|
|
<el-link type="warning" class="ml-4" @click="wbsMapTypeTab">导图结构填报</el-link>
|
|
|
<HcTooltip keys="data-fill-wbs-hide-btn">
|
|
|
- <el-button type="primary" class="ml-6" hc-btn keys="data-fill-wbs-hide-btn">隐藏</el-button>
|
|
|
+ <el-button type="danger" class="ml-6" hc-btn keys="data-fill-wbs-hide-btn" :loading="hideSaveLoading" @click="hideTreeNode">隐藏</el-button>
|
|
|
</HcTooltip>
|
|
|
</div>
|
|
|
<div class="hc-search-tree-val">
|
|
|
@@ -549,12 +549,12 @@ import HcTreeNode from './components/HcTreeNode.vue'
|
|
|
import { getHeader } from 'hc-vue3-ui'
|
|
|
import { getStoreValue, setStoreValue } from '~src/utils/storage'
|
|
|
import {
|
|
|
- arrDelKey,
|
|
|
deepClone,
|
|
|
formValidate,
|
|
|
getArrValue,
|
|
|
getObjVal,
|
|
|
getObjValue,
|
|
|
+ isArrIndex,
|
|
|
isNullES,
|
|
|
isString,
|
|
|
setCopyText,
|
|
|
@@ -2092,9 +2092,41 @@ const uploadChange = async ({ type }) => {
|
|
|
|
|
|
//树节点被选中
|
|
|
const treeSelectNode = ref([])
|
|
|
-const ElTreeNodeCheck = (_, { checkedKeys }) => {
|
|
|
+const treeSelectdata = ref([])
|
|
|
+const ElTreeNodeCheck = (_, { checkedKeys, checkedNodes }) => {
|
|
|
treeSelectNode.value = getArrValue(checkedKeys)
|
|
|
+ treeSelectdata.value = getArrValue(checkedNodes)
|
|
|
+}
|
|
|
+//隐藏节点
|
|
|
+const hideSaveLoading = ref(false)
|
|
|
+const hideTreeNode = async ()=>{
|
|
|
+ const isExist1 = isArrIndex(treeSelectdata.value, 'colorStatus', 3)//已填报待审批
|
|
|
+ const isExist2 = isArrIndex(treeSelectdata.value, 'colorStatus', 4)//已审批
|
|
|
+ if (isExist1 || isExist2) {
|
|
|
+ window.$message.warning('已审批和已填报-待审批状态的节点,不可隐藏;')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ const keys = treeSelectNode.value
|
|
|
+ if (keys.length <= 0) {
|
|
|
+ window?.$message?.warning('请先在左侧项目树选择节点')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //发起请求
|
|
|
+ // hideSaveLoading.value = true
|
|
|
+ // const { error, code } = await wbsApi.save_nodeId({
|
|
|
+ // projectId: projectId.value,
|
|
|
+ // contractId: contractId.value,
|
|
|
+ // classify: authBtnTabKey.value,
|
|
|
+ // nodeIds: keys.join(),
|
|
|
+ // }, false)
|
|
|
+ // hideSaveLoading.value = false
|
|
|
+ // if (!error && code === 200) {
|
|
|
+ // window?.$message?.success('批量保存成功')
|
|
|
+ // window?.location?.reload() //刷新页面
|
|
|
+ // }
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
const loadMenu = ({ node, item, level }, resolve)=>{
|
|
|
setElTreeMenu(contractInfo.value?.contractType)
|
|
|
let menusArr = ElTreeMenu.value
|
|
|
@@ -2133,7 +2165,7 @@ const NodeSaveClick = async () => {
|
|
|
}
|
|
|
//发起请求
|
|
|
nodeSaveLoading.value = true
|
|
|
- const { error, code } = await wbsApi.save_nodeId({
|
|
|
+ const { error, code, msg } = await wbsApi.save_nodeId({
|
|
|
projectId: projectId.value,
|
|
|
contractId: contractId.value,
|
|
|
classify: authBtnTabKey.value,
|
|
|
@@ -2143,6 +2175,8 @@ const NodeSaveClick = async () => {
|
|
|
if (!error && code === 200) {
|
|
|
window?.$message?.success('批量保存成功')
|
|
|
window?.location?.reload() //刷新页面
|
|
|
+ } else {
|
|
|
+ window?.$message?.error(msg)
|
|
|
}
|
|
|
}
|
|
|
</script>
|