|  |  | 
 |  |  |                 </el-switch> | 
 |  |  |             </el-form-item> | 
 |  |  |             <el-form-item label="访客答题主题:" prop="theme"> | 
 |  |  |                 <el-input style="width: 50%;" v-model="form.theme" placeholder="请输入答题标题" v-trim/> | 
 |  |  |                 <el-input style="width: 50%;" type="textarea" v-model="form.theme" placeholder="请输入答题标题" v-trim/> | 
 |  |  |             </el-form-item> | 
 |  |  |             <el-form-item label="访客答题说明:" prop="description"> | 
 |  |  |                 <el-input style="width: 50%;" type="textarea" v-model="form.description" placeholder="请输入" v-trim/> | 
 |  |  |             </el-form-item> | 
 |  |  |             <el-form-item label="入厂须知:" prop="visitNotice"> | 
 |  |  |                 <el-tiptap style="width: 50%;" v-model="form.visitNotice" :extensions="extensions" /> | 
 |  |  |             </el-form-item> | 
 |  |  |             <el-form-item> | 
 |  |  |                 <el-button type="primary" @click="submit">保存配置项</el-button> | 
 |  |  | 
 |  |  |  | 
 |  |  | <script> | 
 |  |  | import { getVisitConfigDTO, updateVisitConfig } from '@/api/system/common' | 
 |  |  | import { | 
 |  |  |   // necessary extensions | 
 |  |  |   Doc, | 
 |  |  |   Text, | 
 |  |  |   Paragraph, | 
 |  |  |   Heading, | 
 |  |  |   Bold, | 
 |  |  |   Underline, | 
 |  |  |   Italic, | 
 |  |  |   Strike, | 
 |  |  |   ListItem, | 
 |  |  |   BulletList, | 
 |  |  |   OrderedList, | 
 |  |  |   Image, | 
 |  |  |   Blockquote, | 
 |  |  |   TextAlign, | 
 |  |  |   Indent, | 
 |  |  |   Table, | 
 |  |  |   TableHeader, | 
 |  |  |   TableCell, | 
 |  |  |   TableRow, | 
 |  |  |   TextColor, | 
 |  |  |   HorizontalRule | 
 |  |  | } from 'element-tiptap' | 
 |  |  | import { upload } from '@/api/system/common' | 
 |  |  | export default { | 
 |  |  |   name: 'visitorSources', | 
 |  |  |  | 
 |  |  | 
 |  |  |         healthCard: 0, | 
 |  |  |         isAnswer: 0, | 
 |  |  |         theme: '', | 
 |  |  |         description: '' | 
 |  |  |       } | 
 |  |  |         description: '', | 
 |  |  |         visitNotice: '' | 
 |  |  |       }, | 
 |  |  |       extensions: [ | 
 |  |  |         new Doc(), | 
 |  |  |         new Text(), | 
 |  |  |         new Paragraph(), | 
 |  |  |         new Heading({ level: 5 }), | 
 |  |  |         new Bold({ bubble: true }), | 
 |  |  |         new Underline({ bubble: true, menubar: false }), | 
 |  |  |         new Italic(), | 
 |  |  |         new Strike(), | 
 |  |  |         new ListItem(), | 
 |  |  |         new BulletList(), | 
 |  |  |         new OrderedList(), | 
 |  |  |         new Image({ | 
 |  |  |           uploadRequest (file) { | 
 |  |  |             const fd = new FormData() | 
 |  |  |             fd.append('folder', 'visit/') | 
 |  |  |             fd.append('file', file) | 
 |  |  |             return upload(fd).then(res => { | 
 |  |  |               return res.prefixPath + res.folder + res.halfPath | 
 |  |  |             }) | 
 |  |  |           } | 
 |  |  |         }), | 
 |  |  |         new Blockquote(), | 
 |  |  |         new TextAlign(), | 
 |  |  |         new Indent(), | 
 |  |  |         new Table(), | 
 |  |  |         new TableHeader(), | 
 |  |  |         new TableCell(), | 
 |  |  |         new TableRow(), | 
 |  |  |         new HorizontalRule(), | 
 |  |  |         new TextColor() | 
 |  |  |       ] | 
 |  |  |     } | 
 |  |  |   }, | 
 |  |  |  | 
 |  |  | 
 |  |  |     getData () { | 
 |  |  |       getVisitConfigDTO({}) | 
 |  |  |         .then(res => { | 
 |  |  |           this.form.id = res.id | 
 |  |  |           this.form.checkVisit = res.VisitConfigParam.checkVisit | 
 |  |  |           this.form.checkVisit = res.checkVisit | 
 |  |  |           this.form.description = res.description | 
 |  |  |           this.form.healthCard = res.VisitConfigParam.healthCard | 
 |  |  |           this.form.isAnswer = res.VisitConfigParam.isAnswer | 
 |  |  |           this.form.reservationWay = res.VisitConfigParam.reservationWay | 
 |  |  |           this.form.healthCard = res.healthCard | 
 |  |  |           this.form.isAnswer = res.isAnswer | 
 |  |  |           this.form.reservationWay = res.reservationWay | 
 |  |  |           this.form.theme = res.theme | 
 |  |  |           this.form.visitNotice = res.visitNotice | 
 |  |  |         }) | 
 |  |  |     }, | 
 |  |  |     submit () { | 
 |  |  |       updateVisitConfig({ | 
 |  |  |         VisitConfigParam: { | 
 |  |  |           isAnswer: this.form.isAnswer, | 
 |  |  |           healthCard: this.form.healthCard, | 
 |  |  |           checkVisit: this.form.checkVisit, | 
 |  |  |           reservationWay: this.form.reservationWay | 
 |  |  |         }, | 
 |  |  |         isAnswer: this.form.isAnswer, | 
 |  |  |         healthCard: this.form.healthCard, | 
 |  |  |         checkVisit: this.form.checkVisit, | 
 |  |  |         reservationWay: this.form.reservationWay, | 
 |  |  |         description: this.form.description, | 
 |  |  |         theme: this.form.theme | 
 |  |  |         theme: this.form.theme, | 
 |  |  |         visitNotice: this.form.visitNotice | 
 |  |  |       }).then(res => { | 
 |  |  |         this.$message.success('保存成功') | 
 |  |  |         this.getData() | 
 |  |  | 
 |  |  | <style lang="scss" scoped> | 
 |  |  |     .box { | 
 |  |  |         width: 100%; | 
 |  |  |         height: 100%; | 
 |  |  |         padding: 30px; | 
 |  |  |         box-sizing: border-box; | 
 |  |  |         background: #ffffff; |