|
|
dcdbabdb13
|
注销
Build docker and publish / build (20.15.1) (push) Successful in 7m34s
|
2026-03-17 07:12:42 -07:00 |
|
|
|
79a1eeca1f
|
feat: 自动生成并更新用户缺失的推荐码
Build docker and publish / build (20.15.1) (push) Successful in 7m33s
|
2026-03-15 19:43:53 -07:00 |
|
|
|
3d732c0361
|
feat: 为用户设备添加 DeviceNo 字段并实现 ID 混淆,同时在迁移脚本中新增 ID 重建逻辑。
Build docker and publish / build (20.15.1) (push) Has been cancelled
|
2026-03-15 19:38:37 -07:00 |
|
|
|
2cc1124dd8
|
fix: 任何人注销账号都解散整个家庭组,删除所有成员的登录方式和订阅
Build docker and publish / build (20.15.1) (push) Successful in 7m41s
统一 member/owner 注销逻辑:无论谁注销,都解散家庭、
删除所有成员的 AuthMethods + Subscribe、踢出所有设备、清除所有缓存。
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 06:23:11 -07:00 |
|
|
|
2f33e1e680
|
fix: 踢其他设备时不再清除踢人者自己的 session
Build docker and publish / build (20.15.1) (push) Successful in 7m29s
logoutUnbind 循环清理家庭成员时,踢人者(kicker)也在成员列表中,
导致 kicker 的设备被踢、session 被清,自己也下线了。
现在跳过 kickerUserID,只清缓存不踢设备不清 session。
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 03:05:34 -07:00 |
|
|
|
e4ec85c176
|
fix: clearAllSessions 改用 SCAN 查找 session,修复会话清理无效
Build docker and publish / build (20.15.1) (push) Successful in 7m37s
根因:登录时只写了 auth:session_id:{sessionId} (Redis SET),
从未写入 auth:user_sessions:{userId} sorted set,
导致 clearAllSessions 用 ZRange 永远返回空,session 根本没被清除。
修复:改用 SCAN auth:session_id:* 遍历所有 session key,
按 value 匹配 userId 找出该用户的全部 session 后删除,
同时清理关联的 device cache key。
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 02:47:32 -07:00 |
|
|
|
dddb8c7fe2
|
fix: 平级踢人后更新被踢设备 online 状态为 false
Build docker and publish / build (20.15.1) (push) Has been cancelled
unbindDeviceLogic.logoutUnbind 中 KickDevice 后缺少
device.Online = false + UpdateDevice,导致后台仍显示在线
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 02:37:12 -07:00 |
|
|
|
384c8df506
|
fix: 踢出用户时清除所有 session,确保旧 token 立即失效
Build docker and publish / build (20.15.1) (push) Successful in 7m43s
- kickOfflineByUserDeviceLogic: 管理员踢设备后新增 clearAllSessions,
之前只清单个 WebSocket session,用户可用旧 token 继续访问
- unbindDeviceLogic: 家庭成员被踢时增加踢设备+清 session;
补全 session detail key 清理
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 02:19:35 -07:00 |
|
|
|
7d5b4fcb84
|
邮箱修复
Build docker and publish / build (20.15.1) (push) Successful in 7m13s
|
2026-03-12 01:24:21 -07:00 |
|
|
|
a3cc23bbd4
|
feat: 绑定新邮箱时创建独立邮箱用户并转移订阅,而非挂在设备用户上
Build docker and publish / build (20.15.1) (push) Successful in 8m5s
- bindEmailWithVerificationLogic: 新邮箱路径改为创建独立 email user + joinFamily
- familyBindingHelper: clearMemberSubscribes → transferMemberSubscribesToOwner,订阅转移给 owner 而非删除
- accountMergeHelper: 同步更新调用点
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-12 00:52:50 -07:00 |
|
|
|
3f56fc6def
|
feat: Owner 退出登录时转移订阅/邮箱/家庭权限给 member,而非解散家庭
Build docker and publish / build (20.15.1) (push) Successful in 7m45s
Co-Authored-By: claude-flow <ruv@ruv.net>
|
2026-03-11 09:00:35 -07:00 |
|
|
|
26f6400e74
|
feat: 苹果支付uuid 及设备逻辑
Build docker and publish / build (20.15.1) (push) Successful in 8m3s
|
2026-03-10 19:53:19 -07:00 |
|
|
|
a542a6df46
|
fix: 修复 退出登录 auth问题
Build docker and publish / build (20.15.1) (push) Successful in 7m45s
|
2026-03-09 09:04:47 -07:00 |
|
|
|
b303f16525
|
fix: 退出登录不删除用户订阅,保留订阅数据
Build docker and publish / build (20.15.1) (push) Successful in 7m52s
|
2026-03-09 01:48:54 -07:00 |
|
|
|
9c197442a6
|
fix: 退出登录时删除用户订阅并清理订阅缓存
Build docker and publish / build (20.15.1) (push) Successful in 7m45s
- 事务内删除用户所有订阅记录
- 事务后清理订阅缓存、套餐缓存、节点缓存
|
2026-03-09 01:31:04 -07:00 |
|
|
|
d6437f043f
|
fix: 退出登录时解绑邮箱和家庭组,清除所有session
Build docker and publish / build (20.15.1) (push) Successful in 7m54s
- logoutUnbind 新增删除非 device 类型的 auth_methods(解绑邮箱)
- 清除用户所有 session 而非仅当前 session
- 事务前收集家庭成员 ID,事务后清理成员缓存
- 清理邮箱相关 Redis 缓存
|
2026-03-09 01:12:38 -07:00 |
|
|
|
4d913c1728
|
修复缓存
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
|
2026-03-06 21:58:29 -08:00 |
|
|
|
19932bb9f7
|
x
Build docker and publish / build (20.15.1) (push) Successful in 7m56s
|
2026-03-06 05:47:47 -08:00 |
|
|
|
b625dda4c9
|
修复:goctl api 生成的代码没有在路由中加入Ipa模式
Build docker and publish / build (20.15.1) (push) Successful in 7m48s
|
2026-03-06 00:15:35 -08:00 |
|
|
|
6e13e67dc8
|
修改签名头
Build docker and publish / build (20.15.1) (push) Successful in 7m44s
|
2026-03-05 23:31:45 -08:00 |
|
|
|
9f4d71770b
|
家庭组逻辑导致支付失败
Build docker and publish / build (20.15.1) (push) Failing after 9m9s
|
2026-03-05 02:13:28 -08:00 |
|
|
|
69ac1f104d
|
修复订单支付显示方式
Build docker and publish / build (20.15.1) (push) Has been cancelled
|
2026-03-04 23:20:36 -08:00 |
|
|
|
70c0483ca9
|
修复订阅
Build docker and publish / build (20.15.1) (push) Failing after 8m2s
|
2026-03-04 23:08:46 -08:00 |
|
|
|
4349a7ea2f
|
家庭组 权益修改
Build docker and publish / build (20.15.1) (push) Successful in 8m16s
|
2026-03-04 22:02:42 -08:00 |
|
|
|
3594097d47
|
各种配置项修复,优化到后台管理端配置
Build docker and publish / build (20.15.1) (push) Successful in 7m59s
|
2026-03-04 20:03:03 -08:00 |
|
|
|
2215df8c0b
|
各种配置项修复,优化到后台管理端配置
|
2026-03-04 19:42:21 -08:00 |
|
|
|
6c8f22adc8
|
fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 7m49s
|
2026-03-04 04:28:54 -08:00 |
|
|
|
b08202fd08
|
fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 7m52s
|
2026-03-04 03:30:17 -08:00 |
|
|
|
6c370485d1
|
fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 8m1s
|
2026-03-04 03:07:41 -08:00 |
|
|
|
8bdc8afea3
|
fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 7m54s
|
2026-03-03 19:10:59 -08:00 |
|
|
|
4d8516b2e1
|
同步历史版本代码
|
2026-03-03 09:32:22 -08:00 |
|
EUForest
|
76ff9a658d
|
Merge branch perfect-panel/master/server into develop
|
2025-12-11 23:53:32 +08:00 |
|
EUForest
|
3635d3e224
|
update: device delete current user
|
2025-11-13 14:49:25 +08:00 |
|
EUForest
|
60d584a052
|
add: User cancels account
|
2025-11-09 17:27:24 +08:00 |
|
EUForest
|
d7aa9a44b7
|
Add: Try to get the device ID from the request parameters
|
2025-11-08 17:05:52 +08:00 |
|
EUForest
|
d1a8662095
|
Add: Add a WebSocket connection to monitor the app's online status.
|
2025-11-06 15:35:49 +08:00 |
|
EUForest
|
52ce054b35
|
Add: Server location latitude and longitude
|
2025-11-04 14:53:43 +08:00 |
|
EUForest
|
2605d22f8e
|
Add: ClearServerAllCache Func
|
2025-11-01 16:05:37 +08:00 |
|
EUForest
|
d78d79fa2d
|
add: Automatically delete token when device is removed
|
2025-10-22 19:52:52 +08:00 |
|
EUForest
|
b80c7caddd
|
fix bug: unbind device
|
2025-10-14 11:37:13 +08:00 |
|
EUForest
|
9ea5c626e9
|
add: get device list
|
2025-10-12 19:11:39 +08:00 |
|
Chang lue Tsen
|
31cdcd2cb9
|
fix(balance): update QueryUserBalanceLog response structure to include balance log list
|
2025-09-07 11:59:34 -04:00 |
|
Chang lue Tsen
|
1d878592ed
|
fix(log): rename OrderId to OrderNo for consistency in balance logging
|
2025-09-05 10:25:19 -04:00 |
|
Chang lue Tsen
|
3199dc5141
|
fix(balance): add timestamp to balance logs for payment, refund, and recharge transactions
|
2025-09-05 09:29:19 -04:00 |
|
Chang lue Tsen
|
82fd674ae4
|
feat(api): standardize timestamp field across log structures
|
2025-08-26 14:39:54 -04:00 |
|
Chang lue Tsen
|
ad4f3df74e
|
feat(server): implement server management handlers and database schema
|
2025-08-25 14:06:37 -04:00 |
|
Chang lue Tsen
|
6b1b365734
|
refactor(log): remove Reset Subscribe Traffic Log endpoint and related types
|
2025-08-21 11:19:45 -04:00 |
|
Chang lue Tsen
|
062533412a
|
feat(log): add endpoints for retrieving and resetting subscribe traffic logs
|
2025-08-21 11:02:11 -04:00 |
|
Chang lue Tsen
|
87c771bbd4
|
refactor(log): consolidate logging models and update related logic for improved clarity and functionality
|
2025-08-20 13:36:06 -04:00 |
|
Chang lue Tsen
|
2be1c4f6ed
|
feat(subscription): enhance subscription cache management and improve error handling
|
2025-08-15 14:45:54 -04:00 |
|