Commit Graph

89 Commits

Author SHA1 Message Date
shanshanzhong147 5d2460c310 修复(#79): 合并internal并适配数量配价
Co-authored-by: multica-agent <github@multica.ai>
2026-05-27 01:14:32 -07:00
shanshanzhong147 e27b2320b4 新功能(#79): 实现促销管理接口并支持数量配价
Co-authored-by: multica-agent <github@multica.ai>
2026-05-27 00:54:32 -07:00
shanshanzhong147 48e507783e 新功能(#77): 套餐列表返回促销信息
Build docker and publish / build (20.15.1) (push) Failing after 8m34s
Build docker and publish / build (20.15.1) (pull_request) Successful in 8m4s
- 新增 SubscribePromo 响应结构,套餐列表每项追加 promo 字段
- 新增 promo.go 促销候选规则查询与资格评估逻辑
- 重构 authMiddleware 提取 authenticateRequest,新增 OptionalAuthMiddleware
- /v1/public/subscribe/list 改为可选鉴权,未登录仅展示 campaign 类型促销
- /node/list、/group/list 保持强制鉴权不变
- 每个规格只返回最高优先级命中的规则,promo_price 为单价,expires_at 为秒级时间戳
- 新增单测覆盖 campaign/new_user 命中、活动窗口判定等场景

Co-authored-by: multica-agent <github@multica.ai>
2026-05-26 22:40:58 -07:00
shanshanzhong147 f9fa4756e9 新功能(#41): 提现优化 — 收款方式选择 + 取消提现 + 收款码上传
Build docker and publish / build (20.15.1) (push) Failing after 8m37s
Co-authored-by: multica-agent <github@multica.ai>
2026-05-26 08:36:25 -07:00
shanshanzhong147 bae234fe15 Merge remote-tracking branch 'remotes/origin/agent/agent/bfdd0bdd' into merge-to-internal
Build docker and publish / build (20.15.1) (push) Failing after 8m14s
2026-05-25 18:17:24 -07:00
shanshanzhong147 79ab4460bc feat: add GET /v1/admin/log/message/detail endpoint
Adds a temporary admin endpoint to query log_message by ID,
returning the full record including context (JSON) and digest
fields that the existing /error_message/detail endpoint omits.

Co-authored-by: multica-agent <github@multica.ai>
2026-05-25 12:18:27 -07:00
shanshanzhong147 eba256bdc9 merge: sync internal with main
Build docker and publish / build (20.15.1) (push) Failing after 8m22s
Co-authored-by: multica-agent <github@multica.ai>
2026-05-25 10:32:06 -07:00
shanshanzhong147 1726a584fa feat: add admin order refund flow
Co-authored-by: multica-agent <github@multica.ai>
2026-05-24 17:50:23 -07:00
shanshanzhong147 fd522b6c71 path
Build docker and publish / build (20.15.1) (push) Successful in 8m56s
2026-05-19 19:35:44 -07:00
shanshanzhong147 f2033fd4b9 feat: add rustfs direct upload endpoint
Build docker and publish / build (20.15.1) (push) Failing after 8m36s
2026-05-14 23:33:50 -07:00
shanshanzhong147 4fa9fcd232 feat: add direct s3 upload flow 2026-05-13 11:24:13 -07:00
shanshanzhong147 54daa923da 补单逻辑
Build docker and publish / build (20.15.1) (push) Has been cancelled
2026-05-06 04:59:04 -07:00
shanshanzhong147 b43dcd8dab merge: 同步 origin/master 新功能到定制版本
Build docker and publish / build (20.15.1) (push) Successful in 8m8s
2026-03-24 01:03:56 -07:00
shanshanzhong147 f111b36389 fix: JSON_CONTAINS 参数类型修复 + API sync
- 修复 JSON_CONTAINS(node_group_ids, int64) 类型错误,改为传 JSON 字符串
- 添加 node_group_ids IS NOT NULL 兼容判断,防止 NULL 列报错
- 同步 apis/ 及 routes.go、compat_types.go 改动

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-23 06:58:28 -07:00
EUForest 7fe7243c24 feat: Add slider verification code 2026-03-23 02:42:12 +08:00
shanshanzhong147 f703b5089a 分组概念
Build docker and publish / build (20.15.1) (push) Successful in 7m58s
2026-03-19 03:21:47 -07:00
shanshanzhong147 e5e9f93f68 Merge remote-tracking branch 'origin/master' into internal 2026-03-19 01:55:01 -07:00
shanshanzhong147 1e12c58986 tg
Build docker and publish / build (20.15.1) (push) Successful in 7m22s
2026-03-18 03:52:26 -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
shanshanzhong147 ec39579c39 fix: 注册 /v1/common/client/download 路由,修复客户端下载链接 404
Build docker and publish / build (20.15.1) (push) Successful in 8m8s
handler 和 logic 代码已迁移但 routes.go 漏注册该端点。

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-11 22:34:03 -07:00
shanshanzhong147 6557d06d59 feat: 添加兼容路由别名,修复前端 404 问题
Build docker and publish / build (20.15.1) (push) Successful in 7m16s
为 invite/stats, invite/sales, agent/downloads, agent/realtime
添加斜杠格式路由别名,兼容老项目前端请求路径。

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-11 01:51:32 -07:00
shanshanzhong147 76a1500d3c x
Build docker and publish / build (20.15.1) (push) Successful in 7m55s
2026-03-11 01:13:56 -07:00
shanshanzhong147 26f6400e74 feat: 苹果支付uuid 及设备逻辑
Build docker and publish / build (20.15.1) (push) Successful in 8m3s
2026-03-10 19:53:19 -07:00
EUForest 884310d951 feat(routes): register admin authentication and captcha endpoints
- Register /v1/auth/captcha/generate route for user captcha
- Register /v1/auth/admin/login route for admin login
- Register /v1/auth/admin/reset-password route for admin password reset
- Register /v1/auth/admin/captcha/generate route for admin captcha
- Add admin authentication route group
2026-03-09 22:56:20 +08:00
EUForest 3ca471f58c refactor(auth): move captcha verification from handler to logic layer
- Remove duplicate captcha verification from user login handler
- Remove duplicate captcha verification from user register handler
- Remove duplicate captcha verification from password reset handler
- Remove duplicate captcha verification from phone login handler
- Remove duplicate captcha verification from phone register handler
- Update phone reset password handler structure
- Improve separation of concerns between handler and logic layers
- Handlers now only handle HTTP request/response, logic handles business rules
2026-03-09 22:56:07 +08:00
EUForest 9aaffec61d feat(auth): add admin authentication with permission checks
- Add admin login handler and logic with IsAdmin verification
- Add admin password reset handler and logic
- Add admin captcha generation handler and logic
- Implement device binding for admin login
- Add login logging for admin authentication
- Check EnableAdminLoginCaptcha configuration
- Separate admin authentication from user authentication
- Verify admin permission before allowing access
2026-03-09 22:54:59 +08:00
EUForest 2afb86f973 feat(auth): add user captcha generation endpoint
- Add handler for /v1/auth/captcha/generate endpoint
- Implement captcha generation logic based on configuration
- Support local image captcha generation with Redis storage
- Return Turnstile site key for Turnstile mode
- Check EnableUserLoginCaptcha configuration
2026-03-09 22:54:47 +08:00
shanshanzhong147 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
shanshanzhong147 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
shanshanzhong147 4d913c1728 修复缓存
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
2026-03-06 21:58:29 -08:00
shanshanzhong147 7914b2aa78 shouldBindJson 使用错误
Build docker and publish / build (20.15.1) (push) Successful in 7m51s
2026-03-06 01:30:39 -08:00
shanshanzhong147 67d2c8cca8 subscribe_status 修改成 post
Build docker and publish / build (20.15.1) (push) Successful in 7m49s
2026-03-06 00:57:17 -08:00
shanshanzhong147 b625dda4c9 修复:goctl api 生成的代码没有在路由中加入Ipa模式
Build docker and publish / build (20.15.1) (push) Successful in 7m48s
2026-03-06 00:15:35 -08:00
shanshanzhong147 6e13e67dc8 修改签名头
Build docker and publish / build (20.15.1) (push) Successful in 7m44s
2026-03-05 23:31:45 -08:00
shanshanzhong147 d575df9529 无订阅 支付后出现两个订阅
Build docker and publish / build (20.15.1) (push) Successful in 8m13s
2026-03-05 22:29:40 -08:00
shanshanzhong147 7308aa9191 无订阅 支付后出现两个订阅
Build docker and publish / build (20.15.1) (push) Failing after 7m37s
2026-03-05 21:53:36 -08:00
shanshanzhong147 9f4d71770b 家庭组逻辑导致支付失败
Build docker and publish / build (20.15.1) (push) Failing after 9m9s
2026-03-05 02:13:28 -08:00
shanshanzhong147 4752f844ef 各种配置项修复,优化到后台管理端配置
Build docker and publish / build (20.15.1) (push) Has been cancelled
2026-03-04 17:58:40 -08:00
shanshanzhong147 149dfe1ac3 fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 7m57s
2026-03-04 07:02:51 -08:00
shanshanzhong147 a01570b59d fix gitea workflow path and runner label
Build docker and publish / build (20.15.1) (push) Failing after 8m21s
2026-03-04 06:33:14 -08:00
shanshanzhong147 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
shanshanzhong147 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
shanshanzhong147 4d8516b2e1 同步历史版本代码 2026-03-03 09:32:22 -08:00
EUForest ffe589ff77 feat: Device short code lookup 2026-01-31 11:52:09 +08:00
EUForest 3359704a45 feat: add short_code field to device login API
- Add optional short_code parameter to DeviceLoginRequest
- Add ShortCode field to Device model
- Save short_code to database during device registration
- Add database migration for user_device.short_code column
- Fix duplicate variable declaration in routes.go
2026-01-10 18:11:24 +08:00
EUForest 69ec491d0a fix bug: Restore WS connection 2026-01-07 01:23:40 +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