java项目:基于Springboot+Vue+Element实现汽车租赁系统
作者主页:编程指南针
作者简介:Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师
主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助
文末获取源码
项目编号:BS-XX-129
一,项目简介
在现代智能化的普遍环境下,人们在精神上的需求已经在某种程度上超越了物质需求。这一切都源于人们的物质生活不断提升,生活质量发生了质的跃进。要想富先修路,这是一句民间口号同时也是一个简单的真理,人们也正是源于对这句口号的深入贯彻,所以我们的生活才能越来越好,路作为载体,它为不计其数的车辆提供了实现车辆价值的运输条件。从另外方面来看,最近几十年来汽车的普及应用,业己为现在整个社会的进步贡献了不可磨灭的推动力量。在一些地区,灵活用车的需求成了人们(特别是青少年年龄阶段)一个不可或缺的需求之一,例如:刚考完驾照的人,想过一把驾驶瘾,为日后的行车做好准备;出差去了某个地区临时紧急需要用车;自己的日常代步车损坏,需要一个替代品等等情况,所以汽车租赁公司的出现是十分的必要的,它可以为人们解决这样一些需要灵活用车的问题。而随着大量汽车租赁公司的出现,开发一套行之有效的汽车租赁管理系统则显得十分必要。
本项目基于Spring Boot与Vue.js的一个汽车租赁系统,系统整体功能完整,界面简洁大方,主要实现了用户管理、汽车管理、分类管理、库存查看、客户管理、定单管理、财务管理和收支的统计,并采用图形报表的方式来进行财务的统计信息等。可以做为毕业设计和课程设计或期未作业使用。
二,环境介绍
语言环境:Java: jdk1.8
数据库:Mysql: mysql5.7
应用服务器:Tomcat: tomcat8.5.31
开发工具:IDEA或eclipse
后端使用Spring Boot 与 MyBatis 、Redis集成
前端使用Vue.js 与 Require集成
三,系统展示
用户登陆
http://localhost:8010/car/index#/login
后台管理界面
用户管理
车辆管理
车辆库存
车辆类别管理
车辆管理
订单管理
订单结算
财务统计报表
四,核心代码展示
package com.shengyi.controller;import com.shengyi.common.Result;
import com.shengyi.model.CarClass;
import com.shengyi.service.CarClassService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import java.util.List;@Controller
@RequestMapping(value = "/car/class/")
public class CarClassController {@AutowiredCarClassService carClassService;@PostMapping("getAllClass")@ResponseBodypublic Result<List<CarClass>> getAllClass(){return carClassService.getAllClass();}@PostMapping("addClass")@ResponseBodypublic Result<Boolean> addClass(@Param("className") String className){return carClassService.addClass(className);}@PostMapping("modifyClass")@ResponseBodypublic Result<Boolean> modifyClass(@RequestBody CarClass carClass){return carClassService.modifyClassNameById(carClass);}@PostMapping("removeClass")@ResponseBodypublic Result<Boolean> removeClassAndCarData(@Param("classId")Long classId){return carClassService.removeClassAndCarData(classId);}
}
package com.shengyi.controller;import com.shengyi.common.Result;
import com.shengyi.common.result.PageResult;
import com.shengyi.model.request.*;
import com.shengyi.model.response.CarDataDto;
import com.shengyi.model.response.CarStockDetailsDto;
import com.shengyi.model.response.CarStockDto;
import com.shengyi.service.CarDataService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import java.util.List;@Controller
@RequestMapping(value = "/car/data/")
public class CarDataController {@Autowiredprivate CarDataService carDataService;@PostMapping(value = "getAllStock")@ResponseBodypublic PageResult<CarStockDto> getAllStock(@RequestBody PageRequest request){return carDataService.getAllStock(request);}@PostMapping(value = "getStockDetails")@ResponseBodypublic PageResult<CarStockDetailsDto> getStockDetails(@RequestBody StockDetailsRequest request){return carDataService.getStockDetails(request);}@PostMapping(value = "getAllCarData")@ResponseBodypublic PageResult<CarDataDto> getAllCarData(@RequestBody PageRequest request){return carDataService.getAllCarData(request);}@PostMapping(value = "searchCarData")@ResponseBodypublic PageResult<CarDataDto> searchCarData(@RequestBody CarDataSearchRequest request){return carDataService.searchCarDataByBrand(request);}@PostMapping(value = "modifyStatus")@ResponseBodypublic Result<Boolean> modifyStatus(@RequestBody CarDataStatusRequest request){return carDataService.updateCarStatus(request);}@PostMapping(value = "removeCarData")@ResponseBodypublic Result<Boolean> removeCarData(@Param("id") Long id){return carDataService.removeCarData(id);}@PostMapping(value = "getUserOptions")@ResponseBodypublic Result<List<OptionRequest>> getUserOptions(){return carDataService.getUserOptions();}@PostMapping(value = "getClassOptions")@ResponseBodypublic Result<List<OptionRequest>> getClassOptions(){return carDataService.getClassOptions();}@PostMapping(value = "modifyCarData")@ResponseBodypublic Result<Boolean> modifyCarData(@RequestBody CarDataDto carDataDto){return carDataService.updateCarData(carDataDto);}@PostMapping(value = "addCarData")@ResponseBodypublic Result<Boolean> addCarData(@RequestBody CarDataDto carDataDto){return carDataService.addCarData(carDataDto);}
}
package com.shengyi.controller;import com.shengyi.common.Result;
import com.shengyi.common.result.PageResult;
import com.shengyi.model.CarData;
import com.shengyi.model.CarRecord;
import com.shengyi.model.request.CarRecordRequest;
import com.shengyi.model.request.OptionRequest;
import com.shengyi.model.request.SettlementRecordRequest;
import com.shengyi.model.response.CarRecordDto;
import com.shengyi.model.response.ClassOptions;
import com.shengyi.service.CarRecordService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import java.util.Date;
import java.util.List;@Controller
@RequestMapping("/car/record/")
public class CarRecordController {@Autowiredprivate CarRecordService carRecordService;@PostMapping(value = "getRecordByTime")@ResponseBodypublic PageResult<CarRecordDto> getRecordByTime(@RequestBody CarRecordRequest carRecordRequest){return carRecordService.getCarRecordByTime(carRecordRequest);}@PostMapping(value = "removeRecordById")@ResponseBodypublic Result<Boolean> removeRecordById(@Param("id") Long id){return carRecordService.removeRecordById(id);}@PostMapping(value = "getOptions")@ResponseBodypublic Result<List<ClassOptions>> getOptios(){return carRecordService.getOptions();}@PostMapping(value = "getCustomerOptions")@ResponseBodypublic Result<List<OptionRequest>> getCustomerOptions(@Param("customerName") String customerName){return carRecordService.getCustomerOptions(customerName);}@PostMapping(value = "getCurrentCarData")@ResponseBody Result<CarData> getCurrentCarData(@Param("id") Long id){return carRecordService.getCarDataById(id);}@PostMapping(value = "addCarRecord")@ResponseBody Result<Boolean> addCarRecord(@RequestBody CarRecord carRecord){return carRecordService.addRecord(carRecord);}@PostMapping(value = "getCurrentDate")@ResponseBody Result<Date> getCurrentDate(){return carRecordService.getCurrentDate();}@PostMapping(value = "settlement")@ResponseBody Result<Boolean> settlement(@RequestBody SettlementRecordRequest recordRequest){return carRecordService.settlementRecord(recordRequest);}
}
package com.shengyi.controller;import com.shengyi.common.Result;
import com.shengyi.common.result.PageResult;
import com.shengyi.model.CarCustomer;
import com.shengyi.model.request.CustomerRequest;
import com.shengyi.model.request.CustomerSearchRequest;
import com.shengyi.model.response.CustomerDto;
import com.shengyi.model.response.CustomerSexCountDto;
import com.shengyi.service.CustomerService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import java.util.List;@Controller
@RequestMapping(value = "/car/customer/")
public class CustomerController {@Autowiredprivate CustomerService customerService;@PostMapping(value = "getAllCustomer")@ResponseBodypublic PageResult<CustomerDto> getAllCustomer(@RequestBody CustomerRequest request){return customerService.getAllCustomer(request);}@PostMapping(value = "addCustomer")@ResponseBodypublic Result<Boolean> addCustomer(@RequestBody CarCustomer carCustomer){return customerService.addCustomer(carCustomer);}@PostMapping(value = "modifyCustomer")@ResponseBodypublic Result<Boolean> modifyCustomer(@RequestBody CarCustomer carCustomer){return customerService.updateCustomer(carCustomer);}@PostMapping(value = "removeCustomer")@ResponseBodypublic Result<Boolean> removeCustomer(@Param("id") Long id){return customerService.deleteCustomer(id);}@PostMapping(value = "searchCustomer")@ResponseBodypublic PageResult<CustomerDto> searchCustomer(@RequestBody CustomerSearchRequest request){return customerService.searchCustomerByName(request);}@PostMapping(value = "getAgeCount")@ResponseBodypublic Result<List<Integer>> getAgeCount(){return customerService.getAgeCount();}@PostMapping(value = "getSexCount")@ResponseBodypublic Result<List<CustomerSexCountDto>> getSexCount(){return customerService.getSexCount();}
}
五,项目总结
传统的租车模式更多的是基于人力手动记账的方式来进行管理,或者是开发的基于C/S结构的简单管理系统,像以前有使用VB,Delphi等技术开发的C/S模式的管理系统。使用人工记账管理操作繁琐,早己被淘汰,而使用C/S结构开发的传统管理系统使用起来又不太方便,它的特点是必须在客户的机器上安装对应的客户端软件,这样才能登陆使用,这增加了客户端维护升级的难度。而我这次开发的汽车租赁管理系统,是使用了现在高频使用的另一种开发结构,基于浏览器客户端的方式来实现,它可以实现打开电脑自带的浏览器,输入系统地址就可以随时在有网络的电脑上登陆本租赁系统进行相应的管理操作,无论是从使用的便利性还是性能上都有较大的提升,这对于汽车租赁公司的管理有着很大的帮助。
java项目:基于Springboot+Vue+Element实现汽车租赁系统相关推荐
- 基于Springboot+Vue+Element实现汽车租赁系统
作者主页:编程千纸鹤 作者简介:Java.前端.Pythone开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发.毕业设计开发.面试技术整理.最新技术分享 项目编号:BS-XX-129 ...
- Java项目-基于Springboot+Vue实现在线音乐网站
项目编号:BS-PT-049 运行环境: 开发工具:IDEA /ECLIPSE 数据库:MYSQL5.7 JAVA: JDK1.8 依赖管理:MAVEN 后台开发技术:Springboot+SSM ...
- java项目:基于springboot+vue的实验室预约管理系统 nodejs
本文从用户的功能要求出发,建立了实验室管理系统,系统中的功能模块主要是实现管理员:首页.个人中心.实验室管理.用户管理.实验室申请管理.设备管理.设备报备管理.设备申请管理.消耗品管理.消耗品领取管理 ...
- 基于springboot+vue的房屋出租租赁系统 elementui
随着时代的发展,人们对房屋租赁的需求也越来越显得比较重要,在当下很多城市中房价都是比较高的,这就导致很多外来人员需要进行房租的租赁,当前房屋租赁一般都是通过中介的方式来找房和挂牌,这就导致房主和租房的 ...
- 基于springboot vue elementui的物品租赁系统源码
开发环境及工具: 大等于jdk1.8,大于mysql5.5,idea(eclipse),vscode(webstorm) 技术说明: springboot mybatis vue elementui ...
- Springboot毕设项目基于SpringBoot的学生宿舍水电费缴费系统的设计与实现2py81(java+VUE+Mybatis+Maven+Mysql)
Springboot毕设项目基于SpringBoot的学生宿舍水电费缴费系统的设计与实现2py81(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + ...
- springboot毕设项目基于SpringBoot+Vue的冷冻货物仓单质押系统9y3d6(java+VUE+Mybatis+Maven+Mysql)
springboot毕设项目基于SpringBoot+Vue的冷冻货物仓单质押系统9y3d6(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tom ...
- java语言基于springboot+vue+elementUI 4S店车辆管理系统-#计算机毕业设计
项目介绍 随着信息化的不断深入,经济的飞速发展,企业要想在激烈的市场竞争中立于不败之地,没有现代化的管理是万万不行的.汽车4S营销管理,作为一种新型的以品牌为单位个体经营管理为主体,同时集系统管理.采 ...
- Springboot毕设项目基于SpringBoot+Vue的冷冻货物仓单质押系统9y3d6java+VUE+Mybatis+Maven+Mysql+sprnig)
Springboot毕设项目基于SpringBoot+Vue的冷冻货物仓单质押系统9y3d6java+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 ...
最新文章
- 怎样在swift中创建CocoaPods
- 计算机网络:socket-udp
- 2021-04-17 安装Ubuntu18.0.4 的深度学习训练服务器
- java 保护内存操作的方法
- python实现tsne
- python使用线程池多线程执行,并得到返回的结果
- 两间三层小型别墅图片_占地仅120平的现代风别墅,带KTV和健身房,引领时尚新潮流...
- 1.4信息系统基础-软件构件技术知识
- 关于wxwidgets图形界面的关闭窗口的按钮无效的解决办法
- 【亲测可用】彻底解决Google谷歌地球启动无法连接到登录服务器、无法启动问题
- Problem A: 推理出今天是星期几
- Flutter 之页面状态保持
- 【coq】函数语言设计 笔记 05 -tactics
- android计算器设计步骤,Android Studio的简易计算器界面设计
- python画羊_Artbreeder 给我画一只电子羊
- Seatunnel提交任务到Flink集群源码解析
- 为什么《王者荣耀》的音乐让人过耳不忘? 天美讲述游戏音频设计背后的故事
- Android程序员想进大厂?算法很重要(1),面经解析
- 小程故事多 | 看来微服务就是一把双刃剑
- Python的基础语法(七)(持续更新)
热门文章
- Lacrimosa全集纳米盘下载(22CD1DVD)[APE]
- 分享一个404页面(猴子动态SVG图)
- ios 系统状态栏样式修改_iOS 一种新的修改导航栏样式的方法(支持iOS10).
- peda、Pwngdb、pwndbg的安装及避坑指南
- 答读者问(29):三个在校学生有关在校学习、考研、编程语言、未来工作的疑问及答复
- 仿射变换(affine transformation)
- [zz]C talk
- TJOI2013 黄金矿工(01背包改)
- 外企九年,我最终选择放弃——送给和我一样纠结毕业是读研,国企,外企等等的人们
- 收集android上开源的酷炫的交互动画和视觉效果:Interactive-animation