博客
关于我
删除课程前后端实现
阅读量:202 次
发布时间:2019-02-28

本文共 2622 字,大约阅读时间需要 8 分钟。

后端实现

1. 控制器

功能描述:根据ID删除课程

编写人:cakin

日期:2020/12/6
参数:id 课程id
返回:R 返回给前端的数据

@ApiOperation("根据ID删除课程")@DeleteMapping("remove/{id}")public R removeById(@ApiParam(value = "课程id", required = true) @PathVariable String id) {    // 删除课程视频    courseService.removeCoverById(id);    // 删除课程    boolean result = courseService.removeCourseById(id);    if (result) {        return R.ok().message("删除成功");    } else {        return R.error().message("数据不存在");    }}

2. 服务层

接口

功能描述:删除课程封面

编写人:cakin

日期:2020/12/6
参数:id 课程id
返回:boolean 是否删除成功

功能描述:删除课程

编写人:cakin

日期:2020/12/6
参数:id 课程id
返回:boolean 是否删除成功

实现

@Overridepublic boolean removeCoverById(String id) {    // 根据id获取课程 Cover 的 url    Course course = baseMapper.selectById(id);    if (course != null) {        String cover = course.getCover();        if (!StringUtils.isEmpty(cover)) {            R r = ossFileService.removeFile(cover);            return r.getSuccess();        }    }    return false;}@Override@Transactional(rollbackFor = Exception.class)public boolean removeCourseById(String id) {    // 根据 courseId 删除 Video(课时)    QueryWrapper

3. 前端实现

1. 定义API

// 根据id删除课程removeById(id) {    return request({        url: `/admin/edu/course/remove/${id}`,        method: 'delete'    });}

2. 修改删除按钮

删除

3. 编写删除方法

// 根据id删除数据removeById(id) {    this.$confirm('此操作将永久删除该课程,以及该课程下的章节和视频,是否继续?', '提示', {        confirmButtonText: '确定',        cancelButtonText: '取消',        type: 'warning'    }).then(() => {        return courseApi.removeById(id);    }).then(response => {        this.fetchData();        this.$message.success(response.message);    }).catch(response => {        if (response === 'cancel') {            this.$message.info('取消删除');        }    });}

测试

转载地址:http://phqj.baihongyu.com/

你可能感兴趣的文章
Python:从间隔映射到值
查看>>
Python:使用 shell=False 的子进程调用不起作用
查看>>
Python:修改 PATH 环境变量的平台无关方式
查看>>
Python:假与 0
查看>>
Python:函数使用
查看>>
Python:函数进阶
查看>>
Python:在整数的二进制表示中查找最长的二进制间隙
查看>>
Python:如何从二进制转换为 base 64 并返回?
查看>>
Python:如何以非阻塞方式读取子进程的标准输出
查看>>
Python:如何使用 plotly 制作阴影区域或交替背景颜色?
查看>>
Python:如何根据日期时间获取值的计数
查看>>
python:如何检测串行 COM 上的设备名称/ID
查看>>
Python:如何模拟 datetime.utcnow()?
查看>>
Python:如果DataFrames之间的其他值匹配,则对DataFrame中的值求和
查看>>
Python:字典思维
查看>>
Python:将 HEX 字符串转换为字节
查看>>
Python:将列表与范围列表合并
查看>>
Python:将列表列表初始化为一定大小,
查看>>
Python:带有生成器的给定集合的幂集
查看>>
Python:按字符的位置拆分字符串
查看>>