技术栈
小程序端:微信小程序
管理端:Vue 2
后端:Node.js、Koa 3
数据库:MongoDB
数据库表数量:6 个
软件版本
- Node.js 18+
- Koa 3.1/ koa-router 14
- MongoDB 6.x/ Mongoose 9.2
- Vue 2.6.14 / Vue CLI 5 / Vue Router 3.5.1 / Vuex 3.6.2
- Element UI 2.15.14 / ECharts 6.0.0 / Axios 0.27.2
- 微信开发者工具/ Vant Weapp 1.11.7
- 后端默认管理员账号 admin/admin
功能模块
管理端
- 登录与权限:账号密码登录,JWT Token 鉴权,路由守卫校验 token 合法性,未登录自动跳转登录页
- 数据看板 Dashboard:统计卡片、订单状态分布、平台数据,以及基于 ECharts 的「手艺人关联图谱」——将手艺人、非遗分类、地区三层数据构建为可拖拽缩放的力导向图,点击节点可查看详情
- 用户管理:用户列表分页查询,按昵称/openid 关键词与角色筛选,支持编辑昵称、简介、角色与删除
- 手艺人管理:认证申请列表,按待审核/已通过/已拒绝筛选,支持审核通过或拒绝,审核通过后自动将用户角色同步为手艺人
- 分类管理:非遗分类增删改查、排序与启用/停用
- 订单管理:订单列表,按买家、手艺人、非遗项目关键词及订单状态筛选,查看订单详情
用户端
- 非遗大厅:已认证手艺人列表分页加载,按地区筛选、关键词搜索、下拉刷新与触底加载更多
- 手艺人搜索页:独立搜索页面,支持按关键词搜索
- 手艺分类:按非遗项目分类浏览手艺人,支持分类切换
- 手艺人详情:展示头像、非遗项目、从业年限、所在地区、接单费用、简介与作品图集;支持收藏/取消收藏,浏览时自动记录浏览历史
- 微信登录:wx.login + code2session 换取 openid,头像上传与昵称填写,自动创建或更新用户
- 手艺人认证:提交非遗项目、从业年限、所在地区、接单费用、简介及作品图片;认证状态实时跟踪,被拒绝后允许重新提交申请
- 预约下单:选择服务项目、预约时间、填写金额与备注创建订单;订单按「我预约的」与「我发布的」双视角查看,手艺人可接单/拒绝,买家可取消,双方可确认完成
- 我的收藏 / 浏览历史:收藏列表支持取消收藏;浏览历史按日期分组展示,支持单条删除
核心亮点
- 完整的非遗手艺供需业务闭环:用户搜索手艺人 → 收藏/浏览 → 预约下单 → 手艺人接单 → 订单完成,全流程均可在小程序内完成
- 手艺人认证审核机制:用户提交认证材料,管理员后台审核,审核通过自动升级用户角色,被拒绝可重新提交,认证状态实时同步到小程序
- 管理端 ECharts 知识图谱:将手艺人、非遗分类、地区三层数据关联为可交互力导向图,数据可视化效果好,答辩展示性强
- 管理端数据看板:用户、订单、金额、收藏、浏览记录等多维度统计,叠加订单状态分布与近 30 天订单趋势
- 后端模块化分层设计:routes/models 分离,统一 JWT 鉴权中间件,Multer 单图/多图上传,seed 脚本一键初始化演示数据
- 三端架构清晰、代码注释完善,前端接口代理联调方便,易读易改
资料包含
- 完整源码:server+ server-views+ 非遗手艺供需平台
- 数据库初始化脚本 seed.js 与 seed-images.json
- 后台管理端运行截图
- README 技术说明文档
适用选题方向
- 非遗文化传承与数字化保护平台
- 手艺人/匠人供需对接与在线预约系统
- 基于微信小程序的预约服务类系统
- 社区/文化服务平台



