From f105485714bd10c22b4efefeeb03d3f2a9b377b4 Mon Sep 17 00:00:00 2001 From: dj <1042039504@qq.com> Date: Mon, 5 May 2025 14:48:07 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat(project-demand):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E8=BF=9C=E7=A8=8B=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E5=8A=9F=E8=83=BD=E5=B9=B6=E4=BC=98=E5=8C=96=E5=89=8D?= =?UTF-8?q?=E7=BD=AE=E6=B5=81=E7=A8=8B=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在项目需求概览页面添加项目名称远程搜索功能,提高搜索效率和准确性 - 优化项目申请详情页面的前置流程显示逻辑,根据不同场景调整标签宽度 --- .../DetailComponent/ProjectApply.vue | 4 +-- src/views/project-demand/summary/index.vue | 30 +++++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/components/DetailComponent/ProjectApply.vue b/src/components/DetailComponent/ProjectApply.vue index 68049e2..9fcdb15 100644 --- a/src/components/DetailComponent/ProjectApply.vue +++ b/src/components/DetailComponent/ProjectApply.vue @@ -140,8 +140,8 @@ @cancelOrClear="optionalChargeLeaderPickerCancel"/> - - + + {{ localFormData.preProcess && localFormData.preProcess?.length > 0 ? '更改' : sessionParams.preProcess && sessionParams.preProcess?.length > 0 ? '更改' : '请选择' diff --git a/src/views/project-demand/summary/index.vue b/src/views/project-demand/summary/index.vue index 0f61432..11f6891 100644 --- a/src/views/project-demand/summary/index.vue +++ b/src/views/project-demand/summary/index.vue @@ -73,6 +73,36 @@ const searchConfig = ref([ }, component: shallowRef(fvSelect), }, + { + label: '项目名称', + prop: 'projectName', + props: { + placeholder: '请输入项目名称', + clearable: true, + filterable: true, + options: [], + remote: true, + remoteMethod:async (val)=>{ + if(val){ + const res=await getRequirementName(val) + if(res.code==1000){ + let optionObj={} + let optionsMap = new Map(); + res.data.forEach(item=>{ + optionObj={ + value:item, + label:item + } + optionsMap.set(optionObj.value, optionObj); + }) + // 将 Map 转换为数组 + searchConfig.value.find(item => item.prop == 'projectName').props.options = Array.from(optionsMap.values()) + } + } + } + }, + component: shallowRef(fvSelect), + }, { label: '项目类型', prop: 'projectType', From d76ef8ff9cc486707f83aa087a96a5b3d8ec71c9 Mon Sep 17 00:00:00 2001 From: dj <1042039504@qq.com> Date: Mon, 5 May 2025 17:53:55 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat(project-demand):=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E9=9C=80=E6=B1=82=E6=B1=87=E6=80=BB=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 getProjectName 方法,用于项目名称关键词匹配- 修改远程搜索方法,使用 getProjectName 替代 getRequirementName - 更新 ProjectApply 组件,调整专项资金输入框显示逻辑 - 移除 proxy 配置中的注释 --- src/api/project-demand/summary/index.js | 10 ++++++++++ src/components/DetailComponent/ProjectApply.vue | 10 +++++----- src/views/project-demand/summary/index.vue | 10 +++++----- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src/api/project-demand/summary/index.js b/src/api/project-demand/summary/index.js index b680084..bb082e8 100644 --- a/src/api/project-demand/summary/index.js +++ b/src/api/project-demand/summary/index.js @@ -25,6 +25,16 @@ export const getRequirementName = (requirementName) => { method: "get" }); }; +//需求汇总-项目名称关键词匹配 +export const getProjectName = (projectName) => { + return request({ + url: `workflow/mosr/requirement/collect`, + method: "get", + params:{ + projectName:projectName + } + }); +}; //获取需求上报 流程信息 export const getProcessInfo = (specialFund) => { return request({ diff --git a/src/components/DetailComponent/ProjectApply.vue b/src/components/DetailComponent/ProjectApply.vue index 9fcdb15..8bd9ff7 100644 --- a/src/components/DetailComponent/ProjectApply.vue +++ b/src/components/DetailComponent/ProjectApply.vue @@ -10,8 +10,8 @@ - - + + @@ -782,7 +782,7 @@ const handleSubmit = async (instance) => { params.projectPersonIds = projectPersonIds params.optionalChargeLeadership = optionalChargeLeadershipList.value if (props.mode === 'resubmit') { - res = await resubmitApply(params) + // res = await resubmitApply(params) } else { res = await projectApply(params) } @@ -831,7 +831,7 @@ const init = async () => { deploymentId.value = data.deploymentId deploymentData.value = data console.log('data,',data) - preProcessRequired.value = data.deploymentName === '重大项目立项' || data.deploymentName === '重大项目验收'; + // preProcessRequired.value = data.deploymentName === '重大项目立项' || data.deploymentName === '重大项目验收'; processStore.setDesign(data) processStore.runningList.value = data.runningList; processStore.endList.value = data.endList; @@ -867,7 +867,7 @@ watchEffect(() => { // if (props.formData.projectChargePerson != null) { // localFormData.value.projectChargePerson = props.formData.projectChargePerson.id // } - + console.log('localFormData.value',localFormData.value) if (localStorage.getItem('preProcess')) { let param = JSON.parse(localStorage.getItem('preProcess')) localFormData.value.preProcess = param diff --git a/src/views/project-demand/summary/index.vue b/src/views/project-demand/summary/index.vue index 11f6891..61af40e 100644 --- a/src/views/project-demand/summary/index.vue +++ b/src/views/project-demand/summary/index.vue @@ -6,7 +6,7 @@