返回 Bug 清单
BUG-0128project-39中需关注backend-logic

priceTrend 中 priceVal 为 null 时 NumberFormatException

发现:2026-09-30验证:2026-10-09置信度:85%

症状

([MarketServiceImpl.java](file://D:\xianzhi-brain\brain-service\src\main\java\com\xianzhi\brain\service\impl\MarketServiceImpl.java#L34-L39)):`priceTrend()` 从 SQL 结果行中读取 price 值时,大/小写 key 均未匹配到则 priceVal 为 null,`String.valueOf(null)` 返回字符串 "null",导致 `new BigDecimal("null")` 抛出 `NumberFormatException`: ```java Object priceVal = row.get("PRICE") != null ? row.get("PRICE") : row.get("price"); // priceVal 仍可能为 null! point.setPrice(new BigDecimal(String.valueOf(priceVal)).setScale(2, RoundingMode.HALF_UP)); ``` 同样的问题也影响 `dateVal`(日期字段),不过 `String.valueOf(null)` 返回 "null" 字符串而非抛异常。

错误签名

([MarketServiceImpl.java](file://D:\xianzhi-brain\brain-service\src\main\java\com\xianzhi\brain\service\impl\MarketServiceImpl.java#L34-L39)):`priceTrend()` 从 SQL 结果行中读取 price 值时,大/小写 key 均未匹配到则 priceVal 为 null,`String.valueOf(null)` 返回字符串 "null",导致 `new BigDecimal("null")` 抛出 `NumberFormatException`:

技术信息

来源项目

project-39

涉及文件

brain-service/.../impl/MarketServiceImpl.java` (line 39)

标签

backend-logic, project-39