|
@@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.WmQuizDTO;
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.WmQuizDTO;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmQuestion;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmQuestion;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.entity.WmQuizItem;
|
|
import com.qunzhixinxi.hnqz.admin.api.vo.WmQuizVO;
|
|
import com.qunzhixinxi.hnqz.admin.api.vo.WmQuizVO;
|
|
import com.qunzhixinxi.hnqz.admin.service.SysUserService;
|
|
import com.qunzhixinxi.hnqz.admin.service.SysUserService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmQuestionService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmQuestionService;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.service.WmQuizItemService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmQuizService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmQuizService;
|
|
import com.qunzhixinxi.hnqz.common.core.exception.BizException;
|
|
import com.qunzhixinxi.hnqz.common.core.exception.BizException;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
@@ -44,8 +46,93 @@ public class WmQuizController {
|
|
private final SysUserService userService;
|
|
private final SysUserService userService;
|
|
|
|
|
|
private final WmQuizService quizService;
|
|
private final WmQuizService quizService;
|
|
|
|
+ private final WmQuizItemService quizItemService;
|
|
private final WmQuestionService questionService;
|
|
private final WmQuestionService questionService;
|
|
|
|
|
|
|
|
+ // ~ QUIZ =========
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // ~ QUIZ ITEM =========
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取试卷项信息
|
|
|
|
+ *
|
|
|
|
+ * @param itemId 试卷项ID
|
|
|
|
+ * @return 试卷项详情
|
|
|
|
+ */
|
|
|
|
+ @GetMapping(value = "/quiz/item/details")
|
|
|
|
+ public R<WmQuizItem> getItemDetails(@RequestParam(value = "itemId") Integer itemId) {
|
|
|
|
+ WmQuizItem item = quizItemService.getItemDetails(itemId);
|
|
|
|
+ return R.ok(item);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取试卷的试卷项列表
|
|
|
|
+ *
|
|
|
|
+ * @param sn 试卷编号
|
|
|
|
+ * @return 试卷项链表
|
|
|
|
+ */
|
|
|
|
+ @GetMapping(value = "/quiz/item/list")
|
|
|
|
+ public R<List<WmQuizItem>> listItems(@RequestParam(value = "quizSerialNum") String sn) {
|
|
|
|
+ List<WmQuizItem> items = quizItemService.listItems(sn);
|
|
|
|
+ return R.ok(items);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 创建试卷项(添加试题)
|
|
|
|
+ *
|
|
|
|
+ * @param resource 试卷项信息
|
|
|
|
+ * @return 创建结果
|
|
|
|
+ */
|
|
|
|
+ @SysLog("创建试卷项(添加试题)")
|
|
|
|
+ @PostMapping(value = "/quiz/item/create")
|
|
|
|
+ public R<Boolean> createQuizItem(@Valid @RequestBody WmQuizDTO.OnItemCreate resource) {
|
|
|
|
+
|
|
|
|
+ Boolean succ = quizItemService.createItem(resource, SecurityUtils.getUser());
|
|
|
|
+
|
|
|
|
+ return succ ? R.ok(true, "添加试卷项成功") : R.failed(false, "添加试卷项失败");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 批量创建试卷项(添加试题)
|
|
|
|
+ *
|
|
|
|
+ * @param resources 试卷项信息
|
|
|
|
+ * @return 创建结果
|
|
|
|
+ */
|
|
|
|
+ @SysLog("批量创建试卷项(添加试题)")
|
|
|
|
+ @PostMapping(value = "/quiz/item/batch/create")
|
|
|
|
+ public R<Boolean> createQuizItems(@Valid @RequestBody List<WmQuizDTO.OnItemCreate> resources) {
|
|
|
|
+
|
|
|
|
+ Boolean succ = quizItemService.createItems(resources, SecurityUtils.getUser());
|
|
|
|
+
|
|
|
|
+ return succ ? R.ok(true, "批量添加试卷项成功") : R.failed(false, "批量添加试卷项失败");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 更新试卷项
|
|
|
|
+ *
|
|
|
|
+ * @param resource 试卷项信息
|
|
|
|
+ * @return 更新结果
|
|
|
|
+ */
|
|
|
|
+ @SysLog("更新试卷项")
|
|
|
|
+ @PostMapping(value = "/quiz/item/update")
|
|
|
|
+ public R<Boolean> updateQuizItem(@Valid @RequestBody WmQuizDTO.OnItemUpdate resource) {
|
|
|
|
+
|
|
|
|
+ Boolean succ = quizItemService.updateItem(resource, SecurityUtils.getUser());
|
|
|
|
+
|
|
|
|
+ return succ ? R.ok(true, "更新试卷项成功") : R.failed(false, "更新试卷项失败");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @SysLog("删除试卷项")
|
|
|
|
+ @PostMapping(value = "/quiz/item/del")
|
|
|
|
+ public R<Boolean> delQuizItem(@Valid @RequestBody WmQuizDTO.OnItemDelete resource) {
|
|
|
|
+
|
|
|
|
+ Boolean deleted = quizItemService.delQuizItem(resource.getItemId());
|
|
|
|
+
|
|
|
|
+ return deleted ? R.ok(true, "删除试卷项成功") : R.failed(false, "删除试卷项失败");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // ~ QUESTION =========
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取试题详情
|
|
* 获取试题详情
|
|
@@ -158,7 +245,7 @@ public class WmQuizController {
|
|
throw new BizException(errorMsg);
|
|
throw new BizException(errorMsg);
|
|
}
|
|
}
|
|
Boolean succ = questionService.updateQuestion(resource, operator);
|
|
Boolean succ = questionService.updateQuestion(resource, operator);
|
|
- return succ ? R.ok(succ, "更新试题成功") : R.failed(succ, "更新试题失败");
|
|
|
|
|
|
+ return succ ? R.ok(true, "更新试题成功") : R.failed(false, "更新试题失败");
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|