index.vue 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <template>
  2. <div class="task-preview">
  3. <MenuPage only-key="/personal_workbench/edit_task" />
  4. <CommonPreview :id="id" ref="preview" :project-id="project_id">
  5. <template #operator="{ courseware }">
  6. <span v-if="isTrue(courseware.is_can_start_edit)" class="link" @click="editTask">开始编辑</span>
  7. <span v-if="isTrue(courseware.is_can_submit_audit)" class="link" @click="submitCoursewareToAuditFlow">
  8. 提交审校
  9. </span>
  10. <span class="link" @click="goBackBookList">返回教材列表</span>
  11. </template>
  12. </CommonPreview>
  13. </div>
  14. </template>
  15. <script>
  16. import MenuPage from '@/views/personal_workbench/common/menu.vue';
  17. import CommonPreview from '@/components/CommonPreview.vue';
  18. import { SubmitBookCoursewareToAuditFlow } from '@/api/project';
  19. import { isTrue } from '@/utils/validate';
  20. export default {
  21. name: 'TaskPreviewPage',
  22. components: {
  23. MenuPage,
  24. CommonPreview,
  25. },
  26. data() {
  27. return {
  28. id: this.$route.params.id,
  29. project_id: this.$route.query.project_id,
  30. isTrue,
  31. };
  32. },
  33. methods: {
  34. goBackBookList() {
  35. this.$router.push({ path: '/personal_workbench/edit_task' });
  36. },
  37. editTask() {
  38. this.$router.push({
  39. path: `/personal_workbench/edit_task/edit/${this.id}`,
  40. query: { project_id: this.project_id },
  41. });
  42. },
  43. /**
  44. * 提交课件到审校流程
  45. */
  46. submitCoursewareToAuditFlow() {
  47. SubmitBookCoursewareToAuditFlow({ id: this.id }).then(() => {
  48. this.$message.success('课件已提交审校');
  49. this.$refs.preview.getBookCoursewareInfo(this.id);
  50. });
  51. },
  52. },
  53. };
  54. </script>
  55. <style lang="scss" scoped>
  56. @use '@/styles/mixin.scss' as *;
  57. .task-preview {
  58. @include page-content(true);
  59. }
  60. </style>