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

你可能感兴趣的文章
Notepad++在线和离线安装JSON格式化插件
查看>>
notepad++最详情汇总
查看>>
notepad如何自动对齐_notepad++怎么自动排版
查看>>
Notification 使用详解(很全
查看>>
NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
查看>>
Now trying to drop the old temporary tablespace, the session hangs.
查看>>
nowcoder—Beauty of Trees
查看>>
np.arange()和np.linspace()绘制logistic回归图像时得到不同的结果?
查看>>
np.power的使用
查看>>
NPM 2FA双重认证的设置方法
查看>>
npm build报错Cannot find module ‘webpack‘解决方法
查看>>
npm ERR! ERESOLVE could not resolve报错
查看>>
npm error Missing script: “server“npm errornpm error Did you mean this?npm error npm run serve
查看>>
npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装
查看>>
npm install digital envelope routines::unsupported解决方法
查看>>
npm install 卡着不动的解决方法
查看>>
npm install 报错 EEXIST File exists 的解决方法
查看>>
npm install 报错 ERR_SOCKET_TIMEOUT 的解决方法
查看>>
npm install 报错 fatal: unable to connect to github.com 的解决方法
查看>>
npm install 报错 no such file or directory 的解决方法
查看>>