From 068fc7f2e81178e55fa191a13709af64b1a163f6 Mon Sep 17 00:00:00 2001
From: EricsHu <hrr145632>
Date: 星期一, 05 十二月 2022 14:27:43 +0800
Subject: [PATCH] 处理编码

---
 src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseGroupService.java |  132 ++++++++++++++++++++++----------------------
 1 files changed, 66 insertions(+), 66 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseGroupService.java b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseGroupService.java
index 95d0528..16dcd25 100644
--- a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseGroupService.java
+++ b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseGroupService.java
@@ -39,7 +39,7 @@
 import com.qxueyou.scc.exercise.util.ExerciseUtils;
 
 /**
- * 通知管理服务层
+ * 閫氱煡绠$悊鏈嶅姟灞�
  *
  * @author kevin
  * @createTime 2017-11-1
@@ -106,14 +106,14 @@
 
 			for (ExerciseGroup exerciseGroup : lstExerciseGroup) {
 				if (ExerciseGroup.STATUS_DRAFT != exerciseGroup.getStatus()) {
-					return new Result(false, "只有草稿状态的题库,才能发布。");
+					return new Result(false, "鍙湁鑽夌鐘舵�佺殑棰樺簱,鎵嶈兘鍙戝竷銆�");
 				}
 				exerciseGroup.setStatus(ExerciseGroup.STATUS_PUBLISHED);
 				TraceUtils.setUpdateTrace(exerciseGroup);
 				save(exerciseGroup);
 			}
 		} else {
-			return new Result(false, "没有选择要发布的题库。");
+			return new Result(false, "娌℃湁閫夋嫨瑕佸彂甯冪殑棰樺簱銆�");
 		}
 		return new Result(true);
 	}
@@ -128,14 +128,14 @@
 			List<ExerciseGroup> lstExerciseGroup = this.findByComplexHql(hql, pramMap, ExerciseGroup.class);
 			for (ExerciseGroup exerciseGroup : lstExerciseGroup) {
 				if (ExerciseGroup.STATUS_DRAFT != exerciseGroup.getStatus()) {
-					return new Result(false, "只有发布状态的题库,才能撤回。");
+					return new Result(false, "鍙湁鍙戝竷鐘舵�佺殑棰樺簱,鎵嶈兘鎾ゅ洖銆�");
 				}
 				exerciseGroup.setStatus(ExerciseGroup.STATUS_DRAFT);
 				TraceUtils.setUpdateTrace(exerciseGroup);
 				save(exerciseGroup);
 			}
 		} else {
-			return new Result(false, "没有选择要撤回的题库。");
+			return new Result(false, "娌℃湁閫夋嫨瑕佹挙鍥炵殑棰樺簱銆�");
 		}
 
 		return new Result(true);
@@ -153,14 +153,14 @@
 	public ExerciseGroup queryExerciseGroupDetail(String groupId,String batchId) {
 		ExerciseGroup exerciseGroup = this.read(ExerciseGroup.class, groupId);
 		if(exerciseGroup!=null){
-			//根据批次ID查询考试ID
+			//鏍规嵁鎵规ID鏌ヨ鑰冭瘯ID
 			String hql="select r.examId from ExamBatchClassRe r where r.examBatchId=?";
 			String examId = this.findUnique(hql, CollectionUtils.newList(batchId), String.class);
 			exerciseGroup.setItems(this.queryExerciseItemList(exerciseGroup,examId));
 		}
 		return exerciseGroup;
 	}
-	//补考考试获取试卷设置
+	//琛ヨ�冭�冭瘯鑾峰彇璇曞嵎璁剧疆
 	@Override
 	public ExerciseGroup queryReExerciseGroupDetail(String groupId,String examId) {
 		ExerciseGroup exerciseGroup = this.read(ExerciseGroup.class, groupId);
@@ -171,7 +171,7 @@
 	}
 
 	/**
-	 * 查询练习题目list
+	 * 鏌ヨ缁冧範棰樼洰list
 	 *
 	 * @param groupId
 	 * @return
@@ -182,12 +182,12 @@
 		List<ExerciseItem> lstItems = boundValueOperations.get();
 
 		if(lstItems==null){
-			// 1.查询练习题目信息
+			// 1.鏌ヨ缁冧範棰樼洰淇℃伅
 			StringBuffer hqlBuffer = new StringBuffer(1000);
 			hqlBuffer.append("select item from ExerciseItem item, ExerciseGroupItemRe re, ExerciseGroup g");
 			hqlBuffer.append(" where item.exerciseId=re.exerciseItemId and re.exerciseGroupId=g.groupId");
 			hqlBuffer.append(" and g.groupId = ?  and item.deleteFlag is false  and g.deleteFlag is false");
-			//如果是题库按照题目类型排序,其他按照题目顺序排序
+			//濡傛灉鏄搴撴寜鐓ч鐩被鍨嬫帓搴忥紝鍏朵粬鎸夌収棰樼洰椤哄簭鎺掑簭
 			if(exerciseGroup.getType() == ExerciseGroup.TYPE_EXERCISE_GROUP_LIB){
 				hqlBuffer.append(" and re.deleteFlag is false order by item.type, re.itemOrder");
 			}else{
@@ -196,12 +196,12 @@
 
 			lstItems = this.find(hqlBuffer.toString(), CollectionUtils.newList(exerciseGroup.getGroupId()), ExerciseItem.class);
 
-			// 为空
+			// 涓虹┖
 			if (lstItems.isEmpty()) {
 				return lstItems;
 			}
 
-			// 组装选项,答案,解析等信息
+			// 缁勮閫夐」锛岀瓟妗堬紝瑙f瀽绛変俊鎭�
 			lstItems = getCommonExerItemDetail(lstItems, exerciseGroup.getGroupId());
 
 			boundValueOperations.setIfAbsent(lstItems);
@@ -215,12 +215,12 @@
 		List<ExerciseItem> lstItems = boundValueOperations.get();
 
 		if(true){
-			// 1.查询练习题目信息
+			// 1.鏌ヨ缁冧範棰樼洰淇℃伅
 			StringBuffer hqlBuffer = new StringBuffer(1000);
 			hqlBuffer.append("select item from ExerciseItem item, ExerciseGroupItemRe re, ExerciseGroup g");
 			hqlBuffer.append(" where item.exerciseId=re.exerciseItemId and re.exerciseGroupId=g.groupId");
 			hqlBuffer.append(" and g.groupId = ?  and item.deleteFlag is false  and g.deleteFlag is false");
-			//如果是题库按照题目类型排序,其他按照题目顺序排序
+			//濡傛灉鏄搴撴寜鐓ч鐩被鍨嬫帓搴忥紝鍏朵粬鎸夌収棰樼洰椤哄簭鎺掑簭
 			if(exerciseGroup.getType() == ExerciseGroup.TYPE_EXERCISE_GROUP_LIB){
 				hqlBuffer.append(" and re.deleteFlag is false order by item.type, re.itemOrder");
 			}else{
@@ -229,12 +229,12 @@
 
 			lstItems = this.find(hqlBuffer.toString(), CollectionUtils.newList(exerciseGroup.getGroupId()), ExerciseItem.class);
 
-			// 为空
+			// 涓虹┖
 			if (lstItems.isEmpty()) {
 				return lstItems;
 			}
 
-			// 组装选项,答案,解析等信息
+			// 缁勮閫夐」锛岀瓟妗堬紝瑙f瀽绛変俊鎭�
 			lstItems = getCommonExerItemDetail(lstItems, exerciseGroup.getGroupId(),examId);
 
 			boundValueOperations.setIfAbsent(lstItems);
@@ -245,7 +245,7 @@
 	}
 
 	/**
-	 * 重新组装练习题 加入分析结果
+	 * 閲嶆柊缁勮缁冧範棰� 鍔犲叆鍒嗘瀽缁撴灉
 	 *
 	 * @param lstItems
 	 * @param exerciseGroupId
@@ -253,20 +253,20 @@
 	 * @return
 	 */
 	private List<ExerciseItem> getCommonExerItemDetail(List<ExerciseItem> lstItems, String exerciseGroupId) {
-		// 0.组装参数
+		// 0.缁勮鍙傛暟
 		Map<String, Object> argsMap = new HashMap<String, Object>();
 		Object[] args = new Object[lstItems.size()];
 		for (int i = 0; i < lstItems.size(); i++) {
 			args[i] = lstItems.get(i).getExerciseId();
 		}
 		argsMap.put("exerciseIds", args);
-		//查询题目得分
+		//鏌ヨ棰樼洰寰楀垎
 		String hql_itemScores = "from ExerciseItemScore s where s.groupId=:groupId and s.exerciseItemId in (:exerciseIds) and s.deleteFlag is false  order by exerciseItemId";
 		List<ExerciseItemScore> lstItemScores = this.findByComplexHql(hql_itemScores, CollectionUtils.newObjectMap("groupId",exerciseGroupId,"exerciseIds",args), ExerciseItemScore.class);
 		Map<String, List<ExerciseItemScore>> scoresMap=  new HashMap<String,List<ExerciseItemScore>>(lstItemScores.size());
 		ExerciseUtils.packageExerciseItemScore(scoresMap, lstItemScores);
 
-		// 1.查询练习题目全站分析
+		// 1.鏌ヨ缁冧範棰樼洰鍏ㄧ珯鍒嗘瀽
 		String hql_analisis = "from ExerciseItemAnalisi  where exerciseItemId in (:exerciseIds)  and deleteFlag is false ";
 		List<ExerciseItemAnalisi> lstAnalisis = this.findByComplexHql(hql_analisis, argsMap, ExerciseItemAnalisi.class);
 		Map<String, List<ExerciseItemAnalisi>> analisiMap = new HashMap<String, List<ExerciseItemAnalisi>>(lstAnalisis.size());
@@ -278,42 +278,42 @@
 			}
 		}
 
-		// 2.查询练习题目答案选项
+		// 2.鏌ヨ缁冧範棰樼洰绛旀閫夐」
 		Map<String, List<ExerciseItemOption>> optionsMap = new HashMap<String, List<ExerciseItemOption>>(
 				lstItems.size());
 		Map<String, String> answerMap = new HashMap<String, String>();
 		String hql_options = "from ExerciseItemOption where exerciseItemId in (:exerciseIds) and deleteFlag is false order by exerciseItemId, optionOrder ";
 		List<ExerciseItemOption> lstAllOptions = this.findByComplexHql(hql_options, argsMap, ExerciseItemOption.class);
 
-		// 重新组装练习
+		// 閲嶆柊缁勮缁冧範
 		ExerciseUtils.packageExerciseItem(optionsMap, answerMap, lstAllOptions, null);
 
 		String exerciseId = null;
 		for (ExerciseItem item : lstItems) {
 
-			// 4.0 分析结果
+			// 4.0 鍒嗘瀽缁撴灉
 			exerciseId = item.getExerciseId();
 
-			// 得到练习组id
+			// 寰楀埌缁冧範缁刬d
 			if (StringUtils.isNotBlank(exerciseGroupId)) {
 				item.setExerciseGroupId(exerciseGroupId);
 			}
 
-			// 4.3 题目选项
+			// 4.3 棰樼洰閫夐」
 			item.setOptions(optionsMap.get(exerciseId));
 
 			item.setAnalisisResult(null);
 			item.setAnalysises(null);
 			item.setAnalysises(analisiMap.get(exerciseId));
 
-			//组装练习题目
+			//缁勮缁冧範棰樼洰
 			item.setScores(scoresMap.get(exerciseId));
 		}
 
 		return lstItems;
 	}
 	/**
-	 * 重新组装练习题 加入分析结果
+	 * 閲嶆柊缁勮缁冧範棰� 鍔犲叆鍒嗘瀽缁撴灉
 	 *
 	 * @param lstItems
 	 * @param exerciseGroupId
@@ -321,7 +321,7 @@
 	 * @return
 	 */
 	private List<ExerciseItem> getCommonExerItemDetail(List<ExerciseItem> lstItems, String exerciseGroupId,String examId) {
-		// 0.组装参数
+		// 0.缁勮鍙傛暟
 		Map<String, Object> argsMap = new HashMap<String, Object>();
 		Object[] args = new Object[lstItems.size()];
 		for (int i = 0; i < lstItems.size(); i++) {
@@ -329,21 +329,21 @@
 		}
 		argsMap.put("exerciseIds", args);
 
-		//查询题目得分
+		//鏌ヨ棰樼洰寰楀垎
 		String hql_itemScores = "from ExerciseItemScore s where s.groupId=:groupId and s.exerciseItemId in (:exerciseIds) and s.deleteFlag is false  order by exerciseItemId";
 		List<ExerciseItemScore> lstItemScores = this.findByComplexHql(hql_itemScores, CollectionUtils.newObjectMap("groupId",exerciseGroupId,"exerciseIds",args), ExerciseItemScore.class);
 		Map<String, List<ExerciseItemScore>> scoresMap= new HashMap<String,List<ExerciseItemScore>>();
 		log.error("=================================================");
 		List<ExerciseItemSet> exerciseItemSets=null;
 		if (lstItemScores==null||lstItemScores.size()<=0){
-			//根据考试ID查询itemSet
+			//鏍规嵁鑰冭瘯ID鏌ヨitemSet
 			String hql = "select r from ExerciseItemSet r where r.exerciseInfoId=?";
 			exerciseItemSets = this.find(hql, CollectionUtils.newList(examId), ExerciseItemSet.class);
 		}else {
 			ExerciseUtils.packageExerciseItemScore(scoresMap, lstItemScores);
 		}
 
-		// 1.查询练习题目全站分析
+		// 1.鏌ヨ缁冧範棰樼洰鍏ㄧ珯鍒嗘瀽
 		String hql_analisis = "from ExerciseItemAnalisi  where exerciseItemId in (:exerciseIds)  and deleteFlag is false ";
 		List<ExerciseItemAnalisi> lstAnalisis = this.findByComplexHql(hql_analisis, argsMap, ExerciseItemAnalisi.class);
 		Map<String, List<ExerciseItemAnalisi>> analisiMap = new HashMap<String, List<ExerciseItemAnalisi>>(lstAnalisis.size());
@@ -355,40 +355,40 @@
 			}
 		}
 
-		// 2.查询练习题目答案选项
+		// 2.鏌ヨ缁冧範棰樼洰绛旀閫夐」
 		Map<String, List<ExerciseItemOption>> optionsMap = new HashMap<String, List<ExerciseItemOption>>(
 				lstItems.size());
 		Map<String, String> answerMap = new HashMap<String, String>();
 		String hql_options = "from ExerciseItemOption where exerciseItemId in (:exerciseIds) and deleteFlag is false order by exerciseItemId, optionOrder ";
 		List<ExerciseItemOption> lstAllOptions = this.findByComplexHql(hql_options, argsMap, ExerciseItemOption.class);
 
-		// 重新组装练习
+		// 閲嶆柊缁勮缁冧範
 		ExerciseUtils.packageExerciseItem(optionsMap, answerMap, lstAllOptions, null);
 
 		String exerciseId = null;
 		for (ExerciseItem item : lstItems) {
 
-			// 4.0 分析结果
+			// 4.0 鍒嗘瀽缁撴灉
 			exerciseId = item.getExerciseId();
 
-			// 得到练习组id
+			// 寰楀埌缁冧範缁刬d
 			if (StringUtils.isNotBlank(exerciseGroupId)) {
 				item.setExerciseGroupId(exerciseGroupId);
 			}
 
-			// 4.3 题目选项
+			// 4.3 棰樼洰閫夐」
 			item.setOptions(optionsMap.get(exerciseId));
 
 			item.setAnalisisResult(null);
 			item.setAnalysises(null);
 			item.setAnalysises(analisiMap.get(exerciseId));
-			//组装练习题目
+			//缁勮缁冧範棰樼洰
 			item.setScores(scoresMap.get(exerciseId));
-			//随机试题没有对应分数,需要根据考试Id从item_set里查询每种题目的分数设置
+			//闅忔満璇曢娌℃湁瀵瑰簲鍒嗘暟锛岄渶瑕佹牴鎹�冭瘯Id浠巌tem_set閲屾煡璇㈡瘡绉嶉鐩殑鍒嗘暟璁剧疆
 			if (exerciseItemSets != null ) {
-				//遍历每个item
+				//閬嶅巻姣忎釜item
 				short type = item.getType();
-				//遍历itemset,每个item根据type获取对应类型的分数设置
+				//閬嶅巻itemset锛屾瘡涓猧tem鏍规嵁type鑾峰彇瀵瑰簲绫诲瀷鐨勫垎鏁拌缃�
 				for (ExerciseItemSet exerciseItemSet : exerciseItemSets) {
 					if (exerciseItemSet.getItemType() == type) {
 						/**
@@ -417,12 +417,12 @@
 	@Override
 	public int doCopyExerciseGroupItem(ExerciseGroup sourceGroup, ExerciseGroup targetGroup,Short[] itemTypes, int startOrder)
 			throws IllegalAccessException, InvocationTargetException {
-		//参数判断
+		//鍙傛暟鍒ゆ柇
 		if(sourceGroup==null || targetGroup==null || ArrayUtils.isEmpty(itemTypes)){
 			return  0;
 		}
 
-		//查询题目组与题目关联关系,需要过滤掉在目标题目组中已拷贝过的题目
+		//鏌ヨ棰樼洰缁勪笌棰樼洰鍏宠仈鍏崇郴,闇�瑕佽繃婊ゆ帀鍦ㄧ洰鏍囬鐩粍涓凡鎷疯礉杩囩殑棰樼洰
 		String hql = "select r1 from ExerciseGroupItemRe r1,ExerciseItem i where r1.exerciseItemId = i.exerciseId and i.type in(:itemTypes) and r1.deleteFlag is false and r1.exerciseGroupId = :sourceGroupId "
 				+ " and not exists (select 1 from ExerciseGroupItemRe r2 where r2.deleteFlag is false and r2.exerciseItemId = r1.exerciseItemId  and r2.exerciseGroupId = :targetGroupId ) order by r1.itemOrder ASC ";
 
@@ -432,7 +432,7 @@
 		queryParamMap.put("itemTypes", itemTypes);
 		List<ExerciseGroupItemRe> lstSourceGroupRe = this.findByComplexHql(hql,queryParamMap,ExerciseGroupItemRe.class);
 
-		//查询题目组关联的得分信息,只关联获取没初化过的
+		//鏌ヨ棰樼洰缁勫叧鑱旂殑寰楀垎淇℃伅,鍙叧鑱旇幏鍙栨病鍒濆寲杩囩殑
 		String hql_itemScores = "select s1 from ExerciseItemScore s1,ExerciseItem i where s1.exerciseItemId = i.exerciseId and i.type in(:itemTypes) and s1.groupId=:sourceGroupId and s1.deleteFlag is false and not exists ("
 				+ " select 1 from ExerciseItemScore s2 where s2.deleteFlag is false and s2.exerciseItemId = s1.exerciseItemId  and s2.groupId =:targetGroupId ) order by s1.exerciseItemId";
 		List<ExerciseItemScore> lstItemScores = this.findByComplexHql(hql_itemScores,queryParamMap, ExerciseItemScore.class);
@@ -444,11 +444,11 @@
 
 		int copyItemSize=0;
 		if(lstSourceGroupRe!=null && lstSourceGroupRe.size()>0){
-			//更新item的顺序号
+			//鏇存柊item鐨勯『搴忓彿
 			this.bulkUpdate("update ExerciseGroupItemRe r set r.itemOrder=r.itemOrder+"+lstSourceGroupRe.size()
 				+" where r.exerciseGroupId=? and r.itemOrder>? and r.deleteFlag is false ", new Object[]{targetGroup.getGroupId(),startOrder});
 
-			//拷贝item
+			//鎷疯礉item
 			copyItemSize=lstSourceGroupRe.size();
 			int itemOrder = startOrder;
 			ExerciseItemScore objItemScore = null;
@@ -461,7 +461,7 @@
 				ojbItemRe.setExerciseGroupId(targetGroup.getGroupId());
 				lstTargetItemRe.add(ojbItemRe);
 
-				//复制题目分数信息
+				//澶嶅埗棰樼洰鍒嗘暟淇℃伅
 				List<ExerciseItemScore> scores = scoresMap.get(it.getExerciseItemId());
 				if(scores!=null && scores.size()>0){
 					for(int i=0;i<scores.size();i++){
@@ -482,12 +482,12 @@
 	@Override
 	public int doCopyExerciseGroupItem(ExerciseGroup sourceGroup, ExerciseGroup targetGroup,String[] exerciseItemIds, int startOrder)
 			throws IllegalAccessException, InvocationTargetException {
-		//参数判断
+		//鍙傛暟鍒ゆ柇
 		if(sourceGroup==null || targetGroup==null || ArrayUtils.isEmpty(exerciseItemIds)){
 			return  0;
 		}
 
-		//查询题目组与题目关联关系,需要过滤掉在目标题目组中已拷贝过的题目
+		//鏌ヨ棰樼洰缁勪笌棰樼洰鍏宠仈鍏崇郴,闇�瑕佽繃婊ゆ帀鍦ㄧ洰鏍囬鐩粍涓凡鎷疯礉杩囩殑棰樼洰
 		String hql = "select r1 from ExerciseGroupItemRe r1 where r1.exerciseItemId in(:exerciseItemIds) and r1.deleteFlag is false and r1.exerciseGroupId = :sourceGroupId "
 				+ " and not exists (select 1 from ExerciseGroupItemRe r2 where r2.deleteFlag is false and r2.exerciseItemId = r1.exerciseItemId  and r2.exerciseGroupId = :targetGroupId ) order by r1.itemOrder ASC ";
 
@@ -497,7 +497,7 @@
 		queryParamMap.put("exerciseItemIds", exerciseItemIds);
 		List<ExerciseGroupItemRe> lstSourceGroupRe = this.findByComplexHql(hql,queryParamMap,ExerciseGroupItemRe.class);
 
-		//查询题目组关联的得分信息,只关联获取没初化过的
+		//鏌ヨ棰樼洰缁勫叧鑱旂殑寰楀垎淇℃伅,鍙叧鑱旇幏鍙栨病鍒濆寲杩囩殑
 		String hql_itemScores = "select s1 from ExerciseItemScore s1 where s1.exerciseItemId in (:exerciseItemIds) and  s1.groupId=:sourceGroupId and s1.deleteFlag is false and not exists ("
 				+ " select 1 from ExerciseItemScore s2 where s2.deleteFlag is false and s2.exerciseItemId = s1.exerciseItemId  and s2.groupId =:targetGroupId ) order by s1.exerciseItemId";
 		List<ExerciseItemScore> lstItemScores = this.findByComplexHql(hql_itemScores,queryParamMap, ExerciseItemScore.class);
@@ -509,11 +509,11 @@
 
 		int copyItemSize=0;
 		if(lstSourceGroupRe!=null && lstSourceGroupRe.size()>0){
-			//更新item的顺序号
+			//鏇存柊item鐨勯『搴忓彿
 			this.bulkUpdate("update ExerciseGroupItemRe r set r.itemOrder=r.itemOrder+"+lstSourceGroupRe.size()
 				+" where r.exerciseGroupId=? and r.itemOrder>? and r.deleteFlag is false ", new Object[]{targetGroup.getGroupId(),startOrder});
 
-			//拷贝item
+			//鎷疯礉item
 			copyItemSize=lstSourceGroupRe.size();
 			int itemOrder = startOrder;
 			ExerciseItemScore objItemScore = null;
@@ -526,7 +526,7 @@
 				ojbItemRe.setExerciseGroupId(targetGroup.getGroupId());
 				lstTargetItemRe.add(ojbItemRe);
 
-				//复制题目分数信息
+				//澶嶅埗棰樼洰鍒嗘暟淇℃伅
 				List<ExerciseItemScore> scores = scoresMap.get(it.getExerciseItemId());
 				if(scores!=null && scores.size()>0){
 					for(int i=0;i<scores.size();i++){
@@ -553,7 +553,7 @@
 		queryParams.put("groupId", groupId);
 		queryParams.put("exerciseItemIds", new String[] { exerciseItemId1, exerciseItemId2 });
 		List<ExerciseGroupItemRe> lstItemRe = this.findByComplexHql(hql, queryParams, ExerciseGroupItemRe.class);
-		// 交换顺序号
+		// 浜ゆ崲椤哄簭鍙�
 		int tempOrder = lstItemRe.get(0).getItemOrder();
 		lstItemRe.get(0).setItemOrder(lstItemRe.get(1).getItemOrder());
 		lstItemRe.get(1).setItemOrder(tempOrder);
@@ -575,18 +575,18 @@
 
 			for (ExerciseGroup exerciseGroup : lstExerciseLibs) {
 				if (ExerciseGroup.STATUS_DRAFT != exerciseGroup.getStatus()) {
-					return new Result(false, "只有草稿状态的题库,才能发布。");
+					return new Result(false, "鍙湁鑽夌鐘舵�佺殑棰樺簱,鎵嶈兘鍙戝竷銆�");
 				}
-				//判断题库中是否有题,有题目的题库才能发布
+				//鍒ゆ柇棰樺簱涓槸鍚︽湁棰橈紝鏈夐鐩殑棰樺簱鎵嶈兘鍙戝竷
 				if(exerciseGroup.getAllCount()==null || exerciseGroup.getAllCount().intValue()<=0){
-					return new Result(false, "只有已经配置题目的题库,才能发布。");
+					return new Result(false, "鍙湁宸茬粡閰嶇疆棰樼洰鐨勯搴�,鎵嶈兘鍙戝竷銆�");
 				}
 				exerciseGroup.setStatus(ExerciseGroup.STATUS_PUBLISHED);
 				TraceUtils.setUpdateTrace(exerciseGroup);
 				save(exerciseGroup);
 			}
 		} else {
-			return new Result(false, "没有选择要发布的题库。");
+			return new Result(false, "娌℃湁閫夋嫨瑕佸彂甯冪殑棰樺簱銆�");
 		}
 		return new Result(true);
 	}
@@ -603,14 +603,14 @@
 
 			for (ExerciseGroup exerciseGroup : lstExerciseLibs) {
 				if (ExerciseGroup.STATUS_PUBLISHED != exerciseGroup.getStatus()) {
-					return new Result(false, "只有发布状态的题库,才能撤回。");
+					return new Result(false, "鍙湁鍙戝竷鐘舵�佺殑棰樺簱,鎵嶈兘鎾ゅ洖銆�");
 				}
 				exerciseGroup.setStatus(ExerciseGroup.STATUS_DRAFT);
 				TraceUtils.setUpdateTrace(exerciseGroup);
 				save(exerciseGroup);
 			}
 		} else {
-			return new Result(false, "没有选择要撤回的题库。");
+			return new Result(false, "娌℃湁閫夋嫨瑕佹挙鍥炵殑棰樺簱銆�");
 		}
 		return new Result(true);
 	}
@@ -653,19 +653,19 @@
 
 
 	/**
-	 * 创建考试题目
+	 * 鍒涘缓鑰冭瘯棰樼洰
 	 *
 	 * @param groupIds
 	 * @return
 	 */
 	private Result doCreateRandomExerciseItem(String[] groupIds, List<ExerciseItemSet> lstExerciseItemSet) {
 		if (groupIds.length == 0 || lstExerciseItemSet == null || lstExerciseItemSet.size() == 0) {
-			return new Result(false, "参数错误");
+			return new Result(false, "鍙傛暟閿欒");
 		}
 
 		List<Map<String, Object>> lstExerciseItem = new ArrayList<Map<String, Object>>();
 
-		//按照题型(单选题(1),多选题(2),判断题(3), 填空题(8),简答题(4))排序lstExerciseItemSet
+		//鎸夌収棰樺瀷(鍗曢�夐(1)锛屽閫夐(2)锛屽垽鏂(3)锛� 濉┖棰�(8)锛岀畝绛旈(4))鎺掑簭lstExerciseItemSet
 		Collections.sort(lstExerciseItemSet, new Comparator<ExerciseItemSet>(){
 			@Override
 			public int compare(ExerciseItemSet o1, ExerciseItemSet o2) {
@@ -690,7 +690,7 @@
 					CollectionUtils.newObjectMap("exerciseGroupId", paramGroupIds, "type", itemSet.getItemType()));
 
 			if (lstItem.size() < itemSet.getItemCount()) {
-				return new Result(false, "题目数据不够,请增加题库的题目或者减少试卷的题数");
+				return new Result(false, "棰樼洰鏁版嵁涓嶅锛岃澧炲姞棰樺簱鐨勯鐩垨鑰呭噺灏戣瘯鍗风殑棰樻暟");
 			}
 
 			lstExerciseItem.addAll(this.getRandomList(lstItem, itemSet.getItemCount()));
@@ -700,7 +700,7 @@
 	}
 
 	/**
-	 * 随机获取List中若干数据
+	 * 闅忔満鑾峰彇List涓嫢骞叉暟鎹�
 	 *
 	 * @param paramList
 	 * @param count
@@ -715,7 +715,7 @@
 		List<Map<String, Object>> newList = new ArrayList<Map<String, Object>>();
 		int temp = 0;
 		for (int i = 0; i < count; i++) {
-			temp = random.nextInt(paramList.size());// 将产生的随机数作为被抽list的索引
+			temp = random.nextInt(paramList.size());// 灏嗕骇鐢熺殑闅忔満鏁颁綔涓鸿鎶絣ist鐨勭储寮�
 			if (!tempList.contains(temp)) {
 				tempList.add(temp);
 				newList.add(paramList.get(temp));
@@ -727,7 +727,7 @@
 	}
 
 	/**
-	 * 获取题库中各种题型的数量
+	 * 鑾峰彇棰樺簱涓悇绉嶉鍨嬬殑鏁伴噺
 	 * @param groupIds
 	 * @return
 	 */

--
Gitblit v1.8.0