新增 000228 迁移:规则表 tb_package_traffic_alert_rule(每套餐商品至多一条,无软删除,package_id 非部分唯一约束)、达量预警快照表 tb_package_traffic_alert(以主套餐使用记录 + 阈值快照为唯一键, 触发时冻结用量、额度、比例、阈值、到期时间、归属与资产快照),并为 tb_package_usage 新增扫描 范围部分索引 idx_package_usage_alert_scope;down 在预警表存在数据时阻断回滚。 新增规则维护接口 GET/POST/PUT /api/admin/package-traffic-alert-rules(仅超级管理员与平台账号): 创建校验套餐存在且真流量额度大于零,阈值为 1%~100% 的两位小数;修改只影响后续扫描,不回填也 不改写既有预警快照;全部写操作记录操作者、前后值与时间。 新增每日 06:00(Asia/Shanghai)扫描任务 package:traffic:alert:scan,与套餐临期扫描共用 data_cleanup 队列:按资产汇总当前有效套餐的真流量,分子取使用记录真已用量、分母取使用记录真总量快照,命中 主套餐规则阈值时在同一事务创建预警与可靠通知事件;重复执行以唯一冲突视为已处理,不重复投递, 不建停机锁、不调用运营商。 新增预警列表、详情与异步导出 GET /api/admin/package-traffic-alerts、GET /api/admin/package-traffic-alerts/:id、 POST /api/admin/package-traffic-alerts/export,列表与详情一律读冻结快照;新增通知类型 package.traffic.alert 与受控目标 package_traffic_alert_detail,目标解析仅对超级管理员与平台账号 返回可跳转,越权与不存在统一按资源不可见处理。 同步 OpenAPI(cmd/gendocs、cmd/api/docs.go、pkg/openapi/handlers.go)、审计动作与资源注册、上下文 健康检查证据;归档变更并同步 package-traffic-alert 主 Spec。
138 lines
7.9 KiB
Go
138 lines
7.9 KiB
Go
package constants
|
|
|
|
const (
|
|
// NotificationRecipientKindAccount 表示后台账号接收人。
|
|
NotificationRecipientKindAccount = "account"
|
|
// NotificationRecipientKindPersonalCustomer 表示个人客户接收人。
|
|
NotificationRecipientKindPersonalCustomer = "personal_customer"
|
|
// NotificationTargetKindAccount 表示由稳定后台账号 ID 解析接收人。
|
|
NotificationTargetKindAccount = "account"
|
|
// NotificationTargetKindPlatformRole 表示由当前平台角色解析接收人。
|
|
NotificationTargetKindPlatformRole = "platform_role"
|
|
// NotificationTargetKindShop 表示由目标店铺解析全部有效店铺账号和当前业务员。
|
|
NotificationTargetKindShop = "shop"
|
|
|
|
// NotificationCategoryApproval 表示审批类通知。
|
|
NotificationCategoryApproval = "approval"
|
|
// NotificationCategoryExpiry 表示临期类通知。
|
|
NotificationCategoryExpiry = "expiry"
|
|
// NotificationCategorySync 表示同步类通知。
|
|
NotificationCategorySync = "sync"
|
|
// NotificationCategorySystem 表示系统类通知。
|
|
NotificationCategorySystem = "system"
|
|
|
|
// NotificationSeverityInfo 表示普通提示。
|
|
NotificationSeverityInfo = "info"
|
|
// NotificationSeverityWarning 表示需要关注的警告。
|
|
NotificationSeverityWarning = "warning"
|
|
// NotificationSeverityError 表示处理失败。
|
|
NotificationSeverityError = "error"
|
|
// NotificationSeverityCritical 表示严重系统异常。
|
|
NotificationSeverityCritical = "critical"
|
|
|
|
// NotificationTypeSystemNotice 表示受控通用系统通知。
|
|
NotificationTypeSystemNotice = "system.notice"
|
|
// NotificationTypePackageExpiring 表示套餐临期提醒。
|
|
NotificationTypePackageExpiring = "package.expiring"
|
|
// NotificationTypeAgentRechargeCompleted 表示代理店铺充值已入账。
|
|
NotificationTypeAgentRechargeCompleted = "agent.recharge.completed"
|
|
// NotificationTypeRefundCompleted 表示店铺退款已完成。
|
|
NotificationTypeRefundCompleted = "refund.completed"
|
|
// NotificationTypeExchangeShippingCreated 表示个人客户物流换货待处理提醒。
|
|
NotificationTypeExchangeShippingCreated = "exchange.shipping.created"
|
|
// NotificationTypeAgentMainWalletLowBalance 表示代理主钱包余额低于固定阈值提醒。
|
|
NotificationTypeAgentMainWalletLowBalance = "agent.main_wallet.low_balance"
|
|
// NotificationTypeH5PopupRiskExchange 表示 H5 广电卡风险换卡弹窗投放。
|
|
NotificationTypeH5PopupRiskExchange = "h5.popup.risk_exchange"
|
|
// NotificationTypeH5PopupOperation 表示 H5 运营弹窗投放。
|
|
NotificationTypeH5PopupOperation = "h5.popup.operation"
|
|
// NotificationTypePackageTrafficAlert 表示套餐真流量达量预警。
|
|
NotificationTypePackageTrafficAlert = "package.traffic.alert"
|
|
|
|
// NotificationRefTypeSystemConfig 表示系统配置资源引用。
|
|
NotificationRefTypeSystemConfig = "system_config"
|
|
// NotificationRefTypeIntegrationLog 表示外部集成日志资源引用。
|
|
NotificationRefTypeIntegrationLog = "integration_log"
|
|
// NotificationRefTypePackage 表示套餐资源引用。
|
|
NotificationRefTypePackage = "package"
|
|
// NotificationRefTypeAsset 表示个人客户资产资源引用。
|
|
NotificationRefTypeAsset = "asset"
|
|
// NotificationRefTypeRefund 表示退款详情资源引用。
|
|
NotificationRefTypeRefund = "refund"
|
|
// NotificationRefTypeAgentRecharge 表示代理充值详情资源引用。
|
|
NotificationRefTypeAgentRecharge = "agent_recharge"
|
|
// NotificationRefTypeWeComApproval 表示企微审批详情资源引用。
|
|
NotificationRefTypeWeComApproval = "wecom_approval"
|
|
// NotificationRefTypeIotCard 表示物联网卡详情资源引用。
|
|
NotificationRefTypeIotCard = "iot_card"
|
|
// NotificationRefTypeDevice 表示设备详情资源引用。
|
|
NotificationRefTypeDevice = "device"
|
|
// NotificationRefTypeExpiringAsset 表示临期资产列表资源引用。
|
|
NotificationRefTypeExpiringAsset = "expiring_asset"
|
|
// NotificationRefTypeShopFund 表示店铺资金概况资源引用。
|
|
NotificationRefTypeShopFund = "shop_fund"
|
|
// NotificationRefTypeCardSync 表示卡同步外部集成资源引用。
|
|
NotificationRefTypeCardSync = "card_sync"
|
|
// NotificationRefTypePackageTrafficAlert 表示套餐真流量达量预警详情资源引用。
|
|
NotificationRefTypePackageTrafficAlert = "package_traffic_alert"
|
|
|
|
// NotificationTargetTypeRefundDetail 表示退款详情前端目标。
|
|
NotificationTargetTypeRefundDetail = "refund_detail"
|
|
// NotificationTargetTypeAgentRechargeDetail 表示代理充值详情前端目标。
|
|
NotificationTargetTypeAgentRechargeDetail = "agent_recharge_detail"
|
|
// NotificationTargetTypeWeComApprovalDetail 表示企微审批详情前端目标。
|
|
NotificationTargetTypeWeComApprovalDetail = "wecom_approval_detail"
|
|
// NotificationTargetTypeIotCardDetail 表示物联网卡详情前端目标。
|
|
NotificationTargetTypeIotCardDetail = "iot_card_detail"
|
|
// NotificationTargetTypeDeviceDetail 表示设备详情前端目标。
|
|
NotificationTargetTypeDeviceDetail = "device_detail"
|
|
// NotificationTargetTypeExpiringAssetList 表示临期资产列表前端目标。
|
|
NotificationTargetTypeExpiringAssetList = "expiring_asset_list"
|
|
// NotificationTargetTypeShopFundSummary 表示店铺资金概况前端目标。
|
|
NotificationTargetTypeShopFundSummary = "shop_fund_summary"
|
|
// NotificationTargetTypeIntegrationLog 表示统一外部集成前端目标。
|
|
NotificationTargetTypeIntegrationLog = "integration_log"
|
|
// NotificationTargetTypeSystemConfig 表示受控系统配置前端目标。
|
|
NotificationTargetTypeSystemConfig = "system_config"
|
|
// NotificationTargetTypePackageTrafficAlertDetail 表示套餐真流量达量预警详情前端目标。
|
|
NotificationTargetTypePackageTrafficAlertDetail = "package_traffic_alert_detail"
|
|
|
|
// OutboxEventTypeAdminDirectNotification 表示向明确后台账号投递通知的稳定事件类型。
|
|
OutboxEventTypeAdminDirectNotification = "notification.admin.direct.requested"
|
|
// OutboxEventTypePersonalCustomerDirectNotification 表示向明确个人客户投递通知的稳定事件类型。
|
|
OutboxEventTypePersonalCustomerDirectNotification = "notification.personal_customer.direct.requested"
|
|
// OutboxEventTypeAdminDynamicNotification 表示按账号、平台角色或店铺动态解析后台接收人的事件类型。
|
|
OutboxEventTypeAdminDynamicNotification = "notification.admin.dynamic.requested"
|
|
// NotificationPayloadVersionV1 表示明确后台账号通知载荷第一版。
|
|
NotificationPayloadVersionV1 = 1
|
|
|
|
// NotificationDefaultPageSize 表示后台通知默认每页数量。
|
|
NotificationDefaultPageSize = 20
|
|
// NotificationMaxPageSize 表示后台通知每页最大数量。
|
|
NotificationMaxPageSize = 50
|
|
// NotificationMaxPage 表示通知列表允许查询的最大页码,避免无界偏移。
|
|
NotificationMaxPage = 10000
|
|
// NotificationMaxTitleLength 表示通知纯文本标题最大字符数。
|
|
NotificationMaxTitleLength = 200
|
|
// NotificationMaxBodyLength 表示通知纯文本正文最大字符数。
|
|
NotificationMaxBodyLength = 2000
|
|
// NotificationExpiryRetentionDays 表示临期通知数据保留天数。
|
|
NotificationExpiryRetentionDays = 180
|
|
// NotificationApprovalRetentionDays 表示审批结果通知数据保留天数。
|
|
NotificationApprovalRetentionDays = 365
|
|
// NotificationSyncDisplayDays 表示同步异常默认展示天数。
|
|
NotificationSyncDisplayDays = 30
|
|
// NotificationSyncRetentionDays 表示同步异常通知数据保留天数。
|
|
NotificationSyncRetentionDays = 180
|
|
// NotificationSystemDefaultDisplayDays 表示系统告警默认展示天数。
|
|
NotificationSystemDefaultDisplayDays = 30
|
|
// NotificationSystemMaxDisplayDays 表示系统告警最长展示天数。
|
|
NotificationSystemMaxDisplayDays = 365
|
|
// NotificationSystemRetentionDays 表示系统告警数据保留天数。
|
|
NotificationSystemRetentionDays = 365
|
|
// NotificationCleanupBatchSize 表示单批清理通知数量。
|
|
NotificationCleanupBatchSize = 500
|
|
// NotificationCleanupMaxBatches 表示每类通知单次任务最多清理批次数。
|
|
NotificationCleanupMaxBatches = 20
|
|
)
|