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

21 KiB

管理员小程序功能

模块编码property-manager 端侧:微信小程序 关联文档01-模块划分.mdv4.0、02-功能清单-小程序端.md§9、03-业务流转逻辑-小程序端.md§9、05-接口规范.md§9、06-项目技术要求.md 强制规范遵循 07-前端界面开发规范.md

功能概览

项目 说明
菜单名称 管理工作台
子菜单 报修管理 / 巡检管理 / 保洁管理 / 考勤管理 / 评价管理 / 组织架构查看
功能编号 MP-PM-01 ~ MP-PM-06
权限编码 repair:list:、inspection::、cleaning::、attendance::、evaluation:list:、org:team:view

说明:管理员小程序功能是物业公司管理员/主管在小程序端的简化版管理功能与Web端功能对应但功能简化。所有数据与Web端同一数据源操作实时同步。

页面清单

页面1报修管理

  • 页面路径/pages/manager/repair
  • 适用角色:物业管理员/主管
  • 页面元素
    • 工单统计卡片(待分配/处理中/待验收/已完成)
    • 工单列表
    • 工单分配操作
    • 工单流转操作
  • 查询条件
    • 状态筛选(全部/待分配/处理中/待验收/已完成)
    • 日期筛选
    • 类型筛选
    • 关键词搜索
  • 列表字段
字段 类型 说明
工单编号 文本 报修工单号
报修类型 标签 报修分类
报修描述 文本 问题描述摘要
报修人 文本 提交人姓名
状态 标签 待分配/处理中/待验收/已完成
创建时间 时间 工单创建时间
  • 界面布局
    • 顶部:统计数字横向排列
    • 中部:筛选条件 + 工单卡片列表
    • 底部:操作按钮
  • 操作按钮
    • 「分配」→ 分配工单到班组/人员权限repair:list:assign
    • 「查看详情」→ 查看工单详情
    • 「审批延期」→ 审批维修人员延期申请权限repair:detail:approve

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-01 报修管理 02-小程序端 §9 通知维修人员 在线报修Web端

交互流程要求

  1. 页面加载流程:进入页面 → 并行调用:统计卡片数据 + 工单列表(默认全部状态)

  2. 筛选交互:选择状态/日期/类型 → 触发列表刷新;搜索框输入 → 回车或点击搜索

  3. 分配操作:点击"分配"→ 弹出人员选择弹窗(按班组筛选)→ 选择人员 → 确认 → 调用API → 成功提示 → 推送通知维修人员

  4. 查看详情:点击工单卡片 → 跳转工单详情页

  5. 审批延期:点击"审批延期"→ 弹窗展示延期原因 → 同意/拒绝 → API调用 → 通知申请人

  6. 异常处理:分配失败提示;网络离线提示

  7. 权限控制:无分配权限 → "分配"按钮不显示;无审批权限 → "审批延期"不显示

  8. [H1]防重复请求

    • 分配操作:点击"分配"后按钮 disabled + loading态API返回后恢复
    • 审批延期操作:点击后弹窗底部确认按钮 disabled + loading
    • 筛选切换:状态/日期切换时 abort 上一次列表请求再发新的
    • 下拉刷新refreshing 标志位防止重复触发
  9. [H2]超时与加载反馈

    • 统计卡片+列表查询 timeout=15秒
    • 分配/审批操作 timeout=30秒
    • 超过3秒 wx.showLoading({ title: '加载中', mask: true })
    • 超时 → wx.showToast({ icon: 'none', title: '请求超时' }) + 重试按钮
  10. [H3]操作确认机制

    • 分配确认:选择人员后 uni.showModal({ content: '确定将工单分配给{人员姓名}', success: res => { if(res.confirm) ... } })
    • 审批延期同意uni.showModal({ content: '确定同意该延期申请?', ... })
    • 审批延期拒绝:必须填写拒绝原因(弹窗内输入框)
  11. [H8]操作结果反馈

    • 分配成功wx.showToast({ icon: 'success', title: '分配成功' }) + 刷新列表
    • 操作失败wx.showToast({ icon: 'none', title: errMsg })
    • 网络异常wx.showModal({ title: '提示', content: '网络连接异常', confirmText: '重试' })

组件规范

元素 组件 配置参数
页面容器 scroll-view scroll-y, refresher-enabled, @scrolltolower
统计卡片 view class="stat-card", v-for, horizontal scroll
状态筛选 uni-segmented-control :values="['全部','待分配','处理中','待验收','已完成']"
工单列表 view v-for, class="order-card"
状态标签 uni-tag :type按状态变化
分配按钮 button size="mini", type="primary"
人员选择弹窗 uni-popup type="bottom"
人员列表 radio-group v-for

校验规则

无表单校验

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 统计卡片:横向滚动
  • 工单卡片:全宽
  • 触摸区域按钮≥44px

页面2巡检管理

  • 页面路径/pages/manager/inspection
  • 适用角色:物业管理员/主管
  • 页面元素
    • 巡检统计卡片(今日任务/已完成/异常)
    • 巡检看板(人员执行状态)
    • 巡检记录列表
    • 异常记录查看
  • 查询条件
    • 日期筛选
    • 状态筛选
    • 人员筛选
  • 列表字段
字段 类型 说明
计划名称 文本 巡检计划名称
执行人 文本 巡检人员姓名
区域 文本 巡检区域
状态 标签 待执行/进行中/已完成
异常数 数字 发现异常数量
  • 界面布局
    • 顶部:统计数字 + 看板缩略
    • 中部:巡检记录卡片列表
    • 底部:无操作栏
  • 操作按钮
    • 「查看详情」→ 查看巡检记录详情
    • 「审核补录」→ 审核巡检补录申请权限inspection:supplement:approve

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-02 巡检管理 02-小程序端 §9 巡检管理Web端

交互流程要求

  1. 页面加载流程:进入页面 → 并行加载统计卡片 + 巡检记录列表
  2. 筛选交互:选择日期/状态/人员 → 触发列表刷新
  3. 查看详情:点击记录卡片 → 跳转巡检详情页
  4. 审核补录:点击"审核补录"→ 弹窗展示补录原因+证据 → 同意/拒绝 → API调用 → 通知申请人
  5. 异常处理:数据加载失败显示重试;网络离线提示
  6. 权限控制:无补录审核权限 → "审核补录"按钮不显示
  7. [H1]防重复请求
    • 筛选操作点击后 disabled + loading态API返回后恢复
    • 审核补录操作点击后 disabled + loading态
    • 使用 pending 标志位去重,页面卸载时 onUnload 必须 abort 未完成请求wx.requestTask.abort()
  8. [H2]超时与加载反馈
    • GET列表查询 timeout=15秒POST/PUT/DELETE写操作 timeout=30秒
    • 超时 → wx.showToast({icon:'none', title:'请求超时,请检查网络后重试'})
    • 加载>2秒显示 wx.showLoading
  9. [H3]操作确认机制(有不可逆操作时)
    • 审核补录: wx.showModal 确认
  10. [H8]操作结果反馈
  • 成功: wx.showToast({icon:'success', duration:2000})
  • 失败: wx.showToast({icon:'none'}) 需手动关闭
  • 网络/离线: 异常提示+重试按钮

组件规范

元素 组件 配置参数
页面容器 scroll-view scroll-y, refresher-enabled
统计卡片 view class="stat-card", v-for
巡检记录列表 view v-for, class="inspection-card"
状态标签 uni-tag 待执行:type="info", 进行中:type="primary", 已完成:type="success"
审核补录弹窗 uni-popup type="bottom"
同意/拒绝按钮 button 同意:type="primary", 拒绝:type="warn"

校验规则

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 统计卡片横向排列
  • 记录卡片全宽
  • 按钮触摸区≥44px

页面3保洁管理

  • 页面路径/pages/manager/cleaning
  • 适用角色:物业管理员/主管
  • 页面元素
    • 保洁统计卡片(今日任务/已完成/超时)
    • 保洁任务列表
    • 排班查看
    • 抽查操作
  • 查询条件
    • 日期筛选
    • 区域筛选
    • 状态筛选
  • 列表字段
字段 类型 说明
任务名称 文本 保洁区域+类型
执行人 文本 保洁人员姓名
区域 文本 保洁区域
状态 标签 待执行/进行中/待抽查/已完成
抽查结果 标签 合格/不合格/待抽查
  • 界面布局
    • 顶部:统计数字
    • 中部:任务卡片列表
    • 底部:抽查操作按钮
  • 操作按钮
    • 「抽查」→ 标记抽查合格/不合格权限cleaning:spot-check:approve
    • 「审核补录」→ 审核保洁补录申请权限cleaning:supplement:approve
    • 「查看详情」→ 查看任务详情

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-03 保洁管理 02-小程序端 §9 不合格时重新生成任务 保洁管理Web端

交互流程要求

  1. 页面加载:进入页面 → 加载统计卡片 + 保洁任务列表

  2. 抽查操作:点击"抽查"→ 弹窗选择合格/不合格 → 提交 → 不合格时系统自动重新生成任务

  3. 审核补录:同巡检补录审核流程

  4. 异常处理:抽查提交失败提示;不合格重新生成任务失败提示

  5. [H1]防重复请求

    • 抽查操作:点击"抽查"后按钮 disabled + 弹窗确认按钮 loading
    • 审核补录:同上
    • 筛选切换时 abort 上次请求
  6. [H2]超时与加载反馈

    • 列表查询 timeout=15秒抽查/审核操作 timeout=30秒
    • 3秒 wx.showLoading超时提示+重试

  7. [H3]操作确认机制

    • 抽查不合格uni.showModal({ content: '确定标记为不合格?系统将自动重新生成任务', ... })
    • 抽查合格uni.showModal({ content: '确定标记为合格?', ... })
  8. [H8]操作结果反馈

    • 成功wx.showToast({ icon: 'success' }) + 刷新
    • 失败wx.showToast({ icon: 'none', title: errMsg })

组件规范

元素 组件 配置参数
抽查弹窗 uni-popup type="bottom"
合格/不合格 radio-group 合格/不合格
抽查结果标签 uni-tag 合格:type="success", 不合格:type="error", 待抽查:type="info"

校验规则

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 触摸区域≥44px

页面4考勤管理

  • 页面路径/pages/manager/attendance
  • 适用角色:物业管理员/主管
  • 页面元素
    • 今日出勤统计卡片(应到/实到/缺勤/异常)
    • 考勤记录列表
    • 异常申诉审核
  • 查询条件
    • 日期筛选
    • 班组筛选
    • 状态筛选(正常/迟到/早退/缺卡/异常)
  • 列表字段
字段 类型 说明
姓名 文本 员工姓名
班组 文本 所属班组
上班时间 时间 上班打卡时间
下班时间 时间 下班打卡时间
状态 标签 正常/迟到/早退/缺卡
打卡方式 标签 蓝牙/手动/补录
  • 界面布局
    • 顶部:统计数字
    • 中部:考勤记录列表
    • 底部:审核操作按钮
  • 操作按钮
    • 「审核申诉」→ 审核打卡异常申诉权限attendance:appeal:approve
    • 「审核补录」→ 审核考勤补录权限attendance:supplement:approve

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-04 考勤管理 02-小程序端 §9 补录打卡记录 考勤打卡Web端

交互流程要求

  1. 页面加载:进入页面 → 加载今日出勤统计 + 考勤记录列表

  2. 审核申诉:点击"审核申诉"→ 弹窗展示申诉原因+证据 → 同意/拒绝 → API调用

  3. 审核补录:同上补录审核流程

  4. 异常处理:审核失败提示

  5. [H1]防重复请求

    • 审核申诉/补录:操作按钮点击后 disabled + loading
    • 筛选切换 abort 上次请求
  6. [H2]超时与加载反馈

    • 列表查询 timeout=15秒审核操作 timeout=30秒
    • 3秒 wx.showLoading超时提示+重试

  7. [H3]操作确认机制

    • 审核通过uni.showModal({ content: '确定同意该申诉/补录?', ... })
    • 审核拒绝uni.showModal + 必填拒绝原因
  8. [H8]操作结果反馈

    • 成功wx.showToast({ icon: 'success' }) + 刷新
    • 失败wx.showToast({ icon: 'none', title: errMsg })

组件规范

元素 组件 配置参数
统计卡片 view class="stat-card"
状态标签 uni-tag 正常:type="success", 迟到:type="warning", 早退:type="warning", 缺卡:type="error"
打卡方式标签 uni-tag 蓝牙:type="primary", 手动:type="info", 补录:type="warning"
审核弹窗 uni-popup type="bottom"

校验规则

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 触摸区域≥44px

页面5评价管理

  • 页面路径/pages/manager/evaluation
  • 适用角色:物业管理员/主管
  • 页面元素
    • 评价统计卡片(总评价数/平均分/待回复)
    • 评价列表
    • 回复操作
  • 查询条件
    • 评分筛选(全部/好评/中评/差评)
    • 回复状态筛选(全部/待回复/已回复)
    • 时间筛选
  • 列表字段
字段 类型 说明
工单编号 文本 关联工单号
评分 数字 1~5分
评价内容 文本 留言摘要
评价时间 时间 提交评价时间
回复状态 标签 已回复/未回复
  • 界面布局
    • 顶部:统计数字 + 平均分显示
    • 中部:评价卡片列表
    • 底部:回复操作
  • 操作按钮
    • 「回复」→ 回复评价权限evaluation:list:update
    • 「查看详情」→ 查看评价详情

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-05 评价管理 02-小程序端 §9 通知报修人 服务评价Web端

交互流程要求

  1. 页面加载:进入页面 → 加载评价统计 + 评价列表

  2. 回复操作:点击"回复"→ 弹窗输入回复内容 → 提交 → API调用 → 成功后通知报修人

  3. 查看详情:点击评价卡片 → 跳转评价详情页

  4. 异常处理:回复失败提示

  5. [H1]防重复请求

    • 回复操作:点击"回复"后按钮 disabled + 弹窗提交按钮 loading
    • 筛选切换 abort 上次请求
  6. [H2]超时与加载反馈

    • 列表查询 timeout=15秒回复提交 timeout=30秒
    • 3秒 wx.showLoading超时提示+重试

  7. [H8]操作结果反馈

    • 回复成功wx.showToast({ icon: 'success', title: '回复成功' }) + 刷新
    • 回复失败wx.showToast({ icon: 'none', title: errMsg })

组件规范

元素 组件 配置参数
评分展示 uni-rate :size=16, :readonly=true
回复状态标签 uni-tag 已回复:type="success", 未回复:type="warning"
回复弹窗 uni-popup type="bottom"
回复输入 uni-easyinput type="textarea", maxlength=200

校验规则

字段 规则 错误提示
回复内容 必填, 最大200字符 "请输入回复内容"

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 触摸区域≥44px

页面6组织架构查看

  • 页面路径/pages/manager/org
  • 适用角色:物业管理员/主管
  • 页面元素
    • 班组列表
    • 班组成员查看
    • 人员基本信息查看
  • 查询条件
    • 班组筛选
    • 关键词搜索(姓名/职位)
  • 列表字段
字段 类型 说明
班组名称 文本 班组名
班组长 文本 负责人姓名
人数 数字 班组人数
技能标签 标签组 班组主要技能
  • 界面布局
    • 顶部:搜索框 + 筛选
    • 中部:班组卡片列表 → 点击展开成员列表
    • 底部:无操作栏
  • 操作按钮
    • 「查看班组」→ 展开班组成员列表
    • 「查看人员」→ 查看人员详情
    • 「拨打电话」→ 调用手机拨号功能

数据来源与Web端组织架构同一数据源

需求追溯

功能点编号 功能名称 文档来源 后续服务 关联功能
MP-PM-06 组织架构查看 02-小程序端 §9 组织架构Web端

交互流程要求

  1. 页面加载:进入页面 → 调用API加载班组列表
  2. 查看班组:点击班组卡片 → 展开班组成员列表(手风琴模式,同时只展开一个)
  3. 查看人员:点击人员 → 跳转人员详情页(姓名、职位、电话、技能标签)
  4. 拨打电话:点击"拨打电话"→ 调用 uni.makePhoneCall → 拨号
  5. 搜索:输入关键词 → 实时筛选班组/人员
  6. 异常处理:拨号失败(无电话号码)→ 提示"该人员未设置联系电话"

前端硬性约束

  • H1 防重复提交
    • 搜索/筛选请求使用 pending 标志位去重,避免频繁触发 API 调用。
    • 页面卸载时(onUnload)必须 abort 未完成的请求。
  • H2 超时处理
    • 班组列表GET接口超时 15秒;超过 3 秒未响应展示 loading 动画。
    • 搜索防抖处理300ms避免高频输入触发过多请求。
  • H8 操作反馈
    • 数据加载成功 uni.showToast({ icon: 'success', duration: 2000 }),拨号失败 icon: 'none' 提示具体原因。

组件规范

元素 组件 配置参数
搜索框 uni-easyinput placeholder="搜索姓名/职位", clearable
班组卡片 uni-card :isFull=true, @click="toggleExpand"
展开收起 uni-icons type="bottom"/"top"
成员列表 view v-for, v-show="expanded"
技能标签 uni-tag v-for, type="primary", size="mini"
拨打电话按钮 button size="mini", type="primary", @click="makePhoneCall"

校验规则

响应式布局

  • 适配机型iPhone SE ~ iPad mini
  • 班组卡片全宽
  • 成员列表全宽
  • 触摸区域≥44px

业务规则

  1. 数据同步管理员小程序端与Web端同一数据源操作实时同步
  2. 功能简化小程序端为简化版管理功能完整管理操作在Web端进行
  3. 权限继承管理员小程序端的权限与Web端角色权限一致通过四级权限体系控制
  4. 双端审批以下审批场景支持Web+小程序双端操作:
    • 工单延期审批
    • 工单分配
    • 工单验收
    • 打卡异常审核
    • 数据补录审核
    • 保洁抽查
  5. 仅限物业端审批合同审批、合同变更审批、合同续签审批、付款确认、定标审批仅Web端医院账号
  6. 推送通知:审批待办通过微信小程序推送通知管理员
  7. 操作日志:所有管理操作记录审计日志

状态流转

管理员小程序端的状态流转与Web端一致具体参见各模块文档

  • 报修工单流转 → 参见02-功能清单-物业公司/01-在线报修.md
  • 巡检任务流转 → 参见02-功能清单-物业公司/02-巡检管理.md
  • 保洁任务流转 → 参见02-功能清单-物业公司/03-保洁管理.md

双端审批对照表

审批场景 Web端 小程序端 审批角色
工单延期审批 物业(主管)
工单分配 物业(主管)
工单验收 物业(主管/报修人)
合同审批 医院账号仅Web端
合同变更审批 医院账号仅Web端
合同续签审批 医院账号仅Web端
付款确认 医院账号仅Web端
定标审批 医院账号仅Web端
打卡异常审核 物业(主管)
数据补录审核 物业(主管)
保洁抽查 物业(主管)