From c4ac28ed641ba2ddadfab4cd6cc455aed07d602b Mon Sep 17 00:00:00 2001 From: shoopea Date: Thu, 30 May 2019 14:08:39 +0800 Subject: [PATCH] test --- client.go | 16 ++++++---------- def.go | 8 ++++---- obj.go | 20 ++++---------------- workers.go | 2 +- 4 files changed, 15 insertions(+), 31 deletions(-) diff --git a/client.go b/client.go index 801a8bb..155846c 100644 --- a/client.go +++ b/client.go @@ -17,30 +17,26 @@ func clientSendCWMsg(userID64 int64, s string) { func clientMsgMeAck(m *ChatWarsMessageMeAck) { log.Printf("clientMsgMeAck %d\n", m.UserID64) - if _, ok := clientsQueue[m.UserID64]; ok { + if _, ok := clientsQueue[m.Msg.UserID64]; ok { log.Printf("Client in clientsQueue\n") - t, err := getObjMsgDate(m.ObjID64) - logOnError(err, "clientMsgMe : getObjMsgDate") if c, ok := clientsCW[m.UserID64]; ok { - if c.LastUpdate.Before(t) { + if c.LastUpdate.Before(m.Msg.Date) { c.GuildID64 = m.GuildID64 c.State = m.State - c.LastUpdate = t + c.LastUpdate = m.Msg.Date if cacheObjGuild[``].ObjID64 != m.GuildID64 && strings.Compare(c.Role, ``) == 0 { - clientSendCWMsg(m.UserID64, "/g_roles") + clientSendCWMsg(m.Msg.UserID64, "/g_roles") } } } else { c := ChatWarsClient{ GuildID64: m.GuildID64, State: m.State, - LastUpdate: t, + LastUpdate: m.Msg.Date, } clientsCW[m.UserID64] = &c if cacheObjGuild[``].ObjID64 != m.GuildID64 { - clientSendCWMsg(m.UserID64, "/g_roles") - } else { - clientSendCWMsg(m.UserID64, "/g_roles") + clientSendCWMsg(m.Msg.UserID64, "/g_roles") } } } else { diff --git a/def.go b/def.go index 553de04..7b0b301 100644 --- a/def.go +++ b/def.go @@ -72,10 +72,10 @@ type ChatWarsMessageReportAck struct { } type ChatWarsMessageMeAck struct { - ObjID64 int64 `json:"obj_id"` - UserID64 int64 `json:"user_id"` - GuildID64 int64 `json:"guild_id"` - State string `json:"state"` + Msg *ChatWarsMessage `json:"msg"` + UserID64 int64 `json:"user_id"` + GuildID64 int64 `json:"guild_id"` + State string `json:"state"` } type ChatWarsMessageGoQuestAck struct { diff --git a/obj.go b/obj.go index 15f910a..7c0b8b4 100644 --- a/obj.go +++ b/obj.go @@ -377,22 +377,10 @@ func loadObjUser() error { } func getObjMsgDate(objID64 int64) (time.Time, error) { - var t time.Time - rows, err := db.Query(`SELECT om.date FROM obj_msg om WHERE om.obj_id = ?;`, objID64) - - logOnError(err, "getObjMsgDate : select") + m, err := getMsg(objID64) if err != nil { - return time.Now(), nil + return time.Now(), err + } else { + return m.Date, nil } - defer rows.Close() - - for rows.Next() { - err := rows.Scan(&t) - logOnError(err, "getObjMsgDate : row") - if err != nil { - return time.Now(), nil - } - } - - return t, nil } diff --git a/workers.go b/workers.go index 00fbd4c..1b334ca 100644 --- a/workers.go +++ b/workers.go @@ -143,7 +143,7 @@ func SQLIdentifyMsgWorker(id int, objIds <-chan int64) { case objSubTypeMessageMeAck: cwm, err := parseSubTypeMessageMeAck(m, r) logOnError(err, "SQLIdentifyMsgWorker["+strconv.Itoa(id)+"] : Parsing objSubTypeMessageMeAck.") - cwm.ObjID64 = objId + cwm.Msg = m clientMsgMeAck(cwm) err = setObjSubTypeId(objId, objSubTypeMessageMeAck) logOnError(err, "SQLIdentifyMsgWorker["+strconv.Itoa(id)+"] : setObjSubTypeId(MeAck)")