邮件标题:20260903-技术评审-营销活动中心-盘点明细报表仓库名称兜底
邮件正文:
晓娜、建新:
已完成针对【盘点明细报表仓库名称兜底技术方案】的技术评审,现将评审结论、风险判断及后续执行安排同步如下,便于各方对齐认知并落实执行。
项目名称: 营销活动中心
评审时间: 2026/09/03
参与评审人: 王建朝、余建新、张喜、马奇、贾继伟、李明非、潘玉平、余勇军
评审结果: 通过
一、技术方案背景
- 业务场景:盘点明细表的 warehouse_name 用于报表展示,赋值入口在 FreshnessService.fillFreshnessDetailDTOByFreshnessDTO(FreshnessService.java:1278)。前端发起仓库盘点时除传仓库编码外,同时会传仓库名称(非必填)。
- 问题根因:当前实现仅以「按仓库编码调 crsUtils.getWareHouseByCode 查主数据 → 取 storageName」这一条分支赋值。当仓库在主数据查不到(失效或未同步)、返回 null、storageName 为空或 RPC 异常时,赋值分支被跳过,warehouse_name 保持为空——前端已传的仓库名称被忽略,导致报表仓库名缺失。
- 修复目标:保证报表仓库名称非空,并明确"前端传入"与"主数据"的取值优先级。
二、技术方案要点
- 整体流程:freshness_detail_report.warehouseName 取值顺序调整为 → ①前端传入的 warehouseName 非空时取前端值;②前端为空时回退到主数据查询到的 storageName;③都为空保持空。
三、决议事项
- 以"前端传入名称"为标准来源:评审明确前端传入的 warehouseName 优先于主数据 storageName;前端为空或缺失时再回退查主数据兜底。该决议已在会议上直接调整技术方案。