bindbox-game/backend_debug_sql.log

194 lines
28 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Connected to Redis","domain":"mini-chat[fat]","addr":"118.25.13.43:8379"}
 ____ _ _ _ ____
 | __ ) (_) _ __ __| | | |__ ___ __ __ / ___| __ _ _ __ ___ ___
 | _ \ | | | '_ \ / _` | | '_ \ / _ \ \ \/ / | | _ / _` | | '_ ` _ \ / _ \
 | |_) | | | | | | | | (_| | | |_) | | (_) | > < | |_| | | (_| | | | | | | | | __/
 |____/ |_| |_| |_| \__,_| |_.__/ \___/ /_/\_\ \____| \__,_| |_| |_| |_| \___|
▌ 客户项目: 盲盒游戏
▌ 项目版本: Release-2025111111
▌ 启动时间: 2026-01-08 01:15:05
▌ 运行环境: darwin go1.24.2
▌ 服务端口: [:9991]
▌ 服务配置: [fat]
▌ 数据库连接: ✔ 已建立
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Task center worker started","domain":"mini-chat[fat]"}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"对对碰自动开奖: 后台任务已启动","domain":"mini-chat[fat]"}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"[抖店定时同步] 定时任务已启动","domain":"mini-chat[fat]"}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Worker routine started","domain":"mini-chat[fat]","worker_id":4}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Worker routine started","domain":"mini-chat[fat]","worker_id":3}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Worker routine started","domain":"mini-chat[fat]","worker_id":2}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Worker routine started","domain":"mini-chat[fat]","worker_id":1}
{"level":"info","time":"2026-01-08 01:15:05","caller":"logger/logger.go:309","msg":"Worker routine started","domain":"mini-chat[fat]","worker_id":0}
{"level":"error","time":"2026-01-08 01:15:06","caller":"logger/logger.go:327","msg":"解密配置失败","domain":"mini-chat[fat]","key":"douyin.app_secret","error":"ciphertext is not a multiple of the block size"}
{"level":"info","time":"2026-01-08 01:15:06","caller":"logger/logger.go:309","msg":"动态配置加载完成","domain":"mini-chat[fat]","count":26}
2026/01/08 01:15:11 /Users/win/aicode/bindbox/bindbox_game/internal/api/admin/dashboard_spending.go:116
[22.453ms] [rows:0] SELECT
orders.user_id,
SUM(orders.actual_amount) as total_amount,
COUNT(orders.id) as order_count,
SUM(orders.discount_amount) as total_discount,
SUM(orders.points_amount) as total_points,
SUM(CASE WHEN orders.source_type = 4 THEN 1 ELSE 0 END) as game_pass_count,
SUM(CASE WHEN orders.item_card_id > 0 THEN 1 ELSE 0 END) as item_card_count,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN orders.actual_amount ELSE 0 END) as ichiban_spending,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN 1 ELSE 0 END) as ichiban_count,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN orders.actual_amount ELSE 0 END) as infinite_spending,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN 1 ELSE 0 END) as infinite_count,
SUM(CASE WHEN oa.play_type = 'matching' THEN orders.actual_amount ELSE 0 END) as matching_spending,
SUM(CASE WHEN oa.play_type = 'matching' THEN 1 ELSE 0 END) as matching_count
FROM `orders` LEFT JOIN (SELECT l.order_id, MAX(a.play_type) as play_type FROM activity_draw_logs l JOIN activity_issues i ON i.id = l.issue_id JOIN activities a ON a.id = i.activity_id WHERE l.created_at >= '2025-12-08 01:15:11.202' GROUP BY l.order_id) oa ON oa.order_id = orders.id WHERE orders.status = 2 AND orders.created_at >= '2025-12-09 01:15:11.202' AND orders.created_at <= '2026-01-08 01:15:11.202' GROUP BY `orders`.`user_id` ORDER BY total_amount DESC LIMIT 50
2026/01/08 01:15:13 /Users/win/aicode/bindbox/bindbox_game/internal/api/admin/dashboard_spending.go:116
[23.908ms] [rows:0] SELECT
orders.user_id,
SUM(orders.actual_amount) as total_amount,
COUNT(orders.id) as order_count,
SUM(orders.discount_amount) as total_discount,
SUM(orders.points_amount) as total_points,
SUM(CASE WHEN orders.source_type = 4 THEN 1 ELSE 0 END) as game_pass_count,
SUM(CASE WHEN orders.item_card_id > 0 THEN 1 ELSE 0 END) as item_card_count,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN orders.actual_amount ELSE 0 END) as ichiban_spending,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN 1 ELSE 0 END) as ichiban_count,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN orders.actual_amount ELSE 0 END) as infinite_spending,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN 1 ELSE 0 END) as infinite_count,
SUM(CASE WHEN oa.play_type = 'matching' THEN orders.actual_amount ELSE 0 END) as matching_spending,
SUM(CASE WHEN oa.play_type = 'matching' THEN 1 ELSE 0 END) as matching_count
FROM `orders` LEFT JOIN (SELECT l.order_id, MAX(a.play_type) as play_type FROM activity_draw_logs l JOIN activity_issues i ON i.id = l.issue_id JOIN activities a ON a.id = i.activity_id WHERE l.created_at >= '2025-12-08 01:15:13.54' GROUP BY l.order_id) oa ON oa.order_id = orders.id WHERE orders.status = 2 AND orders.created_at >= '2025-12-09 01:15:13.54' AND orders.created_at <= '2026-01-08 01:15:13.54' GROUP BY `orders`.`user_id` ORDER BY total_amount DESC LIMIT 50
2026/01/08 01:15:14 /Users/win/aicode/bindbox/bindbox_game/internal/api/admin/dashboard_spending.go:116
[21.376ms] [rows:0] SELECT
orders.user_id,
SUM(orders.actual_amount) as total_amount,
COUNT(orders.id) as order_count,
SUM(orders.discount_amount) as total_discount,
SUM(orders.points_amount) as total_points,
SUM(CASE WHEN orders.source_type = 4 THEN 1 ELSE 0 END) as game_pass_count,
SUM(CASE WHEN orders.item_card_id > 0 THEN 1 ELSE 0 END) as item_card_count,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN orders.actual_amount ELSE 0 END) as ichiban_spending,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN 1 ELSE 0 END) as ichiban_count,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN orders.actual_amount ELSE 0 END) as infinite_spending,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN 1 ELSE 0 END) as infinite_count,
SUM(CASE WHEN oa.play_type = 'matching' THEN orders.actual_amount ELSE 0 END) as matching_spending,
SUM(CASE WHEN oa.play_type = 'matching' THEN 1 ELSE 0 END) as matching_count
FROM `orders` LEFT JOIN (SELECT l.order_id, MAX(a.play_type) as play_type FROM activity_draw_logs l JOIN activity_issues i ON i.id = l.issue_id JOIN activities a ON a.id = i.activity_id WHERE l.created_at >= '2025-12-08 01:15:13.982' GROUP BY l.order_id) oa ON oa.order_id = orders.id WHERE orders.status = 2 AND orders.created_at >= '2025-12-09 01:15:13.982' AND orders.created_at <= '2026-01-08 01:15:13.982' GROUP BY `orders`.`user_id` ORDER BY total_amount DESC LIMIT 50
2026/01/08 01:15:14 /Users/win/aicode/bindbox/bindbox_game/internal/api/admin/dashboard_spending.go:116
[20.622ms] [rows:0] SELECT
orders.user_id,
SUM(orders.actual_amount) as total_amount,
COUNT(orders.id) as order_count,
SUM(orders.discount_amount) as total_discount,
SUM(orders.points_amount) as total_points,
SUM(CASE WHEN orders.source_type = 4 THEN 1 ELSE 0 END) as game_pass_count,
SUM(CASE WHEN orders.item_card_id > 0 THEN 1 ELSE 0 END) as item_card_count,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN orders.actual_amount ELSE 0 END) as ichiban_spending,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN 1 ELSE 0 END) as ichiban_count,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN orders.actual_amount ELSE 0 END) as infinite_spending,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN 1 ELSE 0 END) as infinite_count,
SUM(CASE WHEN oa.play_type = 'matching' THEN orders.actual_amount ELSE 0 END) as matching_spending,
SUM(CASE WHEN oa.play_type = 'matching' THEN 1 ELSE 0 END) as matching_count
FROM `orders` LEFT JOIN (SELECT l.order_id, MAX(a.play_type) as play_type FROM activity_draw_logs l JOIN activity_issues i ON i.id = l.issue_id JOIN activities a ON a.id = i.activity_id WHERE l.created_at >= '2025-12-08 01:15:14.549' GROUP BY l.order_id) oa ON oa.order_id = orders.id WHERE orders.status = 2 AND orders.created_at >= '2025-12-09 01:15:14.549' AND orders.created_at <= '2026-01-08 01:15:14.549' GROUP BY `orders`.`user_id` ORDER BY total_amount DESC LIMIT 50
{"level":"debug","time":"2026-01-08 01:15:35","caller":"logger/logger.go:315","msg":"定时开奖: 开始检查","domain":"mini-chat[fat]","now":"2026-01-08 01:15:35"}
{"level":"info","time":"2026-01-08 01:15:35","caller":"logger/logger.go:309","msg":"[抖店定时同步] 开始同步","domain":"mini-chat[fat]","interval_minutes":1}
{"level":"debug","time":"2026-01-08 01:15:35","caller":"logger/logger.go:315","msg":"定时开奖: 查询到活动","domain":"mini-chat[fat]","count":9}
{"level":"debug","time":"2026-01-08 01:15:35","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":52,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:15:44.807+08:00","last_settled":"2026-01-08T01:12:44.807+08:00"}
[DEBUG] 开始全量同步,共 3 个绑定用户
[DEBUG] 正在同步用户 ID: 9018 (昵称: 现实的迪斯蒂法诺, 抖音号: wyl0423333) 的订单...
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":52,"st":"2026-01-08 01:15:44","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":65,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:18:29.385+08:00","last_settled":"2026-01-08T01:15:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":65,"st":"2026-01-08 01:18:29","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":77,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:18:44.808+08:00","last_settled":"2026-01-08T01:13:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":77,"st":"2026-01-08 01:18:44","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":79,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:15:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":79,"st":"2026-01-08 01:15:29","now":"2026-01-08 01:15:35","skip":false}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 查询订单范围","domain":"mini-chat[fat]","id":79,"last":"2026-01-08 01:10:29","now":"2026-01-08 01:15:35"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 查询到订单","domain":"mini-chat[fat]","id":79,"count":0,"min":1}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖-一番赏: 检查售罄","domain":"mini-chat[fat]","issue_id":86,"sold":0,"total":5}
{"level":"info","time":"2026-01-08 01:15:36","caller":"logger/logger.go:309","msg":"定时开奖-一番赏: 未售罄,执行全额退款","domain":"mini-chat[fat]","issue_id":86}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖-一番赏: 剩余未处理订单记录","domain":"mini-chat[fat]","issue_id":86,"count":0}
{"level":"info","time":"2026-01-08 01:15:36","caller":"logger/logger.go:309","msg":"定时开奖-一番赏: 格位已重置,新一轮可以开始","domain":"mini-chat[fat]","issue_id":86}
{"level":"info","time":"2026-01-08 01:15:36","caller":"logger/logger.go:309","msg":"定时开奖: 人数满足,开始开奖处理","domain":"mini-chat[fat]","id":79}
{"level":"info","time":"2026-01-08 01:15:36","caller":"logger/logger.go:309","msg":"定时开奖: 更新活动下次结算时间","domain":"mini-chat[fat]","id":79,"last":"2026-01-08 01:15:35","next":"2026-01-08 01:20:35"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":80,"play_type":"ichiban","interval":10,"scheduled_time":"2026-01-08T01:24:29.385+08:00","last_settled":"2026-01-08T01:14:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":80,"st":"2026-01-08 01:24:29","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":81,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":81,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":82,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:15:37","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":82,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:37","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":83,"play_type":"ichiban","interval":30,"scheduled_time":"2026-01-08T01:35:29.385+08:00","last_settled":"2026-01-08T01:05:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:15:37","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":83,"st":"2026-01-08 01:35:29","now":"2026-01-08 01:15:35","skip":true}
{"level":"debug","time":"2026-01-08 01:15:37","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":84,"play_type":"ichiban","interval":60,"scheduled_time":"2026-01-08T01:27:44.808+08:00","last_settled":"2026-01-08T00:27:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:15:37","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":84,"st":"2026-01-08 01:27:44","now":"2026-01-08 01:15:35","skip":true}
[DEBUG] 正在同步用户 ID: 9019 (昵称: 约翰掐指一算, 抖音号: xrw200947752) 的订单...
[DEBUG] 正在同步用户 ID: 9047 (昵称: 巴乔横扫六合, 抖音号: 请输入您的抖店订单号即可完成绑定) 的订单...
{"level":"info","time":"2026-01-08 01:15:40","caller":"logger/logger.go:309","msg":"[抖店同步] 全量同步完成","domain":"mini-chat[fat]","users_count":3,"total_fetched":45,"new_orders":0,"matched_users":45}
{"level":"info","time":"2026-01-08 01:15:40","caller":"logger/logger.go:309","msg":"[抖店定时同步] 同步成功","domain":"mini-chat[fat]","total_fetched":45,"new_orders":0,"matched_users":45}
{"level":"debug","time":"2026-01-08 01:16:05","caller":"logger/logger.go:315","msg":"定时开奖: 开始检查","domain":"mini-chat[fat]","now":"2026-01-08 01:16:05"}
{"level":"debug","time":"2026-01-08 01:16:05","caller":"logger/logger.go:315","msg":"定时开奖: 查询到活动","domain":"mini-chat[fat]","count":9}
{"level":"debug","time":"2026-01-08 01:16:05","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":52,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:18:44.807+08:00","last_settled":"2026-01-08T01:15:44.807+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":52,"st":"2026-01-08 01:18:44","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":65,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:18:29.385+08:00","last_settled":"2026-01-08T01:15:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":65,"st":"2026-01-08 01:18:29","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":77,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:18:44.808+08:00","last_settled":"2026-01-08T01:13:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":77,"st":"2026-01-08 01:18:44","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":79,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:20:35.866+08:00","last_settled":"2026-01-08T01:15:35.866+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":79,"st":"2026-01-08 01:20:35","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":80,"play_type":"ichiban","interval":10,"scheduled_time":"2026-01-08T01:24:29.385+08:00","last_settled":"2026-01-08T01:14:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":80,"st":"2026-01-08 01:24:29","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":81,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":81,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":82,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":82,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":83,"play_type":"ichiban","interval":30,"scheduled_time":"2026-01-08T01:35:29.385+08:00","last_settled":"2026-01-08T01:05:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":83,"st":"2026-01-08 01:35:29","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":84,"play_type":"ichiban","interval":60,"scheduled_time":"2026-01-08T01:27:44.808+08:00","last_settled":"2026-01-08T00:27:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:16:06","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":84,"st":"2026-01-08 01:27:44","now":"2026-01-08 01:16:05","skip":true}
{"level":"debug","time":"2026-01-08 01:16:35","caller":"logger/logger.go:315","msg":"定时开奖: 开始检查","domain":"mini-chat[fat]","now":"2026-01-08 01:16:35"}
{"level":"debug","time":"2026-01-08 01:16:35","caller":"logger/logger.go:315","msg":"定时开奖: 查询到活动","domain":"mini-chat[fat]","count":9}
{"level":"debug","time":"2026-01-08 01:16:35","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":52,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:18:44.807+08:00","last_settled":"2026-01-08T01:15:44.807+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":52,"st":"2026-01-08 01:18:44","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":65,"play_type":"ichiban","interval":3,"scheduled_time":"2026-01-08T01:18:29.385+08:00","last_settled":"2026-01-08T01:15:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":65,"st":"2026-01-08 01:18:29","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":77,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:18:44.808+08:00","last_settled":"2026-01-08T01:13:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":77,"st":"2026-01-08 01:18:44","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":79,"play_type":"ichiban","interval":5,"scheduled_time":"2026-01-08T01:20:35.866+08:00","last_settled":"2026-01-08T01:15:35.866+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":79,"st":"2026-01-08 01:20:35","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":80,"play_type":"ichiban","interval":10,"scheduled_time":"2026-01-08T01:24:29.385+08:00","last_settled":"2026-01-08T01:14:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":80,"st":"2026-01-08 01:24:29","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":81,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":81,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":82,"play_type":"ichiban","interval":15,"scheduled_time":"2026-01-08T01:25:29.386+08:00","last_settled":"2026-01-08T01:10:29.386+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":82,"st":"2026-01-08 01:25:29","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":83,"play_type":"ichiban","interval":30,"scheduled_time":"2026-01-08T01:35:29.385+08:00","last_settled":"2026-01-08T01:05:29.385+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":83,"st":"2026-01-08 01:35:29","now":"2026-01-08 01:16:35","skip":true}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 检查活动","domain":"mini-chat[fat]","id":84,"play_type":"ichiban","interval":60,"scheduled_time":"2026-01-08T01:27:44.808+08:00","last_settled":"2026-01-08T00:27:44.808+08:00"}
{"level":"debug","time":"2026-01-08 01:16:36","caller":"logger/logger.go:315","msg":"定时开奖: 计算开奖时间","domain":"mini-chat[fat]","id":84,"st":"2026-01-08 01:27:44","now":"2026-01-08 01:16:35","skip":true}
2026/01/08 01:16:38 /Users/win/aicode/bindbox/bindbox_game/internal/api/admin/dashboard_spending.go:116
[24.774ms] [rows:0] SELECT
orders.user_id,
SUM(orders.actual_amount) as total_amount,
COUNT(orders.id) as order_count,
SUM(orders.discount_amount) as total_discount,
SUM(orders.points_amount) as total_points,
SUM(CASE WHEN orders.source_type = 4 THEN 1 ELSE 0 END) as game_pass_count,
SUM(CASE WHEN orders.item_card_id > 0 THEN 1 ELSE 0 END) as item_card_count,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN orders.actual_amount ELSE 0 END) as ichiban_spending,
SUM(CASE WHEN oa.play_type = 'ichiban' THEN 1 ELSE 0 END) as ichiban_count,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN orders.actual_amount ELSE 0 END) as infinite_spending,
SUM(CASE WHEN oa.play_type IN ('infinite', 'box') THEN 1 ELSE 0 END) as infinite_count,
SUM(CASE WHEN oa.play_type = 'matching' THEN orders.actual_amount ELSE 0 END) as matching_spending,
SUM(CASE WHEN oa.play_type = 'matching' THEN 1 ELSE 0 END) as matching_count
FROM `orders` LEFT JOIN (SELECT l.order_id, MAX(a.play_type) as play_type FROM activity_draw_logs l JOIN activity_issues i ON i.id = l.issue_id JOIN activities a ON a.id = i.activity_id WHERE l.created_at >= '2025-12-31 01:16:38.634' GROUP BY l.order_id) oa ON oa.order_id = orders.id WHERE orders.status = 2 AND orders.created_at >= '2026-01-01 01:16:38.634' AND orders.created_at <= '2026-01-08 01:16:38.634' GROUP BY `orders`.`user_id` ORDER BY total_amount DESC LIMIT 50
{"level":"info","time":"2026-01-08 01:16:40","caller":"logger/logger.go:309","msg":"[抖店定时同步] 开始同步","domain":"mini-chat[fat]","interval_minutes":1}
[DEBUG] 开始全量同步,共 3 个绑定用户
[DEBUG] 正在同步用户 ID: 9018 (昵称: 现实的迪斯蒂法诺, 抖音号: wyl0423333) 的订单...
[DEBUG] 正在同步用户 ID: 9019 (昵称: 约翰掐指一算, 抖音号: xrw200947752) 的订单...
[DEBUG] 正在同步用户 ID: 9047 (昵称: 巴乔横扫六合, 抖音号: 请输入您的抖店订单号即可完成绑定) 的订单...
{"level":"info","time":"2026-01-08 01:16:45","caller":"logger/logger.go:309","msg":"[抖店同步] 全量同步完成","domain":"mini-chat[fat]","users_count":3,"total_fetched":45,"new_orders":0,"matched_users":45}
{"level":"info","time":"2026-01-08 01:16:45","caller":"logger/logger.go:309","msg":"[抖店定时同步] 同步成功","domain":"mini-chat[fat]","total_fetched":45,"new_orders":0,"matched_users":45}