
货运公司车辆管理系统
一套基于 Vue 2、Spring Boot 和 MySQL 的货运车辆管理系统源码,提供用户权限、驾驶员与车辆档案、派车运输、加油维修、配件使用、财务流水及逾期预警等模块,附数据库脚本与部署示例,适合二次开发和项目演示。
作品介绍
货运公司车辆管理系统源码
内容核对日期:2026-10-29。本文用于源码上架介绍、项目演示与独立介绍页。功能描述以当前仓库代码为准,实际成交范围和授权条款需在交易前单独确认。

一、推荐标题与简介
| 用途 | 推荐内容 |
|---|---|
| 项目名称 | 货运公司车辆管理系统 |
| 源码上架标题 | 货运公司车辆管理系统源码(Vue 2 + Spring Boot + MySQL) |
| 网站页面标题 | 货运公司车辆管理系统源码|车辆调度、费用与配件管理 |
| 一句话介绍 | 面向货运企业日常车务管理的前后端分离系统,覆盖车辆与驾驶员、出车运输、费用、配件和逾期预警。 |
| 封面图 | cover-1200x900.png,1200 × 900 像素,PNG,使用当前项目登录页截图制作 |
| 适用对象 | 教学演示、毕业设计参考、车队内部管理原型,以及需要继续开发的中小型货运业务场景 |
简短描述(适合商品列表):
一套基于 Vue 2、Spring Boot 和 MySQL 的货运车辆管理系统源码,提供用户权限、驾驶员与车辆档案、派车运输、加油维修、配件使用、财务流水及逾期预警等模块,附数据库脚本与部署示例,适合二次开发和项目演示。
详细描述(适合商品详情或网站介绍):
本项目面向货运企业的日常车辆运营流程,将人员、车辆、派车、运输签收、加油维修费用、配件领用和经营流水集中到一个 Web 后台。管理员可维护基础资料并查看全局业务;驾驶员和维修工按角色进入对应模块。派车会占用车辆与驾驶员,运输签收或删除后释放占用;加油和维修费用同步形成财务流水;未签收且预计到达日期早于当天的运输会进入逾期预警。项目包含 Vue 前端、Spring Boot 接口、MySQL 建库与增量升级脚本,以及本地启动和 Nginx 代理示例。它是可运行、可继续扩展的业务源码,不等同于无需调整即可直接对公网运营的成品 SaaS。
二、已实现的功能
| 模块 | 当前能力 |
|---|---|
| 登录与权限 | 账号密码登录、服务端会话、管理员/驾驶员/维修工角色访问控制、退出登录、密码修改、账号禁用后会话失效。登录页保留拼图验证。 |
| 首页看板 | 展示车辆、驾驶员、未完成运输、逾期未签收数量,以及收入、支出、加油、维修和流水余额统计。 |
| 用户管理 | 用户资料、账号、角色和启停状态的维护;个人资料接口限制角色和状态变更。 |
| 驾驶员管理 | 驾驶员档案维护;已有运输关联的驾驶员不允许直接破坏关联标识。 |
| 车辆管理 | 车辆基础信息、车牌、载重、图片和空闲/已出车状态维护。 |
| 出车与运输 | 派车时校验车辆、驾驶员、日期和业务状态;并发请求通过事务与行锁避免重复占用;签收或删除运输后释放资源。 |
| 加油管理 | 加油记录、金额和附件维护;新增、修改、删除时同步对应财务支出流水。驾驶员只可操作授权范围内的记录。 |
| 维修管理 | 维修记录、维修费用与附件维护;维修金额同步到财务流水。 |
| 配件管理 | 配件单件登记、领用、换车、归还、作废及使用历史记录;有历史的配件不能直接删除。 |
| 财务管理 | 手工收支流水、加油和维修自动支出、按流水顺序重算余额、筛选统计及 CSV 导出。 |
| 预警管理 | 对预计到达日期早于当天、且仍未签收的运输标记逾期;保存业务时计算,并由定时任务校正。 |
| 文件与接口 | 图片/附件上传下载;Swagger 接口文档;文件下载路径校验。 |
主要业务联动: 派车占用车辆与驾驶员 → 运输签收后释放 → 加油/维修费用进入财务流水 → 超期未签收进入预警。自动费用流水应回到原始加油或维修记录修改,避免同一来源重复计费。
三、角色与适用流程
- 管理员: 管理用户、驾驶员、车辆、运输、加油、维修、配件、财务和预警,查看首页汇总。
- 驾驶员: 进入运输和加油相关页面,服务端限制其查询与修改范围。
- 维修工: 进入维修和配件相关页面。
系统适合“后台录入与查询”的工作流。现有代码没有 GPS 实时定位、移动端 App、采购审批、批量仓储、完整会计总账或油耗预测算法;介绍时不要将这些列为已实现功能。
四、技术架构
| 层级 | 技术与版本 |
|---|---|
| 前端 | Vue 2.6、Vue Router 3、Vuex 3、Element UI 2、Axios、ECharts/V-Charts、Vue CLI 4 |
| 后端 | Java 8、Spring Boot 2.3.5、MyBatis-Plus 3.3.2、Maven、Springfox Swagger 3 |
| 数据库 | MySQL 5.7/8;默认库名 tb_sys_car |
| 接口与登录 | 前端 /api/ 同源代理到后端;服务端 Session Cookie;按角色校验接口访问 |
| 部署示例 | 前端静态文件 + Nginx 反向代理;后端可执行 JAR;本地 PowerShell 启动脚本 |
当前代码目录:
transport-admin/ Spring Boot 后端
src/main/resources/driver_school.sql 新库初始化脚本
src/main/resources/db/repair-20261026.sql 旧库增量脚本
transport-admin-ui/ Vue 前端
deploy/nginx.conf Nginx 配置示例
dist/ 前端构建产物(可重新生成)
start-backend.ps1 / start-frontend.ps1 本地启动脚本
运行检查报告.md 修复与验证记录
五、本地搭建与使用
以下步骤以 Windows PowerShell 为例。首次搭建按“准备环境 → 导入数据库 → 启动后端 → 启动前端 → 浏览器验证”的顺序执行;每个服务都要保持其终端窗口运行。生产部署另见本节末尾。
5.1 环境准备
| 软件 | 要求 | 检查命令 |
|---|---|---|
| JDK | Java 8,后端 pom.xml 指定 java.version=1.8 |
java -version |
| Maven | 可执行 mvn.cmd,能访问 Maven 依赖仓库 |
mvn.cmd -version |
| MySQL | 5.7 或 8,服务已启动 | mysql.exe --version |
| Node.js / npm | Node.js 20,项目锁文件配合 npm ci 使用 |
node -v、npm -v |
在 PowerShell 中进入解压后的项目根目录,即同时能看到 transport-admin、transport-admin-ui、start-backend.ps1 的目录。确认 Java 8 是当前 JDK;只安装了 Java 17/21 时,请另装 Java 8 并在下方指定其目录。首次安装 Maven/npm 依赖需要联网。
5.2 创建或升级数据库
全新安装: 使用 MySQL Workbench 打开并执行 transport-admin/src/main/resources/driver_school.sql,或在 MySQL 命令行中执行:
mysql -u root -p --default-character-set=utf8mb4
mysql> SOURCE D:/你的项目目录/ysglxt/transport-admin/src/main/resources/driver_school.sql;
mysql> USE tb_sys_car;
mysql> SHOW TABLES;
把 SOURCE 后的路径换成文件的真实绝对路径,Windows 路径建议使用正斜杠。脚本会创建 tb_sys_car 数据库及初始管理员数据。脚本含 DROP TABLE,只用于全新或可丢弃的数据库;已有业务数据不能重复执行。
已有旧版数据库: 先备份,再按后端 README 的说明执行一次 transport-admin/src/main/resources/db/repair-20261026.sql。该脚本是增量升级,不应对已经升级过的库重复执行。已有数据库不需要再运行新库初始化脚本。
5.3 启动后端(终端 A)
项目根目录提供一键脚本。下面的 JDK 路径和数据库密码是示例,请替换成你电脑上的实际值:
Set-Location 'D:\你的项目目录\ysglxt'
.\start-backend.ps1 -JavaHome 'C:\Java\jdk8' -DatabaseUser 'root' -DatabasePassword '你的MySQL密码'
脚本会先运行 mvn package(包含后端测试),再启动 JAR。看到 BUILD SUCCESS 和 Started DriverSchoolApplication 后,后端在 127.0.0.1:8080 运行。若你的 JDK 恰好位于脚本内置默认目录,且 MySQL 用户为 root、密码为空,也可直接运行 .\start-backend.ps1。
此脚本固定连接本机 3306 端口的 tb_sys_car。需要修改数据库地址、端口或库名时,改用以下手动方式,在后端目录设置环境变量后启动,不要仅给脚本设置 DB_URL:
Set-Location 'D:\你的项目目录\ysglxt\transport-admin'
$env:JAVA_HOME = 'C:\Java\jdk8'
$env:Path = "$env:JAVA_HOME\bin;$env:Path"
$env:DB_URL = 'jdbc:mysql://127.0.0.1:3306/tb_sys_car?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8'
$env:DB_USERNAME = 'root'
$env:DB_PASSWORD = '你的MySQL密码'
$env:DB_SCHEMA = 'tb_sys_car'
mvn.cmd -B -ntp package
java.exe -jar .\target\driverschool-0.0.1-SNAPSHOT.jar
DB_URL 的主机、端口、库名要与实际 MySQL 一致;DB_SCHEMA 通常与库名相同。请勿把真实密码写入要出售或公开的源码。
5.4 启动前端(终端 B)
在第二个 PowerShell 窗口回到项目根目录,执行:
Set-Location 'D:\你的项目目录\ysglxt'
.\start-frontend.ps1
首次运行时脚本会安装前端依赖,然后在 127.0.0.1:8081 启动 Vue 开发服务。看到 Compiled successfully 和 App running at 即表示前端已就绪。也可以手动进入 transport-admin-ui,执行 npm.cmd ci、npm.cmd run serve;仓库 .npmrc 已配置旧依赖所需的兼容选项。
5.5 打开页面并验证
- 在浏览器打开
http://127.0.0.1:8081/#/login,输入初始管理员账号和密码并完成拼图验证。初始凭据见transport-admin/README.md,公开网站或销售详情页不要展示密码。 - 登录后应进入首页,能看到车辆、驾驶员、运输、费用和预警统计;左侧可以进入各业务模块。
- 后端接口文档在
http://127.0.0.1:8080/swagger-ui/index.html。8080是接口服务,不是前端页面地址。 - 可用下列 PowerShell 命令检查服务是否可达:
(Invoke-WebRequest 'http://127.0.0.1:8081/' -UseBasicParsing).StatusCode
(Invoke-WebRequest 'http://127.0.0.1:8080/swagger-ui/index.html' -UseBasicParsing).StatusCode
两条命令都应返回 200。未登录直接访问 /api/user/me 返回 401 属于正常的权限保护,不表示后端没有启动。项目开发服务绑定 127.0.0.1;在某些内置浏览器中,localhost 可能无法连接,请使用上述完整地址。
5.6 常见问题与停止服务
| 现象 | 优先检查 |
|---|---|
| 后端构建失败或找不到 Java | java -version 是否为 Java 8;mvn.cmd 是否在 PATH;脚本 -JavaHome 是否指向 JDK 根目录。 |
Access denied 或 Unknown database |
MySQL 是否启动、账号密码是否正确、是否导入了 tb_sys_car、连接 URL 是否指向正确库。 |
| 前端出现 404 或连接被拒绝 | 确认访问的是 http://127.0.0.1:8081/#/login,查看前端窗口是否显示 Compiled successfully。 |
| 登录后接口报错 | 确认 8080 后端仍在运行,前端 /api/ 代理与后端端口一致;查看浏览器网络请求和后端窗口日志。 |
| 端口被占用 | 检查 8080/8081 是否已有旧服务;修改端口时同步更新前端代理或 Nginx 配置。 |
开发结束时,分别在运行前后端的 PowerShell 窗口按 Ctrl+C 停止服务。重新启动时应先确保 MySQL 可连接,再启动后端和前端。
5.7 生产网站部署提示
前端在 transport-admin-ui 执行 npm.cmd run build 后生成 dist。将其发布为静态网站;同域名下把 /api/ 代理到 Spring Boot 的 8080 端口,可参考 transport-admin-ui/deploy/nginx.conf。后端在 Java 8 环境运行打包后的 JAR,并连接已经初始化的 MySQL。示例 Nginx 文件中的 server_name 和 root 必须改成实际域名和部署路径。对公网开放前,应配置 HTTPS、修改默认管理员密码、核对文件存储权限、备份数据库,并完成依赖与安全检查。
六、交付范围与功能边界
建议在交易页面明确列出实际交付项:前端源码、后端源码、数据库初始化与升级脚本、部署示例、运行说明及这份介绍资料。最终交付前,应另行打包一份不含个人资料、真实经营数据、运行日志、上传附件、数据库密码和本机路径的干净样例。
以下能力尚未作为现成模块交付:车辆类型分类接口(旧页面残留代码未启用)、配件采购审批与批量库存、GPS/地图实时轨迹、移动端、保险/违章/维保周期智能预警、标准财务会计报表。配件按单件管理;预警重点是运输逾期;财务是经营流水统计。旧加油记录不会自动追溯生成费用流水,避免与历史手工账重复。
项目使用较早的 Vue 2 与 Spring Boot 2.3 依赖,且兼容原数据库的 MD5 密码存储。对公网发布前,应评估依赖升级、密码算法迁移、HTTPS、备份、日志与运维监控。当前仓库未发现明确的顶层 LICENSE 文件,且包含历史图片素材;出售、再授权或公开发布前需核实代码与素材权利,不能仅凭源码可运行就宣称拥有独占商用授权。
七、SEO 信息
SEO 应用于公开的项目介绍页或商品详情页,后台登录页无需作为搜索落地页。
| 字段 | 建议内容 |
|---|---|
| SEO Title | 货运公司车辆管理系统源码|Vue2 + Spring Boot 车辆调度后台 |
| Meta Description | 货运公司车辆管理系统源码,基于 Vue 2、Spring Boot 和 MySQL,包含车辆与驾驶员管理、派车运输、加油维修费用、配件使用、财务流水和逾期预警。附数据库脚本与部署示例,适合二次开发。 |
| H1 | 货运公司车辆管理系统源码 |
| URL Slug | freight-fleet-management-source-code |
| 封面 Alt | 货运公司车辆管理系统登录界面与车辆调度、费用和预警功能封面 |
| Open Graph 标题 | 货运公司车辆管理系统源码|车务运营后台 |
| Open Graph 描述 | Vue 2 + Spring Boot + MySQL 前后端分离源码,覆盖车辆、驾驶员、运输、费用、配件和逾期预警。 |
核心关键词: 货运公司车辆管理系统源码、车辆管理系统源码、货运车辆调度系统、车队管理系统、Spring Boot 车辆管理系统、Vue 车辆管理后台。
延伸关键词: 驾驶员管理系统、运输派车管理、加油维修费用管理、配件使用记录、运输逾期预警、MySQL 车务管理系统。
可放入公开介绍页 <head> 的基础元信息(发布时替换域名和图片地址):
<title>货运公司车辆管理系统源码|Vue2 + Spring Boot 车辆调度后台</title>
<meta name="description" content="货运公司车辆管理系统源码,基于 Vue 2、Spring Boot 和 MySQL,包含车辆与驾驶员管理、派车运输、加油维修费用、配件使用、财务流水和逾期预警。附数据库脚本与部署示例,适合二次开发。">
<meta name="keywords" content="货运公司车辆管理系统源码,车辆管理系统源码,货运车辆调度系统,车队管理系统,Spring Boot车辆管理系统,Vue车辆管理后台">
<meta property="og:title" content="货运公司车辆管理系统源码|车务运营后台">
<meta property="og:description" content="Vue 2 + Spring Boot + MySQL 前后端分离源码,覆盖车辆、驾驶员、运输、费用、配件和逾期预警。">
<meta property="og:image" content="https://你的域名/assets/cover-1200x900.png">
关键词标签只作补充,实际搜索表现还取决于页面标题、正文、可访问性、加载速度及站点内容质量。封面图是产品宣传素材,不应代替真实功能截图和功能边界说明。
八、可直接使用的上架文案
卖点摘要:
- 前后端分离的货运车务管理源码,包含数据库脚本和部署示例。
- 派车与运输签收联动车辆、驾驶员占用状态,处理并发重复派车。
- 加油和维修费用自动汇入财务流水,支持筛选与 CSV 导出。
- 配件领用、换车、归还和作废保留使用历史,运输逾期自动预警。
- 管理员、驾驶员、维修工分角色访问,适合按实际业务继续扩展。
购买前说明: 源码提供的是现有 Web 后台及其当前业务范围。实际交付内容、部署服务、二次开发、维护期限、著作权与再授权范围应在成交前写入协议;未在交付清单中列出的能力不应视为现成功能。

