跳转到内容

2026-06-17

fomoadmin 管理后台 全天主线 FEAT-016 NovaPay 收款码后台「对齐原型 + 接真实 payfi 后端」整体收口。上午先把 NovaPay 四页(申请审核 / 风控管理 / 对账报表 / 数据统计)+ 侧边栏图标按更新原型逐页对齐(申请详情改右侧抽屉、全局文字按钮加粗),并顺手出 FEAT-017 代币管理对齐 + 选币展示页 Mock。下午起承接 zz 当日交付的 NovaPay admin 侧全套接口(M7~M11):风控管理(risk/lst·note·history)+ 链上风控开关 setQRCodeEnabled 双写、对账报表三 tab(支付明细 / 充值发放 / 累计对账)、数据统计单码页全部由 mock 切真实 payfi 后端。傍晚补 全量 XLSX 导出(4 个 /export 端点,前端拍当前页改 ajaxDownload 走 BE 全量)与 收款码编辑日志(code/edit-log),至此 NovaPay 全部 admin 侧交付接口均已对齐消费。晚间按团队定稿的 GV 9× 模型校准四方文案(收款方 5×→1×、合计标 9×、平台/渠道商改 tooltip 说明),并补商家名空值兜底。先 frontend-docs-pull 全量同步 .docs/iro-bsc,收尾两笔提交 push origin/test

FEAT-016 NovaPay 全模块对齐原型(上午)

Section titled “FEAT-016 NovaPay 全模块对齐原型(上午)”
  • 3a522d5侧边栏菜单图标对齐原型(broker / mining / novapay 路由 meta icon)。
  • e5b5a49数据统计页对齐原型stats.vue 汇总卡 + 维度按钮组 + 逐笔明细布局)。
  • eb9336b风控管理 / 对账报表对齐原型codes.vue / settlement.vue toolbar、列、tab 结构)。
  • ba68ef1申请详情改右侧抽屉对齐原型applications.vue 详情由弹窗改 el-drawer 右侧抽屉)。
  • 0b72b28全局文字按钮字体加粗对齐原型style/element-plus.scss 一处全局,承接 06-16 EP 1.2.0-beta.6 无 link prop 的全局覆盖方案)。

FEAT-016 风控 / 对账 / 数据统计接真实 payfi 后端(下午,本日重点)

Section titled “FEAT-016 风控 / 对账 / 数据统计接真实 payfi 后端(下午,本日重点)”
  • 36d54ef风控管理 / 对账报表接真实 payfi 后端 —— api.js 注册 risk/lst·note·history、payment/lst·summary、recharge/lst·summary、reconcile/cumulative 等常量并挂 @seeonchain/payfi.js 新增 setQRCodeEnabled(链上风控开关,MetaMask writeContract + simulate 预检 + 等 receipt)codes.vue 接 risk 三件套,风控开关走 链上 setQRCodeEnabled + risk/note 链下备案双写(状态靠 BE M8 监听器同步 is_enabled,签名后 load 刷新),详情抽屉拼「状态变更历史」时间线(链上事件 + 链下备注混合);settlement.vue 三 tab 接真实。
  • acc9c46数据统计接真实 payfi/stats —— stats.vue/api/admin/payfi/statstime_range today/7d/30d/all/custom),单码基础信息 + 4 source GV 汇总卡 + 逐笔明细,收款码下拉合并风控列表两类。
  • d4207e2对账报表明细改全局对齐原型 —— qr_code_id 选填、空 = 查全部,列表富化 biz_code / merchant_name / gv_by_source,让利 USD / GV 列按 wei 截断。
  • e4349ea对账 / 风控 tab 切换改 watch 修复初次空数据 —— EP 1.2.0-beta.6 el-tabs 只 emit tab-click、无 tab-change,与 v-model 更新时序差致首切空表,统一改 watch(tab)(同 reward-flow.vue / audit/index.vue)。
  • 428e4d4支付币种 / 商家码标签改蓝色对齐原型(applications / codes / settlement el-tag 配色)。

FEAT-016 全量 XLSX 导出 + 收款码编辑日志接真实 BE(傍晚)

Section titled “FEAT-016 全量 XLSX 导出 + 收款码编辑日志接真实 BE(傍晚)”
  • 8c977c5对账 / 数据统计导出接真实 BE 导出端点 —— api.js 注册 payment/export、recharge/export、reconcile/cumulative/export、stats/export 四个常量;对账三 tab 与数据统计页导出由前端拍当前页 xlsx 改 ajaxDownload 走 BE 全量 XLSX 端点responseType=blob,筛选 / 时间窗口与列表一致,最大 5w 行,含 19 列 GV 四方拆分),复用既有 blob 下载助手 + 自带成功 / 失败 toast;累计对账加「全部」(code_type=0) 默认混合视图(对齐 reconcile-cumulative v1.1)。
  • ef50519收款码编辑日志接真实 BE code/edit-log —— api.js 注册 novapayCodeEditLog;风控页码详情抽屉新增「编辑历史」时间线(改名 source=2old→new 与链上 QRCodeUpdated source=1 混合按时间倒序),与既有「状态变更历史」并排、两条线并行拉取。至此 NovaPay 全部 admin 侧交付接口均已对齐消费。

FEAT-016 GV 文案校准 + 兜底收尾(晚间)

Section titled “FEAT-016 GV 文案校准 + 兜底收尾(晚间)”
  • a771578GV 四方文案按 9× 模型修正 —— 收款方 5×→1×、GV 产出合计标注 、平台 / 渠道商去掉写死倍速标签改 tooltip 说明(平台 + 渠道商合计恒 3×:无渠道商时平台独得 3×,有渠道商时渠道商 2× / 平台 1×)。校准 06-16 遗留的「payment-summary 10× vs 需求 9×」倍率分歧。
  • 42d76de商家名为空兜底显示 --codes.vue + settlement.vue merchant_name 空值兜底,未富化时不显空白)。

FEAT-017 代币管理对齐原型 + 选币展示页 Mock(上午)

Section titled “FEAT-017 代币管理对齐原型 + 选币展示页 Mock(上午)”
  • 887437e代币管理对齐原型 + 第三方代币 Mocktoken/index.vue,Story4 第三方代币纳管前端 Mock UI)。
  • df4ba1c新增选币展示页(Story5 Mock) —— views/admin/token-display/index.vue + 路由 router/modules/token-display.js,等 BE-003/005。
  • frontend-docs-pull 全量同步 .docs/iro-bsc/(requirements / contract / backend);核对确认 zz 已于 2026-06-17 交付 NovaPay admin 侧全套接口(M7~M11):风控 risk/{lst,note,history}、对账 payment/lst + recharge/lst + reconcile/cumulative、数据统计 stats、XLSX 导出 4 个、编辑日志 code/edit-log。

NovaMarket 前端 K线 / 成交表修复(2026-06-17,跨项目补记)

Section titled “NovaMarket 前端 K线 / 成交表修复(2026-06-17,跨项目补记)”
  • 8a28328最近成交时间按裸 UTC 处理,消除成交表晚 8h —— /api/swap 成交 time 是裸真 UTC 秒(实测 == 链上 block.timestamp,0 秒差),与 UDF bar/history//udf/time(带 apiTimezone 偏移)口径相反。旧代码沿用 K线口径多减 28800,致最近成交「20 分钟前」显示成「8 小时前」、与 K线十字线时间分叉。改为 ts = item.time*1000(不减偏移),移除 tradeItemToTx / fetchPairTrades / fetchUserPairTradesoffsetSec 形参及 TokenDetail 两处 getTzOffsetSec 调用(K线 useKline 仍保留偏移),补回归测「刚成交不应被推早 8h」。
  • 93a5096K线首屏多拉历史根并自适应铺满视图 —— zz 当日反馈 K线「断断续续、显示数多些、好看点」,根因是后端历史为按成交分钟的稀疏根(无成交分钟不补空根)+ 默认右对齐仅显示约 216 根。FIRST_PAGE 300→1000 把现有历史尽量拉全(服务端返回 min(countback, 实有根数));PriceChart 每次 symbol/interval 切换首批数据到位 fitContent 铺满一次,WS 末根更新 / 用户缩放不再强制复位(didFitRef 守卫)。
  • a1a4596重建 bsc-test 产物,纳入上述成交时间修复 + K线显示(及删启动弹窗灰色说明 0d1cc0e),.env.bsc.test 构建并 git add -f build/
  • NovaPay GV 模型定为 9×:商家码 PAYER 5× / PAYEE 1× / (PLATFORM+DISTRIBUTOR)=3×,企业级 PAYER 8× / 官方 1×,合计均 9×。FE 标签按链上 GVRewarded emit 裸值渲染(BE 不假设倍率),平台 / 渠道商的拆分比例不写死、用 tooltip 说明。解 06-16 遗留的 10× vs 9× 分歧。
  • 导出走 BE 全量端点、不前端拍当前页:财务月底跑全平台对账需全量(最多 5w 行 + 19 列 GV 拆分),复用既有 ajaxDownload(responseType=blob) 助手,与 token/user/mining 导出同款;payment/summaryrecharge/summary 两个单码汇总端点因功能被 stats 接口 summary 覆盖、暂不消费,常量留存备用。
  • 风控开关 = 链上 + 链下双写:禁用 / 启用走 MetaMask QRCodeModule.setQRCodeEnabled(链上),risk/note 仅链下备案管理员意图;状态由 BE M8 监听器异步同步 is_enabled,前端签名成功后 load 刷新(链上写靠监听器回填,不能只 load 一次)。
  • 代币符号沿用前端链上解析(zz 约定 BE 只返地址):复用 onchain/tokenSymbols.js(multicall 批量读 symbol() + 地址级缓存 + 失败回退),codes / stats 列表加载后异步回填 *_symbol,不给 BE 立符号字段缺口。
  • 分页字段例外已对齐payment/lstrecharge/lst 总数走 data.total,其余 NovaPay 列表(risk/lst、reconcile/cumulative)走 data.count,stats 明细走 data.detail_total;三处分别取值,避免按统一 data.count 取错。
  • 企业级签发 / 风控链上写仍依赖管理员钱包在 QRCodeModule 有 restricted 权限:否则 createThirdPartyQRCode / setQRCodeEnabled revert(AccessManagedUnauthorized),待 AccessManager 持权人授权后才能跑通 admin 端到端 happy-path。
  • NovaPay admin 端真实数据回归待跑codes.vue 用到的 creator_address / created_ateb_payfi_code 推断列名(merchant-code-lst 文档未逐字段列全),等真实数据回来确认;企业级 GV source→标签映射「首笔真实交易后对照核实」(zz 文档备注)。
  • 等 zz 复检 016 接口:zz 群里说「016 的接口我最后检查下,没问题就先开发 017 的接口」,待其收口后再转 FEAT-017 接口开发。
  • 配合 zz 复检 016 接口,按反馈微调;待其收口后转入 FEAT-017 接口开发
  • 跟进企业级签发 / 风控链上写的 restricted 授权,联调 NovaPay admin 端到端(申请审核 → 链上签发 → 风控开关 → 对账 / 统计回填)。
  • 配合 QA 复测 NovaPay 四页接真实 BE 后的回归(风控开关链上双写、导出全量 XLSX、GV 9× 文案、编辑历史时间线)。