feat: 消息推送自定义模板与独立设置页

后端:
- 新增通知模板表与实体、DTO、Repository、NotificationTemplateService
- 支持 {{variable}} 模板语法,提供模板类型与变量接口
- TelegramNotificationService 改为通过模板渲染发送(ORDER_SUCCESS/ORDER_FAILED/ORDER_FILTERED/CRYPTO_TAIL_SUCCESS/REDEEM_SUCCESS/REDEEM_NO_RETURN)
- 模板 CRUD、重置默认、测试发送接口
- 补全订单过滤相关 i18n key(zh/en/zh-TW)

前端:
- 消息推送设置抽离为独立页 /system-settings/notification
- 系统设置概览改为入口卡片,侧栏增加「消息推送设置」菜单
- NotificationSettingsPage: 机器人配置 + 模板配置双卡片布局(与概览一致)
- 模板配置支持选择类型、编辑内容、变量面板(点击复制、悬停说明)、保存/重置/测试
- 多语言 key 补全(notificationSettings.templates.*、templateTypes.*)

Made-with: Cursor
This commit is contained in:
WrBug
2026-03-02 21:31:45 +08:00
parent 83bc209489
commit e7af4d4821
19 changed files with 2087 additions and 338 deletions
@@ -17,6 +17,14 @@ notification.order.available_balance=Available Balance
notification.order.error_info=Error Information
notification.order.unknown_account=Unknown Account
notification.order.calculate_failed=Calculation Failed
notification.order.filtered=Order Filtered
notification.order.filter_reason=Filter Reason
notification.order.filter_type=Filter Type
notification.filter.type.order_depth=Insufficient Order Depth
notification.filter.type.spread=Spread Too Large
notification.filter.type.orderbook_depth=Insufficient Orderbook Depth
notification.filter.type.price_validity=Invalid Price
notification.filter.type.market_status=Market Not Tradable
notification.tail.order.success=Crypto spread strategy order success
notification.tail.strategy=Strategy
notification.redeem.success=Position Redeemed Successfully
@@ -17,6 +17,14 @@ notification.order.available_balance=可用余额
notification.order.error_info=错误信息
notification.order.unknown_account=未知账户
notification.order.calculate_failed=计算失败
notification.order.filtered=订单被过滤
notification.order.filter_reason=过滤原因
notification.order.filter_type=过滤类型
notification.filter.type.order_depth=订单深度不足
notification.filter.type.spread=价差过大
notification.filter.type.orderbook_depth=订单簿深度不足
notification.filter.type.price_validity=价格不合理
notification.filter.type.market_status=市场状态不可交易
notification.tail.order.success=加密价差策略下单成功
notification.tail.strategy=策略
notification.redeem.success=仓位赎回成功
@@ -17,6 +17,14 @@ notification.order.available_balance=可用餘額
notification.order.error_info=錯誤信息
notification.order.unknown_account=未知賬戶
notification.order.calculate_failed=計算失敗
notification.order.filtered=訂單被過濾
notification.order.filter_reason=過濾原因
notification.order.filter_type=過濾類型
notification.filter.type.order_depth=訂單深度不足
notification.filter.type.spread=價差過大
notification.filter.type.orderbook_depth=訂單簿深度不足
notification.filter.type.price_validity=價格不合理
notification.filter.type.market_status=市場狀態不可交易
notification.tail.order.success=加密價差策略下單成功
notification.tail.strategy=策略
notification.redeem.success=倉位贖回成功