e5e9f93f68
Merge remote-tracking branch 'origin/master' into internal
2026-03-19 01:55:01 -07:00
282e1e4087
deviceno
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
2026-03-17 09:12:56 -07:00
dcdbabdb13
注销
Build docker and publish / build (20.15.1) (push) Successful in 7m34s
2026-03-17 07:12:42 -07:00
3cd22d8538
x
Build docker and publish / build (20.15.1) (push) Successful in 8m3s
2026-03-16 00:59:49 -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
ad578883e4
feat: 添加付费用户数据迁移脚本、报告及相关管理逻辑调整。
Build docker and publish / build (20.15.1) (push) Successful in 7m49s
2026-03-14 22:37:03 -07:00
EUForest
06a2425474
feat(subscribe): add traffic limit rules and user traffic stats
...
- Add subscribe traffic_limit schema and migration\n- Support traffic_limit in admin create/update and list/details\n- Apply traffic_limit when building server user list speed limits\n- Add public user traffic stats API
2026-03-14 12:41:52 +08: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
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
EUForest
17163486f6
fix(subscribe): fix user subscription node retrieval logic to support directly assigned nodes
2026-03-10 18:29:19 +08:00
1372510abf
feat: 后台管理新增手动激活订单接口
...
Build docker and publish / build (20.15.1) (push) Successful in 7m53s
POST /v1/admin/order/activate { "order_no": "xxx" }
- 支持对 pending(1) 或 closed(3) 状态的订单手动激活
- 强制更新为 paid(2) 并 enqueue 激活任务
- 用于处理 IAP 被误关闭或客户端未成功回调的订单
2026-03-09 03:58:57 -07:00
dcfcd036de
x
Build docker and publish / build (20.15.1) (push) Successful in 7m46s
2026-03-08 22:37:58 -07:00
f792157d6e
邀请记录
Build docker and publish / build (20.15.1) (push) Successful in 7m22s
2026-03-08 21:57:20 -07:00
EUForest
39310d5b9a
Features:
...
- Node group CRUD operations with traffic-based filtering
- Three grouping modes: average distribution, subscription-based, and traffic-based
- Automatic and manual group recalculation with history tracking
- Group assignment preview before applying changes
- User subscription group locking to prevent automatic reassignment
- Subscribe-to-group mapping configuration
- Group calculation history and detailed reports
- System configuration for group management (enabled/mode/auto_create)
Database:
- Add node_group table for group definitions
- Add group_history and group_history_detail tables for tracking
- Add node_group_ids (JSON) to nodes and subscribe tables
- Add node_group_id and group_locked fields to user_subscribe table
- Add migration files for schema changes
2026-03-08 23:22:38 +08:00
69028898a4
搜索
Build docker and publish / build (20.15.1) (push) Successful in 7m52s
2026-03-08 08:05:26 -07:00
4907853667
邀请 N天配置
2026-03-08 07:31:11 -07:00
4d913c1728
修复缓存
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
2026-03-06 21:58:29 -08:00
7308aa9191
无订阅 支付后出现两个订阅
Build docker and publish / build (20.15.1) (push) Failing after 7m37s
2026-03-05 21:53:36 -08:00
9f4d71770b
家庭组逻辑导致支付失败
Build docker and publish / build (20.15.1) (push) Failing after 9m9s
2026-03-05 02:13:28 -08:00
d962fafe7f
修复订单支付显示方式
Build docker and publish / build (20.15.1) (push) Successful in 7m59s
2026-03-04 23:28:37 -08:00
69ac1f104d
修复订单支付显示方式
Build docker and publish / build (20.15.1) (push) Has been cancelled
2026-03-04 23:20:36 -08:00
4349a7ea2f
家庭组 权益修改
Build docker and publish / build (20.15.1) (push) Successful in 8m16s
2026-03-04 22:02:42 -08:00
4752f844ef
各种配置项修复,优化到后台管理端配置
Build docker and publish / build (20.15.1) (push) Has been cancelled
2026-03-04 17:58:40 -08:00
0c544268e5
refactor payment platform canonicalization and order method consistency
Build docker and publish / build (20.15.1) (push) Failing after 8m1s
2026-03-04 02:15:32 -08:00
4d8516b2e1
同步历史版本代码
2026-03-03 09:32:22 -08:00
EUForest
31e75efacb
Merge upstream/master into master
2026-02-13 23:06:43 +08:00
EUForest
ffe589ff77
feat: Device short code lookup
2026-01-31 11:52:09 +08:00
Chang lue Tsen
7d84cf858b
fix(currency): initialize exchange rate to 0 and improve error logging in purchase checkout
2026-01-07 09:35:52 -05:00
EUForest
ed669d0620
feat: remove v prefix from service version and disable SECRET_KEY check
2026-01-07 14:40:07 +08:00
EUForest
8f783b162c
feat: redemption code
2026-01-06 16:24:24 +08:00
EUForest
3f3b0ae6ad
up: Redemption Code
2026-01-06 16:15:10 +08:00
EUForest
518595b058
feat: Redemption Code
2026-01-05 17:53:31 +08:00
EUForest
80ee9a6acf
Merge upstream/master into develop
...
Sync upstream changes from perfect-panel/server
Includes updates from v1.0.1 to v1.2.5:
- Currency configuration support
- Subscribe improvements (short token, inventory check, etc.)
- Node management enhancements
- Database migrations
- Bug fixes and optimizations
2026-01-02 12:51:55 +08:00
Tension
8436c2d6ee
feat(subscribe): add short token generation for user subscriptions
2025-12-30 14:06:46 +08:00
Tension
d4c6aa0528
feat(node): add enabled field to node creation logic
2025-12-29 15:03:39 +08:00
Tension
e8084e9d2c
feat(subscribe): rename stop user subscribe handler to toggle and update logic for status change
2025-12-29 13:50:50 +08:00
Tension
495c4529ed
fix(gorm): adjust caller skip for logging methods to improve stack trace accuracy
2025-12-28 21:52:54 +08:00
Tension
21f77e141b
feat(node): update Node Multiplier configuration and initialize node
2025-12-28 21:52:16 +08:00
Tension
d332e760f8
feat(subscribe): add ShowOriginalPrice field and related database changes
2025-12-28 17:08:26 +08:00
Tension
31e634ba66
feat(user): add handlers and logic for resetting user subscribe token and traffic
2025-12-28 16:49:28 +08:00
Chang lue Tsen
67f16ead82
feat(user): add unscoped filter to include soft-deleted records in user queries
2025-12-27 10:57:34 -05:00
Chang lue Tsen
ec510b66fb
refactor(server): remove deprecated server types and related methods for cleaner codebase
2025-12-23 07:48:03 -05:00
EUForest
76ff9a658d
Merge branch perfect-panel/master/server into develop
2025-12-11 23:53:32 +08:00
Tension
0e7cbf4396
fix(payment): update notification URL construction for gateway mode support
2025-12-08 16:09:21 +08:00
Tension
c4166cef6b
feat(ip-location): implement IP location querying and GeoIP database management
2025-11-23 22:38:55 +08:00
Chang lue Tsen
8a4cfcbdb3
feat(subscribe): add endpoint to reset all subscribe tokens
2025-11-18 08:37:57 -05:00
Chang lue Tsen
cb5bf5aae3
feat(module): add GetModuleConfig handler and logic for module configuration retrieval
2025-11-09 09:06:42 -05: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
829d5f3ffd
fix bug: Set server zone
2025-11-01 15:57:30 +08:00