# vue3同城跑腿 **Repository Path**: yandaima/vue3-same-city-running-errands ## Basic Information - **Project Name**: vue3同城跑腿 - **Description**: vue3开发的同城跑腿项目,包含前端+后端+数据字典+数据表 - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-07 - **Last Updated**: 2025-11-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: vue3, 同城跑腿, JavaScript ## README # 同城跑腿App 这是一个基于Vue3 + Vite + JavaScript + element-plus + element-icons + pinia + axios的前端,koa2.js + MySQL的后端的同城跑腿应用。 ## 项目结构 ``` . ├── front-end/ # 前端项目 │ ├── src/ │ │ ├── api/ # API接口调用 │ │ ├── components/ # 组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面视图 │ ├── package.json │ └── vite.config.js ├── admin/ # 后端项目 │ ├── src/ │ │ ├── config/ # 配置文件 │ │ ├── controllers/ # 控制器 │ │ ├── middleware/ # 中间件 │ │ ├── models/ # 数据模型 │ │ ├── modules/ # 模块 │ │ ├── services/ # 服务层 │ │ └── utils/ # 工具函数 │ ├── index.js # 应用入口 │ └── package.json ├── database-schema.sql # 数据库表结构 └── database-seed.sql # 虚拟数据 ``` ## 技术栈 ### 前端 - Vue 3 (Composition API) - Vite - Vue Router 4 - Pinia (状态管理) - Axios (HTTP客户端) ### 后端 - Node.js - NestJS - MySQL - TypeORM - JWT (身份验证) ## 数据库配置 - 数据库名: `city-run` - 用户名: `city-run` - 密码: `city-run` - JWT密钥: `city-run` ## 安装和运行 ### 1. 创建数据库 首先在MySQL中执行以下SQL文件: - [database-schema.sql](database-schema.sql) - 创建表结构 - [database-seed.sql](database-seed.sql) - 插入虚拟数据 ### 2. 后端运行 ```bash cd admin npm install npm run dev ``` 后端服务将运行在 http://localhost:3001 ### 3. 前端运行 ```bash cd front-end npm install npm run dev ``` 前端服务将运行在 http://localhost:3000 ## 功能模块 ### 用户认证 - 用户注册/登录 - JWT token验证 - 用户角色区分(客户/跑腿员) ### 订单管理 - 创建订单 - 订单状态跟踪 - 订单列表查看 - 订单详情查看 ### 钱包系统 - 余额管理 - 交易记录 ## API接口 ### 认证相关 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 ### 订单相关 - `GET /api/orders` - 获取订单列表 - `GET /api/orders/:id` - 获取订单详情 - `POST /api/orders` - 创建订单 - `PUT /api/orders/:id/status` - 更新订单状态 ## 开发说明 ### 前端 1. 使用Vue 3 Composition API 2. 使用Pinia进行状态管理 3. 使用Vue Router进行路由管理 4. 使用Axios进行HTTP请求 ### 后端 1. 使用NestJS框架 2. 使用TypeORM进行数据库操作 3. 使用JWT进行身份验证 4. 遵循模块化设计 ## 注意事项 1. 确保MySQL服务正在运行 2. 根据实际环境修改数据库连接配置 3. 生产环境需要修改JWT密钥