基于javaweb的SSM汽车4S店管理系统(java+jsp+bootstrap+ssm+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

002324302203

542324292203

562324292203

572324292203

582324292203

592324292203

582024483108

基于javaweb的SSM汽车4S店管理系统(java+jsp+bootstrap+ssm+mysql)

汽车4S店管理系统

本项目共分为管理员、用户、店员三种角色:
管理员角色包含以下功能:
管理员登录,在售车辆管理,品牌管理,品牌分类管理,推荐车辆,订单管理,销量统计等功能。

用户角色包含以下功能:
用户登录,用户角色首页,购物商城,查看购物车,订单管理,个人信息修改,关于我们等功能。

店员角色包含以下功能:
添加删除修改汽车,订单管理,销量统计,个人信息修改等功能。

  1. 后端:Spring+SpringMVC+Mybatis
  2. 前端:JSP+JavaScript+jQuery+BootStrap

管理员账号/密码:10001/123456
店员账号/密码: 10002/123456
用户账号/密码: 10003/123456

注意事项

关于图片上传与显示,
1.将images文件夹复制到D盘根目录下;
2.确认util/Constants.java中IMAGEPATH的路径是否为D盘路径,
3.将该路径在idea中配置tomcat下的虚拟路https://yms-1257401191.cos.ap-nanjing.myqcloud.com/CarSystem/

用户:注册登录
用户:主页菜单(轮播图、网站介绍)
用户:车辆查看(可查看管理员推荐车辆的列表和在售汽车的列表,可根据品牌、价格区间、上架构时间等搜索,可以点击加入购物车按钮和立即购买按钮)
用户:购物车管理(查看购买车里所有车辆,可以点击删除和购买按钮,点击购买按钮后会进入提交订单页面)
用户:提交订单(确认车辆名称,价格,联系人,联系方式后,再填写备注和交易地址,而后点击下单按钮进入付款页面)
用户:订单管理(可根据状态筛选订单:未发货订单、未收货订单、历史订单、未发货订单,可点击详情按钮查看详情,可点击付款按钮对未付款的车辆付款)
用户:个人中心(可修改姓名、性别、电话号码、家庭住址、邮箱等信息)
用户:修改密码
店员:汽车管理(可以对车辆增删改查和下架处理)
管理员:汽车管理(查看在售车辆列表,可以根据汽车编号或名称搜索,可以点击详情按钮、修改按钮、下架按钮,实现对应功能)
管理员:品牌管理(查看品牌列表,可以点击详情按钮、修改按钮、删除按钮,实现对应功能)
管理员:推荐管理(可以查看已设置推荐的列表,可以根据汽车编号搜索,可以点击改为推荐按钮和改为不推荐按钮)
管理员:订单管理(查看未发货订单:可以点击发货按钮、未收货订单、历史订单、回收站)
管理员:销量统计(根据品牌的统计和根据时间的统计,其中根据时间的统计可以按照年份yyyy搜索)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29





@Controller
@RequestMapping("/shop")
public class ShopUserInfoAction {

@Autowired
private PersonService personService;

@Autowired
private LoginService loginSevice;


//初始化用户更新页面
@RequestMapping("/updateInfoInit")
public String updateInfoInit(HttpSession session, Map<String, Object> map){
Login login = (Login) session.getAttribute("shoploginSession");
if(login == null){
return "redirect:/loginInitAction";
}else if( !login.getLogin_permission().equals("shop")){
return "redirect:/loginInitAction";
}
Person person = personService.queryPersonById(login.getLogin_id());
map.put("updatePersonInfo", person);
return "shop/userInfo/updateInfo";
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54

//添加车辆
@RequestMapping(value="/addCar", method=RequestMethod.POST)
public String addCar(@RequestParam("imgSrc")MultipartFile mf, Car car) throws IOException{

if(mf.getSize() != 0){ //上传的图片不为空

InputStream is = mf.getInputStream();
File target = new File(Constants.IMAGEPATH + mf.getOriginalFilename());
OutputStream os = null;
try{
os = new FileOutputStream(target, true);
int templeng = 0;
byte[] tempbyte = new byte[4096];
while((templeng = is.read(tempbyte)) != -1){
os.write(tempbyte, 0, templeng);
os.flush();
}
}catch(Exception e){
e.printStackTrace();
}finally{
try{
is.close();
os.close();
}catch (IOException e) {
e.printStackTrace();
}
}
car.setCar_img(mf.getOriginalFilename());

}else{ //用户上传图片为空
car.setCar_img("demo.jpg");
}

carService.addCar(car);
return "redirect:/shop/queryAllOnlineCar";
}

//查看单个车辆详情
@RequestMapping("/carDetail")
public String carDetails(Map<String, Object> map, String car_id){
List<Car> list = carService.queryOnlineCarById(car_id);
map.put("carDetail", list.get(0));
return "shop/carManage/car_details";
}

//在线车辆信息更新初始化页面
@RequestMapping("/carUpdateInit")
public String carUpdateInit(Map<String, Object> map, String car_id){
map.put("carUpdate", carService.queryOnlineCarById(car_id).get(0));
map.put("brandList",brandService.queryAllBrand());
return "shop/carManage/car_update";
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42




@Controller
@RequestMapping("/shopOrderManage")
public class ShopOrderManageAction {


@Autowired
private OrderService orderService;

@Autowired
private PageService pageService;


//未发货订单列表
@RequestMapping("/orderNotSendList")
public String orderNotSendList(Map<String, Object> map, HttpSession session,String currentpage){
Login login = (Login) session.getAttribute("shoploginSession");
if(login == null || !login.getLogin_permission().equals("shop")){
return "redirect:/loginInitAction";
}
List<Order> orderList = orderService.shopQueryAllPayOrder(login.getLogin_id());

Page page = pageService.pageToOrder(orderList.size(), currentpage);
int subEnd = (page.getCurrentpage()-1)*page.getSize() + page.getSize() > orderList.size() ? orderList.size() : (page.getCurrentpage()-1)*page.getSize() + page.getSize();
orderList = orderList.subList( (page.getCurrentpage()-1)*page.getSize() , subEnd);

map.put("page", page);
map.put("queryKind", "all");
map.put("notSendOrder", orderList);
return "shop/orderManage/order_notSend";
}

//将订单发货,然后返回未发货订单列表
@RequestMapping("/sendOrderById")
public String sendOrderById(String order_id){
orderService.sendOrderById(order_id);
return "redirect:/shopOrderManage/orderNotSendList";
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
		if(login == null){
return "redirect:/loginInitAction";
}else if( !login.getLogin_permission().equals("shop")){
return "redirect:/loginInitAction";
}

if( ! login.getLogin_password().equals(oldPwd)){ //输入密码错误
map.put("changePwdError", "您输入的原密码错误");
return "shop/userInfo/changePassword";
}

login.setLogin_password(newPwd);
loginSevice.saveLogin(login);
map.put("changePwdSuccess", "恭喜您,修改密码成功");
return "shop/userInfo/changePassword";
}
}





@Controller
@RequestMapping("/user")
public class UserInfoAction {

@Autowired
private PersonService personService;

@Autowired
private LoginService loginSevice;


//初始化用户更新页面
@RequestMapping("/updateInfoInit")
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49


//支付操作,成功后跳转到代发货页面
@RequestMapping("/payOrder")
public String payOrder(String order_id){
orderService.payOrder(order_id);
return "redirect:/orderManage/notSendOrder";
}

//待付款页面
@RequestMapping("/notPayOrder")
public String notPayOrder(Map<String, Object> map, HttpSession session){
Login login = (Login) session.getAttribute("loginSession");
if(login == null){
return "redirect:/loginInitAction";
}else if( !login.getLogin_permission().equals("user")){
return "redirect:/loginInitAction";
}
List<Order> orderList = orderService.userQueryAllNotPayOrder( login.getLogin_id() );
map.put("notPayOrder", orderList);
System.out.println("=================代付款长度:" + orderList.size());
return "user/order/order_notPay";
}

//已经付款未发货订单
@RequestMapping("/notSendOrder")
public String notSendOrder(Map<String, Object> map, HttpSession session){
Login login = (Login) session.getAttribute("loginSession");
if(login == null){
return "redirect:/loginInitAction";
}else if( !login.getLogin_permission().equals("user")){
return "redirect:/loginInitAction";
}
List<Order> orderList = orderService.userQueryAllPayOrder(login.getLogin_id());
map.put("notSendOrder", orderList);
return "user/order/order_notSend";
}

//已经发货未收货订单
@RequestMapping("/notReceiveOrder")
public String notReceiveOrder(Map<String, Object> map, HttpSession session){
Login login = (Login) session.getAttribute("loginSession");
if(login == null){
return "redirect:/loginInitAction";
}else if( !login.getLogin_permission().equals("user")){
return "redirect:/loginInitAction";
}
List<Order> orderList = orderService.userQueryAllSendOrder(login.getLogin_id());
map.put("notReceiveOrder", orderList);


项目链接:
https://javayms.github.io?id=542324292203201li
https://javayms.pages.dev?id=542324292203201li