+ 是否确认克隆{{hasCourseName}}的报名表单,克隆后将覆盖原有课程的报名表单,请谨慎操作。
+
@@ -92,8 +105,12 @@
import {
index,
save,
- destroy
- } from "@/api/course/form";
+ destroy,
+ cloneForm
+ } from "@/api/course/form";
+ import {
+ index as courseIndex
+ } from "@/api/course/index.js"
import {
deepCopy
} from "@/utils";
@@ -114,7 +131,11 @@
sort_name: 'sort',
sort_type: 'ASC'
},
- dialogVisible: false,
+ dialogVisible: false,
+ showTips:false,
+ hasCourseId:'',
+ hasCourseName:'',
+ hasCourseList:[],
formList: [],
types: [],
rules: {},
@@ -126,9 +147,45 @@
}
},
created() {
- this.getConfig()
+ this.getConfig()
+ this.getCourseList()
},
- methods: {
+ methods: {
+ // 获取有 自定义表单的 课程
+ async getCourseList(){
+ const res = await courseIndex({
+ page:1,
+ page_size:999,
+ has_course_forms:1,
+ sort_name:'id',
+ sort_type:'ASC',
+ })
+
+ this.hasCourseList = res.data.filter((item)=>{return item.id!=this.course_id})
+ },
+ changeCourse(e){
+ console.log("course-e",e)
+ if(e){
+ this.hasCourseList.map(item=>{
+ if(item.id===e){
+ this.hasCourseId = e
+ this.hasCourseName = item.name
+ this.showTips = true
+ }
+ })
+ }
+ },
+ // 复制表单数据
+ copyForms(){
+ cloneForm({
+ from_course_id:this.hasCourseId,
+ to_course_id:this.course_id
+ }).then(res=>{
+ this.$Message.success('克隆成功')
+ this.showTips = false
+ this.getFormList()
+ })
+ },
//获取 左侧 formitem类型
async getConfig() {
const {
diff --git a/src/views/course/components/editClass.vue b/src/views/course/components/editClass.vue
index f071af9..df298c3 100644
--- a/src/views/course/components/editClass.vue
+++ b/src/views/course/components/editClass.vue
@@ -146,7 +146,7 @@
id: this.id,
show_relation: ['teacher']
}).then(res => {
- this.form = this.base.requestToForm(res, this.form)
+ this.form = this.base.deepCopy(res)
this.form.introduce = res.teacher.introduce
})
},