Files
汉秋 1970572edd 迁移合作订单完整能力,并统一 AppRoleCode 角色权限与首页菜单展示。
新增 CooperationOrder 模块(双 Tab 列表、获客员绑定、主 Tab 扫码)、订单来源/带客单绑定及配套 API 测试;同步引入 roleCode 权限匹配与相关单元测试。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 13:33:00 +08:00

1.4 KiB
Raw Permalink Blame History

Statistics 模块业务逻辑

模块职责

Statistics 模块负责登录后的数据 Tab展示当前景区下的订单统计看板。

当前同步旧工程数据页的主要能力:时间段切换、统计汇总卡、每日明细、分页加载和下拉刷新。

核心对象

  • StatisticsView:数据 Tab 根视图,读取当前景区、当前角色和统计 API。
  • StatisticsViewModel:管理时间段、汇总数据、每日明细、分页状态和加载状态。
  • StatisticsAPI:封装摄影师和景区管理员两套统计接口。
  • StatisticsPeriod表示今日、昨日、7日、本月四个快捷时间段。

数据流程

页面从 AccountContext.currentScenic 获取当前景区 ID。缺少景区时显示空状态不请求接口。

切换时间段时同时请求汇总接口和第一页日数据接口。汇总接口使用 range 参数,日数据接口使用 start_timeend_timepagepage_size

currentAppRole.isScenicAdmin == true 时使用景区管理员接口,其他角色使用摄影师接口。日数据响应使用 DataListPayload 解码,兼容后端返回 datalist 字段。

分页规则

每日明细第一页随刷新或时间段切换加载。列表滚动到底部后,如果当前数量小于 total则继续加载下一页。加载更多失败时保留已有数据和当前页状态。