From 76376082264f131886bdf5b65decb7d87f7496fd Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Sat, 17 Aug 2024 00:13:17 +0800 Subject: [PATCH] =?UTF-8?q?fix=20:=20=E4=BF=AE=E5=A4=8D=E4=BA=BA=E5=91=98?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DetailComponent/ProjectApply.vue | 46 ++++++++----- src/views/expense-management/share/add.vue | 65 ++++++++++++++----- src/views/project-demand/summary/add.vue | 10 +-- .../implementation/phase.vue | 5 +- .../implementation/updateTable.vue | 18 +---- .../workflow/process/common/UserPicker.vue | 37 ++++++++--- 6 files changed, 115 insertions(+), 66 deletions(-) diff --git a/src/components/DetailComponent/ProjectApply.vue b/src/components/DetailComponent/ProjectApply.vue index bd20000..61aad09 100644 --- a/src/components/DetailComponent/ProjectApply.vue +++ b/src/components/DetailComponent/ProjectApply.vue @@ -42,7 +42,7 @@ {{ item.name }} + v-model:value="projectChargePersonUserList" @ok="projectChargePersonUserPickerOk" @cancelOrClear="projectChargePersonUserPickerCancel"/> @@ -55,23 +55,21 @@ {{ item.name }}{{index != getProjectPerson(projectPersonUserList)?.length - 1 ? ',' : ''}} + v-model:value="projectPersonUserList" @ok="projectPersonUserPickerOk" @cancelOrClear="projectPersonUserPickerCancel"/> - + {{ optionalChargeLeadershipList?.length !== 0 ? '更改' : getOptionalChargeLeadershipList(optionalChargeLeadershipList) ? '更改' : '请选择' }} -
- {{ item.name }}{{index != getProjectPerson(projectPersonUserList)?.length - 1 ? ',' : ''}} +
+ {{ item.name }}{{index != getOptionalChargeLeadershipList(optionalChargeLeadershipList)?.length - 1 ? ',' : ''}}
+ v-model:value="optionalChargeLeadershipList" @ok="optionalChargeLeaderPickerOk" @cancelOrClear="optionalChargeLeaderPickerCancel"/> @@ -342,7 +340,14 @@ const handleShowOptionalChargeLeadershipPicker = () => { const optionalChargeLeaderPickerOk = (userList) => { optionalChargeLeadershipList.value = userList - localStorage.setItem('optionalChargeLeadershipList', JSON.stringify(optionalChargeLeadershipList.value)) + if(userList?.length>0){ + localStorage.setItem('optionalChargeLeadershipList', JSON.stringify(optionalChargeLeadershipList.value)) + }else { + localStorage.removeItem('optionalChargeLeadershipList') + } +} +const optionalChargeLeaderPickerCancel = (userList) => { + optionalChargeLeadershipList.value = userList } const clickToPreview = (row) => { @@ -471,19 +476,29 @@ const handleShowProjectChargePersonTable = () => { } const projectChargePersonUserPickerOk = (userList) => { projectChargePersonUserList.value = userList - localStorage.setItem('projectChargePersonUserList', JSON.stringify(projectChargePersonUserList.value)) + if(userList?.length>0){ + localStorage.setItem('projectChargePersonUserList', JSON.stringify(projectChargePersonUserList.value)) + }else { + localStorage.removeItem('projectPersonUserList') + } } const handleShowProjectPersonTable = () => { projectPersonUserPicker.value.showUserPicker() } +const projectChargePersonUserPickerCancel=(userList)=>{ + projectChargePersonUserList.value = userList +} +const projectPersonUserPickerCancel=(userList)=>{ + projectPersonUserList.value = userList +} const projectPersonUserPickerOk = (userList) => { projectPersonUserList.value = userList - localStorage.setItem('projectPersonUserList', JSON.stringify(userList)) - // let userIds = [] - // for (const user of userList) { - // userIds.push(user.id) - // } + if(userList?.length>0){ + localStorage.setItem('projectPersonUserList', JSON.stringify(userList)) + }else { + localStorage.removeItem('projectPersonUserList') + } } const getPreProcessList = () => { loading.value = true @@ -604,6 +619,7 @@ const getFileParam = (item) => { } } const handleSubmit = async () => { + console.log(' projectPersonUserList.value', projectPersonUserList.value) let files = [] if (props.mode === 'resubmit') { attachment.value.allFileList.forEach(item => { diff --git a/src/views/expense-management/share/add.vue b/src/views/expense-management/share/add.vue index c53252e..7b30833 100644 --- a/src/views/expense-management/share/add.vue +++ b/src/views/expense-management/share/add.vue @@ -106,7 +106,7 @@
@@ -232,12 +232,12 @@ const selectProject=(row,index)=>{ //先选择人员, 再选择项目: 再添加一行,重复操作 const projectIdArray = formData.value.tableData.map(item => item.projectId) const researchPersonnelIdArray = formData.value.tableData.map(item => item.researchPersonnelId) - console.log('projectIdArray',projectIdArray) - console.log('researchPersonnelIdArray',researchPersonnelIdArray) + // console.log('projectIdArray',projectIdArray) + // console.log('researchPersonnelIdArray',researchPersonnelIdArray) const projectNumObj = getSelectProjectAndResearchPersonnelNum(projectIdArray) const researchPersonnelNumObj = getSelectProjectAndResearchPersonnelNum(researchPersonnelIdArray) let repeatProjectName=getProjectName(row.projectId) - console.log('currentRow.value',currentRow.value) + // console.log('currentRow.value',currentRow.value) for (let researchPersonnelIdKey in researchPersonnelNumObj) {//先判断人员是否重复 if(currentRow.value.projectId){ if(researchPersonnelNumObj[researchPersonnelIdKey]>1){ @@ -263,21 +263,52 @@ const selectProject=(row,index)=>{ // } // } } -const selectedResearchPersonnel = (select) => { - if (!select || select.length === 0) { - return +const researchPersonnelPickerCancel = (select) => { + console.log('select',select) + if(select.length>0){ + formData.value.tableData?.forEach((item, index) => { + if (index === currentIndex.value) { + item.researchPersonnelId = select[0].id + item.researchPersonnel = select[0].name + item.companyName = select[0].companyName + item.accountType = select[0].accountType + } + }) + }else{ + formData.value.tableData?.forEach((item, index) => { + if (index === currentIndex.value) { + item.researchPersonnelId = '' + item.researchPersonnel = '' + item.companyName = '' + item.accountType = '' + } + }) + } +} + +const selectedResearchPersonnel = (select) => { + if(select.length>0){ + formData.value.tableData?.forEach((item, index) => { + if (index === currentIndex.value) { + item.researchPersonnelId = select[0].id + item.researchPersonnel = select[0].name + item.companyName = select[0].companyName + item.accountType = select[0].accountType + } + }) + }else{ + formData.value.tableData?.forEach((item, index) => { + if (index === currentIndex.value) { + item.researchPersonnelId = '' + item.researchPersonnel = '' + item.companyName = '' + item.accountType = '' + } + }) } - formData.value.tableData.forEach((item, index) => { - if (index === currentIndex.value) { - item.researchPersonnelId = select[0].id - item.researchPersonnel = select[0].name - item.companyName = select[0].companyName - item.accountType = select[0].accountType - } - }) //以下是为" 同一项目下,同一人不能分摊多次 " - const projectIdArray = formData.value.tableData.map(item => item.projectId) - const researchPersonnelIdArray = formData.value.tableData.map(item => item.researchPersonnelId) + const projectIdArray = formData.value.tableData?.map(item => item.projectId) + const researchPersonnelIdArray = formData.value.tableData?.map(item => item.researchPersonnelId) const projectNumObj = getSelectProjectAndResearchPersonnelNum(projectIdArray) const researchPersonnelNumObj = getSelectProjectAndResearchPersonnelNum(researchPersonnelIdArray) let repeatProjectName='' diff --git a/src/views/project-demand/summary/add.vue b/src/views/project-demand/summary/add.vue index 8fcf704..60214e5 100644 --- a/src/views/project-demand/summary/add.vue +++ b/src/views/project-demand/summary/add.vue @@ -173,11 +173,11 @@ {{ optionalChargeLeadershipList.length !== 0 ? '更改' : '请选择' }} -
- {{ item.name }} +
+ {{ item.name }}{{index != optionalChargeLeadershipList?.length - 1 ? ',' : ''}}
- + @@ -365,7 +365,7 @@ const handleShowOptionalChargeLeadershipPicker = () => { optionalChargeLeadershipPickerRef.value.showUserPicker() } -const optionalChargeLeaderPickerOk = (userList) => { +const optionalChargeLeaderPickerOkOrCancel = (userList) => { optionalChargeLeadershipList.value = userList } diff --git a/src/views/project-management/implementation/phase.vue b/src/views/project-management/implementation/phase.vue index 3d562f6..87b7d98 100644 --- a/src/views/project-management/implementation/phase.vue +++ b/src/views/project-management/implementation/phase.vue @@ -8,7 +8,7 @@ - + { return null } } -const selected = (select) => { +const ccPersonPickerOkOrCancel = (select) => { + console.log('select',select) userList.value = select } const handleSubmit = async () => { diff --git a/src/views/project-management/implementation/updateTable.vue b/src/views/project-management/implementation/updateTable.vue index 0736c22..5aa427c 100644 --- a/src/views/project-management/implementation/updateTable.vue +++ b/src/views/project-management/implementation/updateTable.vue @@ -69,7 +69,6 @@ -
提交 返回 @@ -78,12 +77,9 @@