summaryrefslogtreecommitdiff
path: root/query.c
diff options
context:
space:
mode:
Diffstat (limited to 'query.c')
-rw-r--r--query.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/query.c b/query.c
index 3905ae2..80b92aa 100644
--- a/query.c
+++ b/query.c
@@ -53,8 +53,10 @@ int handle_inline(struct TdUpdateNewInlineQuery *update) {
const bool query = update->query_;
char *query_str = NULL;
int personal_stat = 0;
+ int ranking = 0;
+ int total = 0;
char id_temp[32];
- char msg_stat[32];
+ char msg_stat[512];
sqlite3_stmt *stmt_query = query ? stmt_search : stmt_random;
memset(results_inline, 0, sizeof(results_inline));
@@ -68,10 +70,15 @@ int handle_inline(struct TdUpdateNewInlineQuery *update) {
}
goto cleanup;
}
+ if ((r = sqlite3_bind_int64(stmt_personal_stat, 2, update->sender_user_id_))) {
+ goto sql_err;
+ }
switch (r = sqlite3_step(stmt_personal_stat)) {
case SQLITE_ROW: {
personal_stat = sqlite3_column_int(stmt_personal_stat, 0);
+ ranking = sqlite3_column_int(stmt_personal_stat, 1);
+ total = sqlite3_column_int(stmt_personal_stat, 2);
break;
}
case SQLITE_DONE: {
@@ -82,7 +89,11 @@ int handle_inline(struct TdUpdateNewInlineQuery *update) {
}
}
- snprintf(msg_stat, sizeof(msg_stat), "我已经卖了 %d 句菜", personal_stat);
+ if (ranking > 0) {
+ snprintf(msg_stat, sizeof(msg_stat), "我已经卖了 %d 句菜,TGCN 排名 %d / %d", personal_stat, ranking, total);
+ } else {
+ snprintf(msg_stat, sizeof(msg_stat), "您从未卖过菜!");
+ }
snprintf(id_temp, sizeof(id_temp), "s%lld", update->sender_user_id_);
results_inline[0] = create_inline_result(id_temp, "卖菜统计", "点击发送卖菜统计", msg_stat);
effective_items_count++;