博客
关于我
删除课程前后端实现
阅读量: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/

你可能感兴趣的文章
PIL.Image进行图像融合显示(Image.blend)
查看>>
Pillow lacks the JPEG 2000 plugin
查看>>
ping 全网段CMD命令
查看>>
ping 命令的七种用法,看完瞬间成大神
查看>>
Pinia:$patch的使用场景
查看>>
Pinia:$subscribe()的使用场景
查看>>
Pinpoint对Kubernetes关键业务模块进行全链路监控
查看>>
Pinterest 大规模缓存集群的架构剖析
查看>>
pintos project (2) Project 1 Thread -Mission 1 Code
查看>>
PinYin4j库的使用
查看>>
PIP
查看>>
pip install goose-extractor // SyntaxError: Missing parentheses in call to 'print'
查看>>
pip install mysqlclient报错
查看>>
pip install 出现报asciii码错误的解决
查看>>
pip throws TypeError: parse() got an unexpected keyword argument ‘transport_encoding‘ 在尝试安装新软件包时
查看>>
pip 下载慢
查看>>
pip 升级报错AttributeError: ‘NoneType’ object has no attribute ‘bytes’
查看>>
pip 安装opencv-python卡死
查看>>
pip 安装出现异常
查看>>
Pip 安装失败:需要 SSL
查看>>