You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

24 KiB

页面开发总览 · Web 管理后台 + APP 员工端

更新时间:2026-10-15 数据来源:代码现状(zhongyou_web/src、zhongyouApp/src)+ 最新接口文档(docs/api,api.json 282 个接口)+ 甲方功能表 + 两份高保真原型。

图例

  • 状态:✅ 已完成 / ⚠️ 部分完成 / ❌ 未开始
  • 可开工:✅ 可直接开工(接口与布局均就绪)/ ⚠️ 需确认(部分接口或设计待定)/ ⛔ 不可开工(缺关键接口或第三方方案)

本文件为页面级总览;具体接口字段见 page-api-map.md 与 docs/api/modules。开发约定见 AGENTS.md。

一、总览统计

端 页面总量 已完成 部分完成 未开始
Web 管理后台 34(含系统监控/个人中心) 25 2(积分管理、切换日志) 7(工作台、商城运营+7子页、安全兑换管理、数据分析、风控与审计)
APP 员工端 15(14 屏 + 通知提醒卡片) 10 0 5(设置、商城 5 屏)+ 通知提醒卡片

二、Web 管理后台

# 一级导航 页面 状态 接口就绪 可开工 说明
1 — 登录 ✅ — — login.vue
2 工作台 工作台(KPI 6 卡 + 近7日趋势 + 待办预警 + 最新上报) ⚠️ 待测试 ✅ ✅ 已开发(2026-10-15):src/views/workbench/index.vue + src/api/analysis/home.js,接口 analysis/home/overview、todo-warning、trend-latest。“平台同步失败”无接口(展示 —、重试禁用);风控预警“处理”目标页未开发(禁用)
3 隐患治理 隐患审核 ✅ ✅ — hazard/audit
4 隐患治理 隐患台账 ✅ ⚠️ — hazard/ledger;“重试同步”缺平台同步接口,列已隐藏
5 积分与商城 积分管理 · Tab1 积分规则 ✅ ✅ — points/management
6 积分与商城 申诉台账(独立页 + 积分管理内“申诉处理”Tab) ⚠️ 待测试 ✅ ✅ 已开发(2026-10-15):AppealLedgerPanel.vue(复用组件)+ 独立页 src/views/points/appeal/index.vue + src/api/points/appeal.js。列表 appeal/todoList、详情 appeal/detail/{id}、审批 appeal/completeFlow(taskId 由 flowable/busiInfo/getProcessDetail 补全)。积分管理「申诉处理」Tab 已启用并复用同一组件
7 积分与商城 积分管理 · Tab3 手动调整 ❌ ⛔ ⛔ 阻塞:balance/adjust 文档仅声明 form-urlencoded + 单整数,缺 userId/points/原因字段,需后端补请求结构
8 积分与商城 积分管理 · Tab4 流水冲正 ⚠️ 待测试 ✅ ✅ 已开发(2026-10-15):src/views/points/management/components/TransactionReversePanel.vue + src/api/points/transaction.js。列表 transaction/getListByPage、冲正 transaction/reverse/{logId}(二次确认,仅 status=1 可冲正)
9 积分与商城 商城运营(主页:KPI + 兑换订单表 + 订单详情时间线 + 退款/导出) ❌ ⚠️ ⚠️ 订单/追踪/物品/日志接口齐全(兑换订单、订单追踪、兑换物品、操作日志);“惠服对接状态卡”(Token 状态/同步时间/全量·增量·单品同步/刷新 Token)无接口,该卡片需等后端
10 积分与商城 商城运营 › 分类管理 ❌ ⛔ ⛔ 页面本体由惠服平台提供,需甲方给出嵌入方案(URL/SSO)
11 积分与商城 商城运营 › 轮播图管理 ❌ ⛔ ⛔ 同上
12 积分与商城 商城运营 › 楼层管理 ❌ ⛔ ⛔ 同上
13 积分与商城 商城运营 › 纯积分兑换专区 ❌ ⛔ ⛔ 同上
14 积分与商城 商城运营 › 纯积分兑换管理 ❌ ⛔ ⛔ 同上
15 积分与商城 商城运营 › 日常积分兑换管理 ❌ ⛔ ⛔ 同上
16 积分与商城 商城运营 › 日常积分兑换专区 ❌ ⛔ ⛔ 同上
17 安全兑换管理 安全兑换管理(总开关/限额/大额审批/防刷配置) ⚠️ 待测试 ✅ ✅ 已开发(2026-10-15):src/views/exchange/security/index.vue + src/api/exchange/config.js。接口 exchange/config/active·switch/status·switch/toggle·add·updateById、anti/farm/active·updateById。注:“校验配置”为前端本地一致性校验(无后端校验配置接口)
18 分析与风控 数据分析(时效/排行/分类分布/级别分布/月度报告导出;无热力图、无顶部筛选) ⚠️ 待测试 ✅ ✅ 已开发(2026-10-15):src/views/analysis/index.vue + src/api/analysis/index.js。接口 stats/category·stats/level·timeliness/level·`ranking/points
19 分析与风控 风控与审计(Tab1 风控预警 + Tab2 审计日志) ⚠️ 待测试 ⚠️ ⚠️ 部分已开发(2026-10-15):src/views/risk/index.vue + src/api/risk/index.js。① 风控预警 Tab:异常行为检测 anti/farm/detectAll、自报自审检测 anti/farm/detectSelfAudit;预警列表 + 处置(放行/冻结 24h/黑名单)无接口,保留占位。② 审计日志 Tab:audit/log/getListByPage 完整可用
20 流程管理 隐患流程配置 ✅ ✅ — flowable/hazardConfig
21 流程管理 隐患上报(流程发起) ✅ ✅ — flowable/task/myProcess
22 流程管理 隐患审批(待办/已办) ✅ ✅ — flowable/task/todo
23 流程管理 切换日志 ⚠️ 空页 ⛔ ⛔ 无切换日志列表/详情接口,仅有 POST /flowable/hazard/switchLevel 操作接口(见 CURRENT_STATUS.md 已知风险)
24 流程管理 流程监听 ✅ ✅ — system/listener
25 流程管理 流程定义 ✅ ✅ — flowable/definition
26 流程管理 审批流程设计 ✅ ✅ — flowable/definition/model.vue
27 流程管理 表单配置 ✅ ✅ — flowable/task/form
28 流程管理 流程表达式 ✅ ✅ — system/expression
29 系统管理 用户管理 ✅ ✅ — system/user
30 系统管理 角色管理 ✅ ✅ — system/role
31 系统管理 菜单管理 ✅ ✅ — system/menu
32 系统管理 部门管理 ✅ ✅ — system/dept
33 系统管理 岗位管理 ✅ ✅ — system/post
34 系统管理 字典管理 ✅ ✅ — system/dict
— 系统监控 在线用户/定时任务/调度日志/缓存/服务/操作日志/登录日志 ✅ ✅ — monitor/(旧模块对接)
— — 个人中心 / 账号退出 ✅ ✅ — 已实现

Web 可直接开工(5 项):工作台、积分管理 Tab2/3/4、安全兑换管理、数据分析。 Web 需确认后开工(2 项):商城运营(订单部分可先做,惠服对接卡待接口)、风控与审计(审计日志可先做,风控预警待接口)。 Web 阻塞(1 + 7 项):切换日志(无接口);商城运营 7 个三方子页(待惠服方案)。


三、APP 员工端

# 一级导航 页面/组件 状态 接口就绪 可开工 说明
1 — 登录 ✅ ✅ — LoginScreen
2 首页 首页(用户区/四宫格/公告条/今日概览/最近上报) ✅ ✅ — HomeDashboardScreen;缺“通知提醒卡片”(见 #14)
3 上报 隐患录入(含照片≤8、草稿、校验、提交) ✅ ✅ — ReportFormV2Screen
4 上报 草稿箱 ✅ ✅ — HazardDraftsScreen
5 记录 隐患台账(卡片列表 + 审批弹层) ✅ ✅ — RecordsLedgerScreen
6 我的 个人中心 ⚠️ ✅ — ProfileScreen;“兑换”统计无值、设置入口为占位
7 我的 积分明细 ✅ ✅ — PointsScreen
8 我的 我的申诉(含撤回/查看) ✅ ✅ — AppealsScreen
9 我的 发起申诉 ✅ ✅ — AppealFormScreen
10 我的 设置(消息推送/声音/震动/关于我们/清除缓存/退出登录) ❌ ✅(纯本地) ✅ 目前是 Alert('设置功能待接入');开关/缓存用 AsyncStorage,无后端依赖,参考原型 scr-settings
11 我的 我的兑换 ❌ ✅ ✅ exchange/order/myList(积分兑换订单管理)现成,可直接做
12 公共组件 通知提醒卡片(首页顶部未读提醒,可关闭/跳消息中心) ❌ ✅ ✅ message/unread-count、message/list(用户消息中心)
13 我的 消息中心(列表/详情/已读) ✅ ✅ — MessagesScreen
14 商城 商城-首页 ❌ ⛔ ⛔ 惠服商城页面本体(三方),见下方原因
15 商城 商城-商品详情 / 购物车 / 确认订单 / 商城个人中心 ❌ ⛔ ⛔ 同上(4 屏)

备注:APP 现状已含“隐患录入照片上传≤8 张”(uploadHazardAttachment),zhongyouApp/开发任务清单.md 中“照片未做”已过时。

APP 可直接开工(3 项):设置、我的兑换、通知提醒卡片。 APP 阻塞(5 屏 + 待确认):商城 5 屏(惠服 URL/SSO);个人信息修改(api.json 未收录系统用户 CRUD,需确认)。


四、不可开工 / 需确认的原因汇总

页面 阻塞原因 需要谁提供
切换日志(Web) 无切换日志列表/详情接口,仅有切换操作接口 后端补接口
商城运营 · 惠服对接状态卡(Web) 无 Token 状态 / 同步时间 / 全量·增量·单品同步 / 刷新 Token 接口 后端补接口
风控预警(Web 风控与审计 Tab1) 无预警列表与处置(放行/冻结 24h/黑名单)接口 后端补接口
隐患台账“重试同步” / 数据分析“平台同步失败”(Web) 无平台同步状态 / 重试接口 后端补接口
商城运营 7 个三方子页(Web) 页面本体由惠服平台提供 甲方/惠服:嵌入方案、URL、SSO
商城 5 屏(APP) 惠服商城正式地址 + SSO + 回调协议未定 甲方/惠服
个人信息修改(APP) 最新 api.json 未收录系统用户 CRUD(RuoYi 原生 /system/user/profile 是否可用待确认) 后端确认
我的兑换的下单/退款(APP,若需在端内下单) 下单属惠服商城能力,端内仅能查记录 甲方/惠服

五、UI 风格统一要求(写页面前必读)

通用原则:新页面必须复用现有组件与主题变量,不得自造一套视觉;列表页沿用现有 Card 列表模式。明确:是。

Web(Vue2 + Element UI 2.15)

  • 布局:212px 左侧导航 + 52px Header + #F0F2F5 背景;主色 #1890ff;表格字号 12px。
  • 统一主题:复用 prototype-theme.scss,不要局部覆盖 Element 变量。
  • 列表页:统一使用共享组件 DataListPanel,开启 modern-table(无竖线、表头可拖列宽);筛选/批量操作/分页/状态 Tag 与既有页面(用户管理、隐患台账、积分规则)保持一致。
  • 状态与操作:状态用 el-tag(启用绿/停用灰,等级/结果按既定色);破坏性操作二次确认;空态/加载态/错误态齐备。
  • 弹窗:沿用现有 el-dialog 尺寸与按钮主次(主蓝次白、删除红)。

APP(React Native)

  • 主色 #D93B48;页面背景 #F0F1F3;卡片白底圆角;分隔线 #F5F5F7;正文色 #1A1A2E、次要 #5A5A72、弱化 #9898AE。
  • 布局模式沿用现有 screen:顶部 hero 卡 + 白色 crd 卡片 + li-it 列表行 + tg 标签;图标统一用 @ant-design/icons-react-native 的 IconOutline。
  • 交互:设置页开关样式参考原型 scr-settings;通知提醒卡片参考原型 ntf(顶部条、可关闭、点击跳消息中心)。
  • 数据态:加载/空态/错误提示沿用现有 ActivityIndicator + 文案风格,不伪造数据。

六、开工顺序建议

  1. Web:工作台 → 积分管理 Tab2/3/4 → 安全兑换管理 → 数据分析(均接口就绪)。
  2. APP:设置 → 我的兑换 → 通知提醒卡片(均接口就绪)。
  3. 待接口/第三方:商城运营(订单部分先做)、风控与审计(审计日志先做)、商城 5 屏、切换日志。

每完成一页,同步更新本文件状态、CURRENT_STATUS.md、DEVELOPMENT_LOG.md 及 page-api-map.md。


七、备注与提醒(待跟进)

  • 触发条件:第二节 / 第三节的「可直接开工」项(Web 6 项 + APP 3 项)全部完成后。
  • 动作:提醒甲方/负责人决定 是否进一步梳理「积分申诉」功能。
  • 梳理范围(届时对齐):
    1. Web「积分管理 → 申诉处理」Tab 的完整交互与字段(列表、受理、处理、流程审批、详情)。
    2. APP「我的申诉」处理时间线 / 流程进度展示(appeal/detail/{id} 已返回流程进度,可直接补)。
    3. 待确认项:申诉是否支持补充材料附件;appeal 流程 Key 是否已在「隐患流程配置」中配置(否则走全局默认 appeal.flow.key)。

八、积分申诉 · 流程梳理与待确认(疑问清单)

来源:后端提供的申诉流程说明图(提交 / 审批 / 查询列表)+ 文字补充(2026-10-15)。

8.1 流程关系(已明确)

  • 状态机:0 待受理 →(accept 旧)1 处理中 →(handle 旧)2 已通过 / 3 已驳回;0 →(submitFlow)启动 Flowable →(completeFlow 逐节点)流程结束;0 →(withdraw,仅 state=0)4 已撤回。
  • 新旧接口分工:新流程走 submitFlow + completeFlow;accept、handle 是不依赖流程引擎的旧管理端接口,Web 审批默认走 completeFlow,accept/handle 仅作无流程时兜底。
  • 流程结束时后端自动处理:通过 → 状态置 2 并按 adjustPoints 补发/扣减积分;驳回 → 状态置 3;两者都给申请人推送消息。调分会写入积分流水(APPEAL_ADD / APPEAL_DEDUCT)与审计日志。
  • 申诉对象:针对“某一条自己上报的隐患”的积分发起申诉。

8.2 待确认疑问清单

A. 需后端确认(接口 / 字段 / 入参)

  • analysis/report/monthly(+/export) 实际需必填 year(api.json 未写),已在 W6 补齐(year + month)。

  • completeFlow 请求体结构:taskId、通过/驳回标识、adjustPoints 传参位置(每节点 or 结束节点)、审批意见字段名。

    W2 落地假设(2026-10-15,待联调确认):审批 body 采用 { taskId, instanceId, type: 'appeal', result: '1'|'2', comment };taskId 由 flowable/busiInfo/getProcessDetail?id=flowInstanceId 取当前待办任务补全(沿用隐患审核做法);改判补分的 adjustPoints 暂放入 variables——若后端实际从申诉记录字段读取,需改为“先 appeal/updateById 更新记录再 completeFlow”。

  • 手动调整 balance/adjust 请求结构(阻塞 W3):文档仅声明 form-urlencoded 单整数,缺 userId/points/原因字段与参数名,需后端补充后才能开发「手动调整」。【后端计划 2026-10-16 更新该接口并补参数;同时需确认是直接生效还是二级审批】

  • todoList 筛选参数(待办/已办、类型、状态、厂区)与返回字段是否含 canApprove、isInitiator(现有 api.json 文档未列出)。

  • myList 筛选参数(appealType / status)。

  • detail/{id} 返回的“流程进度信息”结构(时间线需要:节点名 / 处理人 / 处理时间 / 审批意见)。

  • 管理端“全部申诉列表”是否为 appeal/getListByPage,筛选字段有哪些(申请人 / 厂区 / 类型 / 状态 / 时间)。

  • 消息推送的 msgType 与文案模板(是否 appeal_result)。

  • 流程走中间节点时状态是否置 1;撤回(withdraw)后能否重新提交。

  • 申诉是否支持附件/补充材料(Appeal.attachmentUrls 字段是否生效)。

  • 申诉是否必须关联一条隐患,还是允许无关联的“积分异议 / 其他”。

B. 需客户确认(需求)

  • PC「查询所有用户积分」界面:查询字段与筛选条件(客户待定)。
  • Web 申诉台账的列表列与筛选项(类比隐患台账)。
  • “申诉台账”是独立菜单页还是放在积分管理里的 Tab。

C. 现状差异(待补代码 / 文档)

  • APP:appeal.ts 的 myList 未接 appealType/status 筛选;AppealsScreen 详情弹窗缺流程时间线;附件上传未做。
  • docs/api 中 completeFlow / todoList / myList / detail 的说明比后端图简略,需按后端补全(否则会漏 adjustPoints、canApprove 等)。
  • Web:积分管理「申诉处理」Tab 未开发;可能还需独立“申诉台账”页。

九、可开发功能 TODO 表

只列当前可开工的功能(接口就绪)。状态:☐ 未开始 / ◐ 进行中 / ☑ 已完成。 建议文件为推荐落位,可按实际调整;接口路径均省略 /gd_dataserver 前缀。

9.1 可直接开工(接口齐全)

编号 端 功能 / 页面 关键接口 建议文件(页面 / 封装) 优先级 状态 依赖 / 备注
W1 Web 工作台 analysis/home/overview、home/todo-warning、home/trend-latest src/views/workbench/index.vue + src/api/analysis/home.js 高 ◐ 待测试 已开发(2026-10-15),待测试。菜单:一级「工作台」,路由 workbench,组件 workbench/index(/workbench)。“平台同步失败”KPI 无接口,展示 —
W2 Web 申诉台账(独立页,抄隐患台账 + 审批) appeal/todoList、appeal/detail/{id}、appeal/completeFlow、flowable/busiInfo/getProcessDetail src/views/points/appeal/index.vue + src/api/points/appeal.js 高 ◐ 待测试 已开发(2026-10-15),待测试。菜单:一级「积分与商城」→「申诉台账」,路由 points/appeal,组件 points/appeal/index(/points/appeal)。待联调确认:completeFlow 的 taskId 来源、改判补分 adjustPoints 传参(当前放 variables)
W3 Web 积分管理 · 手动调整 Tab balance/adjust、balance/getByUserId/{userId} src/views/points/management/index.vue + src/api/points/balance.js 高 ⛔ 需确认 接口定义不完整:balance/adjust 文档仅声明 application/x-www-form-urlencoded + 单个整数,缺 userId/points/原因字段结构,无法开工;后端计划 2026-10-16 更新该接口并补参数,更新后即可开发
W4 Web 积分管理 · 流水冲正 Tab transaction/getListByPage、transaction/reverse/{logId} src/views/points/management/components/TransactionReversePanel.vue + src/api/points/transaction.js 中 ◐ 待测试 已开发(2026-10-15),待测试。积分管理第 4 个 Tab;仅 status=1(有效)可冲正,二次确认。流水无用户姓名字段,列表显示 userId
W5 Web 安全兑换管理 exchange/config/active·switch/status·switch/toggle·add·updateById、anti/farm/active·updateById src/views/exchange/security/index.vue + src/api/exchange/config.js 中 ◐ 待测试 已开发(2026-10-15),待测试。菜单:一级「安全兑换管理」,路由 exchange/security,组件 exchange/security/index(/exchange/security)
W6 Web 数据分析 analysis/stats/category·stats/level·timeliness/level·`ranking/points report exchange·report/monthly(+/export`) src/views/analysis/index.vue + src/api/analysis/index.js 中
A1 APP 设置(推送/声音/震动/关于/清缓存/退出) 纯本地(AsyncStorage) src/screens/home/SettingsScreen.tsx 中 ☐ 参考原型 scr-settings
A2 APP 我的兑换 exchange/order/myList src/screens/home/MyExchangeScreen.tsx + src/api/exchange.ts 中 ☐ 入口:我的 → 我的兑换
A3 APP 通知提醒卡片 message/unread-count、message/list src/components/NoticeReminderCard.tsx 中 ☐ 首页顶部条,点击跳 Messages

9.2 部分可开工(先做主体,其余等接口)

编号 端 功能 / 页面 关键接口 建议文件(页面 / 封装) 优先级 状态 依赖 / 备注
W7 Web 商城运营(订单主体) exchange/order/getListByPage·info·refund/{orderId}、points/order/track/list/{orderId}、exchange/item/* src/views/exchange/mall/index.vue + src/api/exchange/order.js 中 ☐ “惠服对接状态卡”无接口,后续再补,不阻塞订单部分
W8 Web 风控与审计 audit/log/getListByPage、anti/farm/detectAll、anti/farm/detectSelfAudit src/views/risk/index.vue + src/api/risk/index.js 中 ◐ 待测试 部分已开发(2026-10-15),待测试。审计日志 Tab 完整;风控预警 Tab 提供异常检测/自报自审检测,预警列表与处置无接口(占位)。菜单:一级「分析与风控」→「风控与审计」,路由 risk/index,组件 risk/index(/risk/index)

约定:每完成一项 → 勾选状态 → 同步更新第三节状态、DEVELOPMENT_LOG.md 与 page-api-map.md。