线上问题复盘根因分析

2026年4月–5月 · 13个问题单 · 抽样复盘

分类一:目标数据定位不准确

#39949 · #39882
2个问题
核心原则查询必须带全所有必要过滤条件(租户ID/连锁ID/机构ID),结果集必须校验唯一性,禁止用数组下标定位业务数据。

#39949 【伊利】【123连锁】仓库扫码数据从5.7开始没有收到校验结果,伊利定位反馈没有收到扫码数据

产品/严重
SRM 一般
引入版本
8.38版本,需求 #6912
问题现象
伊利扫码数据上传后未收到校验结果,伊利侧查不到数据
根因
溯源物流码同步定时任务执行时报错退出,sys_tenant_erp_config 表中伊利租户存在多条配置记录(不同连锁),查询时未加连锁ID过滤条件,导致取到错误的配置,接口调用失败
触发条件
伊利租户在配置表中存在多条配置(多连锁场景)
解决方案
查询配置时补充连锁ID作为过滤条件
状态
已解决

#39882 【智信云枢-直营环境】9000甘清总仓,操作移除控货商品,移除不成功,以8809523280935为例

产品/严重
ERP 严重
引入版本
2024年5月前端老页面迁移到新前端时引入
问题现象
操作移除A商品,实际移除的是B商品
根因
表格过滤/搜索后,数组下标与用户实际看到的数据行不对应。代码用数组下标 index 定位要移除的商品,过滤场景下 index 已变化,但提交的仍是错误的 index
触发条件
控货商品列表被搜索/过滤后,点击移除操作
解决方案
改用 baseId(业务唯一键)匹配目标索引进行移除
状态
已关闭

分类二:空值/边界未处理

#39530
1个问题
核心原则跨系统同步时必须对齐字段约束(必填/非必填),非必填字段写入前做空值判断并赋默认值,不能直接将空值跨系统传递。

#39530 【智信云枢-中台】采购在PRM改价的时候报错了,提示系统运行异常,检查到空指针,可能是数据未正确初始化引用对象为空(何荀已定位出原因)

产品/严重
ERP 一般
引入版本
9.16版本,同需求#6691
问题现象
在PRM修改商品价格时报空指针,数据未查到
根因
ERP中"最低售价"字段非必填,PRM同步时将空值写入。supplier_goods_price_view视图要求 price/sales_price/min_price 不能为空,为空时查不到数据,更新操作触发空指针
触发条件
ERP商品"最低售价"字段为空,定时任务同步到PRM,后续在PRM编辑该商品价格
解决方案
同步价格字段时增加为空判断,为空则赋值为 0
状态
已关闭

分类三:变更遗漏关联逻辑

#39557 · #40024 · #39477 · #39651
4个问题
核心原则代码变更时必须全链路审视关联表、关联模块、定时任务、配置项的参数传递;回滚时用 diff 逐文件确认;组件替换时逐参数对比新旧接口签名。

#39557 【智信云枢-直营环境】S26011683230115720021(原销售单号),退货提示:保存退款单据失败:本单赠送礼品卡状态已变更,请重新发起退款,避免门店损失。

产品/严重
POS 严重
引入版本
9.16版本,需求 #6770
问题现象
礼品卡退货时报错"本单赠送礼品卡状态已变更",无法完成退货
根因
需求#6770开发时修改了退款表的礼品卡状态判断逻辑,但未同步修改礼品卡表的对应判断逻辑,两张表的判断结果不一致,并发场景下触发数据不一致
触发条件
历史遗留礼品卡回收记录状态异常,第一笔退货失败后再次尝试退货
解决方案
统一两张表的判断逻辑,撤销退货时同时检查两张表
状态
已解决(随版本)

#40024 【智信云枢-PRM】通过发中台定时任务,合伙人同步总部团购商品映,任务执行失败(研发已定位,需补丁处理)

产品/严重
ERP 一般
引入版本
9.17版本,需求 #6907(需求不发布)
问题现象
PRM合伙人同步总部团购商品定时任务报错,表不存在:erp_grp_platform_merchant_cfg
根因
需求#6907不发布时回滚了业务代码,但遗漏了定时任务相关代码,定时任务仍引用已回滚删除的数据库表
触发条件
需求回滚后定时任务自动执行时
解决方案
修复定时任务逻辑,恢复原有引用表或清除无效引用
状态
已解决

#39477 【智信云枢-直营环境】6954665213517这个商品在直营环境改了发货价,但是没有同步到中台(何荀已定位出原因)

产品/严重
ERP 一般
引入版本
8.35版本,需求 #6180
问题现象
每页实际展示固定20条数据,无论用户选择"每页10条/20条/50条",界面显示数量均不变
根因
需求#6180开发时将 BaseTable 组件换成 BasicTable 写法,漏传了分页接口的 pageSize 参数,后端始终用默认值20条查询
触发条件
用户修改"每页显示条数"下拉选择时
解决方案
补充 pageSize 参数传递
状态
已关闭

#39651 【海安爱婴房】输入商品后,商品格和标题格对不齐,展示的标题行有13格,商品行只有12格,麻烦核实

产品/严重
POS 一般
引入版本
8.37版本,bug #39494 修复引入
问题现象
输入商品后,商品格与标题格对不齐,标题行多出一格
根因
bug #39494 修复时,在门店参数"防伪码"未开启的场景下,代码未做兜底判断,导致展示了序列号列,破坏了原本对齐的列布局
触发条件
门店参数"是否开启防伪码"未开启时
解决方案
在展示逻辑中增加防伪码开关的判断,未开启时隐藏序列号列
状态
已关闭

分类四:数据格式/历史兼容性

#39441 · #39519
2个问题
核心原则代码假设的数据格式必须与历史实际数据对齐;新增数据校验时同步清理历史异常数据;对历史残留边界数据(同名记录、字母编码、旧格式)做兼容兜底。

#39441 【河北邯郸馆陶爱尚婴】新门店安装pos登录提示注册失败!pos注册失败!新注册请练联系管理员

产品/严重
ERP 严重
根因
POS注册逻辑中用门店编码调用了 Long.parseLong(),历史异常数据sys_shop_pos表中存在字母编码记录,注册时取到了该历史数据导致报错:新注册门店改回纯数字编码后仍失败(MAC地址对应的POS记录含字母编码残留),只有删除残留记录后才注册成功
触发条件
门店编码含字母或历史POS注册记录中存在含字母编码
解决方案
数据修复:删除异常POS注册记录;8.38版本增加门店编码数字校验
状态
已关闭

#39519 商品发货价未同步到中台 — 历史存在同名品类导致匹配到错误记录

产品/严重
ERP 严重
引入版本
9.16版本,需求 #6691
问题现象
商品发货价改后未同步到中台,门店销售定价错误
根因
定时任务同步商品资料时,仅按品类名称匹配,但ERP中存在历史同名品类(编码不同),导致匹配到错误的品类,商品被静默跳过同步
触发条件
ERP中品牌/品类存在历史同名数据(编码不同但名称相同)
解决方案
同名品类有多个时不同步品类信息,只有一条时才同步
状态
已关闭

分类五:依赖版本冲突

#39935
1个问题
核心原则依赖升级前执行 mvn dependency:tree 检查传递依赖冲突;新依赖注明版本,由架构统一管理全局基线;选择各功能均兼容的中间版本。

#39935 【合生元】【亲子坊】仓库扫2个箱码,提示查询不到,仓库配送卡住

产品/严重
SRM 严重
引入版本
2.12版本,需求 #6920(会员标签同步功能)
问题现象
仓库扫码箱码查询不到,OSS文件存在但解析失败,配送流程卡住
根因
SRM解析CSV文件使用 easyexcel(依赖 commons-csv 1.8),需求#6920 引入 commons-csv 1.14.1(高版本),低版本的 easyexcel 无法调用高版本 commons-csv API,静默解析失败,无报错
触发条件
同时存在两个功能各自依赖不同版本的 commons-csv
解决方案
commons-csv 降级至 1.10.0(两个功能均兼容)
状态
已解决

分类六:数据一致性校验缺失

#39437 · #39865 · #39556
3个问题
核心原则接收外部数据或前端提交时,服务端必须校验数据内部一致性(单据号/金额/品牌等关键字段必须与当前业务状态匹配),关键字段以服务端档案为准,禁止信任前端/外部传入。

#39437 【喜阳阳】价格调整单下载的是门店例外的模版,但是导入时选择主档案也能正常导入提交【8050环境能复现出来】

产品/严重
ERP 严重
根因
导入框架按字段名识别模板类型,不校验模板来源与当前操作类型是否匹配。下载的是"门店例外"模板,选择"商品档案价格"也能成功导入
触发条件
用户下载了错误的模板(如门店例外模板),却选择了商品档案价格类型导入
解决方案
导入时识别模板第一行信息,若模板类型与导入类型不匹配则报错提示
状态
已解决

#39865 【伊利】【123baby】WMS扫码00462546200638605069是飞鹤,但是在华创侧查询是伊利,导致将错误的听码上报给伊利了

产品/严重
ERP 一般
问题现象
箱码00462546200638605069实际对应飞鹤产品,ERP中查询结果显示为伊利,错误的听码被上报给伊利
根因
WMS同步报文有问题,部分单据的箱码详情属于另一张单据,导致飞鹤产品被错误关联到伊利并上报
触发条件
WMS推送的单据报文中,箱码详情来自其他单据,存在跨单据数据错配
解决方案
①协调WMS修正推送报文,杜绝跨单据数据错配;②ERP接口增加数据一致性校验,主动核实箱码与单据的匹配关系
状态
待处理

#39556 【妈仔谷】自助充值付款实际付款500元,自助充值列表里记录1515元。实际付款与系统入账不一致。

产品/严重
ERP 严重
问题现象
门店实际付款500元,系统记录流水1515元,且入账门店也错误
根因
自助充值页面触发充值时,前端取用了前一次的充值单号(含金额和门店),服务端未校验前端传入的单号与当前充值操作的一致性,直接使用了前端传递的错误数据
触发条件
充值操作与上一次充值操作存在时序重叠,前端缓存了上一次请求的上下文
解决方案
服务端增加充值单号与充值金额/门店的一致性校验:判断前台传入的单号是否属于当前充值批次,不一致时拒绝并提示重新操作
状态
已解决