aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/server/ShowQueries.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2016-07-07 11:38:54 +0300
committerGravatar Vitaly Takmazov2016-07-07 11:38:54 +0300
commitb1c9bbe04e6300f5bbb9d0015987c4b18dfb2d09 (patch)
tree83e4f4a05bae0588e4692a32ee82726c365fd59e /src/main/java/com/juick/server/ShowQueries.java
parentfe8cf8c0093bbbfb053f52a53daea9145705b62e (diff)
parenta0d038f5e6aa28ef67162c591abe64d057a19fa5 (diff)
merge server
Diffstat (limited to 'src/main/java/com/juick/server/ShowQueries.java')
-rw-r--r--src/main/java/com/juick/server/ShowQueries.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/main/java/com/juick/server/ShowQueries.java b/src/main/java/com/juick/server/ShowQueries.java
new file mode 100644
index 00000000..3ddff412
--- /dev/null
+++ b/src/main/java/com/juick/server/ShowQueries.java
@@ -0,0 +1,32 @@
+package com.juick.server;
+
+import com.juick.User;
+
+import java.util.List;
+import org.springframework.jdbc.core.JdbcTemplate;
+
+/**
+ * Created by vt on 10/01/16.
+ */
+public class ShowQueries {
+
+ public static List<String> getRecommendedUsers(JdbcTemplate sql, User forUser) {
+ return sql.queryForList("SELECT users.nick FROM subscr_users INNER JOIN users " +
+ "ON subscr_users.user_id=users.id " +
+ "WHERE subscr_users.user_id NOT IN (SELECT user_id FROM subscr_users WHERE suser_id=?) " +
+ "AND subscr_users.suser_id IN (SELECT user_id FROM subscr_users WHERE suser_id=?) " +
+ "AND subscr_users.user_id NOT IN (SELECT bl_user_id FROM bl_users WHERE user_id=?) " +
+ "AND subscr_users.user_id!=? AND users.lastmessage>UNIX_TIMESTAMP()-259200 " +
+ "GROUP BY subscr_users.user_id ORDER BY count(*) DESC LIMIT 10",
+ String.class, new Object[] {forUser.getUID(), forUser.getUID(), forUser.getUID(), forUser.getUID()});
+ }
+
+ public static List<String> getTopUsers(JdbcTemplate sql) {
+ return sql.queryForList("SELECT users.nick,COUNT(subscr_users.suser_id) AS cnt " +
+ "FROM (subscr_users INNER JOIN users ON subscr_users.user_id=users.id) " +
+ "INNER JOIN useroptions ON users.id=useroptions.user_id " +
+ "WHERE useroptions.privacy_view>0 AND users.lastmessage>UNIX_TIMESTAMP()-259200 " +
+ "AND users.id!=2 GROUP BY subscr_users.user_id ORDER BY cnt DESC LIMIT 10",
+ String.class);
+ }
+}