diff --git a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java index 74407fd22bbaaa38df310379fa6637ec685babb8..33fd114105a444bf3209b7ab6c7d3d97ef4253b7 100644 --- a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java +++ b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java @@ -2,6 +2,9 @@ package com.wetoband.template.action; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.TypeReference; import com.fy.basejar.tool.ActionToolBase; import com.wetoband.template.AppConfig; import com.wetoband.template.entity.*; @@ -40,13 +43,6 @@ public class ToolTemplateAction extends ActionToolBase { public R post(HttpServletRequest request) throws Exception { return R.ok().put("msg", "Hello World").message("POST请求成功"); } - /*@Action - public R getHomeWorkById(HttpServletRequest request) throws Exception { - //获取参数 - Integer id =Integer.parseInt(request.getParameter("id")); - HomeWork homeWork = homeWorkService.getHomeWorkById(id); - return R.ok().put("data",homeWork); - }*/ @Action public R getHomeWorkByCourse(HttpServletRequest request) throws Exception { @@ -90,16 +86,10 @@ public class ToolTemplateAction extends ActionToolBase { //提交作业(简答题) @Action public R submitHomework(HttpServletRequest request) throws Exception { - - - - - - - - String[] userAnswers = request.getParameterValues("user_answers"); - System.out.println(123); - System.out.println("userAnswers:"+userAnswers); + String userAnswers = request.getParameter("userAnswers"); + // 解析 JSON 字符串为 Map + Map> userAnswersMap = parseUserAnswers(userAnswers); + System.out.println("Parsed Map: " + userAnswersMap); Integer studentId =Integer.parseInt(request.getParameter("student_id")); Integer homeworkId =Integer.parseInt(request.getParameter("homework_id")); //获取提交时间设置为年月日格式 @@ -111,7 +101,6 @@ public class ToolTemplateAction extends ActionToolBase { return R.ok().message("请求成功"); } - //提交疑难点 @Action public R submitTroubleshooting(@NotNull HttpServletRequest request) throws Exception { @@ -163,7 +152,31 @@ public class ToolTemplateAction extends ActionToolBase { } - + //json转化成map方法 + private Map> parseUserAnswers(String userAnswers) { + Map> userAnswersMap = new HashMap<>(); + JSONArray jsonArray = JSON.parseArray(userAnswers); + + for (Object item : jsonArray) { + if (item instanceof String) { + String[] keyValue = ((String) item).split(":"); + if (keyValue.length == 2) { + userAnswersMap.computeIfAbsent(keyValue[0], k -> new ArrayList<>()).add(keyValue[1]); + } + } else if (item instanceof JSONArray) { + JSONArray subArray = (JSONArray) item; + for (Object subItem : subArray) { + if (subItem instanceof String) { + String[] keyValue = ((String) subItem).split(":"); + if (keyValue.length == 2) { + userAnswersMap.computeIfAbsent(keyValue[0], k -> new ArrayList<>()).add(keyValue[1]); + } + } + } + } + } + return userAnswersMap; + } diff --git a/HomeWork-vite/src/views/HomeWorkManager/MultipleChoiceQuestions.vue b/HomeWork-vite/src/views/HomeWorkManager/MultipleChoiceQuestions.vue index 2d92a93d8406104ceb6596969b9d3a2a20fe7ace..f335a2b5d562d9ed0aac9b11ea16a9089be9d321 100644 --- a/HomeWork-vite/src/views/HomeWorkManager/MultipleChoiceQuestions.vue +++ b/HomeWork-vite/src/views/HomeWorkManager/MultipleChoiceQuestions.vue @@ -12,7 +12,7 @@ - + @@ -21,9 +21,7 @@ {{ option.label }} - - - + {{ String.fromCharCode(65 + index) }}. @@ -32,21 +30,21 @@ - 提交答案 -