diff --git a/packageB/priority/helpFilter.vue b/packageB/priority/helpFilter.vue index 1f8d495..654f8d0 100644 --- a/packageB/priority/helpFilter.vue +++ b/packageB/priority/helpFilter.vue @@ -40,7 +40,7 @@ 所属区域: - @@ -180,10 +180,11 @@ const initialForm = { idCard: '', taskType: '', createByName: '', - helpArea: [], - startTime: '', - endTime: '', - deptId:'' +// helpArea: [], +// startTime: '', +// endTime: '', +// deptId:'', + deptTags:'' } const formData = reactive({ ...initialForm }); const taskTypeOptions=ref([]) @@ -228,12 +229,17 @@ const handleReset = () =>{ onMounted(async () => { // await loadLevelData('201'); }); -onLoad(async () => { +onLoad(() => { let token=uni.getStorageSync('fourLevelLinkage-token') if(token){ - await loadLevelData('201'); - getDictionary() - getDataList('refresh'); + $api.myRequest("/system/user/login/user/info", {}, "GET", 9100, { + Authorization: `Bearer ${uni.getStorageSync("fourLevelLinkage-token")}` + }).then(async (resData) => { + + await loadLevelData(resData.sysUser.dept.deptId); + getDictionary() + getDataList('refresh'); + }); }else{ navTo('/packageB/login2'); } @@ -259,7 +265,7 @@ function getTaskTypeLabelByValue(value) { return item ? item.text : '暂无帮扶类型' } // 加载某一级的数据(parentId 为空表示根) -async function loadLevelData(parentId) { +async function loadLevelData(parentId,node) { let header = { 'Authorization': uni.getStorageSync('fourLevelLinkage-token'), 'Content-Type': "application/x-www-form-urlencoded" @@ -274,15 +280,14 @@ async function loadLevelData(parentId) { } const formatted = (resData.data || []).map(item => ({ text: item.deptName, - value: item.deptId, + value: item.tags, + deptId: item.deptId, children: [] })); - if (parentId === '201') { - // 第一层 - regions.value = formatted; - } else { - // 找到父节点并注入 children + if(node){ injectChildren(parentId, formatted); + }else{ + regions.value=formatted } } catch (error) { console.error("加载部门数据失败:", error); @@ -293,7 +298,7 @@ async function loadLevelData(parentId) { function injectChildren(parentValue, childrenData) { const findAndInject = (nodes) => { for (let node of nodes) { - if (node.value === parentValue) { + if (node.deptId === parentValue) { // 如果 children 已存在且非空,避免重复加载 if (!node.children || node.children.length === 0) { node.children = childrenData; @@ -313,7 +318,7 @@ function injectChildren(parentValue, childrenData) { // 当用户选择时触发(注意:change 在每级选择后都会触发) function onchange(e) { const selectedValues = e.detail.value; - formData.deptId=selectedValues.map(item => item.value).join(','); + // formData.deptId=selectedValues.map(item => item.value).join(','); if (selectedValues.length === 0) return; // 获取最后一级选中的 value const lastSelectedValue = selectedValues[selectedValues.length - 1]; @@ -322,7 +327,7 @@ function onchange(e) { if (node && (!node.children || node.children.length === 0)) { // 检查接口是否还有下一级(可通过接口返回判断,或先尝试加载) // 这里我们直接尝试加载下一级 - loadLevelData(lastSelectedValue.value); + loadLevelData(node.deptId , node); picker.value.show() } }