|
@@ -43,21 +43,8 @@ public class coursewaretesthead extends Controller {
|
|
|
if (sat_courseware_classids.size() <= 0) {
|
|
|
return getErrReturnObject().setErrMsg("请选择分类").toString();
|
|
|
}
|
|
|
- StringBuffer where = new StringBuffer("(1=2");
|
|
|
- for (Object obj : sat_courseware_classids) {
|
|
|
- JSONArray array = (JSONArray) obj;
|
|
|
- for (Object obj2 : array) {
|
|
|
- where.append(" or (");
|
|
|
- where.append("JSON_CONTAINS(t1.sat_courseware_classids,'" + obj2 + "')");
|
|
|
- where.append(")");
|
|
|
- }
|
|
|
- }
|
|
|
- where.append(")");
|
|
|
|
|
|
- QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sat_courseware_testlibrary").setTableAlias("t1");
|
|
|
- querySQL.setSiteid(siteid);
|
|
|
- querySQL.setWhere(where.toString());
|
|
|
- Rows rows = querySQL.query();
|
|
|
+ Rows rows = CoursewareHelper.getTestlibraryWithCoursewareClassRows(this, sat_courseware_classids);
|
|
|
if (num > rows.size()) {
|
|
|
return getErrReturnObject().setErrMsg("当前分类下题目数量小于系统随机出题数").toString();
|
|
|
}
|
|
@@ -90,15 +77,15 @@ public class coursewaretesthead extends Controller {
|
|
|
updateSQL.setValue("passingscore", content.getBigDecimalValue("passingscore", 60));
|
|
|
updateSQL.setValue("num", content.getIntValue("num", 0));
|
|
|
updateSQL.setValue("sat_courseware_classids", sat_courseware_classids);
|
|
|
+ if (testaddmode == 1) {//系统随机
|
|
|
+ updateSQL.setValue("testquestions", new JSONArray());
|
|
|
+ }
|
|
|
updateSQL.update();
|
|
|
}
|
|
|
-
|
|
|
- if (sat_courseware_testlibraryids.size() > 0) {
|
|
|
- Collections.shuffle(sat_courseware_testlibraryids);
|
|
|
- content.put("sat_courseware_testlibraryids",sat_courseware_testlibraryids.subList(0,num));
|
|
|
+ if (testaddmode == 1) {////系统随机
|
|
|
+ content.put("sat_courseware_testlibraryids", sat_courseware_testlibraryids);
|
|
|
return addtestquestions();
|
|
|
}
|
|
|
-
|
|
|
return detail();
|
|
|
}
|
|
|
|
|
@@ -256,17 +243,17 @@ public class coursewaretesthead extends Controller {
|
|
|
where.append(")");
|
|
|
}
|
|
|
if (whereObject.containsKey("sat_courseware_classids") && !"".equals(whereObject.getString("sat_courseware_classids"))) {
|
|
|
-
|
|
|
+ where.append(" and (1=2");
|
|
|
JSONArray sat_courseware_classids = whereObject.getJSONArray("sat_courseware_classids");
|
|
|
for (Object obj : sat_courseware_classids) {
|
|
|
JSONArray array = (JSONArray) obj;
|
|
|
for (Object obj2 : array) {
|
|
|
- where.append(" and (");
|
|
|
+ where.append(" or (");
|
|
|
where.append("JSON_CONTAINS(t1.sat_courseware_classids,'" + obj2 + "')");
|
|
|
where.append(")");
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
+ where.append(")");
|
|
|
}
|
|
|
if (whereObject.containsKey("begindate_create") && !"".equals(whereObject.getString("begindate_create"))) {
|
|
|
where.append(" and (");
|