这是一个基于Django框架开发的租车管理系统,提供车辆管理、客户管理和租赁管理的功能。
car_rental_system/
├── manage.py # Django管理脚本
├── db.sqlite3 # SQLite数据库文件(不会上传到Git)
├── .gitignore # Git忽略文件配置
├── requirements.txt # Python依赖包列表
├── car_rental_system/ # 主项目目录
│ ├── __init__.py
│ ├── settings.py # 项目设置
│ ├── urls.py # 主URL配置
│ ├── wsgi.py
│ └── asgi.py
├── vehicles/ # 车辆管理应用
│ ├── models.py
│ ├── views.py
│ ├── urls.py
│ └── ...
├── customers/ # 客户管理应用
│ ├── models.py
│ ├── views.py
│ ├── urls.py
│ └── ...
├── rentals/ # 租赁管理应用
│ ├── models.py
│ ├── views.py
│ ├── urls.py
│ └── ...
└── accounts/ # 用户账户应用
├── models.py
├── views.py
├── urls.py
└── ...
- ✅ 用户注册(用户名、邮箱、密码)
- ✅ 用户登录(支持管理员和普通用户)
- ✅ 密码重置
- ✅ 个人中心(查看个人信息、订单统计)
- ✅ 客户信息管理(身份证、驾照等)
- ✅ 车辆列表浏览(分页、搜索、筛选)
- ✅ 车辆详情查看(包含用户评价)
- ✅ 车辆收藏功能
- ✅ 车辆对比功能
- ✅ 个性化推荐(基于历史订单智能推荐合适车型)
- ✅ 创建租赁订单(选择车辆、日期、门店)
- ✅ 订单列表查看(我的订单)
- ✅ 订单详情查看(费用明细、支付记录)
- ✅ 订单取消(自动退款)
- ✅ 订单评价(1-5星评分)
- ✅ 订单支付(支持多种支付方式)
- ✅ 支付记录查询
- ✅ 消费明细报表
- ✅ 退款记录查看
- ✅ 车辆归还(选择实际还车门店)
- ✅ 异地还车处理(自动计算费用)
- ✅ 超时还车费用计算
- ✅ 押金自动退还
- ✅ VIP自动升级(连续10个订单表现优异)
- ✅ VIP会员免押金
- ✅ VIP会员9折优惠
- ✅ VIP升级进度查看
- ✅ 车辆信息录入(车牌号、品牌、型号、类型、颜色、日租金、座位数)
- ✅ 车辆列表查看(搜索、筛选、分页)
- ✅ 车辆信息编辑
- ✅ 车辆详情查看(包含评价统计)
- ✅ 车辆删除
- ✅ 车辆状态管理(可用、已租、维修中)
- ✅ 客户信息登记(姓名、联系方式、身份证、驾照信息)
- ✅ 客户列表查看(搜索、筛选、分页)
- ✅ 客户信息编辑
- ✅ 客户详情查看(租赁历史、统计信息)
- ✅ 客户删除
- ✅ VIP会员管理(手动授权或查看自动升级进度)
- ✅ 会员等级管理(普通会员、VIP会员)
- ✅ 创建租赁订单
- ✅ 订单列表查看(多种筛选条件)
- ✅ 订单详情查看
- ✅ 订单状态管理(预订中、进行中、已超时未归还、已完成、已取消)
- ✅ 订单编辑
- ✅ 车辆归还处理
- ✅ 订单取消
- ✅ 订单状态自动更新(定时任务)
- ✅ 评价列表查看
- ✅ 评价详情查看
- ✅ 评价编辑与删除
- Python 3.8 或更高版本
- pip(Python 包管理器)
进入项目目录,使用以下命令安装依赖:
# 进入项目目录(根据实际路径调整)
cd code/car_rental_system
# 安装依赖
pip install -r requirements.txt注意:如果使用虚拟环境,请先激活虚拟环境:
# Windows
.venv\Scripts\activate
# Linux/Mac
source .venv/bin/activate或者直接安装 Django:
pip install Django==5.2.8在项目根目录(包含 manage.py 的目录)执行:
python manage.py runserver或者指定端口:
python manage.py runserver 8000启动成功后,打开浏览器访问以下地址:
- 主界面(登录页面):http://127.0.0.1:8000/
- 未登录用户访问会自动跳转到登录页面
- 已登录管理员用户会跳转到管理后台
- 已登录普通用户会跳转到用户主页
- 直接访问登录页面:http://127.0.0.1:8000/accounts/login/
- 用户主页(登录后):http://127.0.0.1:8000/accounts/home/
- 客户管理(管理员):http://127.0.0.1:8000/customers/
- 租赁管理(管理员):http://127.0.0.1:8000/rentals/
- 管理后台(管理员):http://127.0.0.1:8000/admin/
如果需要访问管理后台,可以创建超级用户:
python manage.py createsuperuser然后按照提示输入用户名、邮箱和密码。
首次运行或更新模型后,需要执行数据库迁移:
# 创建迁移文件
python manage.py makemigrations
# 应用迁移
python manage.py migrate注意:数据库文件 db.sqlite3 不会被上传到 Git 仓库,每个开发者需要在自己的环境中运行迁移命令来创建数据库。
/- 主界面(未登录用户会跳转到登录页面)/accounts/login/- 登录界面/accounts/register/- 用户注册/accounts/home/- 用户主页(登录后)/accounts/profile/- 个人中心/accounts/my-orders/- 我的订单/accounts/order/<id>/- 订单详情/accounts/order/create/- 创建订单/accounts/consumption/- 消费明细
/customers/- 客户管理/customers/list/- 客户列表/customers/add/- 添加客户/rentals/- 租赁管理/rentals/list/- 租赁列表/rentals/add/- 添加租赁/vehicles/- 车辆管理/admin/- Django管理后台
项目使用SQLite数据库,文件名为 db.sqlite3,位于项目根目录。
- 时区:Asia/Shanghai
- 语言:zh-hans(简体中文)
- ✅ 现代化UI设计:使用 Bootstrap 5 + Font Awesome 图标
- ✅ 响应式布局:完美适配桌面端和移动端
- ✅ 交互体验:模态框、表单验证、实时预览
- ✅ 门店选择:弹出式门店选择器(支持区域和门店二级选择)
- ✅ 费用预览:实时计算订单费用(租金、押金、异地还车费、超时费)
- ✅ 完整的Django项目:基于 Django 5.2.8
- ✅ 数据库模型:Vehicle、Customer、Rental、Review、Payment、Favorite 等完整模型
- ✅ 业务逻辑:
- 自动费用计算(基础租金、VIP折扣、异地还车费、超时费用)
- 订单状态自动更新(PENDING→ONGOING→OVERDUE)
- VIP自动升级机制
- 押金自动退还
- 订单取消自动退款
- 动态押金计算:基于车辆价值、租期、信用评分的智能定价
- ✅ 数据验证:多层次验证(表单验证、模型验证、业务规则验证)
- ✅ 性能优化:使用
select_related、数据库索引、查询优化、缓存机制
- ✅ 异地还车:支持选择异地还车,自动计算费用
- ✅ 超时还车处理:自动计算超时费用
- ✅ 诚信评价系统:基于还车行为的VIP升级机制
- ✅ 财务系统:完整的支付、退款、结算记录
- ✅ 评价系统:车辆评价展示、评分分布统计
- ✅ 订单状态跟踪:完整的状态流转和自动更新
- ✅ 动态押金系统:智能计算押金,综合考虑车辆价值、租期、信用评分
- ✅ 个性化推荐:基于用户历史订单和偏好分析,智能推荐合适车辆
- ✅ 数据可视化:仪表盘图表展示,包括收入趋势、订单分布等
- 预订中(PENDING)订单在开始日期自动变为进行中(ONGOING)
- 进行中(ONGOING)订单在结束日期后自动变为已超时未归还(OVERDUE)
- 支持管理命令批量更新历史订单
- 完整的支付记录(支付、退款)
- 自动结算状态管理
- 消费明细报表
- 退款自动记录和显示
- 自动升级:连续10个订单按时归还且诚信异地还车,自动升级VIP
- 手动授权:管理员可以手动授予VIP资格
- 权益享受:VIP用户免押金、9折优惠
- 进度跟踪:用户可在个人中心查看VIP升级进度
- 智能定价:根据车辆价值、租期时长、客户信用评分综合计算押金
- 动态调整:
- 车辆价值越高,基础押金越高(车辆价值的5%)
- 租期越长,时长系数越大(0-30天,每天增加1%)
- 信用评分越高,押金系数越小(0-100分)
- 特殊政策:VIP会员享受免押金优惠
- 上下限保护:最低为3天租金,最高为车辆价值的15%
- 多级推荐策略:
- 基于历史订单:分析用户过往租赁记录,推荐相似车型
- 偏好分析:智能识别用户喜好的品牌、车型、座位数
- 热门车型:根据租赁次数推荐最受欢迎的车辆
- 新品推荐:为新用户推荐最新添加的车辆
- 智能缓存机制:使用缓存提升推荐响应速度,优化用户体验
- 去重逻辑:自动排除用户已租过的车辆,提供多样化选择
- 实时状态过滤:只推荐当前可用的车辆,确保推荐准确性
- 收入趋势图:近6个月收入趋势折线图,直观展示业务增长情况
- 订单分布图:订单状态分布饼图,实时掌握运营状态
- 关键指标:车辆总数、客户总数、订单总数、本月/今日收入等一目了然
- 快速操作:2x2网格布局,快速访问常用功能
- 最近活动:实时显示最新5条订单动态
本项目仅供学习和演示使用。