Browse Source

课件管理关联题库

eganwu 1 year ago
parent
commit
049f20eaf7

+ 22 - 0
src/custom/restcontroller/R.java

@@ -5674,6 +5674,7 @@ public class R {
         public static class v1 {
         }
     }
+
     public static class ID20231108160203 {
         public static class v1 {
         }
@@ -5725,6 +5726,27 @@ public class R {
         }
     }
 
+    public static class ID20240322110502 {
+        public static class v1 {
+        }
+    }
+
+    public static class ID20240322110602 {
+        public static class v1 {
+        }
+    }
+
+    public static class ID20240322110702 {
+        public static class v1 {
+        }
+    }
+
+    public static class ID20240322110802 {
+        public static class v1 {
+        }
+    }
+
+
 }
 
 

+ 104 - 0
src/custom/restcontroller/webmanage/saletool/courseware/coursewaredetail.java

@@ -281,4 +281,108 @@ public class coursewaredetail extends Controller {
         return getSucReturnObject().setData(rows).toString();
     }
 
+    @API(title = "绑定题库",apiversion = R.ID20240322110502.v1.class)
+    public String bindTestLibraryLink() throws YosException {
+
+        Long sat_coursewaredetailid = content.getLongValue("sat_coursewaredetailid");
+
+        JSONArray sat_courseware_testlibraryids = content.getJSONArray("sat_courseware_testlibraryids");
+
+        ArrayList<String> sqlList = new ArrayList<>();
+
+        for (Object object : sat_courseware_testlibraryids) {
+
+            InsertSQL insertSQL = SQLFactory.createInsertSQL(this, "sat_courseware_testlibrarylink");
+            insertSQL.setSiteid(siteid);
+            insertSQL.setUniqueid(createTableID("sat_courseware_testlibrarylink"));
+            insertSQL.setValue("sat_coursewaredetailid", sat_coursewaredetailid);
+            insertSQL.setValue("sat_courseware_testlibraryid", object);
+            sqlList.add(insertSQL.getSQL());
+        }
+        dbConnect.runSqlUpdate(sqlList);
+
+        return getSucReturnObject().toString();
+    }
+
+    @API(title = "解绑题库",apiversion = R.ID20240322110602.v1.class)
+    public String unBindTestLibraryLink() throws YosException {
+
+        Long sat_coursewaredetailid = content.getLongValue("sat_coursewaredetailid");
+
+        JSONArray sat_courseware_testlibraryids = content.getJSONArray("sat_courseware_testlibraryids");
+
+        DeleteSQL deleteSQL = SQLFactory.createDeleteSQL(this, "sat_courseware_testlibrarylink");
+        deleteSQL.setSiteid(siteid);
+        deleteSQL.setWhere("sat_coursewaredetailid", sat_coursewaredetailid);
+        deleteSQL.setWhere("sat_courseware_testlibraryid", sat_courseware_testlibraryids.toArray());
+        System.err.println(deleteSQL.getSQL());
+        deleteSQL.delete();
+
+
+        return getSucReturnObject().toString();
+    }
+
+    String sat_courseware_testlibrary = "sat_courseware_testlibrary";
+    @API(title = "选择题库",apiversion = R.ID20240322110702.v1.class)
+    public String chooseTestLibrary() throws YosException {
+
+        StringBuffer where = new StringBuffer(" 1=1 ");
+        if (content.containsKey("where")) {
+            JSONObject whereObject = content.getJSONObject("where");
+            if (whereObject.containsKey("condition") && !"".equals(whereObject.getString("condition"))) {
+                where.append(" and (");
+                where.append("t1.question like'%").append(whereObject.getString("condition")).append("%' ");
+//                where.append("or t1.notes like'%").append(whereObject.getString("condition")).append("%' ");
+                where.append(")");
+            }
+
+            if (whereObject.containsKey("sat_courseware_classids") && !"".equals(whereObject.getString("sat_courseware_classids"))) {
+
+                JSONArray sat_courseware_classids = whereObject.getJSONArray("sat_courseware_classids");
+                for (Object obj : sat_courseware_classids) {
+                    where.append(" and (");
+                    where.append("JSON_CONTAINS(t1.sat_courseware_classids,'" + obj + "')");
+                    where.append(")");
+                }
+            }
+        }
+
+        Long sat_coursewaredetailid = content.getLongValue("sat_coursewaredetailid");
+
+        QuerySQL querySQL = SQLFactory.createQuerySQL(this, sat_courseware_testlibrary,
+                        "sat_courseware_testlibraryid","question","type","typemx","createdate")
+                .setTableAlias("t1");
+        querySQL.setSiteid(siteid);
+        querySQL.setWhere("not exists(select 1 from  sat_courseware_testlibrarylink where sat_courseware_testlibraryid=t1.sat_courseware_testlibraryid and sat_coursewaredetailid=" + sat_coursewaredetailid + " and siteid='" + siteid + "' )");
+        querySQL.setWhere(where.toString());
+        querySQL.setPage(pageSize, pageNumber).setOrderBy(pageSorting);
+        Rows rows = querySQL.query();
+        for (Row row : rows) {
+            if (row.getLong("type") == 1) {
+                row.put("typestr", "选择题");
+            }
+            if (row.getLong("type") == 2) {
+                row.put("typestr", "简答题");
+            }
+            if (row.getLong("typemx") == 0) {
+                row.put("typemxstr", "简答");
+            }
+            if (row.getLong("typemx") == 1) {
+                row.put("typemxstr", "单选");
+            }
+            if (row.getLong("typemx") == 2) {
+                row.put("typemxstr", "多选");
+            }
+
+        }
+
+        return getSucReturnObject().setData(rows).toString();
+    }
+
+    @API(title = "选择题库",apiversion = R.ID20240322110802.v1.class)
+    public String testLibraryList() throws YosException {
+
+        return getSucReturnObject().setData("").toString();
+    }
+
 }