供应商(Supplier)小程序功能文档
一、概述
供应商是生鲜/商品的批发商,使用小程序进行报价管理、价格发布、配送交接等操作。
主题色:活力橙 #ff976a
渐变色:linear-gradient(135deg, #ff976a 0%, #ff4444 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/supplier/profile |
GET |
获取供应商详细信息(含取货地址) |
| 更新个人资料 |
PUT /api/mini/supplier/profile |
PUT |
修改企业名称、联系人、手机号、取货地址 |
2. 地址管理
| 功能 |
接口路径 |
方法 |
说明 |
| 获取取货地址列表 |
/api/mini/supplier/addresses |
GET |
获取供应商的取货地址 |
| 获取取货地址 |
/api/mini/supplier/pickup-addresses |
GET |
获取专用取货地址列表 |
| 获取本区域供应商 |
/api/mini/common/suppliers |
GET |
获取本区域其他供应商信息(用于参考) |
说明:供应商主要管理取货地址(配送员到此处取货)。
3. 询价管理
| 功能 |
接口路径 |
方法 |
说明 |
| 获取询价单列表 |
/api/mini/supplier/inquiries |
GET |
查看运营发布的询价单列表 |
| 获取询价单详情 |
/api/mini/supplier/inquiries/{inquiryId} |
GET |
查看询价单商品明细及剩余报价时间 |
询价单状态说明
| 状态值 |
显示文本 |
说明 |
| draft |
草稿 |
运营创建但未发布 |
| published |
已发布 |
可进行报价 |
| closed |
已关闭 |
报价截止或已结束 |
4. 报价管理
| 功能 |
接口路径 |
方法 |
说明 |
| 提交报价 |
POST /api/mini/supplier/quotations |
POST |
对询价单商品进行报价 |
| 更新报价 |
PUT /api/mini/supplier/quotations/{quotationId} |
PUT |
修改已提交的报价(未审核时可修改) |
| 获取报价列表 |
GET /api/mini/supplier/quotations |
GET |
分页查询我的全部报价记录 |
| 获取报价详情 |
GET /api/mini/supplier/quotations/{quotationId} |
GET |
查看报价详细信息 |
报价状态说明
| 状态值 |
显示文本 |
说明 |
| pending |
待审核 |
报价已提交,等待运营审核 |
| approved |
已通过 |
报价审核通过 |
| rejected |
已驳回 |
报价审核未通过 |
5. 价格清单
| 功能 |
接口路径 |
方法 |
说明 |
| 获取价格版本列表 |
GET /api/mini/supplier/price-lists |
GET |
查看价格版本列表 |
| 获取价格清单详情 |
GET /api/mini/supplier/price-lists/{priceListId} |
GET |
查看某版本价格明细 |
价格状态说明
| 状态值 |
显示文本 |
说明 |
| draft |
草稿 |
价格草稿状态 |
| active |
生效中 |
当前正在使用的价格版本 |
| inactive |
已失效 |
历史价格版本 |
6. 配送任务(取货交接)
| 功能 |
接口路径 |
方法 |
说明 |
| 获取取货任务列表 |
GET /api/mini/supplier/pickup-tasks |
GET |
查看待取货的配送任务 |
| 获取取货任务详情 |
GET /api/mini/supplier/pickup-tasks/{taskId} |
GET |
查看任务详细信息(配送员信息、订单明细) |
| 确认取货 |
POST /api/mini/supplier/pickup-tasks/{taskId}/confirm |
POST |
确认配送员已取货(交接确认) |
| 获取配送任务 |
GET /api/mini/supplier/tasks |
GET |
获取供应商关联的配送任务列表 |
取货任务状态说明
| 状态值 |
显示文本 |
说明 |
| pending |
待取货 |
等待配送员到达取货 |
| picking |
取货中 |
配送员正在取货 |
| delivering |
配送中 |
已交接,配送员配送中 |
| completed |
已完成 |
配送完成 |
| cancelled |
已取消 |
任务取消 |
7. 数据统计
| 功能 |
接口路径 |
方法 |
说明 |
| 仪表盘统计 |
GET /api/mini/supplier/dashboard/statistics |
GET |
获取报价统计、任务统计等数据 |
8. 发票管理
| 功能 |
接口路径 |
方法 |
说明 |
| 获取发票列表 |
/api/web/invoices |
GET |
分页查询发票记录 |
| 获取发票详情 |
/api/web/invoices/{invoiceId} |
GET |
查看发票详细信息 |
说明:供应商主要查看发票记录,发票申请由客户发起。
9. 消息通知
| 功能 |
接口路径 |
方法 |
说明 |
| 获取消息列表 |
/api/message/list |
GET |
分页查询系统消息 |
| 获取未读消息数 |
/api/message/unread-count |
GET |
获取未读消息数量 |
| 发送消息 |
/api/message/send |
POST |
给其他用户发送消息 |
| 全部标记已读 |
/api/message/mark-all-read |
POST |
将所有消息标记为已读 |
三、页面结构
pages/supplier/
├── home/ # 首页
│ └── home.vue # 首页(报价入口、任务提醒)
├── inquiry/ # 询价报价
│ ├── inquiry.vue # 询价单列表
│ └── detail/ # 询价单详情
│ └── detail.vue # 询价单详情页(可报价)
├── quotation/ # 报价管理
│ └── quotation.vue # 我的报价列表
├── price-list/ # 价格表
│ └── price-list.vue # 价格版本列表/详情
├── delivery/ # 配送任务
│ ├── delivery.vue # 取货任务列表
│ └── detail.vue # 取货任务详情
├── address/ # 地址管理
│ └── address.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; }
五、交互规范
按钮样式
| 类型 |
样式 |
圆角 |
| 主要按钮 |
实心背景 $supplier-primary |
24rpx |
| 次要按钮 |
边框样式 |
24rpx |
| 文字按钮 |
无背景无边框 |
- |
报价操作
- 报价截止时间实时显示倒计时
- 提交报价后显示待审核状态
- 审核通过/驳回后推送消息通知
取货交接
- 配送员到达后确认取货
- 可上传交接凭证照片
- 填写交接备注
六、技术说明
- 框架:uni-app + Vue3 + TypeScript
- UI 组件:Vant Weapp
- 状态管理:Pinia
- 接口前缀:
/api/mini/
- 金额单位:API 传分(整数),前端展示元(除以100,保留2位小数)
- 时间格式:前端展示
YYYY-MM-DD HH:mm:ss
七、典型业务流程
报价流程
1. 运营发布询价单(Web端)
↓
2. 供应商在小程序查看询价单
↓
3. 供应商填写商品报价
↓
4. 提交报价(状态:pending)
↓
5. 运营审核报价(Web端)
↓
6. 审核通过 → 报价生效 → 等待客户选择
取货交接流程
1. 运营分配配送任务给配送员
↓
2. 配送员到供应商处取货
↓
3. 供应商在小程序确认取货
↓
4. 交接完成,配送员开始配送