该项目是一个前后端分离,后端使用 SpringBoot,前端使用 VUE 和 Element-UI 组件库配合完成开发。
开发工具:IDEA,数据库:mysql5.7
源码获取:下方gongzhonghao,输入007
package com.exam.controller;
import com.exam.entity.Admin;
import com.exam.entity.ApiResult;
import com.exam.serviceimpl.AdminServiceImpl;
import com.exam.util.ApiResultHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
public class AdminController {
private AdminServiceImpl adminService;
@Autowired
public AdminController(AdminServiceImpl adminService){
this.adminService = adminService;
}
@GetMapping("/admins")
public ApiResult findAll(){
System.out.println("查询全部");
return ApiResultHandler.success(adminService.findAll());
}
@GetMapping("/admin/{adminId}")
public ApiResult findById(@PathVariable("adminId") Integer adminId){
System.out.println("根据ID查找");
return ApiResultHandler.success(adminService.findById(adminId));
}
@DeleteMapping("/admin/{adminId}")
public ApiResult deleteById(@PathVariable("adminId") Integer adminId){
adminService.deleteById(adminId);
return ApiResultHandler.success();
}
@PutMapping("/admin/{adminId}")
public ApiResult update(@PathVariable("adminId") Integer adminId, Admin admin){
return ApiResultHandler.success(adminService.update(admin));
}
@PostMapping("/admin")
public ApiResult add(Admin admin){
return ApiResultHandler.success(adminService.add(admin));
}
}
package com.exam.controller;
import com.exam.entity.ApiResult;
import com.exam.entity.PaperManage;
import com.exam.service.PaperService;
import com.exam.serviceimpl.FillQuestionServiceImpl;
import com.exam.serviceimpl.JudgeQuestionServiceImpl;
import com.exam.serviceimpl.MultiQuestionServiceImpl;
import com.exam.util.ApiResultHandler;
import com.exam.vo.Item;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;import java.util.List;
@RestController
public class ItemController {@Autowired
MultiQuestionServiceImpl multiQuestionService;@Autowired
FillQuestionServiceImpl fillQuestionService;@Autowired
JudgeQuestionServiceImpl judgeQuestionService;@Autowired
PaperService paperService;@PostMapping("/item")
public ApiResult ItemController(@RequestBody Item item) {
// 选择题
Integer changeNumber = item.getChangeNumber();
// 填空题
Integer fillNumber = item.getFillNumber();
// 判断题
Integer judgeNumber = item.getJudgeNumber();
//出卷id
Integer paperId = item.getPaperId();// 选择题数据库获取
List<Integer> changeNumbers = multiQuestionService.findBySubject(item.getSubject(), changeNumber);
if(changeNumbers==null){
return ApiResultHandler.buildApiResult(400,"选择题数据库获取失败",null);
}
for (Integer number : changeNumbers) {
PaperManage paperManage = new PaperManage(paperId,1,number);
int index = paperService.add(paperManage);
if(index==0)
return ApiResultHandler.buildApiResult(400,"选择题组卷保存失败",null);
}// 填空题
List<Integer> fills = fillQuestionService.findBySubject(item.getSubject(), fillNumber);
if(fills==null)
return ApiResultHandler.buildApiResult(400,"填空题数据库获取失败",null);
for (Integer fillNum : fills) {
PaperManage paperManage = new PaperManage(paperId,2,fillNum);
int index = paperService.add(paperManage);
if(index==0)
return ApiResultHandler.buildApiResult(400,"填空题题组卷保存失败",null);
}
// 判断题
List<Integer> judges = judgeQuestionService.findBySubject(item.getSubject(), judgeNumber);
if(fills==null)
return ApiResultHandler.buildApiResult(400,"判断题数据库获取失败",null);
for (Integer judge : judges) {
PaperManage paperManage = new PaperManage(paperId,3,judge);
int index = paperService.add(paperManage);
if(index==0)
return ApiResultHandler.buildApiResult(400,"判断题题组卷保存失败",null);
}
return ApiResultHandler.buildApiResult(200,"试卷组卷成功",null);
}
}