家政小程序服务评价系统设计:匿名反馈与阿姨改进追踪【完整系统+解析】

📅 2026/7/2 20:30:23 👁️ 阅读次数 📝 编程学习
家政小程序服务评价系统设计:匿名反馈与阿姨改进追踪【完整系统+解析】

博主介绍:
所有项目都配有从入门到精通的安装教程,可二开,提供核心代码讲解,项目指导。
项目配有对应开发文档、解析等
项目都录了发布和功能操作演示视频;

项目的界面和功能都可以定制,包安装运行!!!
如果需要联系我,可以在CSDN在文章末尾或者个人简介可以获取联系方式

一、为什么你需要这套源码?

市面上家政系统动辄上万,且二次开发困难。我的这套系统:

  • 开箱即用:导入数据库、修改配置即可运行

  • 功能完整:覆盖用户端、服务端、管理端全流程

  • 代码规范:注释清晰,方便二次定制

  • 技术支持:购买后提供一对一答疑

二、系统功能全景图

2.1 用户端(小程序/H5)

  • 服务分类浏览(保洁、保姆、月嫂、家电清洗等)

  • 在线预约下单(选择时间、地址、备注)

  • 订单实时跟踪(状态推送通知)

  • 服务评价与投诉

  • 优惠券领取与使用

2.2 服务人员端(App)

  • 抢单/派单模式切换

  • 服务打卡(开始/结束)

  • 收入提现(绑定微信/支付宝)

  • 工作日程管理

2.3 管理后台(Web)

  • 订单审核与调度

  • 人员入驻审核

  • 财务对账报表

  • 数据看板(日活、转化率、客单价)

三、技术架构一览

层级

技术选型

前端用户端

Uni-app(一套代码多端适配)

前端管理端

Vue 3 + Element Plus

后端

Spring Boot 2.7 + MyBatis-Plus

数据库

MySQL 8.0 + Redis

文件存储

阿里云OSS / 本地存储

消息推送

WebSocket + 短信接口

部署

Docker + Nginx

四、核心业务逻辑实现

4.1 自动派单算法

@Component public class AutoDispatchStrategy { /** * 根据距离、评分、空闲状态自动匹配最优服务人员 */ public Worker matchBestWorker(OrderRequest request) { // 1. 筛选附近5公里内空闲人员 List<Worker> candidates = workerMapper.selectAvailable( request.getLng(), request.getLat(), 5000); // 2. 按综合评分排序(评分权重60%,接单量权重40%) candidates.sort((a, b) -> Double.compare(b.getScore() * 0.6 + b.getOrderCount() * 0.4, a.getScore() * 0.6 + a.getOrderCount() * 0.4)); // 3. 返回最优人员 return candidates.isEmpty() ? null : candidates.get(0); } }

4.2 订单超时自动取消

@Component public class OrderTimeoutHandler { @Scheduled(fixedRate = 60000) // 每分钟检查一次 public void cancelTimeoutOrders() { LocalDateTime deadline = LocalDateTime.now().minusMinutes(30); List<Order> timeoutOrders = orderMapper.selectList( new LambdaQueryWrapper<Order>() .eq(Order::getStatus, 0) // 待接单 .lt(Order::getCreateTime, deadline)); timeoutOrders.forEach(order -> { order.setStatus(-1); // 已取消 order.setCancelReason("超时未接单,系统自动取消"); orderMapper.updateById(order); // 发送通知给用户 notificationService.sendCancelNotice(order.getUserId()); }); } }

4.3 微信支付集成

@PostMapping("/createPay") public Result<String> createPayment(@RequestBody PayRequest request) { // 调用微信统一下单API WxPayUnifiedOrderRequest wxRequest = new WxPayUnifiedOrderRequest(); wxRequest.setOutTradeNo(request.getOrderNo()); wxRequest.setTotalFee(request.getAmount().multiply(new BigDecimal("100")).intValue()); wxRequest.setBody("家政服务 - " + request.getServiceName()); wxRequest.setSpbillCreateIp(IpUtil.getClientIp()); wxRequest.setNotifyUrl(payConfig.getNotifyUrl()); wxRequest.setTradeType("JSAPI"); WxPayUnifiedOrderResult result = wxPayService.unifiedOrder(wxRequest); return Result.success(result.getPrepayId()); }

五、部署三步走

  1. 环境准备:安装JDK 11、MySQL 8、Redis、Nginx

  2. 导入数据库:执行init.sql创建表结构和初始数据

  3. 启动服务:运行start.sh一键启动后端,前端打包后放入Nginx目录

六、软件截图展示

用户端

商家端

员工端

管理端