生成时间: 2026-08-02 · 数据来源: xnybw平台需求及工作计划.xlsx(南网在线绿能云缺陷跟踪表)· 仅针对 backup730/730backup 分支代码

场站状态为"待建"时,中心经纬度不应校验必填(Excel第6行)

类型:填报问题  严重性:严重  状态:5.1.已关闭(复测通过)

基本信息

问题描述场站状态为:待建状态,经纬度不应该校验必填
一级模块项目信息填报
二级模块/
涉及类型集中式新能源
是否阻断流程
处理人员周小龙
复测情况复测通过

问题截图

row6 截图1
图1:场站状态"待建"时的经纬度必填校验现象

代码定位(backup730/730backup)

xnybw5f / backup730 / src/views/projectNew/components/baseInfo/components/stationInfo.vue
· 第94-98行:"场站状态"单选组:<el-radio value="3">待建</el-radio> <el-radio value="4">在建</el-radio> <el-radio value="5" disabled>已投产</el-radio>
· 第113、144行:"中心经度"/"中心纬度" 表单项 :required="proStatus"
· 第410-416行:计算属性 proStatus() { return this.item.proStatus == "4" } —— 仅当场站状态为"在建"(值4)时才返回 true
· 第336-372、524-544行:formRows() 动态生成校验规则,经度/纬度字段(longitudeArrList/latitudeArrList)带有 proStatus: "1" 标记,最终必填规则为 required: item.proStatus ? this.proStatus : true —— 即只有标记了 proStatus:"1" 的字段,其必填性才跟随场站状态计算属性动态变化

核对结论

经逐行核对 backup730 分支现有代码:场站状态选择"待建"(proStatus=='3')时,计算属性 proStatus() 返回 false,经纬度表单项的 required 与校验规则均随之关闭,不会再强制必填;只有切换为"在建"(proStatus=='4')后才会必填。该逻辑在 backup730 现有代码中已经是正确实现,与本条缺陷"已关闭/复测通过"的状态一致,判断这正是当时修复后被固化下来的实现方式,backup730 分支无需再改动此处代码。

旧代码涉及的项目文件及行数

同上 stationInfo.vue 第94-98、410-416、524-544行(该处即当年问题修复落地的位置)

修复代码涉及的项目文件及行数

无需改动,backup730 现状已符合验收要求。若后续复用该组件开发新变体(如新建其它能源类型的场站信息组件)时,应参照本组件"按 proStatus:"1" 标记 + 计算属性联动"的写法,避免重复出现相同问题。

修复方案(供后续同类组件参考的实现模式)

把"字段是否必填"与"业务状态字段"解耦为一个统一的计算属性驱动的规则表,而不是在每个字段上写死 required

// rulesList 中给需要按场站状态联动必填的字段打标记
{ type: "input", label: "中心经度", prop: "longitudeArrList", proStatus: "1" }

// 统一根据标记 + 计算属性生成规则,新增字段时只需要打标记,不用重复写 if/else
formRows(list) {
  list.forEach(item => {
    this.$set(this.rules, item.prop, [{
      required: item.proStatus ? this.proStatus /* 场站状态计算属性 */ : true,
      message: `请${item.type === 'input' ? '输入' : '选择'}${item.label}`,
    }])
  })
}