我们小组实现考试管理,实现了学生端,老师端,管理员端的界面展示,对试卷的删除操作等。

以下是我们组后端部分的代码

package com.mwt.oes.controller;import com.mwt.oes.service.TeacherPaperService;
import com.mwt.oes.util.ServerResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.HashMap;
import java.util.List;
import java.util.Map;@CrossOrigin
@RestController
@RequestMapping("/api/teacher")
public class TeacherPaperController {@Autowiredprivate TeacherPaperService teacherPaperService;//    获取成绩列表信息@RequestMapping("/getTeacherPapersList")public ServerResponse getTeacherPapersList(){Map<String, Object> map = new HashMap<>();List<Map<String, Object>> papersList = teacherPaperService.getPapersList();map.put("papersList",papersList);List<Map<String, Object>> langOptions = teacherPaperService.getLangOptions();map.put("langOptions",langOptions);return ServerResponse.createBySuccess("获取全部试卷信息成功",map);}//    获取搜索试卷列表信息@RequestMapping("archPapersList")public ServerResponse searchPapersList(@RequestParam("paperName")String paperName,@RequestParam("langId")Integer langId,@RequestParam("paperType")Integer paperType){List<Map<String, Object>> resultList = teacherPaperService.searchPapersList(paperName, langId, paperType);return ServerResponse.createBySuccess("获取搜索试卷信息成功",resultList);}//  删除选中试卷信息@RequestMapping(value = "/deletePaper",method = RequestMethod.POST)public ServerResponse deletePaper(@RequestBody Map<String, Object> obj){Integer paperId = (Integer) obj.get("paperId");int selectResult = teacherPaperService.selectPaperScoreByPaperId(paperId);if(selectResult > 0) {return ServerResponse.createByError("该试卷已有学生参加考试,删除失败");} else {int deleteResult = teacherPaperService.deletePaper(paperId);if(deleteResult > 0){return ServerResponse.createBySuccess("删除成功",null);} else {return ServerResponse.createByError("数据库错误,删除失败");}}}//  获取选中试卷问题详情@RequestMapping("/getPaperQueDetailByPaperId")public ServerResponse getPaperQueDetailByPaperId(@RequestParam("paperId")Integer paperId,@RequestParam("totalNum")Integer totalNum){Map<String, Object> resultMap = teacherPaperService.getPaperQueDetailByPaperId(paperId, totalNum);return ServerResponse.createBySuccess("获取选中试卷问题详情成功",resultMap);}//  请求随机组卷,插入试卷数据,即发布试卷@RequestMapping(value = "/randomInsertPaperInfo",method = RequestMethod.POST)public ServerResponse randomInsertPaperInfo(@RequestBody Map<String, Object> obj){int langId = (int) obj.get("langId");if(langId > 1) {return ServerResponse.createByError("且慢,该科目题库不足,目前只有java科目题库比较充沛");} else {int result = teacherPaperService.randomInsertPaperInfo(obj);if (result >0) {return ServerResponse.createBySuccess("试卷发布成功",result);} else {return ServerResponse.createByError("数据库错误,试卷发布失败");}}}//  通过langId获取科目下的所有问题@RequestMapping("/getPaperQueDetailByLangId")public ServerResponse getPaperQueDetailByLangId(@RequestParam("langId")Integer langId){Map<String, Object> resultMap = teacherPaperService.getPaperQueDetailByLangId(langId);return ServerResponse.createBySuccess("获取选中科目下所有问题成功",resultMap);}//  请求固定组卷,插入试卷数据,即发布试卷@RequestMapping(value = "/fixedInsertPaperInfo",method = RequestMethod.POST)public ServerResponse fixedInsertPaperInfo(@RequestBody Map<String, Object> obj){int result = teacherPaperService.fixedInsertPaperInfo(obj);if (result >0) {return ServerResponse.createBySuccess("试卷发布成功",result);} else {return ServerResponse.createByError("数据库错误,试卷发布失败");}}
}

实现获取试卷信息,删除选中试卷,获取试卷中问题详情,请求随机试卷,插入试卷数据等功能。

山东大学软件学院项目实训第三周相关推荐

  1. 山东大学软件学院项目实训-创新实训-SDUMeeting(三)

    山东大学软件学院项目实训-创新实训-SDUMeeting(三) 山大会议项目web安全之文件注入防护 一.前言 山大会议的客户端加入了对用户自定义头像的支持,需要用户自行上传头像图片,这个过程存在文件 ...

  2. 山东大学软件学院项目实训-创新实训-SDUMeeting(一)

    山东大学软件学院项目实训-创新实训-SDUMeeting(一) 一.前言: 这个项目是山东大学视频会议项目,这个项目基于webrtc构建多人视频会议系统,我负责视频会议客户端及服务端安全防护,这个专栏 ...

  3. 山东大学软件学院项目实训-创新实训-SDUMeeting(六)

    山东大学软件学院项目实训-创新实训-SDUMeeting(六) 端对端加密与密钥交换 端到端加密(end-to-end),是一种只有参与通讯的用户可以读取信息的通信系统.它可以防止潜在的窃听者--包括 ...

  4. 项目实训第三周第三次

    项目实训第三周第三次记录 1.任务安排 2.任务分析 2.1显示待审核的申诉请求 2.2同意申诉请求 2.3拒绝申诉请求 3.具体代码 3.1AppealMapper 3.2AppealService ...

  5. 2021年山东大学软件学院项目实训记录(第一周)

    这次项目实训中,我们小组选择的题目是在线考试系统,经过讨论分工,我负责考试管理部分中的前端开发部分. 首先进行环境配置. 前端开发最为便利的开发工具为VScode,我们选择的开发框架是Vue. VSc ...

  6. 山东大学软件学院项目实训-创新实训-网络安全靶场实验平台(一)

    目录 前言 一.项目介绍 二.项目框架 三.个人分工 四.本周任务完成情况 4.1  Vue安装 4.1.1 node.js安装及配置 4.1.2 安装vue及脚手架 4.1.3 运行Vue项目 4. ...

  7. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(六)-SQL注入数字型

    目录 前言: 一.SQL 注入漏洞简介 1.简介 2.危害 3.利用 4.防范 二.相关配置 三.编写"SQL 注入漏洞-数字型注入"后端代码 1.使用 springboot 框架 ...

  8. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(二)-docker安装与学习

    目录 前言: 一.docker安装 1.centos7使用yum安装 二.命令行创建 docker 容器测试 前言: 项目实训立项通过后的几天均在学习 docker 的相关知识,上一篇文章也简单记述了 ...

  9. 山东大学软件学院项目实训——超市/供应商直销平台

    了解项目: 项目介绍: 一.项目名称:直销超市/供应商网络平台 直销超市/供应商网络平台是一个企业对企业(B2B)模式的在线交易平台.考虑到了买卖双方各种需求,有着广泛的实用性,能简单,清晰,快捷的满 ...

最新文章

  1. oracle列名无效字符,案例学习Oracle错误:ORA-00904 invalid column name
  2. Retrofit2.0和Rxjava结合使用的简单记录
  3. 配置 VIM 英语字典
  4. 【C++学习】String类的基本用法
  5. 启明云端分享|ESP32-C3阿里云连接测试
  6. Jmeter_初步认识随笔
  7. 结对开发——求最大值
  8. scala集合中添加元素_如何在Scala中将元素添加到列表中?
  9. vue —— UI组件库
  10. 4_python基础—判断(if)语句
  11. 一元线性回归(Linear Regression)
  12. 怎么向Xcode6 IOS8之后向项目中添加预编译文件
  13. 制作一个简单HTML中华传统文化网页(HTML+CSS)
  14. WIN10电脑自动关机命令
  15. java第一个helloworld_Java第一个程序--HelloWorld
  16. SSM框架---开发免费小说网站(h5+电脑端)
  17. 如何自学C语言(一个菜鸟的学习路)
  18. 课程设计思路-学习笔记
  19. 太原今年实施一批大数据重大项目
  20. 【集训队互测】ayq 三道题

热门文章

  1. 天空之城 10孔口琴
  2. 2019四川大学计算机系,2019四川大学专业排名
  3. 看过《非你莫属》那期,因为刘俐俐,说说陈鸥
  4. TS协议解析第三部分(PES)
  5. Java 11 – ChaCha20-Poly1305加密示例
  6. CJJ 61-2017 城市地下管线探测技术规程
  7. 拥有全国性物流网络却只靠卖书赚微薄利润的李国庆, 最终倒下了
  8. 图的深度优先搜索及拓扑排序
  9. 温湿度传感器——DHT11学习总结
  10. ESP32实验03:0.96tft液晶显示屏驱动