summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2019-01-09 11:49:40 +0100
committerSimon Rettberg2019-01-09 11:49:40 +0100
commit13a778fcb35093cb50dc8f14664f7ffeb4574493 (patch)
tree6dbbfd30f52f9263dede8e1ff3888f6f1f505ec2
parentRevert "[server] Clear Features list now that RPC version bumped" (diff)
downloadtutor-module-13a778fcb35093cb50dc8f14664f7ffeb4574493.tar.gz
tutor-module-13a778fcb35093cb50dc8f14664f7ffeb4574493.tar.xz
tutor-module-13a778fcb35093cb50dc8f14664f7ffeb4574493.zip
[server] Get runscripts for lecture: Fix query
-rw-r--r--dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbRunScript.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbRunScript.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbRunScript.java
index 172ef691..26b2c2e2 100644
--- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbRunScript.java
+++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbRunScript.java
@@ -43,13 +43,14 @@ public class DbRunScript {
int osId) {
List<DbLecture.RunScript> retval = null;
try {
- MysqlStatement stmt = connection.prepareStatement("SELECT s.content, s.extension, s.visibility, s.passcreds"
- + " FROM presetrunscript s"
- + " INNER JOIN lecture_x_runscript lxr ON "
- + " ((lxr.lectureid = :lectureid AND lxr.runscriptid = s.runscriptid) OR (s.isglobal))"
- + " INNER JOIN presetrunscript_x_operatingsystem pxo ON "
- + " (pxo.runscriptid = s.runscriptid AND pxo.osid = :osid)"
- + " ORDER BY s.scriptname ASC");
+ MysqlStatement stmt = connection.prepareStatement("SELECT us.content, us.extension, us.visibility, us.passcreds"
+ + " FROM (SELECT s.scriptname, s.content, s.extension, s.visibility, s.passcreds, s.runscriptid"
+ + " FROM presetrunscript s"
+ + " INNER JOIN lecture_x_runscript lxr ON (lxr.lectureid = :lectureid AND lxr.runscriptid = s.runscriptid)"
+ + " UNION SELECT t.scriptname, t.content, t.extension, t.visibility, t.passcreds, t.runscriptid"
+ + " FROM presetrunscript t WHERE t.isglobal"
+ + " ) us INNER JOIN presetrunscript_x_operatingsystem pxo ON (pxo.runscriptid = us.runscriptid AND pxo.osid = :osid)"
+ + " ORDER BY us.scriptname ASC");
stmt.setString("lectureid", lectureId);
stmt.setInt("osid", osId);
ResultSet rs = stmt.executeQuery();