作者主页:源码空间站2022

简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

系统概要

汽车租赁系统总共分为两个大的模块,分别是系统模块和业务模块。其中系统模块和业务模块底下又有其子模块。

功能模块

一、业务模块
1、客户管理
客户列表
客户分页和模糊查询
客户添加、修改、删除
导出客户数据
2、车辆管理
车辆列表
车辆车辆分页和模糊查询
车辆添加、修改、删除
3、业务管理
汽车出租
1、根据客户身份证查询所有未出租的车辆信息
2、进行出租

出租单管理
1、多条件的模糊查询和分页
2、出租单的修改、删除、导出

汽车入库
检查单管理
1、多条件模糊查询和分页
2、检查单修改
3、导出检查单
4、统计分析
客户男女比例图
月出租量统计
销售员业绩统计
出租车辆类型统计

二、系统模块
1、用户登陆
校验用户名和密码
登陆成功将登陆信息写入登陆日志
未登录进行拦截

2、菜单管理
全查询菜单和根据左边的树查询不同菜单
菜单的添加、修改、删除

3、角色管理
全查询角色和模糊查询
角色的添加、修改、删除

4、用户管理
全查询用户和模糊查询
用户的添加、修改、删除以及重置密码

5、数据源的监控(druid monitor)

技术选型

1.后台技术选型:SSM(Spring SpringMVC Mybatis)
2.前端技术选型:LayUI、dtree、echarts

开发环境

操作系统:Windows/Mac OS
编程语言:Java
开发工具:IDEA、Navicat
项目构建:Maven 3.5.2
服务器:Tomcat 8.5

数据库:MySQL 8.0

运行截图

相关代码

BusController

package com.yeqifu.bus.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;/*** 业务管理的路由控制器*/
@Controller
@RequestMapping("bus")
public class BusController {/*** 跳转到客户管理* @return*/@RequestMapping("toCustomerManager")public String toCustomerManager(){return "business/customer/customerManager";}/*** 跳转到车辆管理* @return*/@RequestMapping("toCarManager")public String toCarManager(){return "business/car/carManager";}/*** 跳转到汽车出租* @return*/@RequestMapping("toRentCarManager")public String toRentCarManager(){return "business/rent/rentCarManager";}/*** 跳转到出租单管理的页面* @return*/@RequestMapping("toRentManager")public String toRentManager(){return "business/rent/rentManager";}/*** 跳转到汽车入库管理的页面* @return*/@RequestMapping("toCheckCarManager")public String toCheckCarManager(){return "business/check/checkCarManager";}/*** 跳转到检查单管理的页面* @return*/@RequestMapping("toCheckManager")public String toCheckManager(){return "business/check/checkManager";}}

车辆管理控制器

package com.yeqifu.bus.controller;import com.yeqifu.bus.domain.Car;
import com.yeqifu.bus.service.ICarService;
import com.yeqifu.bus.vo.CarVo;
import com.yeqifu.sys.constast.SysConstast;
import com.yeqifu.sys.utils.AppFileUtils;
import com.yeqifu.sys.utils.DataGridView;
import com.yeqifu.sys.utils.ResultObj;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.Date;/*** 车辆管理控制器*/
@RestController
@RequestMapping("car")
public class CarController {@Autowiredprivate ICarService carService;/*** 加载车辆列表返回DataGridView* @param carVo* @return*/@RequestMapping("loadAllCar")public DataGridView loadAllCar(CarVo carVo){return this.carService.queryAllCar(carVo);}/*** 添加一个车辆* @param carVo* @return*/@RequestMapping("addCar")public ResultObj addCar(CarVo carVo){try{carVo.setCreatetime(new Date());//如果不是默认图片就去掉图片的_temp的后缀if(!carVo.getCarimg().equals(SysConstast.DEFAULT_CAR_IMG)){String filePath =AppFileUtils.updateFileName(carVo.getCarimg(), SysConstast.FILE_UPLOAD_TEMP);carVo.setCarimg(filePath);}this.carService.addCar(carVo);return ResultObj.ADD_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.ADD_ERROR;}}/*** 修改一个车辆* @param carVo* @return*/@RequestMapping("updateCar")public ResultObj updateCar(CarVo carVo){try{String carimg = carVo.getCarimg();if (carimg.endsWith(SysConstast.FILE_UPLOAD_TEMP)) {String filePath =AppFileUtils.updateFileName(carVo.getCarimg(), SysConstast.FILE_UPLOAD_TEMP);carVo.setCarimg(filePath);//把原来的删除Car car = this.carService.queryCarByCarNumber(carVo.getCarnumber());AppFileUtils.removeFileByPath(car.getCarimg());}this.carService.updateCar(carVo);return ResultObj.UPDATE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.UPDATE_ERROR;}}/*** 删除一个车辆* @param carVo* @return*/@RequestMapping("deleteCar")public ResultObj deleteCar(CarVo carVo){try {this.carService.deleteCar(carVo.getCarnumber());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}/*** 批量删除车辆* @param carVo* @return*/@RequestMapping("deleteBatchCar")public ResultObj deleteBatchCar(CarVo carVo){try{this.carService.deleteBatchCar(carVo.getIds());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}}

检查单管理的控制器

package com.yeqifu.bus.controller;import com.yeqifu.bus.domain.Rent;
import com.yeqifu.bus.service.ICheckService;
import com.yeqifu.bus.service.IRentService;
import com.yeqifu.bus.vo.CheckVo;
import com.yeqifu.sys.utils.DataGridView;
import com.yeqifu.sys.utils.ResultObj;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.Date;
import java.util.Map;/*** 检查单管理的控制器*/
@RestController
@RequestMapping("check")
public class CheckController {@Autowiredprivate IRentService rentService;@Autowiredprivate ICheckService checkService;/*** 根据出租单号查询出租单信息* @param rentid* @return*/@RequestMapping("checkRentExist")public Rent checkRentExist(String rentid){//出租单号不存在,返回一个null,出租单号存在,返回一个rent对象Rent rent = rentService.queryRentByRentId(rentid);return rent;}/*** 根据出租单号加载检查单的表单数据* @param rentid* @return*/@RequestMapping("initCheckFormData")public Map<String,Object> initCheckFormData(String rentid){return this.checkService.initCheckFormData(rentid);}/*** 保存检查单数据* @param checkVo* @return*/@RequestMapping("saveCheck")public ResultObj saveCheck(CheckVo checkVo){try{checkVo.setCreatetime(new Date());this.checkService.addCheck(checkVo);return ResultObj.ADD_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.ADD_ERROR;}}/*** 查询所有检查单* @param checkVo* @return*/@RequestMapping("loadAllCheck")public DataGridView loadAllCheck(CheckVo checkVo){return this.checkService.queryAllCheck(checkVo);}/*** 删除一个检查单* @param checkVo* @return*/@RequestMapping("deleteCheck")public ResultObj deleteCheck(CheckVo checkVo){try{this.checkService.deleteCheck(checkVo);return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}/*** 批量删除检查单* @return*/@RequestMapping("deleteBatchCheck")public ResultObj deleteBatchCheck(CheckVo checkVo){try{this.checkService.deleteBatchCheck(checkVo.getIds());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}/*** 更新检查单* @param checkVo* @return*/@RequestMapping("updateCheck")public ResultObj updateCheck(CheckVo checkVo){try {this.checkService.updateCheck(checkVo);return ResultObj.UPDATE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.UPDATE_ERROR;}}
}

客户管理的控制器

package com.yeqifu.bus.controller;import com.yeqifu.bus.service.ICustomerService;
import com.yeqifu.sys.utils.DataGridView;
import com.yeqifu.sys.utils.ResultObj;
import com.yeqifu.bus.vo.CustomerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.Date;/*** 客户管理的控制器*/
@RestController  //以json形式响应数据
@RequestMapping("customer")
public class CustomerController {@Autowiredprivate ICustomerService customerService;/*** 加载客户列表返回DataGridView* @param customerVo* @return*/@RequestMapping("loadAllCustomer")public DataGridView loadAllCustomer(CustomerVo customerVo){return this.customerService.queryAllCustomer(customerVo);}/*** 添加一个客户* @param customerVo* @return*/@RequestMapping("addCustomer")public ResultObj addCustomer(CustomerVo customerVo){try{customerVo.setCreatetime(new Date());this.customerService.addCustomer(customerVo);return ResultObj.ADD_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.ADD_ERROR;}}/*** 修改一个客户* @param customerVo* @return*/@RequestMapping("updateCustomer")public ResultObj updateCustomer(CustomerVo customerVo){try{this.customerService.updateCustomer(customerVo);return ResultObj.UPDATE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.UPDATE_ERROR;}}/*** 删除一个客户* @param customerVo* @return*/@RequestMapping("deleteCustomer")public ResultObj deleteCustomer(CustomerVo customerVo){try {this.customerService.deleteCustomer(customerVo.getIdentity());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}/*** 批量删除客户* @param customerVo* @return*/@RequestMapping("deleteBatchCustomer")public ResultObj deleteBatchCustomer(CustomerVo customerVo){try{this.customerService.deleteBatchCustomer(customerVo.getIds());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}}

汽车出租管理的控制器

package com.yeqifu.bus.controller;import com.yeqifu.bus.domain.Customer;
import com.yeqifu.bus.service.ICustomerService;
import com.yeqifu.bus.service.IRentService;
import com.yeqifu.bus.vo.RentVo;
import com.yeqifu.sys.constast.SysConstast;
import com.yeqifu.sys.domain.User;
import com.yeqifu.sys.utils.DataGridView;
import com.yeqifu.sys.utils.RandomUtils;
import com.yeqifu.sys.utils.ResultObj;
import com.yeqifu.sys.utils.WebUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.Date;/*** 汽车出租管理的控制器*/
@RestController
@RequestMapping("rent")
public class RentController {@Autowiredprivate IRentService rentService;@Autowiredprivate ICustomerService customerService;/*** 检查身份证号是否存在* @param rentVo* @return*/@RequestMapping("checkCustomerExist")public ResultObj checkCustomerExist(RentVo rentVo){Customer customer = customerService.queryCustomerByIdentity(rentVo.getIdentity());if (null!=customer){return ResultObj.STATUS_TRUE;}else {return ResultObj.STATUS_FALSE;}}/*** 初始化添加出租单的表单的数据* @param rentVo* @return*/@RequestMapping("initRentFrom")public RentVo initRentFrom(RentVo rentVo){//生成出租单号rentVo.setRentid(RandomUtils.createRandomStringUseTime(SysConstast.CAR_ORDER_CZ));//设置起租时间rentVo.setBegindate(new Date());//设置操作员User user =(User) WebUtils.getHttpSession().getAttribute("user");rentVo.setOpername(user.getRealname());return rentVo;}/*** 保存出租单信息* @param rentVo* @return*/@RequestMapping("saveRent")public ResultObj saveRent(RentVo rentVo){try {//设置创建时间rentVo.setCreatetime(new Date());//设置归还状态rentVo.setRentflag(SysConstast.RENT_BACK_FALSE);//保存this.rentService.addRent(rentVo);return ResultObj.ADD_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.ADD_ERROR;}}/*** 删除出租单信息* @param rentVo* @return*/@RequestMapping("deleteRent")public ResultObj deleteRent(RentVo rentVo){try {//删除this.rentService.deleteRent(rentVo.getRentid());return ResultObj.DELETE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.DELETE_ERROR;}}/*** 修改出租单信息* @param rentVo* @return*/@RequestMapping("updateRent")public ResultObj updateRent(RentVo rentVo){try {//修改this.rentService.updateRent(rentVo);return ResultObj.UPDATE_SUCCESS;}catch (Exception e){e.printStackTrace();return ResultObj.UPDATE_ERROR;}}/******************出租单管理*******************//*** 查询*/@RequestMapping("loadAllRent")public DataGridView loadAllRent(RentVo rentVo){return this.rentService.queryAllRent(rentVo);}}

如果也想学习本系统,下面领取。关注并回复:013ssm

Java项目:ssm汽车租赁系统相关推荐

  1. 基于Java Web的汽车租赁系统的设计与实现

    项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等.这里根据疫情当下,你 ...

  2. java计算机毕业设计汽车租赁系统演示录像源码+程序+lw文档+mysql数据库

    java计算机毕业设计汽车租赁系统演示录像源码+程序+lw文档+mysql数据库 java计算机毕业设计汽车租赁系统演示录像源码+程序+lw文档+mysql数据库 本源码技术栈: 项目架构:B/S架构 ...

  3. java计算机毕业设计汽车租赁系统源码+系统+数据库+lw文档

    java计算机毕业设计汽车租赁系统源码+系统+数据库+lw文档 java计算机毕业设计汽车租赁系统源码+系统+数据库+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件: ...

  4. java计算机毕业设计汽车租赁系统演示录像源代码+数据库+系统+lw文档

    java计算机毕业设计汽车租赁系统演示录像源代码+数据库+系统+lw文档 java计算机毕业设计汽车租赁系统演示录像源代码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...

  5. 用java实现一个汽车租赁系统

    用java实现一个汽车租赁系统 题目如下 1.汽车租赁信息表如下 2.类和属性 3.运行效果图如下: 实现过程如下 1.首先把类创建好,并且把成员属性设置好 如下图 2.然后因为座位数和型号是客车类和 ...

  6. Java语言写汽车租赁系统

    汽车租赁系统 汽车类Car 属性 汽车品牌 brand 汽车型号 model 颜色 color 租车人 leaser 日租金 rent 租借天数 day 状态 state 成员方法show()不定义构 ...

  7. java毕业设计_汽车租赁系统

    小汽车在线租赁管理系统mysql数据库创建语句 小汽车在线租赁管理系统oracle数据库创建语句 小汽车在线租赁管理系统sqlserver数据库创建语句 小汽车在线租赁管理系统spring+sprin ...

  8. Java项目:汽车租赁系统(java+SSM+JSP+LayUI+echarts+mysql)

    源码获取:博客首页 "资源" 里下载! ssm汽车租赁系统 carRental 系统概要 汽车租赁系统总共分为两个大的模块,分别是系统模块和业务模块.其中系统模块和业务模块底下又有 ...

  9. 基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql)

    基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

最新文章

  1. 二级c语言编程题只要得出答案,计算机二级C语言考试编程题题库答案.docx
  2. 如果您在2016年编写过Java代码-这是您不容错过的趋势
  3. ZendStudio8的注册码
  4. 软件工程(2019)第三次作业
  5. 剑指offer(C++)-JZ28:对称的二叉树(数据结构-树)
  6. 调度失败:执行器地址为空_三千字带你搞懂XXL-JOB任务调度平台
  7. 配置其他机器连接Redis
  8. 哪款蓝牙耳机性价比最高?无线蓝牙耳机性价比排行榜
  9. 1016C. Vasya And The Mushrooms
  10. iPhone/iPad苹果设备型号对应常用名称列表(2022更新至iPhone 14 Pro Max | iPad Air 5)
  11. 比亚迪芯片BF7615BMxx芯片怎么烧录
  12. 网页版linux客户端,网页版微信将关闭,Linux开发者哭惨
  13. 12-Java 继承抽象类代码块(详解~)
  14. 芯科EFR32BG22芯片,详细分析与nRF52805和CC2640R2F区别
  15. 【Python基础】Python语法入门
  16. 空间的基,自然基,标准正交基
  17. MySQL Packet for query is too large (xxx > xxx)...by setting the ‘max_allowed_packet‘ variable.的解决办法
  18. win11真香(预览版上手体验)
  19. iOS开发-停止WebView播放视频/音频 1
  20. 博客系统—头像预览功能实现

热门文章

  1. Oracle中的emp、dept、bonus及salgrade表的新建及MySQL中的三种注释形式
  2. Java版本安装配置
  3. 企业邮箱怎么设置自动回复邮件
  4. 用户登录之SHA1加密
  5. [转]漫画:混乱的标记语言XHTML2/HTML5(附中文版翻译)
  6. 理科计算机专业分数线,武汉大学2017年计算机专业录取分数线(贵州理科考生)...
  7. Linux云计算架构师课程(兄弟连IT教育)
  8. 蓝牙耳机延迟受什么影响?有没有办法能完全解决延迟?
  9. 云服务器搭建redis集群
  10. ChatGPT使用详细步骤