Skip to content

巡逻管理模块

**本文引用的文件** - [patrolTasks.vue](file://app/devicemate-app/modules/patrolTasks/patrolTasks.vue) - [execute.vue](file://app/devicemate-app/modules/patrolTasks/execute.vue) - [checkDetail.vue](file://app/devicemate-app/modules/patrolTasks/checkDetail.vue) - [basicInfo.vue](file://app/devicemate-app/modules/patrolTasks/components/basicInfo.vue) - [check.vue](file://app/devicemate-app/modules/patrolTasks/components/check.vue) - [document.vue](file://app/devicemate-app/modules/patrolTasks/components/document.vue) - [safety.vue](file://app/devicemate-app/modules/patrolTasks/components/safety.vue) - [assign.vue](file://app/devicemate-app/modules/common/assign.vue) - [history.vue](file://app/devicemate-app/modules/common/history.vue) - [repair.vue](file://app/devicemate-app/modules/common/repair.vue) - [common.js](file://app/devicemate-app/utils/common.js) - [common.js](file://app/devicemate-app/store/modules/common.js)

目录

  1. 简介
  2. 项目结构
  3. 核心组件
  4. 架构总览
  5. 详细组件分析
  6. 依赖关系分析
  7. 性能与可用性考虑
  8. 故障排查指南
  9. 结论
  10. 附录

简介

本文件为“巡逻管理模块”的开发文档,面向一线工程师与产品/运营人员,系统阐述巡逻任务的业务逻辑与操作流程,覆盖任务分配、路线规划(以工单形式呈现)、数据采集(含拍照、数值录入、结果判定)、执行与反馈(含确认人选择、提交与保存)、以及页面交互与离线/在线协同策略。文档同时给出关键流程的时序图与类图,帮助快速理解模块职责与数据流转。

项目结构

巡逻管理模块位于前端应用的模块目录中,采用按功能域划分的组织方式:

  • 巡逻主界面:展示巡逻工单列表,支持扫码筛选、分页查询、状态筛选、批量操作(派发、执行、维修、历史)。
  • 执行页面:包含基础信息、检查清单、文档资料三个标签页,支持拍照上传、数值校验、结果选择、保存与提交。
  • 通用子页面:派发执行人、异常登记、维修工单创建等,复用统一的状态与导航行为。
  • 组件化设计:基础信息、检查清单、文档、安全提示等均封装为可复用组件,便于扩展与维护。

图表来源

章节来源

核心组件

  • 巡逻任务列表页:负责分页加载、状态筛选、扫码查询、批量操作入口(派发、执行、维修、历史)。
  • 执行页:承载基础信息、检查清单、文档三部分,支持拍照上传、数值校验、结果判定、保存与提交。
  • 检查清单组件:单项检查项的拍照、数值输入、结果选择、时间与人员显示、本地保存与远程提交。
  • 文档组件:文件列表展示与下载,支持多格式图标区分与本地打开。
  • 安全提示组件:展示危险源、状态、因素、损伤类型、等级与防护措施等安全信息。
  • 派发执行人:从本部门用户中选择执行人并回写工单。
  • 异常登记:登记设备异常项并关联到对应工单来源。
  • 维修工单:基于当前工单生成维修工单,支持紧急度、缺陷数量/比例、问题描述与图片上传。

章节来源

架构总览

前端采用组件化与页面级路由组织,通过 Vuex 管理跨页面共享状态(如页面只读态、派发URL与参数、历史与维修工单上下文),HTTP 请求封装于全局请求模块,国际化与字典混入贯穿各页面与组件。

图表来源

详细组件分析

巡逻任务列表页(patrolTasks.vue)

  • 功能要点
    • 分页加载:集成滚动加载组件,支持下拉刷新与上拉加载。
    • 状态筛选:通过字典项过滤不同工单状态。
    • 扫码查询:顶部导航栏触发扫码,填充设备编码并刷新列表。
    • 批量操作:根据工单状态显示“派发”“执行”按钮;支持“转维修”“历史记录”跳转。
    • 确认流程:当需要确认时显示“拒绝/通过”弹窗,调用后端接口更新状态并刷新。
  • 关键交互
    • 列表渲染:设备图片、工单号、设备编码、创建时间、计划/线路/状态等。
    • 跳转逻辑:派发/执行/维修/历史均通过路由携带工单ID,并在必要时设置Vuex上下文。
  • 数据来源
    • 接口:分页查询巡逻任务列表;状态字典;扫码后按设备编码过滤。

图表来源

章节来源

执行页面(execute.vue)

  • 功能要点
    • 三段式页面:基础信息、检查清单、文档资料。
    • 提交前确认:弹出模态框选择“指定确认人”,校验必填后提交。
    • 实时保存:检查清单支持单项保存,避免数据丢失。
    • 只读态:当工单已超过一定状态时,禁用编辑与保存按钮。
  • 关键交互
    • 标签切换:基础信息、检查清单、文档。
    • 用户选择:从本部门用户列表中选择确认人。
    • 数据绑定:基础信息、检查项、文档、备件/耗材/工具、安全提示、工单文件。
  • 数据来源
    • 接口:获取工单详情;提交执行;更新检查项;获取当前部门用户。

图表来源

章节来源

检查清单组件(check.vue)

  • 功能要点
    • 单项检查:包含参考值、实测值、结果选择(OK/NG/NA)、更新时间与更新人。
    • 拍照上传:支持从相册或相机选择图片,上传至后端并回填到该项。
    • 实时校验:输入数值后根据阈值自动判定OK/NG。
    • 保存与只读:在只读态禁用编辑与保存按钮。
    • 查看详情:点击模块名称跳转到检查详情页。
  • 关键交互
    • 图片选择与上传:chooseImage -> uploadFile -> 回填结果。
    • 结果选择:通过按钮切换checkResult。
    • 输入变更:blur事件触发阈值校验。
  • 数据来源
    • 接口:上传检查结果图片;保存单项检查。

图表来源

章节来源

文档组件(document.vue)

  • 功能要点
    • 文件列表:展示文件名与创建时间,按后缀区分PDF/Word/XLS图标。
    • 下载与打开:通过下载器下载到本地,完成后提示打开。
  • 关键交互
    • 点击列表项触发下载任务。
    • 下载完成后根据用户选择打开本地文件。
  • 数据来源
    • 接口:下载文件(由后端返回的baseUrl+filePath拼接)。

章节来源

基础信息组件(basicInfo.vue)

  • 功能要点
    • 展示工单基本信息:工单号、计划、设备编码、线路、位置、序列号、执行人、确认人、状态、级别、备注等。
  • 关键交互
    • 仅展示,无编辑能力。
  • 数据来源
    • 来自执行页获取的工单详情。

章节来源

安全提示组件(safety.vue)

  • 功能要点
    • 展示危险源、状态、因素、损伤类型、等级、防护措施及提示图。
  • 关键交互
    • 仅展示,无编辑能力。
  • 数据来源
    • 来自执行页获取的工单详情。

章节来源

检查详情页(checkDetail.vue)

  • 功能要点
    • 展示检查模块的名称、项目、内容、工作方法、参考图、提示图。
  • 关键交互
    • 通过路由参数接收数据并渲染。
  • 数据来源
    • 来自检查清单组件的跳转参数。

章节来源

派发执行人(assign.vue)

  • 功能要点
    • 从本部门用户中检索并选择执行人,提交后回写工单执行人。
  • 关键交互
    • 搜索用户、勾选唯一执行人、导航栏提交。
  • 数据来源
    • 接口:获取本部门用户;提交派发。

章节来源

异常登记(history.vue)

  • 功能要点
    • 基于当前工单来源,登记异常项并提交。
  • 关键交互
    • 导航栏提交,携带来源类型与工单号。
  • 数据来源
    • 接口:新增异常记录。

章节来源

维修工单(repair.vue)

  • 功能要点
    • 基于当前工单生成维修工单,填写紧急度、缺陷数量/比例、问题描述,上传异常图片。
  • 关键交互
    • 字典选择、数字输入、图片上传、导航栏提交。
  • 数据来源
    • 接口:保存维修工单;上传异常图片。

章节来源

依赖关系分析

  • 页面与组件
    • 巡逻任务列表页依赖滚动加载组件与国际化/字典混入;通过HTTP请求获取数据。
    • 执行页组合基础信息、检查清单、文档组件;通过Vuex传递只读态与上下文。
    • 检查清单组件依赖上传地址与头信息,依赖基础URL配置。
    • 文档组件依赖下载器与本地文件系统。
  • 状态管理
    • 公共模块提供pageType、assignUrl、history、repair等状态,供多个页面共享。
  • 工具与配置
    • 国际化与字典混入贯穿页面与组件,确保文案与枚举值一致。
    • 全局请求封装统一处理HTTP调用。

图表来源

章节来源

性能与可用性考虑

  • 列表性能
    • 使用滚动加载组件进行分页加载,避免一次性渲染大量节点;下拉刷新与上拉加载分离,减少不必要的重绘。
  • 检查清单
    • 实时保存单项检查,降低网络波动导致的数据丢失风险;在只读态禁用编辑,避免无效请求。
  • 图片上传
    • 上传前选择相册或相机,上传后立即回填,提升交互流畅度;失败时提示并允许重试。
  • 离线与网络
    • 当前实现主要依赖在线请求;建议在后续版本引入本地缓存与离线草稿、冲突合并策略,结合网络恢复后的增量同步。
  • 国际化与字典
    • 通过混入统一获取字典与语言资源,减少重复请求,提高渲染一致性。

[本节为通用指导,不直接分析具体文件]

故障排查指南

  • 列表无数据或加载异常
    • 检查分页接口返回字段是否正确;确认滚动加载组件的结束标记与页码计算。
  • 拍照上传失败
    • 核对上传接口地址与请求头;检查返回码与提示信息;确认文件大小与格式限制。
  • 提交失败或状态未更新
    • 确认提交前已选择“指定确认人”;核对后端接口参数与权限;查看返回码与提示。
  • 文档下载失败
    • 检查下载地址拼接与文件存在性;确认下载器任务状态与本地文件路径。
  • 派发执行人无效
    • 确认选择了唯一执行人;核对提交参数中的执行人编号与姓名。

章节来源

结论

巡逻管理模块围绕“工单驱动”的巡逻流程构建,通过清晰的页面与组件边界、统一的状态管理与工具混入,实现了从任务分配、现场执行、数据采集到异常处理与文档归档的闭环。建议在后续迭代中增强离线能力与网络同步策略,进一步提升移动端复杂场景下的稳定性与用户体验。

[本节为总结性内容,不直接分析具体文件]

附录

  • 术语
    • 巡逻工单:指派给执行人的巡检任务,包含设备、线路、检查项与文档等。
    • 检查项:具体的巡检模块与检查内容,支持拍照、数值录入与结果判定。
    • 只读态:工单状态达到一定阶段后禁止编辑与保存。
  • 最佳实践
    • 在只读态明确提示用户不可编辑。
    • 对上传失败的图片提供重试按钮与错误提示。
    • 对异常登记与维修工单保持来源关联,便于追溯。

[本节为概念性内容,不直接分析具体文件]