t0ng7u
093d86040f
🗑️ feat(token): implement batch token deletion API & front-end integration
...
• Back-end
• model/token.go
• Add `BatchDeleteTokens(ids []int, userId int)` – transactional DB removal + async Redis cache cleanup.
• controller/token.go
• Introduce `TokenBatch` DTO and `DeleteTokenBatch` handler calling the model layer; returns amount deleted.
• router/api-router.go
• Register `POST /api/token/batch` route (user-scoped).
• Front-end (TokensTable.js)
• Replace per-token deletion loops with single request to `/api/token/batch`.
• Display dynamic i18n message: “Deleted {{count}} tokens!”.
• Add modal confirmation:
• Title “Batch delete token”.
• Content “Are you sure you want to delete the selected {{count}} tokens?”.
• UI/UX tweaks
• Responsive button group (flex-wrap, mobile line-break).
• Clear `selectedKeys` after refresh / successful deletion to avoid ghost selections.
• i18n
• Ensure placeholder style matches translation keys (`{{count}}`).
This commit delivers efficient, scalable token management and an improved user experience across devices.
2025-06-22 16:35:30 +08:00
CaIon
b9b4b24961
fix: Resolving conflicts caused by mixing multiple databases
2025-06-14 17:51:05 +08:00
Apple\Apple
dcefd7dfb4
🚀 feat(pagination): unify backend-driven pagination & improve channel tag aggregation
...
SUMMARY
• Migrated Token, Task, Midjourney, Channel, Redemption tables to true server-side pagination.
• Added total / page / page_size metadata in API responses; switched all affected React tables to consume new structure.
• Implemented counting helpers:
– model/token.go CountUserTokens
– model/task.go TaskCountAllTasks / TaskCountAllUserTask
– model/midjourney.go CountAllTasks / CountAllUserTask
– model/channel.go CountAllChannels / CountAllTags
• Refactored controllers (token, task, midjourney, channel) for 1-based paging & aggregated returns.
• Redesigned `ChannelsTable.js`:
– `loadChannels`, `syncPageData`, `enrichChannels` for tag-mode grouping without recursion.
– Fixed runtime white-screen (maximum call-stack) by removing child duplication.
– Pagination, search, tag-mode, idSort all hot-reload correctly.
• Removed unused `log` import in controller/midjourney.go.
BREAKING CHANGES
Front-end consumers must now expect data.items / total / page / page_size from list endpoints (`/api/channel`, `/api/task`, `/api/mj`, `/api/token`, etc.).
2025-06-12 17:25:25 +08:00
1808837298@qq.com
3da1344897
feat: Add user notification settings with quota warning and multiple notification methods
...
- Implement user notification settings with email and webhook options
- Add new user settings for quota warning threshold and notification preferences
- Create backend API and database support for user notification configuration
- Enhance frontend personal settings with notification configuration UI
- Support custom notification email and webhook URL
- Add service layer for sending user notifications
2025-02-18 14:54:21 +08:00
CalciumIon
a7e5f1e509
fix: try to fix pgsql #682
2024-12-31 02:10:19 +08:00
CalciumIon
b4f17543cb
fix redis
2024-12-30 22:05:41 +08:00
CalciumIon
bb5e032dd2
refactor: token cache logic
2024-12-30 17:10:48 +08:00
CalciumIon
ed435e5c8f
refactor: user cache logic
2024-12-29 16:50:26 +08:00
CalciumIon
a7e1d17c3e
feat: Introduce settings package and refactor constants
...
- Added a new `setting` package to replace the `constant` package for configuration management, improving code organization and clarity.
- Moved various configuration variables such as `ServerAddress`, `PayAddress`, and `SensitiveWords` to the new `setting` package.
- Updated references throughout the codebase to use the new `setting` package, ensuring consistent access to configuration values.
- Introduced new files for managing chat settings and midjourney settings, enhancing modularity and maintainability of the code.
2024-12-22 17:24:29 +08:00
1808837298@qq.com
9a4ca1e210
feat: playground
2024-09-26 00:59:09 +08:00
CalciumIon
052bc2075b
feat: 令牌分组
2024-09-18 05:19:49 +08:00
CalciumIon
f505afdc10
feat: 添加令牌ip白名单功能
2024-09-17 20:49:51 +08:00
CalciumIon
67878731fc
feat: log user id
2024-08-04 14:35:16 +08:00
CalciumIon
7011083201
feat: 统计无限令牌的已用额度 ( close #308 )
2024-07-05 20:28:17 +08:00
CalciumIon
752048dfb4
feat: 统计无限令牌的已用额度 ( close #308 )
2024-07-05 20:25:33 +08:00
1808837298@qq.com
099068f543
feat: 支持设置worker访问请求中的图片地址
2024-05-28 17:59:53 +08:00
CaIon
7003a4ed94
fix: try to fix sqlite database migration ( #231 )
2024-05-16 16:10:25 +08:00
CaIon
4ef98ba7eb
feat: update cache
2024-04-18 20:26:38 +08:00
CaIon
65b85377c6
feat: update cache #204
2024-04-18 20:23:44 +08:00
CaIon
97dd80541b
fix: 请求阿里通义千问异常 ( close #108 )
2024-03-11 14:35:46 +08:00
1808837298@qq.com
ba0c5bb4d9
feat: 优化令牌无效提示
2024-02-22 01:48:35 +08:00
CaIon
ac3e27859c
feat: token缓存逻辑更新(实验性)
2024-01-25 20:09:06 +08:00
CaIon
1244963e81
feat: 可设置令牌能调用的模型
2024-01-08 16:25:17 +08:00
CaIon
f5a36a05e5
log输出更多有效信息
2023-12-20 20:53:36 +08:00
CaIon
3ee4136256
消费日志添加用户调用前余额
2023-12-07 16:58:24 +08:00
CaIon
3121afd2e0
修复令牌添加、搜索bug
2023-11-25 17:30:36 +08:00
CaIon
fd57a1df08
完善个人中心
2023-11-21 16:35:51 +08:00
CaIon
c75a92f6a4
Merge branch 'main' into latest
2023-11-15 21:07:37 +08:00
CaIon
16ad764f9b
try to fix email
2023-11-15 18:27:42 +08:00
luxl
08b8b7b980
Update token.go
2023-11-14 16:41:19 +08:00
CaIon
3202ca9f3e
修复余额不足邮件提醒bug
2023-11-12 18:51:26 +08:00
CaIon
e3fca11f99
修复令牌bug
2023-11-10 00:46:17 +08:00
CaIon
44d9eb9d05
完善兑换码界面
2023-11-10 00:10:41 +08:00
JustSong
621eb91b46
chore: pass through error out
2023-09-03 21:31:58 +08:00
JustSong
c3dc315e75
feat: add batch update support ( close #414 )
2023-09-03 14:58:20 +08:00
JustSong
cac61b9f66
Revert "fix: add lock when update quota ( close #399 )"
...
This reverts commit eae9b6e607 .
2023-08-13 00:51:48 +08:00
JustSong
eae9b6e607
fix: add lock when update quota ( close #399 )
2023-08-12 18:25:18 +08:00
JustSong
7edc2b5376
feat: able to display token billing stat via billing api ( close #186 )
2023-06-23 20:14:53 +08:00
JustSong
00151a0124
chore: format logs
2023-06-22 10:59:01 +08:00
JustSong
dc7bb78c74
chore: update api message
2023-06-21 15:55:00 +08:00
JustSong
853a288052
chore: update api message
2023-06-21 15:54:06 +08:00
JustSong
3d76a974d1
feat: use cache to avoid database access ( #158 )
2023-06-20 19:09:49 +08:00
JustSong
5c18c559c3
chore: make the user unable to search token by id
2023-06-19 10:04:38 +08:00
JustSong
2ad22e1425
feat: support group now ( close #17 , close #72 , close #85 , close #104 , close #136 )
...
Co-authored-by: quzard <1191890118@qq.com >
2023-06-07 23:26:00 +08:00
JustSong
2847a08852
feat: the format of key is now constant with that of OpenAI
2023-06-03 10:53:25 +08:00
JustSong
73d5e0f283
feat: support dummy sk- prefix for token ( #82 )
2023-05-17 17:04:06 +08:00
JustSong
8afdc56b11
fix: fix quota not consuming
2023-05-16 13:29:22 +08:00
JustSong
01abed0a30
refactor: bind quota to account instead of token ( close #64 , #31 )
2023-05-16 11:26:09 +08:00
JustSong
241ade2fae
fix: delete a token with a negative quota will now update the account's quota correctly ( close #51 )
2023-05-11 20:05:49 +08:00
JustSong
331177d97e
fix: return quota to user when delete token ( close #37 )
2023-05-04 10:20:39 +08:00