我这个项目本质上是一个机械设计服务撮合平台,不是通用电商。
平台连接三类角色:
客户:有机械设计、建模、出图、工装夹具、逆向、仿真这些需求的人
设计师:接单、报价、沟通、交付、售后
管理员:审核、运营、案例库维护、资金和异常处理
从仓里的业务枚举和模块看,平台覆盖的服务类型比较全,像:
整机设备设计
机械机构设计
产品结构设计
钣金机柜
焊接机架
工装夹具
测试治具
CAD 建模与制图
产品改造与逆向
仿真分析
非标自动化
传动设计
工程咨询
这些在后台 RAG 案例分类里是有明确枚举的,不是口头概念。
核心业务闭环
这个系统最核心的业务链路是:
AI估价 / 发布需求 → 设计师报价 → 客户选人下单 → 支付 → 设计沟通 → 交付验收 → 售后/退款 → 设计师结算提现
主要功能我会分成几块讲
1. 客户侧
可以先做 AI 智能报价/估价
发布需求,上传图纸/图片/附件
查看设计师报价
和设计师聊天、实时沟通
选定报价后生成订单并支付
查看进度、验收交付物
发起售后或退款
2. 设计师侧
在需求大厅看公开需求
对需求报价
和客户聊天
更新订单进度
上传交付成果
处理售后
订单完成后收入进入钱包,可提现
3. 管理端
需求和设计师审核
订单、支付、退款、提现管理
案例库维护
网站知识库、站内通知、统计看板
对支付异常、人工对账、异常状态做兜底处理
4. AI相关能力
这个系统里 AI 不是一个单独聊天玩具,而是嵌进业务里的,主要有两块:
AI 报价
AI 客服 / 知识库问答
AI 报价这块,当前仓里已经从早期本地 Worker 方案,逐步往云端 pipeline 方案迁移了。
1. 负责机械设计服务平台核心业务研发与架构整合,基于 NestJS + Prisma + MySQL + Vue3 搭建统一后端与多端前台,完成 AI估价、需求发布、设计师报价、在线沟通、订单支付、交付验收、售后退款、钱包提现 等完整交易闭环;将原分散的站点能力收口为统一业务底座,并引入 WebSocket 实时消息、微信支付 V3、RAG 案例检索、请求级 trace_id 日志链路,提升系统一致性、可维护性与问题排查效率。
2. 后端业务层:NestJS、Prisma、MySQL、Schedule 定时任务、类状态机建模
实时通讯:原生 WebSocket(@nestjs/platform-ws)+ 会话消息持久化 + 领域事件解耦推送
支付与资金:微信支付 V3、支付回调验签、主动查单、超时关单、退款、钱包与提现结算
AI 报价模块:OpenAI 兼容接口、视觉模型图片理解、BAAI/bge-m3 Embedding、Qdrant 向量检索、规则引擎算价
前端:微信小程序(uni-app / Vue3)、网站前端(Vue3)、管理端(Vue3 + Element Plus)
日志与排障:自研 trace_id + AsyncLocalStorage 请求链路日志、JSON Lines 文件落盘、统一异常包装
难点与解决方法:
支付链路存在重复回调、回调丢失、超时取消与真实支付并发冲突问题:通过支付状态幂等校验、事务更新、主动查单补偿、先查后关单等机制,避免重复入账与误取消已支付订单。
AI 报价容易受大模型幻觉与无关案例干扰:将 LLM 能力收敛到工时评估,把价格计算下沉到确定性规则引擎,同时引入 RAG 历史案例检索与降级兜底方案,提高报价稳定性。
实时消息存在离线、弱网、重复展示等一致性问题:采用消息先入库、WebSocket 负责实时推送、离线后通过历史消息和未读恢复的设计,保证消息不因连接状态丢失。
多端共用业务导致接口口径、数据模型、状态流转容易分裂:通过统一后端、模块化拆分与状态枚举约束,将小程序、网站、管理端能力收口到一套业务模型中,降低重复开发和维护成本。