类型:数据问题 严重性:严重 状态:5.1.已关闭(复测通过)
| 问题描述 | 改造完成之前,先按点击"关联存量场站调度命名"按钮时弹窗提醒"功能建设中"处理,不在列表展示存量场站数据。项目基本信息-添加场站-关联存量场站调度命名,没有做权限控制,可以查询到全网的存量场站。经主管确认:需进行功能改造,存量场站根据场站已关联的所有项目的"项目创建人电话"进行匹配,如果当前登录人电话是其中之一,则该列表默认展示出来这个场站信息,去除选择调管单位之后才能查询到场站的的功能 |
|---|---|
| 一级模块 | 项目信息填报 |
| 二级模块 | / |
| 涉及类型 | 全部类型 |
| 是否阻断流程 | 是 |
| 处理人员 | 陈键泽 |
| 复测情况 | 复测通过 |
src/views/projectNew/components/baseInfo/components/baseInfo.vue 第274行 <th-button @click="addExitPlant">关联存量场站调度命名</th-button>,第858-877行 addExitPlant() 打开 plantRelationSelector.vue 弹窗src/views/projectNew/components/baseInfo/dialog/plantRelationSelector.vuesearchForm.province / searchForm.city)_getDataList() 调用 projectOrtherApi.getProcessListPlant(this.searchForm),全文搜索该组件未发现任何"联系人电话"/"创建人手机号"相关字段或匹配逻辑src/main/java/cn/csg/so/oms/in/newenergy/project/controller/NewenergyPlantProcessController.java 第31-36行:getProcessListPlant(NewenergyPlantVo plantVO) 直接透传给 neDpArcProcAppFacade.getListPlant(plantVO),未见基于登录用户身份的强制过滤plantRelationSelector.vue 第19-26、380-486行(筛选表单与查询方法)+ NewenergyPlantProcessController.java/对应 AppService 的 getListPlant()按经主管确认的最终需求,需要把"手动选择调管单位查询"改造为"按创建人电话自动匹配默认展示":
// plantRelationSelector.vue
_getDataList() {
this.tableLoading = true
this.searchForm.fbStatus = '1'
// 修复:不再依赖用户手动选择省份/地市,改为服务端按当前登录人手机号自动匹配
// 前端不再传 province/city 作为查询条件(或仅作为登录人有权限范围内的二次筛选)
projectOrtherApi.getProcessListPlant(this.searchForm).then(...)
}
// 后端 appservice 层新增按创建人电话匹配的逻辑
public Map getListPlant(NewenergyPlantVo plantVO) {
String currentPhone = UserUtils.getUser().getPhone();
// 查找该手机号作为"项目创建人电话"关联过的所有场站 plantId 集合,
// 仅返回这些场站,不再允许按省份/地市查询全网数据
List<String> plantIdScope = queryPlantIdsByCreatorPhone(currentPhone);
plantVO.setPlantIdScope(plantIdScope);
...
}
同时前端应移除"省(自治区)""地市"筛选框,改为默认直接展示与当前登录人匹配到的存量场站列表,如无匹配结果则提示"未查询到与您关联的存量场站"。