| 
					
				 | 
			
			
				@@ -0,0 +1,715 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class="app-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="名称" prop="name"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-model="queryParams.name" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="请输入名称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          clearable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @keyup.enter.native="handleQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="课程" prop="courseId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-select v-model="queryParams.courseId" clearable placeholder="请选择课程" style=" margin-right: 10px;" size="mini"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-for="dict in courseList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :key="dict.dictValue" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :label="dict.dictLabel" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :value="parseInt(dict.dictValue)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-row :gutter="10" class="mb8"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="1.5"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="primary" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          plain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-plus" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click="handleAdd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-hasPermi="['course:courseFinishTempParent:add']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >新增</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="1.5"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="success" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          plain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-edit" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :disabled="single" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click="handleUpdate" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-hasPermi="['course:courseFinishTempParent:edit']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >修改</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="1.5"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="danger" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          plain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-delete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :disabled="multiple" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click="handleDelete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-hasPermi="['course:courseFinishTempParent:remove']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >删除</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="1.5"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          plain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-download" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :loading="exportLoading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click="handleExport" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-hasPermi="['course:courseFinishTempParent:export']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >导出</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-table border v-loading="loading" :data="courseFinishTempParentList" @selection-change="handleSelectionChange"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column type="selection" width="55" align="center" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="名称" align="center" prop="name" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="课程" align="center" prop="courseId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template slot-scope="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-tag v-for="dict in courseList" v-if="dict.dictValue == scope.row.courseId">{{dict.dictLabel}}</el-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template slot-scope="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="text" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            icon="el-icon-edit" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="handleUpdate(scope.row)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-hasPermi="['course:courseFinishTempParent:edit']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          >修改</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="text" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="jump(scope.row.id)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          >模板列表</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type="text" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            icon="el-icon-delete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            @click="handleDelete(scope.row)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-hasPermi="['course:courseFinishTempParent:remove']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          >删除</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-table> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <pagination 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      v-show="total>0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :total="total" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :page.sync="queryParams.pageNum" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :limit.sync="queryParams.pageSize" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @pagination="getList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <!-- 添加或修改完课模板对话框 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form ref="form" :model="form" :rules="rules" label-width="80px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="名称" prop="name"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-input v-model="form.name" placeholder="请输入名称" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="状态" v-if="!form.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-radio-group v-model="form.status"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-radio 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-for="dict in statusOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :key="dict.dictValue" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :label="parseInt(dict.dictValue)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            >{{ dict.dictLabel }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="销售公司" prop="companyId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-select filterable v-model="form.companyId" placeholder="请选择公司名" size="small"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-for="item in companyList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :key="item.companyId" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :label="item.companyName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :value="item.companyId" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="课程ID" prop="courseId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-select v-model="form.courseId" :disabled="form.id != null" placeholder="请选择课程" style=" margin-right: 10px;" size="mini"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-for="dict in courseList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :key="dict.dictValue" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :label="dict.dictLabel" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :value="parseInt(dict.dictValue)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="规则" prop="setting" v-if="!form.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div v-for="(item, index) in setting" :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               style="background-color: #fdfdfd; border: 1px solid #e6e6e6; margin-bottom: 20px;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-col :span="22"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-form :model="item" label-width="70px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-form-item label="内容类别" style="margin: 2%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-radio-group v-model="item.contentType"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-radio :label="item.dictValue" v-for="item in sysQwSopAiContentType">{{ item.dictLabel }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-form-item label="内容" style="margin-bottom: 2%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-input v-if="item.contentType == 1 " v-model="item.value" type="textarea" :rows="3" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                              placeholder="内容" style="width: 90%;margin-top: 10px;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <ImageUpload v-if="item.contentType == 2 " v-model="item.imgUrl" type="image" :num="1" :width="150" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                 :height="150"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 3 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-card class="box-card"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接标题:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input v-model="item.linkTitle" placeholder="请输入链接标题" style="width: 90%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接描述:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input type="textarea" :rows="3" v-model="item.linkDescribe" placeholder="请输入链接描述" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    style="width: 90%;margin-top: 1%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接封面:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <ImageUpload v-model="item.linkImageUrl" type="image" :num="1" :file-size="2" :width="150" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       :height="150" style="margin-top: 1%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接地址:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input v-model="item.linkUrl" placeholder="请输入链接地址" style="width: 90%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-card> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 4"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 5 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-form-item label="上传文件:" prop="fileUrl" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-upload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="item.fileUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          class="avatar-uploader" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :action="uploadUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :show-file-list="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :on-success="(res, file) => handleAvatarSuccessFile(res, file, item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :before-upload="beforeAvatarUploadFile"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <i class="el-icon-plus avatar-uploader-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-link v-if="item.fileUrl" type="primary" :href="downloadUrl(item.fileUrl)" download> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          {{ item.fileUrl }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-link> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 6 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-form-item label="上传视频:" prop="videoUrl" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-upload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          class="avatar-uploader" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :action="uploadUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :show-file-list="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :on-success="(res, file) => handleAvatarSuccessVideo(res, file, item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :before-upload="beforeAvatarUploadVideo"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <i class="el-icon-plus avatar-uploader-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <video v-if="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                               :src="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                               controls style="width: 200px;height: 100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </video> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 7 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        v-model="item.value" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        type="textarea" :rows="3" maxlength="66" show-word-limit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        placeholder="输入要转为语音的内容" style="width: 90%;margin-top: 10px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        @input="handleInputVideoText(item.value,item)"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 8"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-col :span="1" :offset="1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <i class="el-icon-delete" @click="delSetList(index, 0)" style="margin-top: 20px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                   v-if="setting.length>1"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-link type="primary" class="el-icon-plus" :underline="false" @click='addSetList(0)'> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            添加内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-link> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="群聊恭喜规则" prop="setting" v-if="!form.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div v-for="(item, index) in chatSetting" :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+               style="background-color: #fdfdfd; border: 1px solid #e6e6e6; margin-bottom: 20px;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-col :span="22"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-form :model="item" label-width="70px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-form-item label="内容类别" style="margin: 2%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-radio-group v-model="item.contentType"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-radio :label="item.dictValue" v-for="item in sysQwSopAiContentType">{{ item.dictLabel }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-form-item label="内容" style="margin-bottom: 2%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-input v-if="item.contentType == 1 " v-model="item.value" type="textarea" :rows="3" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                              placeholder="内容" style="width: 90%;margin-top: 10px;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <ImageUpload v-if="item.contentType == 2 " v-model="item.imgUrl" type="image" :num="1" :width="150" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                 :height="150"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 3 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-card class="box-card"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接标题:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input v-model="item.linkTitle" placeholder="请输入链接标题" style="width: 90%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接描述:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input type="textarea" :rows="3" v-model="item.linkDescribe" placeholder="请输入链接描述" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    style="width: 90%;margin-top: 1%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接封面:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <ImageUpload v-model="item.linkImageUrl" type="image" :num="1" :file-size="2" :width="150" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       :height="150" style="margin-top: 1%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-form-item label="链接地址:" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-input v-model="item.linkUrl" placeholder="请输入链接地址" style="width: 90%;"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-card> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 4"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 5 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-form-item label="上传文件:" prop="fileUrl" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-upload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="item.fileUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          class="avatar-uploader" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :action="uploadUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :show-file-list="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :on-success="(res, file) => handleAvatarSuccessFile(res, file, item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :before-upload="beforeAvatarUploadFile"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <i class="el-icon-plus avatar-uploader-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-link v-if="item.fileUrl" type="primary" :href="downloadUrl(item.fileUrl)" download> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          {{ item.fileUrl }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-link> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 6 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-form-item label="上传视频:" prop="videoUrl" label-width="100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-upload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          class="avatar-uploader" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :action="uploadUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :show-file-list="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :on-success="(res, file) => handleAvatarSuccessVideo(res, file, item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :before-upload="beforeAvatarUploadVideo"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <i class="el-icon-plus avatar-uploader-icon"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-upload> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <video v-if="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                               :src="item.videoUrl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                               controls style="width: 200px;height: 100px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </video> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 7 "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        v-model="item.value" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        type="textarea" :rows="3" maxlength="66" show-word-limit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        placeholder="输入要转为语音的内容" style="width: 90%;margin-top: 10px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        @input="handleInputVideoText(item.value,item)"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="item.contentType == 8"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-col :span="1" :offset="1"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <i class="el-icon-delete" @click="delSetList(index,1)" style="margin-top: 20px;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                   v-if="setting.length>1"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-link type="primary" class="el-icon-plus" :underline="false" @click='addSetList(1)'> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            添加内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-link> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="全选销售" prop="isAllCompanyUser" v-if="!form.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-switch 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-model="form.isAllCompanyUser" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            active-color="#13ce66" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            inactive-color="#ff4949" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :active-value="1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :inactive-value="2"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-switch> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <span v-if="form.isAllCompanyUser == '1'" style="margin-left: 10px;color: #13ce66">是</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <span v-else style="margin-left: 10px;color: #ff4949">否</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-form-item label="所属销售" prop="companyUserIds" v-if="!form.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-select v-model="companyUserIds" remote multiple placeholder="请选择" filterable style="width: 100%;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-for="dict in userList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :key="dict.userId" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :label="dict.nickName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :value="dict.userId.toString()"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-option> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <div slot="footer" class="dialog-footer"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button type="primary" @click="submitForm">确 定</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button @click="cancel">取 消</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-dialog> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { listCourseFinishTempParent, getCourseFinishTempParent, delCourseFinishTempParent, addCourseFinishTempParent, updateCourseFinishTempParent, exportCourseFinishTempParent } from "@/api/course/courseFinishTempParent"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {courseList} from '@/api/qw/sop' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import ImageUpload from '@/views/qw/sop/ImageUpload.vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { getUserList } from '@/api/company/companyUser' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  name: "CourseFinishTempParent", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  components: { ImageUpload }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      voiceLoading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      uploadUrl: process.env.VUE_APP_BASE_API + "/common/uploadOSS2", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      uploadUrlByVoice: process.env.VUE_APP_BASE_API + "/common/uploadOSSByHOOKVoice", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 遮罩层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      loading: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 导出遮罩层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      exportLoading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 选中数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ids: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 非单个禁用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      single: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 非多个禁用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      multiple: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 显示搜索条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      showSearch: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 总条数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      total: 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 完课模板表格数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      courseFinishTempParentList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      companyUserIds: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      courseList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      userList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 状态字典 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      statusOptions: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      allowSelect: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      sysFsSopWatchStatus: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      sysQwSopAiContentType: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 弹出层标题 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      title: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 是否显示弹出层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      open: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 模板表格数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      setting: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      companyList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      chatSetting: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 查询参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      queryParams: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageNum: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageSize: 10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        name: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        courseId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 表单参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      form: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 表单校验 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      rules: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        name:[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          { required: true, message: "名称不能为空", trigger: "blur" } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        courseId:[ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          { required: true, message: "课程不能为空", trigger: "blur" } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  created() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getDicts("sys_company_status").then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.statusOptions = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    });//复用一下 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getDicts("sys_qw_allow_select").then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.allowSelect = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getDicts("sys_fs_sop_watch_status").then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.sysFsSopWatchStatus = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getDicts("sys_qwSopAi_contentType").then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.sysQwSopAiContentType = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getUserList().then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.userList = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    courseList().then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.courseList = response.list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getCompanyList().then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.companyList = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 查询完课模板列表 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      listCourseFinishTempParent(this.queryParams).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.courseFinishTempParentList = response.rows; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.total = response.total; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 取消按钮 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    cancel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 表单重置 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    reset() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.form = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        id: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        status: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyId: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        name: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        setting: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        chatSetting: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        courseId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        createTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        createBy: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updateBy: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updateTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyUserIds: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        remark: null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetForm("form"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 搜索按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleQuery() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.pageNum = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 重置按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    resetQuery() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetForm("queryForm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.handleQuery(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 多选框选中数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleSelectionChange(selection) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.ids = selection.map(item => item.id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.single = selection.length!==1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.multiple = !selection.length 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 新增按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleAdd() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.open = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.title = "添加完课模板"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 修改按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleUpdate(row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const id = row.id || this.ids 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      getCourseFinishTempParent(id).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.form = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.open = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.title = "修改完课模板"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 提交按钮 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    submitForm() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs["form"].validate(valid => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (valid) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (this.form.id != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            updateCourseFinishTempParent(this.form).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.msgSuccess("修改成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (this.form.isAllCompanyUser == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.form.isAllCompanyUser = 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.form.companyUserIds = this.companyUserIds.toString() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.form.setting = JSON.stringify(this.setting) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.form.chatSetting = JSON.stringify(this.chatSetting) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (this.setting.length <= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              return this.$message("请添加规则") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (let i = 0; i < this.setting.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 1 && (this.setting[i].value == null || this.setting[i].value == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("内容不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 2 && (this.setting[i].imgUrl == null || this.setting[i].imgUrl == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("图片不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 3 && (this.setting[i].linkTitle == null || this.setting[i].linkTitle == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("链接标题不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 3 && (this.setting[i].linkDescribe == null || this.setting[i].linkDescribe == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("链接描述不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 3 && (this.setting[i].linkImageUrl == null || this.setting[i].linkImageUrl == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("链接图片不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 3 && this.setting[i].type == 1 && (this.setting[i].linkUrl == null || this.setting[i].linkUrl == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("链接地址不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 5 && (this.setting[i].fileUrl == null || this.setting[i].fileUrl == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("文件不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 6 && (this.setting[i].videoUrl == null || this.setting[i].videoUrl == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("视频不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (this.setting[i].contentType == 7 && (this.setting[i].value == null || this.setting[i].value == "")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return this.$message.error("语音不能为空") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            addCourseFinishTempParent(this.form).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.msgSuccess("新增成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 删除按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleDelete(row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const ids = row.id || this.ids; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$confirm('是否确认删除完课模板编号为"' + ids + '"的数据项?', "警告", { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        confirmButtonText: "确定", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelButtonText: "取消", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        type: "warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then(function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return delCourseFinishTempParent(ids); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.msgSuccess("删除成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).catch(() => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 导出按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleExport() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const queryParams = this.queryParams; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$confirm('是否确认导出所有完课模板数据项?', "警告", { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        confirmButtonText: "确定", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cancelButtonText: "取消", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        type: "warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.exportLoading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return exportCourseFinishTempParent(queryParams); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.download(response.msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.exportLoading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }).catch(() => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleAvatarSuccessFile(res, file, item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (res.code === 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 使用 $set 确保响应式更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$set(item, 'fileUrl', res.url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.msgError(res.msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    beforeAvatarUploadFile(file) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const isLt1M = file.size / 1024 / 1024 < 10; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!isLt1M) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$message.error('上传大小不能超过 10MB!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return isLt1M; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //下载文件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    downloadUrl(materialUrl) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 直接返回文件 URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return materialUrl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleInputVideoText(value, content) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 允许的字符:中文、英文(大小写)、数字和指定标点符号(,。!?) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const regex = /^[\u4e00-\u9fa5,。!?,!?]+$/; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 删除不符合条件的字符 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const filteredValue = value.split('').filter(char => regex.test(char)).join(''); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$set(content, 'value', filteredValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleAvatarSuccessVideo(res, file, item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (res.code == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 使用 $set 确保响应式更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$set(item, 'videoUrl', res.url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.msgError(res.msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    beforeAvatarUploadVideo(file) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const isLt30M = file.size / 1024 / 1024 < 10; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const isMP4 = file.type === 'video/mp4'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!isMP4) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$message.error('仅支持上传 MP4 格式的视频文件!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!isLt30M) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$message.error('上传大小不能超过 10MB!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    delSetList(index, type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (type == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.setting.splice(index, 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.chatSetting.splice(index, 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    addSetList(type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const newSetting = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentType: '1', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        value: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 将新设置项添加到 content.setting 数组中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (type == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.setting.push(newSetting); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.chatSetting.push(newSetting); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    jump(id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$router.push('/qw/conversion/courseFinishTemp/' + id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 |