Pārlūkot izejas kodu

feat:support page question for each ent and list plt quiz

shc 1 gadu atpakaļ
vecāks
revīzija
e3bbb96e78

+ 5 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/config/UpmsConfig.java

@@ -57,4 +57,9 @@ public class UpmsConfig {
 
 	private Integer eachDurationLimit;
 
+	/**
+	 * 平台企业ID
+	 */
+	private Integer pltEntId;
+
 }

+ 24 - 4
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmQuizController.java

@@ -12,6 +12,7 @@ import com.qunzhixinxi.hnqz.admin.api.entity.WmQuestion;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmQuiz;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmQuizItem;
 import com.qunzhixinxi.hnqz.admin.api.vo.WmQuizVO;
+import com.qunzhixinxi.hnqz.admin.config.UpmsConfig;
 import com.qunzhixinxi.hnqz.admin.service.SysUserService;
 import com.qunzhixinxi.hnqz.admin.service.WmQuestionService;
 import com.qunzhixinxi.hnqz.admin.service.WmQuizItemService;
@@ -50,10 +51,10 @@ import java.util.stream.Collectors;
 public class WmQuizController {
 
 	private final SysUserService userService;
-
 	private final WmQuizService quizService;
 	private final WmQuizItemService quizItemService;
 	private final WmQuestionService questionService;
+	private final UpmsConfig upmsConfig;
 
 	// ~ QUIZ =========
 
@@ -109,6 +110,7 @@ public class WmQuizController {
 		return R.ok(pages);
 	}
 
+
 	/**
 	 * 获取可用的试卷
 	 *
@@ -122,6 +124,21 @@ public class WmQuizController {
 		return R.ok(quizzes);
 	}
 
+	/**
+	 * 获取平台可用的试卷
+	 *
+	 * @return 可用试卷列表
+	 */
+	@GetMapping(value = "/quiz/plt/avail/list")
+	public R<List<WmQuiz>> listPltQuizzes() {
+
+		List<WmQuiz> quizzes = quizService.list(Wrappers.<WmQuiz>lambdaQuery()
+				.eq(WmQuiz::getEnterpriseId, upmsConfig.getPltEntId())
+				.eq(WmQuiz::getState, UpmsState.QuizState.RELEASE));
+
+		return R.ok(quizzes);
+	}
+
 	/**
 	 * 发布试卷
 	 *
@@ -235,7 +252,7 @@ public class WmQuizController {
 
 		WmQuizItem item = quizItemService.createItem(resource, SecurityUtils.getUser());
 
-		return item != null ? R.ok(item, "添加试卷项成功") : R.failed(item, "添加试卷项失败");
+		return item != null ? R.ok(item, "添加试卷项成功") : R.failed(null, "添加试卷项失败");
 	}
 
 	/**
@@ -312,8 +329,11 @@ public class WmQuizController {
 	public R<Page<?>> pageQuestions(@RequestParam(value = "current", defaultValue = "1") Integer current,
 									@RequestParam(value = "size", defaultValue = "20") Integer size,
 									@RequestParam(value = "label", required = false) String label) {
+
+		HnqzUser operator = SecurityUtils.getUser();
+
 		// 获取试题信息
-		Page<WmQuestion> itemPage = questionService.pageQuestions(current, size, label);
+		Page<WmQuestion> itemPage = questionService.pageQuestions(current, size, operator.getDeptId(), label);
 
 		List<WmQuestion> records = itemPage.getRecords();
 
@@ -369,7 +389,7 @@ public class WmQuizController {
 		}
 
 		Boolean succ = questionService.createQuestion(resource, operator);
-		return succ ? R.ok(succ, "添加试题成功") : R.failed(succ, "添加试题失败");
+		return succ ? R.ok(true, "添加试题成功") : R.failed(false, "添加试题失败");
 	}
 
 	/**

+ 2 - 1
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/WmQuestionService.java

@@ -49,9 +49,10 @@ public interface WmQuestionService extends IService<WmQuestion> {
 	 * @param current 当前页
 	 * @param size    每页记录数
 	 * @param label   标题
+	 * @param entId   企业ID
 	 * @return 分页结果
 	 */
-	Page<WmQuestion> pageQuestions(Integer current, Integer size, String label);
+	Page<WmQuestion> pageQuestions(Integer current, Integer size, Integer entId, String label);
 
 	/**
 	 * 获取试题详情

+ 3 - 1
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmQuestionServiceImpl.java

@@ -113,15 +113,17 @@ public class WmQuestionServiceImpl extends ServiceImpl<WmQuestionMapper, WmQuest
 	 *
 	 * @param current 当前页
 	 * @param size    每页记录数
+	 * @param entId   企业ID
 	 * @param label   标题
 	 * @return 分页结果
 	 */
 	@Override
-	public Page<WmQuestion> pageQuestions(Integer current, Integer size, String label) {
+	public Page<WmQuestion> pageQuestions(Integer current, Integer size, Integer entId, String label) {
 
 		return this.page(new Page<>(current, size),
 				Wrappers.<WmQuestion>lambdaQuery()
 						.like(StrUtil.isNotBlank(label), WmQuestion::getLabel, label)
+						.eq(entId != null, WmQuestion::getEnterpriseId, entId)
 						.orderByDesc(WmQuestion::getUpdateTime)
 		);
 	}