基于javaweb的SpringBoot在线商城系统(前后端分离+java+vue+springboot+ssm+mysql+maven)

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可

❗没学过node.js的不要搞前后端分离项目

适用

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

功能说明

410123072402

420123072402

430123072402

440123072402

450123072402

基于javaweb的SpringBoot在线商城系统(前后端分离+java+vue+springboot+ssm+mysql+maven)

一、项目简述

本系统功能包括: 前台展示+后台管理,包括最基本的用户登录注册,下单, 购物车,购买,结算,订单查询,收货地址,后台商品管 理,订单管理,用户管理等等功能,小伙伴一起来看看 吧。

二、项目运行

环境配置: Jdk1.8 + Mysql + HBuilderX (Webstorm也 行)+ Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts都支 持)。

项目技术: Springboot + Maven + Mybatis + Vue + HTML 等 等组成,B/S模式+ Maven管理等等。

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
    */
@PutMapping("/{id}")
public Result update(@RequestBody Address iAddress, @PathVariable int id,HttpServletRequest request) {
judge(request,id);
iAddress.setId(id);
if (iAddressService.updateById(iAddress)){
return Result.getSuccessResult("","修改成功");
}
return Result.getFailResult("","修改失败");
}


/**
* 在数据表中真正的删除一条记录, 先根据用户token和id 判断 地址记录是否存在
*/
@DeleteMapping("/{id}")
public Result delById(@PathVariable int id,HttpServletRequest request) {
judge(request,id);
if (iAddressService.removeById(id)){
return Result.getSuccessResult("","删除成功");
}
return Result.getFailResult("","删除失败");
}

}
package com.ysu.shop.utils;




@Component
public class JwtUtil {
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
@Resource
private IShoppingcartService iShoppingcartService;


/**
* 进行分页查询
*/
@GetMapping
public Result getList(HttpServletRequest request) {
int userId = JwtUtil.getUserId(request);
QueryWrapper<Shoppingcart> wrapper = new QueryWrapper<>();
wrapper.eq("user_id",userId);
return Result.getSuccessResult(iShoppingcartService.list(wrapper));
}

/**
* 通过主键id在表中查找信息
*/
@GetMapping("/{id}")
public Result getById(@PathVariable int id) {
Shoppingcart iShoppingcart = iShoppingcartService.getById(id);
if (iShoppingcart == null) {
return Result.getFailResult("","无记录");
}
return Result.getSuccessResult(iShoppingcart);
}

/**
* name : 需要检查那个字段的value是否在数据库存在
* 比如/check/RegistworkName?value=阿司匹林 :检查数据库是否存在RegistworkName='阿司匹林'
*/
@GetMapping("/check/{name}")
public Result checkName(@PathVariable String name,@RequestParam String value){
QueryWrapper<Shoppingcart> wrapper = new QueryWrapper<>();
wrapper.eq(name, value);
if (iShoppingcartService.getOne(wrapper) != null){
return Result.getFailResult();
}
return Result.getSuccessResult();
}

/**
* 向表中添加一条记录
*/
@PostMapping()
public Result save(@RequestBody Shoppingcart shoppingcart, HttpServletRequest request) {
shoppingcart.setUserId(JwtUtil.getUserId(request));
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
public Result getOrderList(@PathVariable String id){
QueryWrapper<Orderdetail> wrapper = new QueryWrapper<>();
wrapper.eq("order_no",id);
return Result.getSuccessResult(orderDetailService.list(wrapper));
}

/**
* 通过订单号 返回订单信息
* @return
*/
@GetMapping("/{id}")
@Transactional(readOnly = true)
public Result getOrderById(@PathVariable String id){
QueryWrapper<Orders> wrapper = new QueryWrapper<>();
wrapper.eq("order_no",id).eq("status",0);
return Result.getSuccessResult(ordersService.getOne(wrapper));
}

/**
* 付款成功
*/
@PutMapping("/payment/{id}")
public Result payment(@PathVariable String id,@RequestBody Map<String,Object> param){
Object addrId = param.get("addrId");
if (StringUtils.isEmpty(addrId)){
return Result.getFailResult("","未选择收货地址");
}
int addressId = Integer.valueOf(addrId.toString());
if (ordersService.payment(id,addressId)>0){
Pay pay = new Pay();
pay.setOrderNo(id);
pay.addPay(addressService.getById(addressId));
pay.setPayment(new BigDecimal(param.get("payment").toString()));
if (payService.save(pay)){
return Result.getSuccessResult(pay.getPlatformNumber());
}
}
return Result.getFailResult("","付款失败");

}

/**
* 取消订单
*/
@PutMapping("/cancel/{id}")
public Result cancel(@PathVariable String id){
if (ordersService.cancel(id)>0){
return Result.getSuccessResult("取消订单成功");
}
return Result.getFailResult("","取消订单失败");
}

/**
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
@Resource
private IGoodsService goodsService;

@Resource
private IShoppingcartService cartService;

@Resource
private IAddressService addressService;

@Resource
private IPayService payService;

@PostMapping()
public Result addOrder(@RequestBody Map<String,Object> param , HttpServletRequest request){
int userId = JwtUtil.getUserId(request);
String orderNo = System.currentTimeMillis()+""+userId;
Orders orders = new Orders();
orders.setPayment(new BigDecimal(param.get("payment").toString()));
orders.setOrderNo(orderNo);
orders.setUserId(userId);
if (!ordersService.save(orders)){
return Result.getFailResult("订单创建失败");
}
QueryWrapper<Shoppingcart> wrapper = new QueryWrapper<>();
String ids=param.get("ids").toString();
wrapper.inSql("id",ids);
List<Shoppingcart> goods = cartService.list(wrapper);
List<Orderdetail> orderList = new ArrayList<>();
for (Shoppingcart i:goods){
Orderdetail order = new Orderdetail();
order.setOrderNo(orderNo);
order.setUserId(userId);
order.addOrderItem(i);
orderList.add(order);
}
orderDetailService.saveBatch(orderList);
cartService.removeByIds(Arrays.asList(ids.split(",")));
return Result.getSuccessResult(orderNo);
}

/**
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
            return Result.getSuccessResult("","删除成功");
}
return Result.getFailResult("","删除失败");
}

}
package com.ysu.shop.utils;




@Component
public class JwtUtil {

private static IUserService userService;

@Resource
public void setUserService(IUserService userService) {
JwtUtil.userService = userService;
}
/**
* 过期时间为1天
*/
private static final long EXPIRE_TIME = 24*60*60*1000;


/**
* token私钥
*/
public static final String KEY = "ysu_user_shop";



public static String create(User user) {

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
     * 收货
*/
@PutMapping("/receive/{id}")
public Result receive(@PathVariable int id){
if (orderDetailService.receive(id)>0){
return Result.getSuccessResult("收货成功");
}
return Result.getFailResult("","收货失败");
}

/**
* 获取支付信息
*/
@GetMapping("/pay/{id}")
@Transactional(readOnly = true)
public Result getPay(@PathVariable String id){
QueryWrapper<Pay> wrapper = new QueryWrapper<>();
wrapper.eq("platform_number",id);
return Result.getSuccessResult(payService.getOne(wrapper));
}

/**
* 获取所有的订单信息
*/
@GetMapping("/admin")
public Result getOrderItems(@RequestParam Map<String,Object> param,HttpServletRequest request){
return Result.getSuccessResult(orderDetailService.getOrderItem(param,JwtUtil.getUserId(request)));
}

/**
* 获取用户购买的所有商品
*/
@GetMapping("/goods")
public Result getAllOrder(HttpServletRequest request){
QueryWrapper<Orderdetail> wrapper = new QueryWrapper<>();
wrapper.eq("user_id",JwtUtil.getUserId(request));
wrapper.gt("status",1);
return Result.getSuccessResult(orderDetailService.list(wrapper));
}

}
package com.ysu.shop.controller;



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