diff options
Diffstat (limited to 'juick-server-jdbc/src/main/java/com/juick')
-rw-r--r-- | juick-server-jdbc/src/main/java/com/juick/service/MessagesServiceImpl.java | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/juick-server-jdbc/src/main/java/com/juick/service/MessagesServiceImpl.java b/juick-server-jdbc/src/main/java/com/juick/service/MessagesServiceImpl.java index 0c53740d..c4eb67db 100644 --- a/juick-server-jdbc/src/main/java/com/juick/service/MessagesServiceImpl.java +++ b/juick-server-jdbc/src/main/java/com/juick/service/MessagesServiceImpl.java @@ -182,19 +182,15 @@ public class MessagesServiceImpl extends BaseJdbcService implements MessagesServ @Override public int createReply(final int mid, final int rid, final int uid, final String txt, final String attachment) { int ridnew = getReplyIDIncrement(mid); - - getJdbcTemplate().update( - "INSERT INTO replies(message_id, reply_id, user_id, replyto, attach, txt) VALUES (?, ?, ?, ?, ?, ?)", + getJdbcTemplate().execute("SET @ts=CURRENT_TIMESTAMP()"); + getJdbcTemplate().update("INSERT INTO replies(message_id, reply_id, user_id, replyto, attach, txt, ts) " + + "VALUES (?, ?, ?, ?, ?, ?, @ts)", new Object[]{mid, ridnew, uid, rid, attachment, txt}, new int[]{Types.INTEGER, Types.SMALLINT, Types.INTEGER, Types.SMALLINT, Types.CHAR, Types.VARCHAR}); if (ridnew > 0) { getJdbcTemplate().update( - "UPDATE messages SET replies = replies + 1 WHERE message_id = ?", - mid); - getJdbcTemplate().update( - "UPDATE messages, (SELECT ts FROM replies) as r " + - "SET messages.updated = r.ts WHERE message_id = ?", + "UPDATE messages SET replies = replies + 1, updated=@ts WHERE message_id = ?", mid); } return ridnew; |