前置学习视频:从0开始带你手撸一套SpringBoot+Vue后台管理系统(2022年最新版)
配套讲解视频:https://www.bilibili.com/video/BV13R4y1K73e
CREATE TABLE `goods` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '物品名称',
`user` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '所属人',
`img` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '物品图片',
`time` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '报修时间',
`state` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT '待审核' COMMENT '报修状态',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
// 新增或者更新
@PostMapping
public Result save(@RequestBody Goods goods) {
if (goods.getId() == null) {
// 新增
goods.setTime(DateUtil.today());
goods.setUser(TokenUtils.getCurrentUser().getUsername());
}
goodsService.saveOrUpdate(goods);
return Result.success();
}
// 分页查询做一下筛选
@GetMapping("/page")
public Result findPage(@RequestParam(defaultValue = "") String name,
@RequestParam Integer pageNum,
@RequestParam Integer pageSize) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.orderByDesc("id");
if (!"".equals(name)) {
queryWrapper.like("name", name);
}
User currentUser = TokenUtils.getCurrentUser();
if (RoleEnum.ROLE_USER.toString().equals(currentUser.getRole())) { // 角色是普通用户
queryWrapper.eq("user", currentUser.getUsername());
}
return Result.success(goodsService.page(new Page<>(pageNum, pageSize), queryWrapper));
}
审核通过
审核不通过
changeState(row, state) {
this.form = JSON.parse(JSON.stringify(row))
this.form.state = state;
this.save();
},
Vue完整代码:
搜索
重置
创建报修单
批量删除
审核通过
审核不通过
编辑
删除
点击上传