From 3cad9fa79a95f3c0b7fc745e4e9d2ea65cad1389 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A5=9E=E7=A0=81-=E6=96=B9=E6=99=93=E8=BE=89?= Date: Mon, 2 Feb 2026 17:51:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=B9=B4=E7=BA=A7/=E7=8F=AD=E7=BA=A7=E6=97=B6Integer=E8=BD=ACL?= =?UTF-8?q?ong=E7=B1=BB=E5=9E=8B=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JSON解析时数值会被解析为Integer,直接强制转换为List会报错 改为逐个元素转换:id -> Long.valueOf(id.toString()) --- .../pangu/school/controller/PgSchoolController.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/school/controller/PgSchoolController.java b/backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/school/controller/PgSchoolController.java index ff74a18..54cea20 100644 --- a/backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/school/controller/PgSchoolController.java +++ b/backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/school/controller/PgSchoolController.java @@ -95,8 +95,12 @@ public class PgSchoolController extends BaseController { @PostMapping("/grade") public R addSchoolGrade(@RequestBody Map params) { Long schoolId = Long.valueOf(params.get("schoolId").toString()); + // JSON解析时数值会被解析为Integer,需要逐个转换为Long @SuppressWarnings("unchecked") - List gradeIds = (List) params.get("gradeIds"); + List rawGradeIds = (List) params.get("gradeIds"); + List gradeIds = rawGradeIds.stream() + .map(id -> Long.valueOf(id.toString())) + .toList(); return toAjax(schoolService.addSchoolGrades(schoolId, gradeIds)); } @@ -109,8 +113,12 @@ public class PgSchoolController extends BaseController { public R addGradeClass(@RequestBody Map params) { Long schoolId = Long.valueOf(params.get("schoolId").toString()); Long schoolGradeId = Long.valueOf(params.get("schoolGradeId").toString()); + // JSON解析时数值会被解析为Integer,需要逐个转换为Long @SuppressWarnings("unchecked") - List classIds = (List) params.get("classIds"); + List rawClassIds = (List) params.get("classIds"); + List classIds = rawClassIds.stream() + .map(id -> Long.valueOf(id.toString())) + .toList(); return toAjax(schoolService.addGradeClasses(schoolId, schoolGradeId, classIds)); }