返回 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