|
@@ -59,6 +59,14 @@ const props = defineProps({
|
|
|
type: String,
|
|
|
default: ''
|
|
|
},
|
|
|
+ fromType:{
|
|
|
+ type:Boolean,
|
|
|
+ default:false
|
|
|
+ },
|
|
|
+ nodeId:{
|
|
|
+ type: [String,Number],
|
|
|
+ default: ''
|
|
|
+ }
|
|
|
})
|
|
|
|
|
|
//变量
|
|
@@ -75,7 +83,7 @@ const wbsTempId = ref(props.wbsTempId);
|
|
|
const tenantId = ref(props.tenantId);
|
|
|
const wbsType = ref(props.wbsType);
|
|
|
const idPrefix = ref(props.idPrefix);
|
|
|
-
|
|
|
+const fromTypedata=ref(props.fromType)
|
|
|
//监听
|
|
|
watch(() => [
|
|
|
props.autoExpandKeys,
|
|
@@ -85,7 +93,8 @@ watch(() => [
|
|
|
props.tenantId,
|
|
|
props.idPrefix,
|
|
|
props.wbsType,
|
|
|
-], ([expandKeys, UserProjectId, UserContractId, UserWbsTempId, UserTenantId, UserIdPrefix, wbs_type]) => {
|
|
|
+ props.fromType
|
|
|
+], ([expandKeys, UserProjectId, UserContractId, UserWbsTempId, UserTenantId, UserIdPrefix, wbs_type,fromType]) => {
|
|
|
TreeExpandKey.value = expandKeys
|
|
|
projectId.value = UserProjectId
|
|
|
contractId.value = UserContractId
|
|
@@ -93,6 +102,7 @@ watch(() => [
|
|
|
tenantId.value = UserTenantId
|
|
|
idPrefix.value = UserIdPrefix
|
|
|
wbsType.value = wbs_type
|
|
|
+ fromTypedata.value=fromType
|
|
|
})
|
|
|
|
|
|
//事件
|
|
@@ -101,59 +111,110 @@ const emit = defineEmits(['menuTap','nodeTap', 'nodeLoading'])
|
|
|
//树形结构异步加载数据
|
|
|
const defaultExpandedCids = ref([])
|
|
|
const ElTreeLoadNode = async (node, resolve) => {
|
|
|
+ console.log( fromTypedata.value,' fromTypedata.value');
|
|
|
let parentId = '0';
|
|
|
if (node.level !== 0) {
|
|
|
parentId = node?.data?.id
|
|
|
}
|
|
|
- //获取数据
|
|
|
- const {error, code, data} = await samplingApi.queryLazyTree({
|
|
|
- wbsId: wbsTempId.value,
|
|
|
- tenantId: tenantId.value,
|
|
|
- projectId: projectId.value,
|
|
|
- parentId,
|
|
|
- wbsType: wbsType.value
|
|
|
- })
|
|
|
- //处理数据
|
|
|
- if (!error && code === 200) {
|
|
|
- let clickKey = '', defaultExpandedArr = [];
|
|
|
- const keys = TreeExpandKey.value || []
|
|
|
- const resData = getArrValue(data)
|
|
|
- for (let i = 0; i < resData.length; i++) {
|
|
|
- resData[i].hasChildren = !resData[i].hasChildren
|
|
|
- }
|
|
|
- if (keys.length > 0) {
|
|
|
- let lastKey = keys[keys.length-1];
|
|
|
- for (const item of resData) {
|
|
|
- //自动展开
|
|
|
- if (isItem(keys,item?.primaryKeyId)) {
|
|
|
- defaultExpandedArr.push(item?.primaryKeyId)
|
|
|
- }
|
|
|
- //最后一个,选中点击
|
|
|
- if (item?.primaryKeyId === lastKey) {
|
|
|
- clickKey = item?.primaryKeyId
|
|
|
+ if (fromTypedata.value) {
|
|
|
+ //获取数据
|
|
|
+ const {error, code, data} = await samplingApi.getMixRatioTestTree({
|
|
|
+ pKeyId: props.nodeId,
|
|
|
+ })
|
|
|
+ //处理数据
|
|
|
+ if (!error && code === 200) {
|
|
|
+ let clickKey = '', defaultExpandedArr = [];
|
|
|
+ const keys = TreeExpandKey.value || []
|
|
|
+ const resData = getArrValue(data)
|
|
|
+ for (let i = 0; i < resData.length; i++) {
|
|
|
+ resData[i].hasChildren = !resData[i].hasChildren
|
|
|
+ }
|
|
|
+ if (keys.length > 0) {
|
|
|
+ let lastKey = keys[keys.length-1];
|
|
|
+ for (const item of resData) {
|
|
|
+ //自动展开
|
|
|
+ if (isItem(keys,item?.primaryKeyId)) {
|
|
|
+ defaultExpandedArr.push(item?.primaryKeyId)
|
|
|
+ }
|
|
|
+ //最后一个,选中点击
|
|
|
+ if (item?.primaryKeyId === lastKey) {
|
|
|
+ clickKey = item?.primaryKeyId
|
|
|
+ }
|
|
|
}
|
|
|
+ } else if (node.level === 0) {
|
|
|
+ defaultExpandedArr.push(resData[0]?.primaryKeyId)
|
|
|
}
|
|
|
- } else if (node.level === 0) {
|
|
|
- defaultExpandedArr.push(resData[0]?.primaryKeyId)
|
|
|
- }
|
|
|
- //自动展开
|
|
|
- defaultExpandedCids.value = defaultExpandedArr
|
|
|
- if (node.level === 0) {
|
|
|
- emit('nodeLoading')
|
|
|
- }
|
|
|
- resolve(resData)
|
|
|
- //最后一个,执行点击
|
|
|
- if (clickKey) {
|
|
|
- await nextTick(() => {
|
|
|
- document.getElementById(`${idPrefix.value}${clickKey}`)?.click()
|
|
|
- })
|
|
|
+ //自动展开
|
|
|
+ defaultExpandedCids.value = defaultExpandedArr
|
|
|
+ if (node.level === 0) {
|
|
|
+ emit('nodeLoading')
|
|
|
+ }
|
|
|
+ resolve(resData)
|
|
|
+ //最后一个,执行点击
|
|
|
+ if (clickKey) {
|
|
|
+ await nextTick(() => {
|
|
|
+ document.getElementById(`${idPrefix.value}${clickKey}`)?.click()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (node.level === 0) {
|
|
|
+ emit('nodeLoading')
|
|
|
+ }
|
|
|
+ resolve([])
|
|
|
}
|
|
|
- } else {
|
|
|
- if (node.level === 0) {
|
|
|
- emit('nodeLoading')
|
|
|
+
|
|
|
+ }else{
|
|
|
+ //获取数据
|
|
|
+ const {error, code, data} = await samplingApi.queryLazyTree({
|
|
|
+ wbsId: wbsTempId.value,
|
|
|
+ tenantId: tenantId.value,
|
|
|
+ projectId: projectId.value,
|
|
|
+ parentId,
|
|
|
+ wbsType: wbsType.value
|
|
|
+ })
|
|
|
+ //处理数据
|
|
|
+ if (!error && code === 200) {
|
|
|
+ let clickKey = '', defaultExpandedArr = [];
|
|
|
+ const keys = TreeExpandKey.value || []
|
|
|
+ const resData = getArrValue(data)
|
|
|
+ for (let i = 0; i < resData.length; i++) {
|
|
|
+ resData[i].hasChildren = !resData[i].hasChildren
|
|
|
+ }
|
|
|
+ if (keys.length > 0) {
|
|
|
+ let lastKey = keys[keys.length-1];
|
|
|
+ for (const item of resData) {
|
|
|
+ //自动展开
|
|
|
+ if (isItem(keys,item?.primaryKeyId)) {
|
|
|
+ defaultExpandedArr.push(item?.primaryKeyId)
|
|
|
+ }
|
|
|
+ //最后一个,选中点击
|
|
|
+ if (item?.primaryKeyId === lastKey) {
|
|
|
+ clickKey = item?.primaryKeyId
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else if (node.level === 0) {
|
|
|
+ defaultExpandedArr.push(resData[0]?.primaryKeyId)
|
|
|
+ }
|
|
|
+ //自动展开
|
|
|
+ defaultExpandedCids.value = defaultExpandedArr
|
|
|
+ if (node.level === 0) {
|
|
|
+ emit('nodeLoading')
|
|
|
+ }
|
|
|
+ resolve(resData)
|
|
|
+ //最后一个,执行点击
|
|
|
+ if (clickKey) {
|
|
|
+ await nextTick(() => {
|
|
|
+ document.getElementById(`${idPrefix.value}${clickKey}`)?.click()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (node.level === 0) {
|
|
|
+ emit('nodeLoading')
|
|
|
+ }
|
|
|
+ resolve([])
|
|
|
}
|
|
|
- resolve([])
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
//节点被点击
|