day09---(04)课程发布-最终发布

一、课程发布相关字段

在edu_course表中的status字段,Draft:未发布, Normal:已发布。
在这里插入图片描述前端

二、课程的最终发布结果

把edu_course表中的status字段改为Normal,进行发布操做。
在EduCourseController中添加发布课程信息的方法。vue

@ApiOperation(value = "发布课程信息")
@PostMapping("publishCourse/{id}")
public R publishCourse(@PathVariable String id){
    //根据课程id查询课程信息
    EduCourse eduCourse = courseService.getById(id);
    //把status字段改为Normal
    eduCourse.setStatus("Normal");
    courseService.updateById(eduCourse);
    return R.ok();
}

三、前端建立api接口

api/publish.js中添加发布课程信息的接口方法。java

//发布课程信息
  publishCourse(id) {
    return request({
      url: `/eduservice/educourse/publishCourse/${id}`,
      method: 'post'
    })
  }

四、改造页面,实现功能

course/publish.vue页面添加实现发布课程信息的功能。web

methods: {
    previous() {
      console.log("previous");
      this.$router.push({ path: `/course/chapter/${this.courseId}` });
    },
    publish() {
      console.log("publish");
      publish.publishCourse(this.courseId).then(response => {
        //提示
        this.$message({
          type: "success",
          message: "课程发布成功!"
        });
        //跳转页面
        this.$router.push({ path: "/course/list" });
      });
    }
  }