From 667682533fb1246c4aff07082bf1710851454db7 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Fri, 22 Dec 2017 14:56:55 +0300 Subject: jdbc: fix reply creation --- .../src/main/java/com/juick/service/MessagesServiceImpl.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'juick-server-jdbc/src/main') 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; -- cgit v1.2.3