From 02a2ef944985ce4bcd6104092bc8b3c22847d193 Mon Sep 17 00:00:00 2001 From: WindowBird <13870814+windows-bird@user.noreply.gitee.com> Date: Tue, 18 Nov 2025 17:56:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B7=BB=E5=8A=A0=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=97=B6=E7=9A=84=E5=8F=AF=E9=80=89=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/task/add/index.vue | 33 ++++++++++++++++++++++++++++----- utils/request/index.js | 4 ++-- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/pages/task/add/index.vue b/pages/task/add/index.vue index 3acf14e..81d73c1 100644 --- a/pages/task/add/index.vue +++ b/pages/task/add/index.vue @@ -286,13 +286,18 @@ const loadProjects = async () => { } }; -const loadMembers = async () => { +const loadMembers = async (projectId) => { + if (!projectId) { + memberOptions.value = []; + return; + } try { const res = await getUserList({ pageNum: 1, pageSize: 200, status: 0, - delFlag: 0 + delFlag: 0, + projectId }); const rows = Array.isArray(res?.rows) ? res.rows : Array.isArray(res?.data) ? res.data : []; memberOptions.value = rows.map(item => ({ @@ -309,6 +314,12 @@ const loadMembers = async () => { } }; +const refreshMembersForProject = async () => { + formData.value.members = []; + selectedMemberIds.value = []; + await loadMembers(formData.value.projectId); +}; + const openProjectPicker = () => { console.log('openProjectPicker'); if (!projectOptions.value.length) { @@ -324,11 +335,12 @@ const openProjectPicker = () => { } }; -const handleProjectConfirm = ({ value }) => { +const handleProjectConfirm = async ({ value }) => { if (value && value.length) { const selected = value[0]; formData.value.projectId = String(selected.value); formData.value.projectName = selected.label; + await refreshMembersForProject(); } }; @@ -361,10 +373,16 @@ const onExpireTimeConfirm = (event) => { const openMemberModal = () => { + if (!formData.value.projectId) { + uni.showToast({ + title: '请先选择项目', + icon: 'none' + }); + return; + } selectedMemberIds.value = formData.value.members.map(member => member.userId); memberKeyword.value = ''; showMemberModal.value = true; - }; const closeMemberModal = () => { @@ -473,7 +491,12 @@ onLoad(async (options) => { loading.value = true; try { await dictStore.loadDictData(); - await Promise.all([loadProjects(), loadMembers()]); + await loadProjects(); + if (formData.value.projectId) { + await loadMembers(formData.value.projectId); + } else { + memberOptions.value = []; + } } finally { loading.value = false; } diff --git a/utils/request/index.js b/utils/request/index.js index f97b9cc..cd3cada 100644 --- a/utils/request/index.js +++ b/utils/request/index.js @@ -10,8 +10,8 @@ export const Request = () => { // 初始化请求配置 uni.$uv.http.setConfig((config) => { /* config 为默认全局配置*/ - config.baseURL = 'http://192.168.1.4:4001'; /* 根域名 */ - // config.baseURL = 'https://pm.ccttiot.com/prod-api'; /* 根域名 */ + // config.baseURL = 'http://192.168.1.4:4001'; /* 根域名 */ + config.baseURL = 'https://pm.ccttiot.com/prod-api'; /* 根域名 */ return config })