一、功能概述
本地供应商评价功能是小象买菜系统中连接消费者与本地供应商的重要桥梁,旨在通过用户反馈提升供应商服务质量,增强平台信誉,促进本地农业/食品产业的健康发展。
二、核心功能模块
1. 评价提交系统
- 多维度评价:
- 商品质量(新鲜度、包装完整性等)
- 配送服务(准时性、配送员态度)
- 价格合理性
- 供应商响应速度
- 售后服务质量
- 评价形式:
- 星级评分(1-5星)
- 文字评论(支持图片上传)
- 标签选择(如"非常新鲜"、"包装完好"等)
2. 评价展示系统
- 供应商主页展示:
- 平均评分
- 评价数量分布
- 最新评价摘要
- 优质评价推荐
- 商品详情页展示:
- 该商品对应供应商的评分
- 针对该商品的评价
3. 评价分析系统
- 数据可视化:
- 供应商评分趋势图
- 各类评价占比分析
- 评价关键词云
- 智能预警:
- 评分骤降预警
- 负面评价激增预警
- 特定问题高频出现预警
4. 供应商反馈系统
- 供应商回复功能:
- 对评价的公开回复
- 私信联系评价用户
- 申诉机制(对恶意评价)
- 改进计划提交:
- 供应商根据评价制定改进计划
- 改进效果跟踪
三、技术实现方案
1. 数据库设计
```sql
CREATE TABLE supplier_evaluations (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
user_id BIGINT NOT NULL,
supplier_id BIGINT NOT NULL,
order_id BIGINT NOT NULL,
overall_rating TINYINT NOT NULL CHECK (overall_rating BETWEEN 1 AND 5),
quality_rating TINYINT NOT NULL CHECK (quality_rating BETWEEN 1 AND 5),
delivery_rating TINYINT NOT NULL CHECK (delivery_rating BETWEEN 1 AND 5),
price_rating TINYINT NOT NULL CHECK (price_rating BETWEEN 1 AND 5),
comment TEXT,
images VARCHAR(1000), -- 存储图片URL,逗号分隔
is_anonymous BOOLEAN DEFAULT FALSE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (supplier_id) REFERENCES suppliers(id),
FOREIGN KEY (order_id) REFERENCES orders(id)
);
CREATE TABLE supplier_evaluation_tags (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
tag_name VARCHAR(50) NOT NULL UNIQUE,
is_positive BOOLEAN NOT NULL -- 标记是否为正面标签
);
CREATE TABLE evaluation_tag_mappings (
evaluation_id BIGINT NOT NULL,
tag_id BIGINT NOT NULL,
PRIMARY KEY (evaluation_id, tag_id),
FOREIGN KEY (evaluation_id) REFERENCES supplier_evaluations(id),
FOREIGN KEY (tag_id) REFERENCES supplier_evaluation_tags(id)
);
```
2. 后端API设计
```
评价相关API
POST /api/evaluations/create - 创建评价
GET /api/suppliers/{id}/evaluations - 获取供应商评价
GET /api/evaluations/{id} - 获取单个评价详情
POST /api/suppliers/{id}/reply - 供应商回复评价
统计分析API
GET /api/suppliers/{id}/evaluation-stats - 获取供应商评价统计
GET /api/admin/evaluation-trends - 获取平台评价趋势
```
3. 前端实现要点
- 评价提交页面:
- 星级评分组件
- 标签选择器(可自定义标签)
- 图片上传预览
- 匿名评价选项
- 评价展示组件:
- 评分星星可视化
- 评价内容分页展示
- 图片缩略图展示
- 有用/无用反馈按钮
- 供应商管理后台:
- 评价概览仪表盘
- 负面评价预警
- 回复评价工作流
四、关键业务逻辑
1. 评价权限控制
```python
def can_evaluate(user_id, order_id):
检查用户是否已完成订单且未评价过
order = Order.query.get(order_id)
if order.status != completed or order.user_id != user_id:
return False
existing_eval = SupplierEvaluation.query.filter_by(
user_id=user_id, order_id=order_id
).first()
return existing_eval is None
```
2. 评分计算算法
```python
def calculate_supplier_rating(supplier_id):
evaluations = SupplierEvaluation.query.filter_by(
supplier_id=supplier_id
).all()
if not evaluations:
return 0
total = sum(e.overall_rating for e in evaluations)
return total / len(evaluations)
```
3. 评价审核机制
```python
def moderate_evaluation(evaluation_id, admin_id):
evaluation = SupplierEvaluation.query.get(evaluation_id)
if evaluation.status == pending:
简单审核逻辑示例
if contains_sensitive_content(evaluation.comment):
evaluation.status = rejected
evaluation.reject_reason = 包含敏感内容
else:
evaluation.status = approved
db.session.commit()
```
五、扩展功能建议
1. 评价激励系统:
- 评价积分奖励
- 优质评价排行榜
- 评价抽奖活动
2. 供应商分级体系:
- 根据评价自动分级(金牌/银牌/铜牌供应商)
- 分级权益(曝光优先、费率优惠等)
3. 评价溯源功能:
- 评价与订单关联验证
- 评价时间戳存证
4. 智能评价分析:
- 情感分析自动打标
- 评价热点词提取
- 供应商改进建议生成
六、实施路线图
1. 第一阶段(1个月):
- 基础评价功能开发
- 供应商端评价管理
- 用户端评价提交
2. 第二阶段(2个月):
- 评价数据分析看板
- 供应商分级体系
- 评价审核流程
3. 第三阶段(持续):
- 评价激励系统
- 智能分析功能
- 用户反馈闭环
七、注意事项
1. 评价真实性保障:
- 防止刷评机制
- 匿名评价保护
- 评价内容审核
2. 隐私保护:
- 明确评价数据使用范围
- 用户数据脱敏处理
- 供应商数据访问权限控制
3. 性能考虑:
- 评价数据分表存储
- 热门供应商评价缓存
- 异步评价统计计算
通过完善的本地供应商评价系统,小象买菜可以构建更透明的供应链体系,提升用户信任度,同时帮助本地供应商持续改进服务质量,形成良性循环的社区生鲜生态。