{
  "version": "V0.9",
  "projects": [
    {
      "id": "01",
      "role": "平台管理员",
      "endpoint": "PC",
      "project_name": "LH-PC-平台管理员-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "平台管理员-首页",
      "page_count": 6,
      "pages": [
        "平台管理员-首页",
        "项目接入向导",
        "项目详情与功能包",
        "银行接入与通道校验",
        "租户与角色授权",
        "平台运行与告警"
      ],
      "main_flow": [
        "平台管理员-首页 -> 项目接入向导 -> 项目详情与功能包 -> 银行接入与通道校验 -> 租户与角色授权 -> 平台管理员-首页",
        "平台管理员-首页 -> 平台运行与告警 -> 项目详情与功能包"
      ],
      "branch_flow": [
        "平台管理员-首页 -> 项目详情与功能包",
        "平台管理员-首页 -> 租户与角色授权"
      ],
      "error_flow": [
        "银行通道未联通时，在银行接入页给出阻断提示，不允许发布项目。",
        "角色权限未配置完整时，在租户与角色授权页显示缺失提示。"
      ],
      "states": [
        "默认态",
        "项目未发布态",
        "银行通道异常态",
        "权限未完成态",
        "平台告警态"
      ],
      "goal": "治理租户、项目、功能包、银行接入与平台运行，形成平台级可点击原型。"
    },
    {
      "id": "02",
      "role": "系统运营人员",
      "endpoint": "PC",
      "project_name": "LH-PC-系统运营人员-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "系统运营-首页",
      "page_count": 5,
      "pages": [
        "系统运营-首页",
        "多项目入口",
        "功能包运营页",
        "公告与消息配置",
        "项目问题跟进"
      ],
      "main_flow": [
        "系统运营-首页 -> 多项目入口 -> 功能包运营页 -> 项目问题跟进 -> 系统运营-首页"
      ],
      "branch_flow": [
        "系统运营-首页 -> 公告与消息配置",
        "系统运营-首页 -> 项目问题跟进"
      ],
      "error_flow": [
        "项目配置缺失时，在多项目入口显示红色问题标签。",
        "消息下发失败时，在公告与消息配置页出现失败反馈。"
      ],
      "states": [
        "默认态",
        "多项目态",
        "消息发送失败态",
        "问题升级态"
      ],
      "goal": "多项目统一运营、消息与功能包管理、项目问题跟进。"
    },
    {
      "id": "03",
      "role": "市教委",
      "endpoint": "PC",
      "project_name": "LH-PC-市教委-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "市教委-首页",
      "page_count": 5,
      "pages": [
        "市教委-首页",
        "全市学校总览",
        "区域对比分析",
        "风险学校详情",
        "督办与通报中心"
      ],
      "main_flow": [
        "市教委-首页 -> 全市学校总览 -> 风险学校详情 -> 督办与通报中心 -> 市教委-首页"
      ],
      "branch_flow": [
        "市教委-首页 -> 区域对比分析 -> 风险学校详情"
      ],
      "error_flow": [
        "数据延迟时，在首页和总览页显示数据更新时间提醒。",
        "学校风险过高时，在风险学校详情页显示升级督办建议。"
      ],
      "states": [
        "默认态",
        "全市总览态",
        "高风险学校态",
        "督办中态"
      ],
      "goal": "查看全市学校运行、风险对比、督办通报。"
    },
    {
      "id": "04",
      "role": "区教委",
      "endpoint": "PC",
      "project_name": "LH-PC-区教委-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "区教委-首页",
      "page_count": 5,
      "pages": [
        "区教委-首页",
        "区内学校总览",
        "学校风险详情",
        "督办中心",
        "整改闭环详情"
      ],
      "main_flow": [
        "区教委-首页 -> 区内学校总览 -> 学校风险详情 -> 督办中心 -> 整改闭环详情 -> 区教委-首页"
      ],
      "branch_flow": [
        "区教委-首页 -> 督办中心"
      ],
      "error_flow": [
        "整改逾期时，在整改闭环详情页突出逾期标签与建议动作。"
      ],
      "states": [
        "默认态",
        "辖区态",
        "督办中态",
        "整改逾期态"
      ],
      "goal": "按区查看学校运行、风险学校、督办与整改。"
    },
    {
      "id": "05",
      "role": "监管专员",
      "endpoint": "PC",
      "project_name": "LH-PC-监管专员-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "监管专员-首页",
      "page_count": 5,
      "pages": [
        "监管专员-首页",
        "风险预警详情",
        "核查详情",
        "督办详情",
        "整改闭环详情"
      ],
      "main_flow": [
        "监管专员-首页 -> 风险预警详情 -> 核查详情 -> 督办详情 -> 整改闭环详情"
      ],
      "branch_flow": [
        "核查详情 -> 督办详情",
        "督办详情 -> 监管专员-首页"
      ],
      "error_flow": [
        "证据不足时，在核查详情页给出“待补充材料”状态。",
        "整改未提交时，在整改闭环页显示催办入口。"
      ],
      "states": [
        "默认态",
        "预警态",
        "核查中态",
        "证据不足态",
        "整改待提交态"
      ],
      "goal": "风险核查、督办、整改闭环。"
    },
    {
      "id": "06",
      "role": "学校校长",
      "endpoint": "PC",
      "project_name": "LH-PC-学校校长-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "校长-首页",
      "page_count": 5,
      "pages": [
        "校长-首页",
        "结果与风险总览",
        "家长满意度与投诉",
        "营养与食安摘要",
        "督办反馈详情"
      ],
      "main_flow": [
        "校长-首页 -> 结果与风险总览 -> 家长满意度与投诉 -> 督办反馈详情 -> 校长-首页"
      ],
      "branch_flow": [
        "校长-首页 -> 营养与食安摘要"
      ],
      "error_flow": [
        "投诉激增时，在满意度与投诉页显示预警卡。"
      ],
      "states": [
        "默认态",
        "高风险态",
        "投诉上升态",
        "督办中态"
      ],
      "goal": "看结果、看风险、看满意度，不被执行细节淹没。"
    },
    {
      "id": "07",
      "role": "分管副校长",
      "endpoint": "PC",
      "project_name": "LH-PC-分管副校长-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "分管副校长-首页",
      "page_count": 5,
      "pages": [
        "分管副校长-首页",
        "菜谱执行偏差",
        "设备与异常概览",
        "投诉热点与处理",
        "整改任务详情"
      ],
      "main_flow": [
        "分管副校长-首页 -> 菜谱执行偏差 -> 设备与异常概览 -> 整改任务详情 -> 分管副校长-首页"
      ],
      "branch_flow": [
        "分管副校长-首页 -> 投诉热点与处理 -> 整改任务详情"
      ],
      "error_flow": [
        "设备异常未闭环时，在设备与异常概览页显示待处理列表。",
        "投诉热点升级时，在投诉热点与处理页突出升级标记。"
      ],
      "states": [
        "默认态",
        "偏差态",
        "异常待处理态",
        "投诉升级态"
      ],
      "goal": "跟进菜谱执行、设备异常、投诉热点和整改任务。"
    },
    {
      "id": "08",
      "role": "后勤主任",
      "endpoint": "PC",
      "project_name": "LH-PC-后勤主任-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "后勤主任工作台",
      "page_count": 6,
      "pages": [
        "后勤主任工作台",
        "菜谱与订餐执行",
        "退餐与异常处理",
        "学校银行配置",
        "对账中心",
        "出金审批"
      ],
      "main_flow": [
        "后勤主任工作台 -> 菜谱与订餐执行 -> 退餐与异常处理 -> 对账中心 -> 出金审批 -> 后勤主任工作台"
      ],
      "branch_flow": [
        "后勤主任工作台 -> 学校银行配置",
        "对账中心 -> 出金审批"
      ],
      "error_flow": [
        "对账差异时，在对账中心显示差异卡与核对入口。",
        "出金被驳回时，在出金审批页显示驳回原因与重新提交入口。"
      ],
      "states": [
        "默认态",
        "差异待核对态",
        "审批中态",
        "驳回态"
      ],
      "goal": "高效率处理菜谱执行、退餐异常、银行配置、对账和出金审批。"
    },
    {
      "id": "09",
      "role": "食堂管理员",
      "endpoint": "PC",
      "project_name": "LH-PC-食堂管理员-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "食堂管理员工作台",
      "page_count": 6,
      "pages": [
        "食堂管理员工作台",
        "今日订餐与核销",
        "菜谱发布与调整",
        "异常订单处理",
        "设备告警与工单",
        "现场统计与班次交接"
      ],
      "main_flow": [
        "食堂管理员工作台 -> 今日订餐与核销 -> 异常订单处理 -> 设备告警与工单 -> 食堂管理员工作台"
      ],
      "branch_flow": [
        "食堂管理员工作台 -> 菜谱发布与调整",
        "食堂管理员工作台 -> 现场统计与班次交接"
      ],
      "error_flow": [
        "设备离线时，在设备告警与工单页给出人工兜底动作。",
        "订单异常时，在异常订单处理页给出处理按钮。"
      ],
      "states": [
        "默认态",
        "设备离线态",
        "订单异常态",
        "班次交接待确认态"
      ],
      "goal": "管理今日订餐、核销、菜谱发布、异常订单与设备工单。"
    },
    {
      "id": "10",
      "role": "餐企运营负责人",
      "endpoint": "PC",
      "project_name": "LH-PC-餐企运营负责人-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "餐企运营-首页",
      "page_count": 5,
      "pages": [
        "餐企运营-首页",
        "项目经营总览",
        "供餐履约与出餐",
        "学校协同与消息",
        "项目详情"
      ],
      "main_flow": [
        "餐企运营-首页 -> 项目经营总览 -> 供餐履约与出餐 -> 学校协同与消息 -> 项目详情"
      ],
      "branch_flow": [
        "餐企运营-首页 -> 项目详情"
      ],
      "error_flow": [
        "履约偏差时，在供餐履约页突出异常项目。"
      ],
      "states": [
        "默认态",
        "履约偏差态",
        "协同待回复态"
      ],
      "goal": "查看项目经营、履约与出餐，协同学校。"
    },
    {
      "id": "11",
      "role": "餐企财务",
      "endpoint": "PC",
      "project_name": "LH-PC-餐企财务-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "餐企财务-首页",
      "page_count": 5,
      "pages": [
        "餐企财务-首页",
        "应收对账中心",
        "结算单详情",
        "回款差异处理",
        "学校结算协同"
      ],
      "main_flow": [
        "餐企财务-首页 -> 应收对账中心 -> 结算单详情 -> 回款差异处理 -> 餐企财务-首页"
      ],
      "branch_flow": [
        "结算单详情 -> 学校结算协同"
      ],
      "error_flow": [
        "回款差异时，在回款差异处理页显示差异来源与下一步。"
      ],
      "states": [
        "默认态",
        "待对账态",
        "差异处理中态",
        "已结清态"
      ],
      "goal": "应收对账、结算单查看、回款差异处理。"
    },
    {
      "id": "12",
      "role": "餐企设备管理员",
      "endpoint": "PC",
      "project_name": "LH-PC-餐企设备管理员-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "餐企设备管理员-首页",
      "page_count": 5,
      "pages": [
        "餐企设备管理员-首页",
        "设备台账",
        "设备详情",
        "告警与工单",
        "版本升级与下发"
      ],
      "main_flow": [
        "餐企设备管理员-首页 -> 设备台账 -> 设备详情 -> 告警与工单 -> 版本升级与下发"
      ],
      "branch_flow": [
        "设备详情 -> 版本升级与下发"
      ],
      "error_flow": [
        "设备离线时，在设备详情和告警页同步显示离线状态。",
        "升级失败时，在版本升级页给出重试入口。"
      ],
      "states": [
        "默认态",
        "离线态",
        "告警态",
        "升级失败态"
      ],
      "goal": "设备台账、告警工单、版本升级与下发。"
    },
    {
      "id": "13",
      "role": "供应商轻门户管理员",
      "endpoint": "PC",
      "project_name": "LH-PC-供应商轻门户-V1",
      "design_base": "PC端-DESIGN",
      "entry_page": "供应商轻门户-首页",
      "page_count": 4,
      "pages": [
        "供应商轻门户-首页",
        "资质与基本信息",
        "配送回执",
        "对账回执"
      ],
      "main_flow": [
        "供应商轻门户-首页 -> 配送回执 -> 对账回执 -> 供应商轻门户-首页"
      ],
      "branch_flow": [
        "供应商轻门户-首页 -> 资质与基本信息"
      ],
      "error_flow": [
        "资质即将到期时，在资质页显示提醒。",
        "回执待确认时，在配送回执/对账回执页显示待确认状态。"
      ],
      "states": [
        "默认态",
        "资质预警态",
        "回执待确认态"
      ],
      "goal": "管理资质、配送回执与对账回执，保持轻门户边界。"
    },
    {
      "id": "14",
      "role": "家长端用户",
      "endpoint": "Mobile",
      "project_name": "LH-Mobile-家长端-V1",
      "design_base": "移动端-DESIGN",
      "entry_page": "家长-首页",
      "page_count": 4,
      "pages": [
        "家长-首页",
        "订餐页",
        "钱包页",
        "退餐与记录页"
      ],
      "main_flow": [
        "家长-首页 -> 订餐页 -> 钱包页 -> 家长-首页"
      ],
      "branch_flow": [
        "家长-首页 -> 退餐与记录页",
        "订餐页 -> 退餐与记录页"
      ],
      "error_flow": [
        "重复订餐在订餐页同页拦截。",
        "余额不足时引导去钱包页。",
        "退餐超时时在记录页显示不可退状态。"
      ],
      "states": [
        "默认态",
        "重复订餐拦截态",
        "余额不足态",
        "退餐审核中态",
        "不可退态"
      ],
      "goal": "围绕孩子、日期、餐次和钱包完成订餐、退餐与记录查看。"
    },
    {
      "id": "15",
      "role": "食堂管理员轻值守",
      "endpoint": "Mobile",
      "project_name": "LH-Mobile-食堂管理员轻值守-V1",
      "design_base": "移动端-DESIGN",
      "entry_page": "移动轻值守-首页",
      "page_count": 4,
      "pages": [
        "移动轻值守-首页",
        "异常处理",
        "审批待办",
        "消息中心"
      ],
      "main_flow": [
        "移动轻值守-首页 -> 异常处理 -> 审批待办 -> 移动轻值守-首页"
      ],
      "branch_flow": [
        "移动轻值守-首页 -> 消息中心"
      ],
      "error_flow": [
        "网络异常时，在消息中心和审批页显示离线提醒。"
      ],
      "states": [
        "默认态",
        "待处理态",
        "审批中态",
        "网络异常态"
      ],
      "goal": "移动端轻量处理异常、审批和消息，不替代 PC 主工作台。"
    },
    {
      "id": "16",
      "role": "学生消费机终端",
      "endpoint": "Device",
      "project_name": "LH-Device-学生消费机-V1",
      "design_base": "设备端-DESIGN",
      "entry_page": "待识别页",
      "page_count": 6,
      "pages": [
        "待识别页",
        "已订餐核销成功",
        "核销失败",
        "现场选餐盒列表",
        "现场选餐盒确认消费",
        "自主消费成功"
      ],
      "main_flow": [
        "待识别页 -> 已订餐核销成功 -> 自动返回待识别页",
        "待识别页 -> 现场选餐盒列表 -> 现场选餐盒确认消费 -> 自主消费成功 -> 自动返回待识别页"
      ],
      "branch_flow": [
        "待识别页 -> 核销失败 -> 待识别页"
      ],
      "error_flow": [
        "识别失败时进入核销失败页，并提供重试与人工协助。",
        "余额不足时在确认消费页显示不足提示与返回入口。"
      ],
      "states": [
        "待机态",
        "识别中态",
        "成功态",
        "失败态",
        "余额不足态"
      ],
      "goal": "围绕已订餐核销与现场选餐盒两条链路，形成可点击、可跳转的设备端原型。"
    }
  ]
}