|
|
|
@ -19,72 +19,123 @@ import com.tamguo.service.IPaperService;
|
|
|
|
|
import com.tamguo.util.ExceptionSupport;
|
|
|
|
|
import com.tamguo.util.Result;
|
|
|
|
|
|
|
|
|
|
// 标识这是一个Spring的控制器类,用于处理Web请求并返回相应的视图或数据
|
|
|
|
|
@Controller
|
|
|
|
|
public class MemberPaperController {
|
|
|
|
|
|
|
|
|
|
// 自动注入IPaperService,用于处理试卷相关的业务逻辑,比如试卷的查询、添加、修改、删除等操作
|
|
|
|
|
@Autowired
|
|
|
|
|
private IPaperService iPaperService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 处理会员试卷页面的GET请求,设置视图名称为"member/paperList",用于返回相应的试卷列表页面视图给用户
|
|
|
|
|
*
|
|
|
|
|
* @param model 用于传递数据到视图的ModelAndView对象(此处未添加额外数据)
|
|
|
|
|
* @param session 当前的HttpSession对象,可从中获取会话相关的属性(此处未使用到相关属性)
|
|
|
|
|
* @return 返回包含视图名称的ModelAndView对象,以便渲染试卷列表页面视图
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "/member/paper", method = RequestMethod.GET)
|
|
|
|
|
public ModelAndView paper(ModelAndView model, HttpSession session){
|
|
|
|
|
public ModelAndView paper(ModelAndView model, HttpSession session) {
|
|
|
|
|
model.setViewName("member/paperList");
|
|
|
|
|
return model;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 处理查找试卷的GET请求,根据传入的试卷ID调用试卷服务查找对应的试卷信息,然后将查找结果包装在表示成功的Result对象中返回
|
|
|
|
|
*
|
|
|
|
|
* @param paperId 要查找的试卷的唯一标识符
|
|
|
|
|
* @return 返回包含查找结果的Result对象,如果查找成功则Result对象中包含对应的试卷信息
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "/member/findPaper", method = RequestMethod.GET)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result findPaper(String paperId) {
|
|
|
|
|
return Result.successResult(iPaperService.find(paperId));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value = "member/paper/list" , method = RequestMethod.GET)
|
|
|
|
|
/**
|
|
|
|
|
* 处理获取试卷列表的GET请求,从会话中获取当前会员信息,根据传入的查询参数(试卷名称、页码、每页数量)构建分页对象,调用试卷服务获取会员对应的试卷列表信息,
|
|
|
|
|
* 最后将列表数据按照特定格式包装在Map中返回,以便前端进行展示(可能用于支持类似表格形式展示试卷列表,符合jqGrid等前端组件的数据格式要求)
|
|
|
|
|
*
|
|
|
|
|
* @param name 试卷名称,用于筛选查找试卷(可为空,表示不按名称筛选)
|
|
|
|
|
* @param page 当前页码,用于分页查询
|
|
|
|
|
* @param limit 每页显示的记录数量,用于分页查询
|
|
|
|
|
* @param session 当前的HttpSession对象,从中获取当前会员信息,以确定是哪个会员的试卷列表
|
|
|
|
|
* @return 返回包含试卷列表数据、总记录数、每页数量、当前页码、总页数等信息的Map对象,符合前端展示要求的格式
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "member/paper/list", method = RequestMethod.GET)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Map<String, Object> paperList(String name , Integer page , Integer limit , HttpSession session){
|
|
|
|
|
MemberEntity member = ((MemberEntity)session.getAttribute("currMember"));
|
|
|
|
|
public Map<String, Object> paperList(String name, Integer page, Integer limit, HttpSession session) {
|
|
|
|
|
MemberEntity member = ((MemberEntity) session.getAttribute("currMember"));
|
|
|
|
|
Page<PaperEntity> p = new Page<>();
|
|
|
|
|
p.setCurrent(page);
|
|
|
|
|
p.setSize(limit);
|
|
|
|
|
Page<PaperEntity> list = iPaperService.memberPaperList(name, member.getUid() , p);
|
|
|
|
|
Page<PaperEntity> list = iPaperService.memberPaperList(name, member.getUid(), p);
|
|
|
|
|
return Result.jqGridResult(list.getRecords(), list.getTotal(), limit, page, list.getPages());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value="member/paperList/addPaperQuestionInfo",method=RequestMethod.POST)
|
|
|
|
|
/**
|
|
|
|
|
* 处理添加试卷问题信息的POST请求,从请求体中的JSON数据中解析出相关参数(试卷ID、标题、类型等),根据类型获取对应的描述信息,然后调用试卷服务添加试卷问题信息,
|
|
|
|
|
* 如果操作成功则返回表示成功的Result对象,若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param data 包含试卷问题信息相关参数的JSONObject对象,通过请求体接收
|
|
|
|
|
* @return 返回表示添加操作结果的Result对象,成功时包含相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "member/paperList/addPaperQuestionInfo", method = RequestMethod.POST)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result addPaperQuestionInfo(@RequestBody JSONObject data){
|
|
|
|
|
public Result addPaperQuestionInfo(@RequestBody JSONObject data) {
|
|
|
|
|
try {
|
|
|
|
|
String paperId ; String title ; String name ;String type;
|
|
|
|
|
String paperId;
|
|
|
|
|
String title;
|
|
|
|
|
String name;
|
|
|
|
|
String type;
|
|
|
|
|
paperId = data.getString("uid");
|
|
|
|
|
title = data.getString("title");
|
|
|
|
|
type = data.getString("type");
|
|
|
|
|
name = QuestionType.getQuestionType(type).getDesc();
|
|
|
|
|
iPaperService.addPaperQuestionInfo(paperId , title , name , type);
|
|
|
|
|
iPaperService.addPaperQuestionInfo(paperId, title, name, type);
|
|
|
|
|
return Result.result(0, null, "修改成功");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return ExceptionSupport.resolverResult("添加questionInfo", this.getClass(), e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 处理更新试卷问题信息的POST请求,从请求体中的JSON数据中解析出相关参数(试卷ID、标题、类型、问题信息唯一标识符等),根据类型获取对应的描述信息,
|
|
|
|
|
* 然后调用试卷服务更新试卷问题信息,如果操作成功则返回表示成功的Result对象,若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param data 包含试卷问题信息相关更新参数的JSONObject对象,通过请求体接收
|
|
|
|
|
* @return 返回表示更新操作结果的Result对象,成功时包含相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping("member/paperList/updatePaperQuestionInfo.html")
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result updatePaperQuestionInfo(@RequestBody JSONObject data){
|
|
|
|
|
public Result updatePaperQuestionInfo(@RequestBody JSONObject data) {
|
|
|
|
|
try {
|
|
|
|
|
String paperId ; String title ; String name ; String type ; String uid;
|
|
|
|
|
String paperId;
|
|
|
|
|
String title;
|
|
|
|
|
String name;
|
|
|
|
|
String type;
|
|
|
|
|
String uid;
|
|
|
|
|
paperId = data.getString("uid");
|
|
|
|
|
title = data.getString("title");
|
|
|
|
|
type = data.getString("type");
|
|
|
|
|
name = QuestionType.getQuestionType(type).getDesc();
|
|
|
|
|
uid = data.getString("infoUid");
|
|
|
|
|
iPaperService.updatePaperQuestionInfo(paperId , title , name , type , uid);
|
|
|
|
|
iPaperService.updatePaperQuestionInfo(paperId, title, name, type, uid);
|
|
|
|
|
return Result.result(0, null, "修改成功");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return ExceptionSupport.resolverResult("修改questionInfo", this.getClass(), e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 处理删除试卷的请求,尝试调用试卷服务删除指定ID的试卷,如果操作成功则返回相应的删除结果(可能是成功的Result对象),若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param paperId 要删除的试卷的唯一标识符
|
|
|
|
|
* @return 返回表示删除操作结果的Result对象,成功时包含相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping("member/paperList/deletePaper")
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result deletePaper(String paperId){
|
|
|
|
|
public Result deletePaper(String paperId) {
|
|
|
|
|
try {
|
|
|
|
|
return iPaperService.deletePaper(paperId);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
@ -92,32 +143,54 @@ public class MemberPaperController {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 处理删除试卷问题信息(可能是试卷下的子项相关信息,从名称推测)的请求,尝试调用试卷服务根据试卷ID和问题信息唯一标识符删除对应的信息,
|
|
|
|
|
* 如果操作成功则返回相应的删除结果(可能是成功的Result对象),若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param paperId 试卷的唯一标识符,用于定位到对应的试卷
|
|
|
|
|
* @param uid 试卷问题信息的唯一标识符,用于确定要删除的具体子项信息
|
|
|
|
|
* @return 返回表示删除操作结果的Result对象,成功时包含相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping("member/paperList/deletePaperQuestionInfoBtn")
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result deletePaperQuestionInfoBtn(String paperId , String uid){
|
|
|
|
|
public Result deletePaperQuestionInfoBtn(String paperId, String uid) {
|
|
|
|
|
try {
|
|
|
|
|
return iPaperService.deletePaperQuestionInfoBtn(paperId , uid);
|
|
|
|
|
return iPaperService.deletePaperQuestionInfoBtn(paperId, uid);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return ExceptionSupport.resolverResult("删除子卷", this.getClass(), e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value="member/paperList/addPaper.html",method=RequestMethod.POST)
|
|
|
|
|
/**
|
|
|
|
|
* 处理添加试卷的POST请求,从会话中获取当前会员信息并设置为试卷的创建者ID,然后调用试卷服务添加试卷,如果操作成功则返回表示成功的Result对象,
|
|
|
|
|
* 若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param paper 包含试卷相关信息的PaperEntity对象,通过请求体接收
|
|
|
|
|
* @param session 当前的HttpSession对象,从中获取当前会员信息,用于设置试卷创建者ID
|
|
|
|
|
* @return 返回表示添加操作结果的Result对象,成功时包含添加后的试卷信息及相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "member/paperList/addPaper.html", method = RequestMethod.POST)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result addPaper(@RequestBody PaperEntity paper,HttpSession session){
|
|
|
|
|
public Result addPaper(@RequestBody PaperEntity paper, HttpSession session) {
|
|
|
|
|
try {
|
|
|
|
|
MemberEntity member = (MemberEntity) session.getAttribute("currMember");
|
|
|
|
|
paper.setCreaterId(member.getUid());
|
|
|
|
|
iPaperService.addPaper(paper);
|
|
|
|
|
return Result.result(Result.SUCCESS_CODE, paper, "添加成功");
|
|
|
|
|
return Result.result(Result.SUCCESS_CODE, paper, "添加成功");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return ExceptionSupport.resolverResult("添加试卷", this.getClass(), e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value="member/paperList/updatePaper.html",method=RequestMethod.POST)
|
|
|
|
|
/**
|
|
|
|
|
* 处理更新试卷的POST请求,尝试调用试卷服务更新传入的试卷信息,如果操作成功则返回相应的更新结果(可能是成功的Result对象),若出现异常则通过异常处理工具类返回相应的异常结果
|
|
|
|
|
*
|
|
|
|
|
* @param paper 包含要更新的试卷相关信息的PaperEntity对象,通过请求体接收
|
|
|
|
|
* @return 返回表示更新操作结果的Result对象,成功时包含相应提示信息,出现异常时返回异常处理后的结果
|
|
|
|
|
*/
|
|
|
|
|
@RequestMapping(value = "member/paperList/updatePaper.html", method = RequestMethod.POST)
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public Result updatePaper(@RequestBody PaperEntity paper){
|
|
|
|
|
public Result updatePaper(@RequestBody PaperEntity paper) {
|
|
|
|
|
try {
|
|
|
|
|
return iPaperService.updatePaper(paper);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|