小程序-配送人员功能文档.md 9.2 KB

配送人员(Deliverer)小程序功能文档

一、概述

配送人员负责从供应商处取货,并将商品配送到客户手中。主要功能包括配送任务管理、抢单、凭证上传等。

主题色:活力红 #ee0a24
渐变色:linear-gradient(135deg, #ee0a24 0%, #ff976a 100%)


二、功能模块

1. 账户与认证

功能 接口路径 方法 说明
账号密码登录 POST /api/mini/auth/login POST 输入用户名密码登录
微信一键登录 POST /api/mini/auth/sms-login POST 通过微信授权获取手机号登录
登出 POST /api/mini/auth/logout POST 退出当前登录状态
修改密码 POST /api/mini/user/change-password POST 自主修改登录密码
获取当前用户信息 GET /api/mini/auth/current-user GET 获取登录用户基本信息
获取个人资料 GET /api/mini/deliverer/profile GET 获取配送员详细信息(含评分统计)
更新个人资料 PUT /api/mini/deliverer/profile PUT 修改姓名、手机号等基本信息

2. 配送任务

功能 接口路径 方法 说明
获取待取货任务 /api/mini/deliverer/tasks?status=pending GET 查看待取货的配送任务
获取配送中任务 /api/mini/deliverer/tasks?status=delivering GET 查看正在配送的任务
获取已完成任务 /api/mini/deliverer/tasks?status=completed GET 查看已完成的任务
获取任务详情 /api/mini/deliverer/tasks/{taskId} GET 查看任务详细信息(含供应商地址、客户信息)
确认取货 /api/mini/deliverer/tasks/{taskId}/pickup POST 到达供应商处,确认取货
确认送达 /api/mini/deliverer/tasks/{taskId}/deliver POST 完成配送,确认送达
申请取消任务 /api/mini/deliverer/tasks/{taskId}/cancel POST 因特殊原因申请取消任务
换班交接 /api/mini/deliverer/handover POST 与其他配送员交接任务
上传配送凭证 /api/mini/deliverer/tasks/{taskId}/upload-proof POST 上传取货/送达凭证

配送任务状态说明

状态值 显示文本 说明
pending 待取货 等待配送员到供应商处取货
picking 取货中 配送员正在取货
delivering 配送中 已取货,正在配送到客户
completed 已完成 配送完成
cancelled 已取消 任务已取消

取货操作说明

POST /api/mini/deliverer/tasks/{taskId}/pickup
{
  "remark": "货物完好,数量正确",        // 取货备注
  "imageUrls": ["https://cdn.example.com/pickup/001.jpg"]  // 取货凭证图片
}

送达操作说明

POST /api/mini/deliverer/tasks/{taskId}/deliver
{
  "items": [
    { "taskItemId": "DLV_ITEM_001", "deliveredQuantity": 10 }  // 每项商品的送达数量
  ],
  "remark": "客户已签收",                 // 送达备注
  "imageUrls": ["https://cdn.example.com/deliver/001.jpg"]   // 送达凭证图片
}

3. 抢单功能

功能 接口路径 方法 说明
获取可抢单列表 /api/mini/deliverer/snatch/pending GET 查看待抢的配送任务
获取我的抢单记录 /api/mini/deliverer/snatch/my GET 查看我的抢单历史
获取抢单统计 /api/mini/deliverer/snatch/statistics GET 查看抢单成功率等统计

说明:部分配送任务支持配送员自由抢单,抢单成功后自动分配给抢单人。


4. 时效预警

功能 接口路径 方法 说明
获取时效预警 /api/mini/deliverer/tasks/warnings GET 查看即将超时的配送任务
获取即将超时任务 /api/mini/deliverer/tasks/expiring GET 查看指定时间内即将超时的任务

说明:系统会在配送任务即将超时时发送预警通知,提醒配送员注意时效。


5. 任务统计

功能 接口路径 方法 说明
获取任务统计 /api/mini/deliverer/tasks/statistics GET 获取今日/本周/本月完成数量统计
获取效率统计 /api/mini/deliverer/statistics/efficiency GET 获取配送效率分析数据

统计数据说明

{
  "todayPending": 2,      // 今日待取货
  "todayDelivering": 3,   // 今日配送中
  "todayCompleted": 8,     // 今日已完成
  "weekCompleted": 45,     // 本周已完成
  "monthCompleted": 180,   // 本月已完成
  "rating": 4.9           // 平均评分
}

6. 凭证管理

功能 接口路径 方法 说明
上传取货凭证 /api/mini/deliverer/tasks/{taskId}/pickup POST 上传取货照片和备注
上传送达凭证 /api/mini/deliverer/tasks/{taskId}/deliver POST 上传送达照片和备注
上传其他凭证 /api/mini/deliverer/tasks/{taskId}/upload-proof POST 上传其他类型的凭证
查看配送凭证 /api/mini/delivery-tasks/{taskId}/attachments GET 查看任务关联的附件凭证

7. 评价管理

功能 接口路径 方法 说明
查看配送评价 /api/web/deliverer-reviews GET 查看客户对自己的评价

说明:客户收到商品后可以对配送员进行评分和评价。


8. 消息通知

功能 接口路径 方法 说明
获取消息列表 /api/message/list GET 分页查询系统消息
获取未读消息数 /api/message/unread-count GET 获取未读消息数量
发送消息 /api/message/send POST 给其他用户发送消息
全部标记已读 /api/message/mark-all-read POST 将所有消息标记为已读

9. 区域查询

功能 接口路径 方法 说明
获取本区域供应商 /api/mini/common/suppliers GET 查询本区域供应商的联系方式和地址

说明:配送员可查询供应商信息,便于联系和导航。


三、页面结构

pages/deliver/
├── home/                    # 首页
│   └── home.vue            # 首页(任务概览、快捷操作)
├── task/                    # 配送任务
│   ├── task.vue            # 任务列表(待取货/配送中/已完成 Tab)
│   └── detail.vue           # 任务详情(取货/送达操作)
├── snatch/                  # 抢单
│   └── snatch.vue          # 抢单列表/我的抢单
├── profile/                 # 个人中心
│   └── profile.vue         # 个人资料、评分统计、设置

四、状态标签样式

// 待取货
.status-tag.warning { background: #fff7e6; color: #ff976a; }

// 取货中/配送中
.status-tag.primary { background: #e6f7ff; color: #1989fa; }

// 已完成
.status-tag.success { background: #f6ffed; color: #07c160; }

// 已取消/异常
.status-tag.danger { background: #fff1f0; color: #ee0a24; }

// 已结束/禁用
.status-tag.info { background: #f5f5f5; color: #999; }

五、典型业务流程

配送流程

1. 运营分配配送任务给配送员
      ↓
2. 配送员收到新任务通知
      ↓
3. 到达供应商处取货
      ↓
4. 确认取货(上传凭证)
      ↓
5. 开始配送
      ↓
6. 到达客户处送货
      ↓
7. 确认送达(填写送达数量、上传凭证)
      ↓
8. 配送完成,等待下一单

抢单流程

1. 配送员查看可抢单列表
      ↓
2. 选择意向任务
      ↓
3. 点击抢单
      ↓
4. 抢单成功,任务自动分配
      ↓
5. 开始配送流程

换班交接流程

1. 当前配送员发起换班交接
      ↓
2. 选择接班配送员
      ↓
3. 交接待处理任务
      ↓
4. 接班配送员接收任务
      ↓
5. 任务流转给接班人

六、交互规范

按钮样式

类型 样式 圆角
主要按钮 实心背景 $deliver-primary 24rpx
次要按钮 边框样式 24rpx
文字按钮 无背景无边框 -

任务卡片

  • 显示供应商名称、地址、联系电话
  • 显示客户数量和商品数量
  • 显示预计送达时间/剩余时间
  • 支持一键拨打电话

凭证上传

  • 支持拍照或从相册选择
  • 支持上传多张图片
  • 建议上传取货和送达凭证

时效提醒

  • 实时显示配送倒计时
  • 临近超时前15分钟推送预警
  • 超时后高亮显示红色警示

七、技术说明

  • 框架:uni-app + Vue3 + TypeScript
  • UI 组件:Vant Weapp
  • 状态管理:Pinia
  • 接口前缀: /api/mini/
  • 金额单位:API 传分(整数),前端展示元(除以100,保留2位小数)
  • 时间格式:前端展示 YYYY-MM-DD HH:mm:ss

八、评分统计展示

{
  "rating": 4.9,           // 平均评分(1-5星)
  "totalDeliveries": 1256,  // 累计配送单数
  "todayDeliveries": 8,     // 今日配送单数
  "excellentRate": 96.5,    // 好评率
  "averageTime": "35分钟"    // 平均配送时长
}