基于javaweb+mysql的springboot车辆管理系统(java+springboot+vue+elementui+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Node.js≥10
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot车辆管理系统(java+springboot+vue+elementui+mysql)
项目介绍
基于SpringBoot Vue的车辆管理系统
角色:管理员、用户、服务人员
管理员:管理员登录进入4S店车辆系统可以查看首页、个人中心、销售员管理、维修员管理、客户管理、供应商信息管理、保险公司管理、车辆信息管理、物资信息管理、车辆销售管理、车辆维修管理、营业统计管理、销售统计管理等功能
销售员:销售员登录进入4S店车辆系统可以查看首页、个人中心、客户管理、供应商信息管理、保险公司管理、车辆信息管理、车辆销售管理等功能,并进行详细操作
维修员:维修员登录进入4S店车辆系统可以查看首页、个人中心、客户管理、供应商信息管理、保险公司管理、物资信息管理、车辆维修管理等功能,并进行详细操作
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7/8.0版本均可; 5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybaits 前端:Vue+ElementUI
使用说明
项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
项目文档介绍(MyEclipse环境配置、Mysql环境配置、系统分析、系统可行性分析、经济可行性、技术可行性、运行可行性、系统现状分析、功能需求分析、系统设计规则与运行环境、系统流程分析、操作流程、添加信息流程、删除信息流程、系统设计、系统设计主要功能、数据库设计、数据库设计规范、E-R图、数据表):
4S店车辆管理系统(首页、个人中心、销售员管理、维修员管理、客户管理、供应商信息管理、保险公司管理、车辆信息管理、物资信息管理、车辆销售管理、车辆维修管理、营业统计管理、销售统计管理):
4S店车辆管理系统—车辆信息详情管理:
后台登录管理:
车辆管理系统—营业统计管理:
车辆管理系统—车辆信息管理-车辆信息详情:
物资信息管理—物资信息:
stationService.updateByPrimaryKeySelective(station);
//4
Car car = carService.selectByPrimaryKey(order.getCarId());
car.setCarState(0);
carService.updateByPrimaryKeySelective(car);
//3
for (Map<String, Object> map : ws) {
String wId= (String)map.get("w_id");
Worker worker = workerService.selectByPrimaryKey(wId);
worker.setwState(1);//1空闲
workerService.updateByPrimaryKeySelective(worker);
return record;
/**删除机床*/
@RequestMapping("/delById")
@ResponseBody
public Integer deleteWorker(HttpServletRequest request){
String ids = request.getParameter("id");
if(StringUtil.isNotEmpty(ids)){
String[] sIds = ids.split(",");
for (String sId : sIds) {
stationService.deleteByPrimaryKey(Integer.parseInt(sId));
request.setAttribute("imgurls",imgurls);
request.setAttribute("dealOrder",order.get(0));
request.setAttribute("stations",stations);
request.setAttribute("workers",workers);
request.setAttribute("parts",parts);
request.setAttribute("station",station);//已选中station
request.setAttribute("selWorkers",selWorkers);
request.setAttribute("selParts",selParts);
request.setAttribute("readonly", 0);//非只读
return "order/orderDetail";
/** 订单详情*/
@RequestMapping("/detail")
* @param user
* @param session
* @return
*/
@RequestMapping("/login")
public String login(User user,HttpSession session,Model model){
String uri="";
List<User> checkUserLogin = userService.checkUserLogin(user);
if (checkUserLogin!=null && checkUserLogin.size()>0) {
User user2 = checkUserLogin.get(0);
session.setAttribute("userOn",user2 );
session.setAttribute("msg", null);
uri="index";
/** 页面跳转 预定页面 */
@RequestMapping("/toPreOrder")
public String toPreOrder(HttpServletRequest request, HttpSession session,
String carId) {
return "order/preOrder";
/** 订单预定 */
@RequestMapping("/preOrder")
@ResponseBody
public Integer preOrder(HttpServletRequest request, HttpSession session,
String imgurls, String arriveTime, String desc) {
// User user=(User)session.getAttribute("userOn");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
/** 修改订单*/
@RequestMapping("/edit")
public String edit(HttpServletRequest request,String orderId){
Map<String, Object> paramMap=new HashMap<String, Object>();
paramMap.put("orderId", orderId);
//通过id查出只能是一条数据
List<Map<String, Object>> order = orderService.selectOrderByAttr(paramMap);
String[] imgurls = order.get(0).get("imgUrls").toString().split(",");
//查询机床
SStation station = stationService.selectByPrimaryKey(Integer.parseInt(order.get(0).get("s_id").toString()));
//查询工人 0在忙 1 空闲
List<Map<String, Object>> selWorkers = orderWorkerService.selectByOrderId(order.get(0).get("o_id").toString());
//查询所有零件
List<Map<String, Object>> selParts = orderPartService.selectByOrderId(order.get(0).get("o_id").toString());
Date arrDate = null;
try {
arrDate = format.parse(arriveTime);
} catch (ParseException e) {
e.printStackTrace();
Car car = (Car) session.getAttribute("preCar");
car.setCarState(1);
int updateCar = carService.updateByPrimaryKeySelective(car);
Order order = new Order();
order.setOrderId(StringUtil.getStringId());
order.setCarId(car.getCarId());
order.setoDescribe(desc);
{setwState(1);}});
//查询所有可使用零件
List<Part> parts = partService.selectAll();
request.setAttribute("imgurls",imgurls);
request.setAttribute("dealOrder",order.get(0));
request.setAttribute("stations",stations);
request.setAttribute("workers",workers);
request.setAttribute("parts",parts);
request.setAttribute("station",station);//已选中station
request.setAttribute("selWorkers",selWorkers);
return updateOrder+updateCar;
/** 订单操作 */
@RequestMapping("/manage")
public String manageOrder(HttpServletRequest request, HttpSession session,String orderId) {
Map<String, Object> paramMap=new HashMap<String, Object>();
paramMap.put("orderId", orderId);
//通过id查出只能是一条数据
List<Map<String, Object>> order = orderService.selectOrderByAttr(paramMap);
String[] imgurls = order.get(0).get("imgUrls").toString().split(",");
//查询所有待使用的机床
car.setCarState(0);
carService.updateByPrimaryKeySelective(car);
//3
for (Map<String, Object> map : ws) {
String wId= (String)map.get("w_id");
Worker worker = workerService.selectByPrimaryKey(wId);
worker.setwState(1);//1空闲
workerService.updateByPrimaryKeySelective(worker);
} catch (Exception e) {
msg="0";
return msg;
/** 订单*/
@RequestMapping("/home")
public String homePage(HttpServletRequest request,HttpSession sessions){
/**删除机床*/
@RequestMapping("/delById")
@ResponseBody
public Integer deleteWorker(HttpServletRequest request){
String ids = request.getParameter("id");
if(StringUtil.isNotEmpty(ids)){
String[] sIds = ids.split(",");
for (String sId : sIds) {
stationService.deleteByPrimaryKey(Integer.parseInt(sId));
return 1;
}else{
arrDate = format.parse(arriveTime);
} catch (ParseException e) {
e.printStackTrace();
Car car = (Car) session.getAttribute("preCar");
car.setCarState(1);
int updateCar = carService.updateByPrimaryKeySelective(car);
Order order = new Order();
order.setOrderId(StringUtil.getStringId());
order.setCarId(car.getCarId());
order.setoDescribe(desc);
// 0 预约中 1预约成功 2正在执行 3完成 4拒绝
order.setoState("0");
@RequestMapping("/list")
public String login(HttpServletRequest request,HttpSession session,User user){
return "user/user_list";
/**
* 跳转至注册页面
* @return
*/
@RequestMapping("/toPage")
public String toPage(){
return "user/signUp";
//查询所有待使用的机床
List<SStation> stations=stationService.selectAll(new HashMap<String, Object>(){
{put("s_state", "完好待使用");}});
//查询所有空闲的工人 state=1空闲 2在忙 0离职
List<Worker> workers = workerService.selectWorkersByAttr(new Worker(){
{setwState(1);}});
//查询所有可使用零件
List<Part> parts = partService.selectAll();
request.setAttribute("imgurls",imgurls);
request.setAttribute("dealOrder",order.get(0));
request.setAttribute("stations",stations);
request.setAttribute("workers",workers);
@RequestMapping("/toPreOrder")
public String toPreOrder(HttpServletRequest request, HttpSession session,
String carId) {
return "order/preOrder";
/** 订单预定 */
@RequestMapping("/preOrder")
@ResponseBody
public Integer preOrder(HttpServletRequest request, HttpSession session,
String imgurls, String arriveTime, String desc) {
// User user=(User)session.getAttribute("userOn");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date arrDate = null;
@ResponseBody
public List<Map<String,Object>> getWorkData(HttpServletRequest request,String month){
Map<String,Object> param =new HashMap<String, Object>();
if (StringUtil.isEmpty(month)) {
month=DateUtils.getYearMonths(1).get(0);
param.put("date", month);
List<Map<String,Object>> selectWork = workerService.selectWork(param);
request.setAttribute("selMonth", month);
return selectWork;
订单管理控制层:
public class CommonInterceptor extends HandlerInterceptorAdapter {
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws ServletException, Exception {
HttpSession session = request.getSession();
User user= (User)session.getAttribute("user");
if(user == null ){
session.setAttribute("msg", "您还没有登录或登录已超时,请重新登录,然后再刷新本功能!");
// request.setAttribute("msg", "您还没有登录或登录已超时,请重新登录,然后再刷新本功能!");
response.sendRedirect(request.getContextPath());
// request.getRequestDispatcher("/").forward(request, response);
return false;
@RequestMapping("/order")
public class OrderController extends BaseController {
private final Integer WARNING_COUNT=20;
@Resource
private CarService carService;
@Resource
private StationService stationService;
@Resource
private PartService partService;
@Resource