<template> 
 | 
  <div class="Questionnairemanagement"> 
 | 
    <!-- 左侧栏 --> 
 | 
    <div class="sidecolumn"> 
 | 
      <div> 
 | 
        <el-steps finish-status="success" :active="Editprogress" simple> 
 | 
          <el-step> 
 | 
            <template slot="title"> 
 | 
              <span style="cursor: pointer" @click="Editprogress = 1" 
 | 
                >基础信息</span 
 | 
              > 
 | 
            </template> 
 | 
          </el-step> 
 | 
          <el-step> 
 | 
            <template slot="title"> 
 | 
              <span style="cursor: pointer" @click="Editprogress = 2" 
 | 
                >随访模板题目</span 
 | 
              > 
 | 
            </template> 
 | 
          </el-step> 
 | 
          <el-step description="查看随访模板预览,可导出PDF"> 
 | 
            <template slot="title"> 
 | 
              <span style="cursor: pointer" @click="preview">随访模板预览</span> 
 | 
            </template> 
 | 
          </el-step> 
 | 
        </el-steps> 
 | 
      </div> 
 | 
    </div> 
 | 
    <!-- 右侧数据 --> 
 | 
    <div class="leftvlue"> 
 | 
      <!-- 基本信息 --> 
 | 
      <div v-if="Editprogress == 1"> 
 | 
        <div class="leftvlue-jbxx">基本信息</div> 
 | 
        <el-divider></el-divider> 
 | 
        <el-form 
 | 
          :model="ruleForm" 
 | 
          :rules="rules" 
 | 
          ref="ruleForm" 
 | 
          label-width="120px" 
 | 
          class="demo-ruleForm" 
 | 
        > 
 | 
          <el-row> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="模板名称" prop="region"> 
 | 
                <div> 
 | 
                  <el-input 
 | 
                    v-model="ruleForm.templateName" 
 | 
                    placeholder="请输入名称" 
 | 
                  ></el-input> 
 | 
                </div> 
 | 
              </el-form-item> 
 | 
            </el-col> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="随访模板分类" prop="region"> 
 | 
                <el-select 
 | 
                  v-model="ruleForm.assortid" 
 | 
                  size="medium" 
 | 
                  filterable 
 | 
                  placeholder="请选择分类" 
 | 
                > 
 | 
                  <el-option-group 
 | 
                    v-for="group in indexAssortlist" 
 | 
                    :key="group.id" 
 | 
                    :label="group.indexAssortName" 
 | 
                  > 
 | 
                    <el-option 
 | 
                      v-for="item in group.ivrLibaTemplateAssortList" 
 | 
                      :key="item.id" 
 | 
                      :label="item.indexAssortName" 
 | 
                      :value="item.id" 
 | 
                    > 
 | 
                    </el-option> 
 | 
                  </el-option-group> 
 | 
                </el-select> 
 | 
              </el-form-item> 
 | 
            </el-col> 
 | 
          </el-row> 
 | 
          <el-row> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="模板简介" prop="note"> 
 | 
                <div> 
 | 
                  <el-input 
 | 
                    type="textarea" 
 | 
                    placeholder="请输入简介" 
 | 
                    v-model="ruleForm.note" 
 | 
                  ></el-input> 
 | 
                </div> 
 | 
              </el-form-item> 
 | 
            </el-col> 
 | 
          </el-row> 
 | 
  
 | 
          <el-row :gutter="20"> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="版本号" prop="version"> 
 | 
                <el-input 
 | 
                  style="width: 220px" 
 | 
                  v-model="ruleForm.version" 
 | 
                  placeholder="默认1.0.1" 
 | 
                ></el-input> </el-form-item 
 | 
            ></el-col> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="可用状态" prop="region"> 
 | 
                <el-select 
 | 
                  v-model="ruleForm.isenable" 
 | 
                  size="medium" 
 | 
                  placeholder="请选择" 
 | 
                > 
 | 
                  <el-option 
 | 
                    class="ruleFormaa" 
 | 
                    v-for="item in usable" 
 | 
                    :key="item.value" 
 | 
                    :label="item.label" 
 | 
                    :value="item.value" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
  
 | 
          <el-row :gutter="20"> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="语言" prop="name"> 
 | 
                <el-select 
 | 
                  v-model="ruleForm.language" 
 | 
                  size="medium" 
 | 
                  filterable 
 | 
                  placeholder="请选择语言" 
 | 
                > 
 | 
                  <el-option 
 | 
                    class="ruleFormaa" 
 | 
                    v-for="item in languagelist" 
 | 
                    :key="item.label" 
 | 
                    :label="item.label" 
 | 
                    :value="item.label" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> </el-form-item 
 | 
            ></el-col> 
 | 
            <el-col :span="12"> 
 | 
              <el-form-item label="播报优先" prop="playType"> 
 | 
                <el-select 
 | 
                  v-model="ruleForm.playType" 
 | 
                  size="medium" 
 | 
                  filterable 
 | 
                  placeholder="请选择语言" 
 | 
                > 
 | 
                  <el-option 
 | 
                    class="ruleFormaa" 
 | 
                    v-for="item in precedencetype" 
 | 
                    :key="item.value" 
 | 
                    :label="item.label" 
 | 
                    :value="item.value" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
          <el-form-item label="随访方式" prop="region"> 
 | 
            <el-select 
 | 
              style="width: 500px" 
 | 
              v-model="ruleForm.suitway" 
 | 
              size="medium" 
 | 
              multiple 
 | 
              filterable 
 | 
              placeholder="请选择分类(多选)" 
 | 
            > 
 | 
              <el-option 
 | 
                class="ruleFormaa" 
 | 
                v-for="item in mode" 
 | 
                :key="item.value" 
 | 
                :label="item.label" 
 | 
                :value="item.value" 
 | 
              > 
 | 
              </el-option> 
 | 
            </el-select> 
 | 
          </el-form-item> 
 | 
          <el-form-item label="标签" prop="desc"> 
 | 
            <div class="xinz-inf"> 
 | 
              <el-tag 
 | 
                :key="tag.tagname" 
 | 
                type="success" 
 | 
                v-for="tag in dynamicTags" 
 | 
                closable 
 | 
                :disable-transitions="false" 
 | 
                @close="handleClosetag(tag)" 
 | 
              > 
 | 
                {{ tag.tagname }} 
 | 
              </el-tag> 
 | 
              <el-select 
 | 
                v-model="inputValue" 
 | 
                v-if="inputVisible" 
 | 
                @change="handleInputConfirm" 
 | 
                filterable 
 | 
                remote 
 | 
                allow-create 
 | 
                reserve-keyword 
 | 
                default-first-option 
 | 
                :remote-method="remoteMethodtag" 
 | 
                :loading="loading" 
 | 
                placeholder="请选择" 
 | 
              > 
 | 
                <el-option 
 | 
                  v-for="item in optionstag" 
 | 
                  :key="item.tagid" 
 | 
                  :label="item.tagname" 
 | 
                  :value="item.tagname" 
 | 
                > 
 | 
                </el-option> 
 | 
              </el-select> 
 | 
              <el-button 
 | 
                v-else 
 | 
                class="button-new-tag" 
 | 
                size="small" 
 | 
                @click="showInput" 
 | 
                >+ 新增标签</el-button 
 | 
              > 
 | 
            </div> 
 | 
          </el-form-item> 
 | 
          <div class="xinz-infs"> 
 | 
            <el-form-item label="适用疾病" prop="region"> 
 | 
              <el-tag 
 | 
                v-for="tag in displayedTags" 
 | 
                :key="tag.icdid" 
 | 
                type="warning" 
 | 
                :disable-transitions="false" 
 | 
              > 
 | 
                {{ tag.icdname }} 
 | 
              </el-tag> 
 | 
              <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> 
 | 
            </el-form-item> 
 | 
          </div> 
 | 
          <div style="margin-left: 120px; margin-bottom: 10px"> 
 | 
            <el-button type="warning" @click="$refs.child.handleAddpatient()" 
 | 
              >疾病详情</el-button 
 | 
            > 
 | 
          </div> 
 | 
          <el-form-item label="适用通用库" prop="region"> 
 | 
            <el-select 
 | 
              style="width: 500px" 
 | 
              v-model="ruleForm.submoduleID" 
 | 
              size="medium" 
 | 
              multiple 
 | 
              filterable 
 | 
              placeholder="请选择通用库" 
 | 
            > 
 | 
              <el-option 
 | 
                class="ruleFormaa" 
 | 
                v-for="item in generallist" 
 | 
                :key="item.id" 
 | 
                :label="item.extName" 
 | 
                :value="item.id" 
 | 
              > 
 | 
              </el-option> 
 | 
            </el-select> 
 | 
          </el-form-item> 
 | 
          <el-form-item label="适用院区" prop="region"> 
 | 
            <el-select 
 | 
              style="width: 500px" 
 | 
              v-model="ruleForm.campus" 
 | 
              size="medium" 
 | 
              multiple 
 | 
              filterable 
 | 
              placeholder="请选择分类" 
 | 
            > 
 | 
              <el-option 
 | 
                class="ruleFormaa" 
 | 
                v-for="item in courtyardlist" 
 | 
                :key="item.label" 
 | 
                :label="item.label" 
 | 
                :value="item.label" 
 | 
              > 
 | 
              </el-option> 
 | 
            </el-select> 
 | 
          </el-form-item> 
 | 
          <el-row> 
 | 
            <el-col :span="20" 
 | 
              ><el-form-item label="适用科室" prop="region"> 
 | 
                <el-select 
 | 
                  v-model="tempDetpRelevanceslist" 
 | 
                  @remove-tag="removetag" 
 | 
                  style="width: 55vw" 
 | 
                  size="medium" 
 | 
                  multiple 
 | 
                  filterable 
 | 
                  placeholder="请选择科室" 
 | 
                > 
 | 
                  <el-option 
 | 
                    class="ruleFormaa" 
 | 
                    v-for="item in flatArray" 
 | 
                    :key="item.deptCode" 
 | 
                    :label="item.label" 
 | 
                    :value="item.deptCode" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
          <el-row> 
 | 
            <el-col :span="20" 
 | 
              ><el-form-item label="适用病区" prop="region"> 
 | 
                <el-select 
 | 
                  v-model="tempbelongWards" 
 | 
                  @remove-tag="removehpsp" 
 | 
                  style="width: 55vw" 
 | 
                  size="medium" 
 | 
                  multiple 
 | 
                  filterable 
 | 
                  placeholder="请选择科室" 
 | 
                > 
 | 
                  <el-option 
 | 
                    class="ruleFormaa" 
 | 
                    v-for="item in flatArray" 
 | 
                    :key="item.deptCode" 
 | 
                    :label="item.label" 
 | 
                    :value="item.deptCode" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
          <el-row> 
 | 
            <el-col :span="12" 
 | 
              ><el-form-item label="开场白" prop="revisitBefore"> 
 | 
                <el-input 
 | 
                  type="textarea" 
 | 
                  :rows="3" 
 | 
                  v-model="ruleForm.revisitBefore" 
 | 
                  placeholder="请输入开场白" 
 | 
                /> </el-form-item 
 | 
            ></el-col> 
 | 
            <el-col :span="12" 
 | 
              ><el-form-item label="结束语" prop="revisitAfter"> 
 | 
                <el-input 
 | 
                  type="textarea" 
 | 
                  :rows="3" 
 | 
                  v-model="ruleForm.revisitAfter" 
 | 
                  placeholder="请输入结束语" 
 | 
                /> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
  
 | 
          <el-row :gutter="20"> 
 | 
            <el-col :span="8"> 
 | 
              <el-form-item label="静默时间(秒)" prop="name"> 
 | 
                <div style="width: 40%"> 
 | 
                  <el-input 
 | 
                    v-model="ruleForm.silencetime" 
 | 
                  ></el-input></div></el-form-item 
 | 
            ></el-col> 
 | 
            <el-col :span="8"> 
 | 
              <el-form-item label="静默次数" prop="name"> 
 | 
                <div style="width: 40%"> 
 | 
                  <el-input 
 | 
                    v-model="ruleForm.noVoiceNum" 
 | 
                  ></el-input></div></el-form-item 
 | 
            ></el-col> 
 | 
            <el-col :span="8"> 
 | 
              <el-form-item label="无匹配重复(次)" prop="region"> 
 | 
                <div style="width: 40%"> 
 | 
                  <el-input v-model="ruleForm.mateNum"></el-input> 
 | 
                </div> </el-form-item 
 | 
            ></el-col> 
 | 
          </el-row> 
 | 
          <el-form-item> 
 | 
            <el-button type="success" plain @click="nextstep('ruleForm')" 
 | 
              >下一步</el-button 
 | 
            > 
 | 
            <el-button type="info" @click="closeFm('ruleForm')">关闭</el-button> 
 | 
            <el-button 
 | 
              type="success" 
 | 
              @click="Departmenttreatment('ruleForm')" 
 | 
              >{{ task ? "保存到任务模板" : "保存随访模板基础信息" }}</el-button 
 | 
            > 
 | 
          </el-form-item> 
 | 
        </el-form> 
 | 
      </div> 
 | 
      <!-- 随访模板设置 --> 
 | 
      <div v-if="Editprogress == 2"> 
 | 
        <div class="leftvlue-jbxx">随访模板题目设置</div> 
 | 
        <el-divider></el-divider> 
 | 
        <div class="addtopic"> 
 | 
          <el-button 
 | 
            type="primary" 
 | 
            icon="el-icon-plus" 
 | 
            round 
 | 
            @click="getaddtopiclist" 
 | 
            >添加题目</el-button 
 | 
          > 
 | 
          <el-button 
 | 
            type="success" 
 | 
            icon="el-icon-edit-outline" 
 | 
            round 
 | 
            @click="Operateit = !Operateit" 
 | 
            >{{ !Operateit ? "编辑题目" : "完整信息展示" }}</el-button 
 | 
          > 
 | 
        </div> 
 | 
        <div class="presentation"> 
 | 
          <div :class="Operateit ? 'presentation-left' : 'spresentation-left'"> 
 | 
            <el-card class="box-card" style="min-height: 688px"> 
 | 
              <el-table 
 | 
                v-loading="loading" 
 | 
                :data="ruleForm.ivrLibaTemplateScriptVOList" 
 | 
              > 
 | 
                <el-table-column 
 | 
                  label="编号" 
 | 
                  align="center" 
 | 
                  key="sort" 
 | 
                  prop="sort" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  label="标题" 
 | 
                  align="center" 
 | 
                  key="scriptTopic" 
 | 
                  prop="scriptTopic" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  v-if="!Operateit" 
 | 
                  label="问题话术" 
 | 
                  align="center" 
 | 
                  key="scriptContent" 
 | 
                  prop="scriptContent" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  v-if="!Operateit" 
 | 
                  label="问题话术" 
 | 
                  align="center" 
 | 
                  key="scriptContent" 
 | 
                  prop="scriptContent" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  label="下题跳转" 
 | 
                  align="center" 
 | 
                  key="nextScriptno" 
 | 
                  prop="nextScriptno" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                > 
 | 
                  <template slot-scope="scope"> 
 | 
                    <span>{{ 
 | 
                      scope.row.nextScriptno == 0 
 | 
                        ? "已是最后一题" 
 | 
                        : scope.row.nextScriptno 
 | 
                    }}</span> 
 | 
                  </template> 
 | 
                </el-table-column> 
 | 
  
 | 
                <el-table-column 
 | 
                  label="操作" 
 | 
                  v-if="Operateit" 
 | 
                  align="center" 
 | 
                  width="250" 
 | 
                  class-name="small-padding fixed-width" 
 | 
                > 
 | 
                  <template slot-scope="scope"> 
 | 
                    <el-button 
 | 
                      icon="el-icon-edit" 
 | 
                      type="primary" 
 | 
                      circle 
 | 
                      @click="handleUpdate(scope.row)" 
 | 
                    ></el-button> 
 | 
                    <el-button 
 | 
                      type="danger" 
 | 
                      icon="el-icon-delete" 
 | 
                      circle 
 | 
                      @click="handleDelete(scope.row)" 
 | 
                    ></el-button> 
 | 
                    <el-button 
 | 
                      @click="syioption(scope.row)" 
 | 
                      type="success" 
 | 
                      icon="el-icon-top" 
 | 
                      circle 
 | 
                    ></el-button> 
 | 
                    <el-button 
 | 
                      @click="xiayioption(scope.row)" 
 | 
                      type="success" 
 | 
                      icon="el-icon-bottom" 
 | 
                      circle 
 | 
                    ></el-button> 
 | 
                  </template> 
 | 
                </el-table-column> 
 | 
              </el-table> 
 | 
            </el-card> 
 | 
          </div> 
 | 
          <div class="presentation-right" v-if="Operateit"> 
 | 
            <el-card class="box-card"> 
 | 
              <el-form 
 | 
                :model="topicobj" 
 | 
                :inline="true" 
 | 
                class="demo-form-inline" 
 | 
              > 
 | 
                <div class="headline">题目设置详情</div> 
 | 
                <el-row> 
 | 
                  <el-col :span="24" 
 | 
                    ><el-form-item label="题目标题"> 
 | 
                      <el-input 
 | 
                        v-model="topicobj.scriptTopic" 
 | 
                        placeholder="请从左侧列表选择" 
 | 
                      ></el-input> </el-form-item 
 | 
                  ></el-col> 
 | 
                </el-row> 
 | 
                <el-row> 
 | 
                  <el-col :span="24" 
 | 
                    ><el-form-item label="问题话术"> 
 | 
                      <el-input 
 | 
                        type="textarea" 
 | 
                        style="width: 600px" 
 | 
                        v-model="topicobj.scriptContent" 
 | 
                        placeholder="请从左侧列表选择" 
 | 
                      ></el-input> </el-form-item 
 | 
                  ></el-col> 
 | 
                </el-row> 
 | 
                <el-row :gutter="10"> 
 | 
                  <el-col :span="12" 
 | 
                    ><el-form-item label="问题节点"> 
 | 
                      <el-input 
 | 
                        v-model="topicobj.sort" 
 | 
                        placeholder="请从左侧列表选择" 
 | 
                        :disabled="true" 
 | 
                      ></el-input> </el-form-item 
 | 
                  ></el-col> 
 | 
                  <el-col :span="12" 
 | 
                    ><el-form-item label="下题跳转"> 
 | 
                      <el-input 
 | 
                        v-model="topicobj.nextScriptno" 
 | 
                        placeholder="请输入题号" 
 | 
                      ></el-input> </el-form-item 
 | 
                  ></el-col> 
 | 
                </el-row> 
 | 
  
 | 
                <el-row :gutter="10"> 
 | 
                  <el-col :span="12" 
 | 
                    ><el-form-item label="是否必填"> 
 | 
                      <el-select 
 | 
                        v-model="topicobj.isMust" 
 | 
                        placeholder="默认必填" 
 | 
                      > 
 | 
                        <el-option 
 | 
                          v-for="item in required" 
 | 
                          :key="item.value" 
 | 
                          :label="item.label" 
 | 
                          :value="item.value" 
 | 
                        > 
 | 
                        </el-option> 
 | 
                      </el-select> </el-form-item 
 | 
                  ></el-col> 
 | 
                  <el-col :span="12" 
 | 
                    ><el-form-item label="题目类型"> 
 | 
                      <el-select 
 | 
                        v-model="topicobj.scriptType" 
 | 
                        placeholder="请选择" 
 | 
                        :disabled="true" 
 | 
                      > 
 | 
                        <el-option 
 | 
                          v-for="item in askvaluetype" 
 | 
                          :key="item.value" 
 | 
                          :label="item.label" 
 | 
                          :value="item.value" 
 | 
                        > 
 | 
                        </el-option> 
 | 
                      </el-select> </el-form-item 
 | 
                  ></el-col> 
 | 
                </el-row> 
 | 
                <el-form-item 
 | 
                  label="是否由选项配置跳转" 
 | 
                  v-if="topicobj.scriptType == 1" 
 | 
                > 
 | 
                  <el-radio-group v-model="topicobj.branchFlag"> 
 | 
                    <el-radio :label="'1'">是</el-radio> 
 | 
                    <el-radio :label="'0'">否</el-radio> 
 | 
                  </el-radio-group> 
 | 
                </el-form-item> 
 | 
                <el-form-item label="选中提示" v-if="topicobj.scriptType != 1"> 
 | 
                  <el-input 
 | 
                    style="width: 24vw" 
 | 
                    type="textarea" 
 | 
                    autosize 
 | 
                    placeholder="请输入内容" 
 | 
                    v-model="topicobj.prompt" 
 | 
                  > 
 | 
                  </el-input 
 | 
                ></el-form-item> 
 | 
                <el-row> 
 | 
                  <el-col :span="24" 
 | 
                    ><el-form-item label="语音文本"> 
 | 
                      <el-input 
 | 
                        type="textarea" 
 | 
                        style="width: 600px" 
 | 
                        v-model="topicobj.ivrtext" 
 | 
                        placeholder="请从左侧列表选择" 
 | 
                      ></el-input> </el-form-item 
 | 
                  ></el-col> 
 | 
                </el-row> 
 | 
                <el-row> 
 | 
                  <el-col :span="6"> 
 | 
                    <el-form-item label="语音文件" prop="verbaltrickyy"> 
 | 
                      <el-upload 
 | 
                        class="upload-demo" 
 | 
                        :action="uploadImgUrl" 
 | 
                        :headers="headers" 
 | 
                        :show-file-list="false" 
 | 
                        :on-success=" 
 | 
                          (response, file) => handleChanges(response, file, 1) 
 | 
                        " 
 | 
                        accept=".wav,.mp3" 
 | 
                        :limit="1" 
 | 
                      > 
 | 
                        <el-button size="small" type="primary" 
 | 
                          >点击上传</el-button 
 | 
                        > 
 | 
                      </el-upload> 
 | 
                    </el-form-item> 
 | 
                  </el-col> 
 | 
                  <el-col :span="6"> 
 | 
                    <span 
 | 
                      style="font-size: 18px; margin-top: 10px" 
 | 
                      v-if="topicobj.ivrVoice" 
 | 
                      >{{ 
 | 
                        topicobj.ivrVoice.substring( 
 | 
                          topicobj.ivrVoice.lastIndexOf("/") + 1 
 | 
                        ) 
 | 
                      }}</span 
 | 
                    > 
 | 
                  </el-col> 
 | 
                  <el-col :span="6"> 
 | 
                    <mini-audio 
 | 
                      :audio-source=" 
 | 
                        topicobj.ivrVoice 
 | 
                          ? topicobj.ivrVoice 
 | 
                          : 'https://example.com/example.mp3' 
 | 
                      " 
 | 
                    ></mini-audio> 
 | 
                  </el-col> 
 | 
                </el-row> 
 | 
                <div class="topicxq" v-if="topicobj.scriptType == 4"> 
 | 
                  <el-row> 
 | 
                    <el-col :span="20"> 
 | 
                      <el-form-item label="收集内容"> 
 | 
                        <el-input 
 | 
                          style="width: 400px" 
 | 
                          type="textarea" 
 | 
                          v-model="topicobj.value" 
 | 
                          placeholder="问题收集内容" 
 | 
                        ></el-input> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                </div> 
 | 
                <div v-else> 
 | 
                  <div class="headline"> 
 | 
                    <div class="basics">选项设置</div> 
 | 
                    <!-- <div class="headbottom"> 
 | 
                      <el-button 
 | 
                        type="primary" 
 | 
                        icon="el-icon-circle-plus-outline" 
 | 
                        @click="addzbiao" 
 | 
                        >添加指标</el-button 
 | 
                      > 
 | 
                    </div> --> 
 | 
                  </div> 
 | 
  
 | 
                  <Regular 
 | 
                    :TargetoptionList="topicobj.ivrLibaScriptTargetoptionList" 
 | 
                    @deloption="deloption" 
 | 
                    @branchFlagfn="branchFlagfn" 
 | 
                    :branchFlag="topicobj.branchFlag ? true : false" 
 | 
                    :controlsc="false" 
 | 
                    :scriptType="topicobj.scriptType" 
 | 
                  /> 
 | 
                  <!-- 无匹配类型 --> 
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="无匹配话术"> 
 | 
                          <el-input 
 | 
                            type="textarea" 
 | 
                            style="width: 400px" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="topicobj.noMatchText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="无匹配语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChanges(response, file, 2) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="topicobj.nomatchvoice" 
 | 
                          >{{ 
 | 
                            topicobj.nomatchvoice.substring( 
 | 
                              topicobj.nomatchvoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            topicobj.nomatchvoice 
 | 
                              ? topicobj.nomatchvoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="听不清话术"> 
 | 
                          <el-input 
 | 
                            style="width: 400px" 
 | 
                            type="textarea" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="topicobj.noClearlyText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
  
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="听不清语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChanges(response, file, 4) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="topicobj.noclearlyvoice" 
 | 
                          >{{ 
 | 
                            topicobj.noclearlyvoice.substring( 
 | 
                              topicobj.noclearlyvoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            topicobj.noclearlyvoice 
 | 
                              ? topicobj.noclearlyvoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="静默话术"> 
 | 
                          <el-input 
 | 
                            type="textarea" 
 | 
                            style="width: 400px" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="topicobj.slienceText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
  
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="静默语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChanges(response, file, 3) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="topicobj.sliencevoice" 
 | 
                          >{{ 
 | 
                            topicobj.sliencevoice.substring( 
 | 
                              topicobj.sliencevoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            topicobj.sliencevoice 
 | 
                              ? topicobj.sliencevoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
                </div> 
 | 
              </el-form> 
 | 
            </el-card> 
 | 
          </div> 
 | 
        </div> 
 | 
  
 | 
        <el-button type="success" @click="Departmenttreatment('ruleForm')">{{ 
 | 
          task ? "保存到任务模板" : "保存题目数据" 
 | 
        }}</el-button> 
 | 
        <el-button type="primary" plain @click="laststep()">上一步</el-button> 
 | 
        <el-button type="success" plain @click="preview('ruleForm')" 
 | 
          >查看预览</el-button 
 | 
        > 
 | 
        <el-button type="info" @click="closeFm('ruleForm')">关闭</el-button> 
 | 
      </div> 
 | 
      <!-- 随访模板预览 --> 
 | 
      <div v-if="Editprogress == 3"> 
 | 
        <div class="leftvlue-jbxx">随访模板问题预览</div> 
 | 
        <el-divider></el-divider> 
 | 
  
 | 
        <div class="preview-left"> 
 | 
          <div v-for="item in valssu"> 
 | 
            <!-- 单选 --> 
 | 
            <div 
 | 
              class="scriptTopic-dev" 
 | 
              :key="item.sort" 
 | 
              v-if="item.valueType == 1" 
 | 
            > 
 | 
              <div class="dev-text"> 
 | 
                {{ item.sort }}、[单选]<span>{{ item.scriptContent }}</span> 
 | 
              </div> 
 | 
              <div class="dev-xx"> 
 | 
                <el-radio-group v-model="item.remark"> 
 | 
                  <el-radio 
 | 
                    v-for="(items, index) in item.ivrLibaScriptTargetoptionList" 
 | 
                    :key="index" 
 | 
                    :label="index" 
 | 
                    >{{ items.targetvalue }}</el-radio 
 | 
                  > 
 | 
                </el-radio-group> 
 | 
              </div> 
 | 
            </div> 
 | 
            <!-- 多选 --> 
 | 
            <div 
 | 
              class="scriptTopic-dev" 
 | 
              :key="item.sort" 
 | 
              v-if="item.valueType == 2" 
 | 
            > 
 | 
              <div class="dev-text"> 
 | 
                {{ item.sort }}、[多选]<span>{{ item.scriptContent }}</span> 
 | 
              </div> 
 | 
              <div class="dev-xx"> 
 | 
                <el-checkbox-group v-model="item.remark"> 
 | 
                  <el-checkbox 
 | 
                    v-for="(items, index) in item.ivrLibaScriptTargetoptionList" 
 | 
                    :key="index" 
 | 
                    :label="index" 
 | 
                  > 
 | 
                    {{ items.targetvalue }} 
 | 
                  </el-checkbox> 
 | 
                </el-checkbox-group> 
 | 
              </div> 
 | 
            </div> 
 | 
            <!-- 填空 --> 
 | 
            <div 
 | 
              class="scriptTopic-dev" 
 | 
              :key="item.sort" 
 | 
              v-if="item.valueType == 3" 
 | 
            > 
 | 
              <div class="dev-text"> 
 | 
                {{ item.sort }}、[填空]<span>{{ item.scriptContent }}</span> 
 | 
              </div> 
 | 
              <div class="dev-xx"> 
 | 
                <el-input placeholder="请输入答案" v-model="radioas" clearable> 
 | 
                </el-input> 
 | 
              </div> 
 | 
            </div> 
 | 
          </div> 
 | 
        </div> 
 | 
        <el-button type="primary" plain @click="laststep()">上一步</el-button> 
 | 
        <el-button type="warning" @click="measurement()">前往测试</el-button> 
 | 
        <el-button type="info" @click="closeFm('ruleForm')">关闭</el-button> 
 | 
      </div> 
 | 
    </div> 
 | 
    <!-- 添加题目弹窗 --> 
 | 
    <el-drawer 
 | 
      title="添加题目" 
 | 
      @close="$forceUpdate()" 
 | 
      @closed="$forceUpdate()" 
 | 
      :visible.sync="drawer" 
 | 
      custom-class="demo-drawer" 
 | 
      size="50%" 
 | 
    > 
 | 
      <div style="margin: 0 25px"> 
 | 
        <el-tabs v-model="activeName"> 
 | 
          <el-tab-pane label="题库选取" name="first"> 
 | 
            <div class="preview-left"> 
 | 
              <el-form 
 | 
                :model="queryParams" 
 | 
                ref="queryForm" 
 | 
                size="small" 
 | 
                :inline="true" 
 | 
                label-width="98px" 
 | 
              > 
 | 
                <el-form-item label="标题" prop="userName"> 
 | 
                  <el-input 
 | 
                    v-model="queryParams.scriptTopic" 
 | 
                    placeholder="请输入" 
 | 
                    clearable 
 | 
                    style="width: 200px" 
 | 
                    @keyup.enter.native="getaddtopiclist" 
 | 
                  /> 
 | 
                </el-form-item> 
 | 
  
 | 
                <el-form-item> 
 | 
                  <el-button 
 | 
                    type="primary" 
 | 
                    icon="el-icon-search" 
 | 
                    size="medium" 
 | 
                    @click="getaddtopiclist" 
 | 
                    >搜索</el-button 
 | 
                  > 
 | 
                  <el-button 
 | 
                    icon="el-icon-refresh" 
 | 
                    size="medium" 
 | 
                    @click="resetQuery" 
 | 
                    >重置</el-button 
 | 
                  > 
 | 
                </el-form-item> 
 | 
              </el-form> 
 | 
              <el-table v-loading="loading" :data="userList"> 
 | 
                <el-table-column 
 | 
                  label="标题" 
 | 
                  align="center" 
 | 
                  key="scriptTopic" 
 | 
                  prop="scriptTopic" 
 | 
                  width="100" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  label="问题话术" 
 | 
                  align="center" 
 | 
                  key="scriptContent" 
 | 
                  prop="scriptContent" 
 | 
                  width="200" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                /> 
 | 
                <el-table-column 
 | 
                  label="问题类型" 
 | 
                  align="center" 
 | 
                  key="valueType" 
 | 
                  prop="valueType" 
 | 
                  width="120" 
 | 
                > 
 | 
                  <template slot-scope="scope"> 
 | 
                    <dict-tag 
 | 
                      :options="valuetypes" 
 | 
                      :value="scope.row.valueType" 
 | 
                    /> 
 | 
                  </template> 
 | 
                </el-table-column> 
 | 
                <el-table-column 
 | 
                  label="选项内容" 
 | 
                  align="center" 
 | 
                  key="targetoptions" 
 | 
                  prop="targetoptions" 
 | 
                  width="200" 
 | 
                  :show-overflow-tooltip="true" 
 | 
                /> 
 | 
  
 | 
                <el-table-column 
 | 
                  label="操作" 
 | 
                  align="center" 
 | 
                  class-name="small-padding fixed-width" 
 | 
                > 
 | 
                  <template slot-scope="scope"> 
 | 
                    <el-button 
 | 
                      size="medium" 
 | 
                      type="text" 
 | 
                      @click="addtopic(scope.row)" 
 | 
                      ><span class="button-textxg" 
 | 
                        ><i class="el-icon-circle-plus-outline"></i>添加</span 
 | 
                      ></el-button 
 | 
                    > 
 | 
                  </template> 
 | 
                </el-table-column> 
 | 
              </el-table> 
 | 
              <pagination 
 | 
                :total="total" 
 | 
                :page.sync="queryParams.pageNum" 
 | 
                :limit.sync="queryParams.pageSize" 
 | 
                @pagination="getaddtopiclist" 
 | 
              /> 
 | 
            </div> 
 | 
          </el-tab-pane> 
 | 
          <el-tab-pane label="手动配置" name="second"> 
 | 
            <div class="preview-left"> 
 | 
              <el-form 
 | 
                :inline="true" 
 | 
                :model="indexform" 
 | 
                class="demo-form-inline" 
 | 
              > 
 | 
                <div class="headline"> 
 | 
                  题目设置详情 
 | 
                  <span style="margin-left: 30px" 
 | 
                    ><el-button type="primary" @click="Submittopicobj" 
 | 
                      >保存新增</el-button 
 | 
                    ></span 
 | 
                  > 
 | 
                </div> 
 | 
                <el-divider></el-divider> 
 | 
                <div> 
 | 
                  <el-row :gutter="10"> 
 | 
                    <el-col :span="12"> 
 | 
                      <el-form-item label="题目标题"> 
 | 
                        <el-input 
 | 
                          v-model="indexform.scriptTopic" 
 | 
                          placeholder="请输入题目标题" 
 | 
                        ></el-input> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                    <el-col :span="12"> 
 | 
                      <el-form-item label="问题节点"> 
 | 
                        <el-input 
 | 
                          v-model="indexform.sort" 
 | 
                          placeholder="请输入问题节点" 
 | 
                        ></el-input> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                  <el-row :gutter="10"> 
 | 
                    <el-col :span="18" 
 | 
                      ><el-form-item label="问题话术"> 
 | 
                        <el-input 
 | 
                          style="width: 600px" 
 | 
                          type="textarea" 
 | 
                          v-model="indexform.scriptContent" 
 | 
                          placeholder="请从左侧列表选择" 
 | 
                        ></el-input> </el-form-item 
 | 
                    ></el-col> 
 | 
                  </el-row> 
 | 
                  <el-row :gutter="10"> 
 | 
                    <el-col :span="12" 
 | 
                      ><el-form-item label="是否必填"> 
 | 
                        <el-select 
 | 
                          v-model="indexform.isMust" 
 | 
                          placeholder="默认必填" 
 | 
                        > 
 | 
                          <el-option 
 | 
                            v-for="item in required" 
 | 
                            :key="item.value" 
 | 
                            :label="item.label" 
 | 
                            :value="item.value" 
 | 
                          > 
 | 
                          </el-option> 
 | 
                        </el-select> </el-form-item 
 | 
                    ></el-col> 
 | 
                    <!-- <el-col :span="12" 
 | 
                      ><el-form-item label="取值类型"> 
 | 
                        <el-select 
 | 
                          v-model="indexform.valueType" 
 | 
                          placeholder="请选择" 
 | 
                          :disabled="true" 
 | 
                        > 
 | 
                          <el-option 
 | 
                            v-for="item in valuetype" 
 | 
                            :key="item.value" 
 | 
                            :label="item.label" 
 | 
                            :value="item.value" 
 | 
                          > 
 | 
                          </el-option> 
 | 
                        </el-select> </el-form-item 
 | 
                    ></el-col> --> 
 | 
                  </el-row> 
 | 
                  <el-form-item 
 | 
                    label="选中提示" 
 | 
                    v-if="topicobj.scriptType != 1" 
 | 
                  > 
 | 
                    <el-input 
 | 
                      style="width: 24vw" 
 | 
                      type="textarea" 
 | 
                      autosize 
 | 
                      placeholder="请输入内容" 
 | 
                      v-model="indexform.prompt" 
 | 
                    > 
 | 
                    </el-input 
 | 
                  ></el-form-item> 
 | 
                  <el-row :gutter="10"> 
 | 
                    <el-col :span="18" 
 | 
                      ><el-form-item label="语音文本"> 
 | 
                        <el-input 
 | 
                          style="width: 600px" 
 | 
                          type="textarea" 
 | 
                          v-model="indexform.ivrtext" 
 | 
                          placeholder="请从左侧列表选择" 
 | 
                        ></el-input> </el-form-item 
 | 
                    ></el-col> 
 | 
                  </el-row> 
 | 
                  <el-row> 
 | 
                    <el-col :span="6"> 
 | 
                      <el-form-item label="语音文件" prop="verbaltrickyy"> 
 | 
                        <el-upload 
 | 
                          class="upload-demo" 
 | 
                          :action="uploadImgUrl" 
 | 
                          :headers="headers" 
 | 
                          :show-file-list="false" 
 | 
                          :on-success=" 
 | 
                            (response, file) => handleChange(response, file, 1) 
 | 
                          " 
 | 
                          accept=".wav,.mp3" 
 | 
                          :limit="1" 
 | 
                        > 
 | 
                          <el-button size="small" type="primary" 
 | 
                            >点击上传</el-button 
 | 
                          > 
 | 
                        </el-upload> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                    <el-col :span="6"> 
 | 
                      <span 
 | 
                        style="font-size: 18px; margin-top: 10px" 
 | 
                        v-if="indexform.ivrVoice" 
 | 
                        >{{ 
 | 
                          indexform.ivrVoice.substring( 
 | 
                            indexform.ivrVoice.lastIndexOf("/") + 1 
 | 
                          ) 
 | 
                        }}</span 
 | 
                      > 
 | 
                    </el-col> 
 | 
                    <el-col :span="6"> 
 | 
                      <mini-audio 
 | 
                        :audio-source=" 
 | 
                          indexform.ivrVoice 
 | 
                            ? indexform.ivrVoice 
 | 
                            : 'https://example.com/example.mp3' 
 | 
                        " 
 | 
                      ></mini-audio> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                </div> 
 | 
                <div> 
 | 
                  <el-form-item label="指标名称" prop="deptId"> 
 | 
                    <el-input 
 | 
                      v-model="indexform.targetname" 
 | 
                      placeholder="请输入指标名称" 
 | 
                      maxlength="20" 
 | 
                    /> 
 | 
                  </el-form-item> 
 | 
                  <el-form-item label="指标描述" prop="deptId"> 
 | 
                    <el-input 
 | 
                      v-model="indexform.targetdesc" 
 | 
                      placeholder="请输入指标描述" 
 | 
                      maxlength="60" 
 | 
                    /> 
 | 
                  </el-form-item> 
 | 
  
 | 
                  <el-row> 
 | 
                    <el-col :span="20"> 
 | 
                      <el-form-item label="值类型"> 
 | 
                        <el-radio-group v-model="indexform.valueType"> 
 | 
                          <el-radio :label="1">选项</el-radio> 
 | 
                          <el-radio :label="2">文本</el-radio> 
 | 
                          <el-radio :label="3">数值</el-radio> 
 | 
                        </el-radio-group> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                  <el-row> 
 | 
                    <el-col :span="20"> 
 | 
                      <el-form-item label="题目类型"> 
 | 
                        <el-radio-group 
 | 
                          @input="typeselection" 
 | 
                          v-model="indexform.scriptType" 
 | 
                        > 
 | 
                          <el-radio :label="1">单选</el-radio> 
 | 
                          <!-- <el-radio :label="2">多选</el-radio> --> 
 | 
                          <el-radio :label="4">问答</el-radio> 
 | 
                        </el-radio-group> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                </div> 
 | 
                <div class="topicxq" v-show="indexform.scriptType == 4"> 
 | 
                  <el-row> 
 | 
                    <el-col :span="20"> 
 | 
                      <el-form-item label="收集内容"> 
 | 
                        <el-input 
 | 
                          style="width: 400px" 
 | 
                          type="textarea" 
 | 
                          v-model="indexform.value" 
 | 
                          placeholder="问题收集内容" 
 | 
                        ></el-input> 
 | 
                      </el-form-item> 
 | 
                    </el-col> 
 | 
                  </el-row> 
 | 
                </div> 
 | 
  
 | 
                <div v-show="indexform.scriptType == 1"> 
 | 
                  <div class="headline"> 
 | 
                    <div class="basics">选项设置</div> 
 | 
                  </div> 
 | 
                  <el-divider></el-divider> 
 | 
                  <Regular 
 | 
                    :TargetoptionList="indexform.ivrLibaScriptTargetoptionList" 
 | 
                    @deloption="deloption" 
 | 
                    @addoption="addoptionson" 
 | 
                    :controlsc="false" 
 | 
                    :addoption="true" 
 | 
                  /> 
 | 
                  <!-- 无匹配类型 --> 
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="无匹配话术"> 
 | 
                          <el-input 
 | 
                            type="textarea" 
 | 
                            style="width: 400px" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="indexform.noMatchText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="无匹配语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChange(response, file, 2) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="indexform.nomatchvoice" 
 | 
                          >{{ 
 | 
                            indexform.nomatchvoice.substring( 
 | 
                              indexform.nomatchvoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            indexform.nomatchvoice 
 | 
                              ? indexform.nomatchvoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
  
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="静默话术"> 
 | 
                          <el-input 
 | 
                            type="textarea" 
 | 
                            style="width: 400px" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="indexform.slienceText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
  
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="静默语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChange(response, file, 3) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="indexform.sliencevoice" 
 | 
                          >{{ 
 | 
                            indexform.sliencevoice.substring( 
 | 
                              indexform.sliencevoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            indexform.sliencevoice 
 | 
                              ? indexform.sliencevoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
                  <div class="topicxq"> 
 | 
                    <el-row :gutter="10"> 
 | 
                      <el-col :span="20" 
 | 
                        ><el-form-item label="听不清话术"> 
 | 
                          <el-input 
 | 
                            style="width: 400px" 
 | 
                            type="textarea" 
 | 
                            placeholder="请输入" 
 | 
                            v-model="indexform.noClearlyText" 
 | 
                            show-word-limit 
 | 
                          > 
 | 
                          </el-input> </el-form-item 
 | 
                      ></el-col> 
 | 
                    </el-row> 
 | 
  
 | 
                    <el-row> 
 | 
                      <el-col :span="6"> 
 | 
                        <el-form-item label="听不清语音" prop="verbaltrickyy"> 
 | 
                          <el-upload 
 | 
                            class="upload-demo" 
 | 
                            :action="uploadImgUrl" 
 | 
                            :show-file-list="false" 
 | 
                            :headers="headers" 
 | 
                            :on-success=" 
 | 
                              (response, file) => 
 | 
                                handleChange(response, file, 4) 
 | 
                            " 
 | 
                            accept=".wav,.mp3" 
 | 
                            :limit="1" 
 | 
                          > 
 | 
                            <el-button size="small" type="primary" 
 | 
                              >点击上传</el-button 
 | 
                            > 
 | 
                          </el-upload> 
 | 
                        </el-form-item> 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <span 
 | 
                          style="font-size: 12px" 
 | 
                          v-if="indexform.noclearlyvoice" 
 | 
                          >{{ 
 | 
                            indexform.noclearlyvoice.substring( 
 | 
                              indexform.noclearlyvoice.lastIndexOf("/") + 1 
 | 
                            ) 
 | 
                          }}</span 
 | 
                        > 
 | 
                      </el-col> 
 | 
                      <el-col :span="6"> 
 | 
                        <mini-audio 
 | 
                          :audio-source=" 
 | 
                            indexform.noclearlyvoice 
 | 
                              ? indexform.noclearlyvoice 
 | 
                              : 'https://example.com/example.mp3' 
 | 
                          " 
 | 
                        ></mini-audio> 
 | 
                      </el-col> 
 | 
                    </el-row> 
 | 
                  </div> 
 | 
                </div> 
 | 
              </el-form> 
 | 
            </div> 
 | 
          </el-tab-pane> 
 | 
        </el-tabs> 
 | 
      </div> 
 | 
    </el-drawer> 
 | 
    <!-- 添加适用疾病窗口 --> 
 | 
    <Optional-Form 
 | 
      ref="child" 
 | 
      :dialogVisiblepatient="dialogVisiblepatient" 
 | 
      :overallCase="illnesslist" 
 | 
      @addoption="dialogVisiblepatient = false" 
 | 
      @kkoption="dialogVisiblepatient = true" 
 | 
    /> 
 | 
  </div> 
 | 
</template> 
 | 
  
 | 
<script> 
 | 
import { listtag } from "@/api/system/label"; 
 | 
import store from "@/store"; 
 | 
import { listDept } from "@/api/system/dept"; 
 | 
import Regular from "@/components/Regular"; //正则组件 
 | 
import { 
 | 
  getFollowupclassify, 
 | 
  delFollowupclassify, 
 | 
  addFollowupclassify, 
 | 
  addtargetillness, 
 | 
  getvFollowup, 
 | 
  compileFollowup, 
 | 
  getverbaltricklist, 
 | 
  getverbaltrick, 
 | 
  delFollowupinfo, 
 | 
  Followupinfo, 
 | 
  getFollowuplist, 
 | 
  deltargetillness, 
 | 
  getillnesslist, 
 | 
  depthospgetson, 
 | 
  depthospgetsonlist, 
 | 
  illnesslistget, 
 | 
  getillness, 
 | 
  getgenerallist, 
 | 
  depthospgetsondel 
 | 
} from "@/api/AiCentre/index"; 
 | 
import OptionalForm from "@/components/OptionalForm"; //正则组件 
 | 
import { getToken } from "@/utils/auth"; 
 | 
import { deptTreeSelect } from "@/api/system/user"; 
 | 
  
 | 
export default { 
 | 
  name: "tpuconfigurat", 
 | 
  components: { Regular, OptionalForm }, 
 | 
  data() { 
 | 
    return { 
 | 
      headers: { 
 | 
        Authorization: "Bearer " + getToken(), 
 | 
      }, 
 | 
      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort", 
 | 
      Editprogress: 1, //编辑进度 
 | 
      loading: false, // 遮罩层 
 | 
      drawer: false, //控制展开 
 | 
      radios: [], //多选题选中 
 | 
      radioas: "", //填空题答案 
 | 
      task: null, //是否来自任务 
 | 
      taskform: null, //任务信息 
 | 
      Operateit: true, 
 | 
      indexform: { 
 | 
        ivrLibaScriptTargetoptionList: [], 
 | 
      }, 
 | 
      labelInfovalue: [], //标签临时存储 
 | 
      deptNamesvalue: [], //科室临时存储 
 | 
      dialogVisiblepatient: false, //适用疾病窗口 
 | 
      dynamicTags: [], 
 | 
      indexAssortlist: [], 
 | 
      inputValue: "", 
 | 
      inputValueillness: "", 
 | 
      topicobj: { 
 | 
        noMatchText: "抱歉,我没有听懂,您能再说一遍吗?", 
 | 
        noClearlyText: "抱歉,我没有听清您说的话,您可以再说一次吗?", 
 | 
        slienceText: "抱歉,我没有听到您说的话,您可以再说一次吗?", 
 | 
      }, 
 | 
      total: 1, 
 | 
      id: "", 
 | 
      ruleForm: { 
 | 
        templateName: "", 
 | 
        revisitBefore: 
 | 
          "亲爱的患者/家属,我们是"+localStorage.getItem("orgname")+"的医护人员,为了更好地了解您的康复情况,请您抽一点宝贵时间,完成这份随访。", 
 | 
        revisitAfter: 
 | 
          "请您注意休息和营养,生活上要劳逸结合,适当锻炼,戒烟限酒,保持心情舒畅,定期复诊。那本次回访就到这里,祝您身体健康!", 
 | 
        ivrLibaTemplateTagList: [], 
 | 
        ivrLibaTemplateScriptVOList: [], 
 | 
        tempDetpRelevances: [], 
 | 
      }, 
 | 
      rules: {}, 
 | 
      optionstag: [], 
 | 
      prefollowuplist: [], 
 | 
      postfollowuplist: [], 
 | 
      tempDetpRelevanceslist: [], //科室数据 
 | 
      tempDetpRelevanceslistform: [], //科室数据 
 | 
      tempbelongWards: [], //病区数据 
 | 
      tempbelongWardsform: [], //病区数据 
 | 
      generallist: [ 
 | 
        { value: "1", label: "随访通用库一" }, 
 | 
        { value: "2", label: "随访二库" }, 
 | 
      ], 
 | 
  
 | 
      fileList: [ 
 | 
        { 
 | 
          name: "food.jpeg", 
 | 
          url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100", 
 | 
        }, 
 | 
      ], 
 | 
      administrativelist: [ 
 | 
        { value: "1", label: "心外科" }, 
 | 
        { value: "2", label: "心内科" }, 
 | 
      ], 
 | 
      standbylist: [], 
 | 
      themelist: [], 
 | 
      languagelist: [], 
 | 
      courtyardlist: [], 
 | 
      precedencetype: [], 
 | 
      usable: [], 
 | 
      required: [], 
 | 
      valuetype: [], 
 | 
      valuetypes: [], 
 | 
      askvaluetype: [], 
 | 
      mode: [], 
 | 
      inputVisible: false, 
 | 
      inputVisibleillness: false, 
 | 
      illnessVisible: false, //指标疾病弹框 
 | 
      deptOptions: [], 
 | 
      optionsillness: [], 
 | 
      illnesslistapi: [], 
 | 
      illnesslist: [], 
 | 
      defaultProps: { 
 | 
        children: "ivrLibaTemplateAssortList", 
 | 
        label: "indexAssortName", 
 | 
      }, 
 | 
      tempDetpRelevanceslist: [], 
 | 
      delScriptVOList: [], 
 | 
      optionIndex: "", 
 | 
      activeName: "first", 
 | 
      variablelist: [ 
 | 
        { variatename: "姓名", variate: "${name}", default: 1 }, 
 | 
        { variatename: "电话", variate: "${phone}", default: 1 }, 
 | 
        { variatename: "病情", variate: "${illness}", default: 1 }, 
 | 
      ], 
 | 
      deptlist: [], 
 | 
      hosplist: [], 
 | 
      flatArray: [], 
 | 
      props: { multiple: true, value: "deptId", label: "deptName" }, 
 | 
  
 | 
      variablelist: [ 
 | 
        { 
 | 
          variable: "paitent", 
 | 
          value: "表示患者的标识", 
 | 
        }, 
 | 
      ], 
 | 
      queryParamsdept: { 
 | 
        tempid: "", 
 | 
        type: 2, 
 | 
      }, 
 | 
  
 | 
      valssu: [], 
 | 
      radio: "", 
 | 
      addvalue: "添加题目", 
 | 
      // 题目表格数据 
 | 
      userList: [], 
 | 
      belongWards: [], 
 | 
      belongDepts: [], 
 | 
      // 查询参数 
 | 
      queryParams: { 
 | 
        pageNum: 1, 
 | 
        pageSize: 10, 
 | 
        userName: undefined, 
 | 
        phonenumber: undefined, 
 | 
        status: undefined, 
 | 
        deptId: undefined, 
 | 
        IDnumber: undefined, 
 | 
      }, 
 | 
    }; 
 | 
  }, 
 | 
  activated() { 
 | 
    if (this.id != this.$route.query.id) { 
 | 
      console.log(1); 
 | 
  
 | 
      this.RoutingDataProcessing(); 
 | 
      this.gettabList(); 
 | 
      this.getvFollowup(); 
 | 
      this.auxiliary(); 
 | 
    } else { 
 | 
      this.tempDetpRelevanceslistform = []; 
 | 
      this.tempbelongWardsform = []; 
 | 
    } 
 | 
  }, 
 | 
  
 | 
  created() { 
 | 
    this.RoutingDataProcessing(); 
 | 
    this.gettabList(); 
 | 
    this.getvFollowup(); 
 | 
    this.auxiliary(); 
 | 
    this.getDeptTree(); 
 | 
    this.mode = store.getters.mode; 
 | 
    console.log(this.mode,'this.mode'); 
 | 
    this.usable = store.getters.usable; 
 | 
    this.required = store.getters.required; 
 | 
    this.valuetype = store.getters.valuetype; 
 | 
    this.valuetypes = store.getters.valuetypelb; 
 | 
    this.askvaluetype = store.getters.askvaluetype; 
 | 
    this.languagelist = store.getters.languagelist; 
 | 
    this.courtyardlist = store.getters.courtyardlist; 
 | 
    this.precedencetype = store.getters.precedencetype; 
 | 
    this.belongWards = store.getters.belongWards; 
 | 
    this.belongDepts = store.getters.belongDepts; 
 | 
  }, 
 | 
  mounted() {}, 
 | 
  computed: { 
 | 
    displayedTags() { 
 | 
      // 返回前10个tag 
 | 
      return this.illnesslist.slice(0, 10); 
 | 
    }, 
 | 
    hasMore() { 
 | 
      // 判断是否有更多的tag 
 | 
      return this.illnesslist.length > 10; 
 | 
    }, 
 | 
    remaining() { 
 | 
      // 计算剩余的tag数量 
 | 
      return this.illnesslist.length - 10; 
 | 
    }, 
 | 
  }, 
 | 
  
 | 
  methods: { 
 | 
    //公共方法-------------------- 
 | 
    getIndexInArray(arr, obj) { 
 | 
      return arr.indexOf(obj); 
 | 
    }, 
 | 
    processElement(element) { 
 | 
      return { ...element, isoperation: 0 }; 
 | 
    }, 
 | 
    // 路由数据处理 
 | 
    RoutingDataProcessing() { 
 | 
      this.id = this.$route.query.id; 
 | 
      this.task = this.$route.query.task; 
 | 
      this.queryParamsdept.tempid = this.id; 
 | 
    }, 
 | 
    // 获取科室树 
 | 
    getDeptTree() { 
 | 
      // 科室列表 
 | 
      deptTreeSelect().then((response) => { 
 | 
        this.deptOptions = response.data; 
 | 
        this.flatArray = this.flattenArray(response.data); 
 | 
      }); 
 | 
    }, 
 | 
    flattenArray(multiArray) { 
 | 
      let result = []; 
 | 
  
 | 
      // 递归函数,用于将多级数组转换为一维数组,只包含最底层的元素 
 | 
      function flatten(element) { 
 | 
        // 如果当前元素有子元素,继续递归 
 | 
        if (element.children && element.children.length > 0) { 
 | 
          element.children.forEach((child) => flatten(child)); 
 | 
        } else { 
 | 
          // 克隆元素以避免修改原始数据 
 | 
          let item = JSON.parse(JSON.stringify(element)); 
 | 
          result.push(item); // 将最底层的元素添加到结果数组 
 | 
        } 
 | 
      } 
 | 
  
 | 
      // 从顶层元素开始递归 
 | 
      multiArray.forEach((element) => flatten(element)); 
 | 
      return result; // 返回只包含最底层元素的一维数组 
 | 
    }, 
 | 
    // 获取表单数据 
 | 
    getvFollowup() { 
 | 
      if (this.id) { 
 | 
        getvFollowup({ id: this.id }).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            console.log(2211); 
 | 
            this.ruleForm = res.data; 
 | 
            if (this.ruleForm.deptNames) 
 | 
            console.log(this.ruleForm.suitway,'suitway'); 
 | 
            this.ruleForm.suitway = this.ruleForm.suitway.split(","); 
 | 
            console.log(this.ruleForm.suitway,'suitway'); 
 | 
            if (this.ruleForm.campus) 
 | 
              this.ruleForm.campus = this.ruleForm.campus.split(","); 
 | 
            this.ruleForm.submoduleID = this.ruleForm.submoduleID.split(","); 
 | 
            this.ruleForm.submoduleID = this.ruleForm.submoduleID.map((res) => { 
 | 
              return Number(res); 
 | 
            }); 
 | 
  
 | 
            this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList; 
 | 
  
 | 
            this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList.map( 
 | 
              this.processElement 
 | 
            ); 
 | 
            this.sortFn(); 
 | 
          } 
 | 
        }); 
 | 
        getillness({ outid: this.id, type: 3 }).then((res) => { 
 | 
          this.illnesslist = res.rows; 
 | 
          this.illnesslist.forEach((item) => { 
 | 
            item.icdname = item.icd10name; 
 | 
          }); 
 | 
        }); 
 | 
      } else { 
 | 
        this.ruleForm = { 
 | 
          templateName: "", 
 | 
          ivrLibaTemplateTagList: [], 
 | 
          ivrLibaTemplateScriptVOList: [], 
 | 
          tempDetpRelevances: [], 
 | 
        }; 
 | 
        this.deptOptions = []; 
 | 
        this.optionsillness = []; 
 | 
        this.illnesslistapi = []; 
 | 
        this.illnesslist = []; 
 | 
        this.dynamicTags = []; 
 | 
        this.tempDetpRelevanceslist = []; 
 | 
      } 
 | 
    }, 
 | 
    // 附属数据表 
 | 
    auxiliary() { 
 | 
      // 分类 
 | 
      getFollowupclassify({}).then((res) => { 
 | 
        this.indexAssortlist = res.rows; 
 | 
      }); 
 | 
      this.tempDetpRelevanceslist = []; 
 | 
      this.tempbelongWards = []; 
 | 
  
 | 
      if (this.id) { 
 | 
        depthospgetsonlist(this.queryParamsdept).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            let arr = res.rows; 
 | 
            console.log(arr, "arr"); 
 | 
  
 | 
            arr.forEach((item) => { 
 | 
              if (item.deptType == 1) { 
 | 
                console.log(this.deptlist, "11"); 
 | 
                this.deptlist.push(item); 
 | 
                console.log("22"); 
 | 
                this.tempDetpRelevanceslist.push(item.deptCode); 
 | 
              } else if (item.deptType == 2) { 
 | 
                this.hosplist.push(item); 
 | 
                this.tempbelongWards.push(item.deptCode); 
 | 
                console.log("33"); 
 | 
              } 
 | 
            }); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
  
 | 
      // 疾病 
 | 
      getillnesslist({ 
 | 
        pageNum: 1, 
 | 
        pageSize: 100, 
 | 
      }).then((response) => { 
 | 
        this.optionsillness = response.rows; 
 | 
      }); 
 | 
      getgenerallist({ 
 | 
        pageNum: 1, 
 | 
        pageSize: 100, 
 | 
      }).then((res) => { 
 | 
        this.generallist = res.rows; 
 | 
      }); 
 | 
      // 疾病列 
 | 
    }, 
 | 
    // 选项配置跳转触发 
 | 
    branchFlagfn(row) { 
 | 
      if (this.topicobj.branchFlag == 1 && this.topicobj.nextScriptno != 0) { 
 | 
        this.topicobj.nextScriptno = 
 | 
          this.topicobj.ivrLibaScriptTargetoptionList[0].nextQuestion; 
 | 
      } 
 | 
    }, 
 | 
    //保存 
 | 
    submitForm(formName) { 
 | 
      if (this.ruleForm.id) { 
 | 
        this.ruleForm.isoperation = 2; 
 | 
      } else { 
 | 
        this.ruleForm.isoperation = 1; 
 | 
      } 
 | 
      if (!this.ruleForm.assortid) { 
 | 
        this.ruleForm.assortid = -1; 
 | 
      } 
 | 
      // this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags); 
 | 
      if (Array.isArray(this.ruleForm.suitway)) 
 | 
        this.ruleForm.suitway = this.ruleForm.suitway.join(","); 
 | 
      if (Array.isArray(this.ruleForm.campus)) 
 | 
        this.ruleForm.campus = this.ruleForm.campus.join(","); 
 | 
      if (Array.isArray(this.ruleForm.submoduleID)) 
 | 
        this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(","); 
 | 
  
 | 
      //   提交 
 | 
      this.ruleForm.ivrLibaTemplateScriptVOList.forEach((res) => { 
 | 
        if (!res.isoperation) { 
 | 
          res.isoperation = 2; 
 | 
        } 
 | 
        res.ivrLibaScriptTargetoptionList = 
 | 
          res.ivrLibaScriptTargetoptionList.map((item) => { 
 | 
            if (!item.isoperation) { 
 | 
              item.isoperation = 2; 
 | 
              item.templateID = this.ruleForm.id; 
 | 
            } 
 | 
            return item; 
 | 
          }); 
 | 
      }); 
 | 
      this.delScriptVOList.forEach((item) => { 
 | 
        this.ruleForm.ivrLibaTemplateScriptVOList.push(item); 
 | 
      }); 
 | 
      // compileFollowup(this.ruleForm).then((res) => { 
 | 
      //   if (res.code == 200) { 
 | 
      //     this.$modal.msgSuccess("编辑成功"); 
 | 
      //     this.$modal.closeLoading(); 
 | 
      //     this.confirmillness(res.data); 
 | 
      //     // window.location.reload(); 
 | 
      //     // const obj = { path: "/knowledge/tpuconfigurat/?id=" + this.id }; 
 | 
      //     // this.$tab.closeOpenPage(obj); 
 | 
      //   } else { 
 | 
      //     this.$modal.msgError("保存失败"); 
 | 
      //     this.$modal.closeLoading(); 
 | 
      //   } 
 | 
      // }); 
 | 
      if (this.id) { 
 | 
        this.ruleForm.isoperation = 2; 
 | 
        this.ruleForm.tempDetpRelevances = []; 
 | 
        compileFollowup(this.ruleForm).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            this.$modal.msgSuccess("修改成功"); 
 | 
            this.confirmillness(); 
 | 
            this.putbelongDepts(this.id); 
 | 
            // this.$modal.closeLoading(); 
 | 
            // this.$router.go(-1); 
 | 
            window.location.reload(); 
 | 
          } else { 
 | 
            this.$modal.closeLoading(); 
 | 
          } 
 | 
        }); 
 | 
      } else { 
 | 
        this.ruleForm.isoperation = 1; 
 | 
        this.ruleForm.version = this.ruleForm.version 
 | 
          ? this.ruleForm.version 
 | 
          : "1.0"; 
 | 
        this.ruleForm.tempDetpRelevances = []; 
 | 
        compileFollowup(this.ruleForm).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            this.$modal.msgSuccess("新增成功"); 
 | 
            this.confirmillness(res.data); 
 | 
            this.putbelongDepts(res.data); 
 | 
            this.$modal.closeLoading(); 
 | 
            this.$router.go(-1); 
 | 
          } else { 
 | 
            this.$modal.closeLoading(); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
    }, 
 | 
    confirmillness(guid) { 
 | 
      this.illnesslist.forEach((item, index) => { 
 | 
        if (guid) { 
 | 
          item.outid = guid; 
 | 
        } else { 
 | 
          console.log(this.ruleForm); 
 | 
          item.outid = this.ruleForm.id; 
 | 
        } 
 | 
        item.icd10name = item.icdname; 
 | 
        item.icd10code = item.icdcode; 
 | 
        item.type = 3; 
 | 
        if (!item.id) { 
 | 
          addtargetillness(item).then((res) => {}); 
 | 
        } 
 | 
      }); 
 | 
      this.illnessVisible = false; 
 | 
      this.$modal.msgSuccess("编辑成功"); 
 | 
    }, 
 | 
    // 科室处理 
 | 
    Departmenttreatment() { 
 | 
      this.$modal.loading("正在修正保存数据,请稍候..."); 
 | 
      this.tempDetpRelevanceslist.forEach((item) => { 
 | 
        let result = this.deptlist.some((obj) => obj.deptCode == item); 
 | 
  
 | 
        if (!result) { 
 | 
          this.tempDetpRelevanceslistform.push({ 
 | 
            deptType: 1, 
 | 
            longTemp: this.ruleForm.longTemp, 
 | 
            deptCode: item, 
 | 
            tempid: this.id, 
 | 
            type: 2, 
 | 
          }); 
 | 
        } 
 | 
      }); 
 | 
      this.tempbelongWards.forEach((item) => { 
 | 
        let result = this.hosplist.some((obj) => obj.deptCode == item); 
 | 
        if (!result) { 
 | 
          this.tempbelongWardsform.push({ 
 | 
            deptType: 2, 
 | 
            longTemp: this.ruleForm.longTemp, 
 | 
            deptCode: item, 
 | 
            tempid: this.id, 
 | 
            type: 2, 
 | 
            // 1 : 问卷模板库id、11:问卷任务模板库id;2 :语音问卷库id、21:语音任务模板库id,3 : 宣教模板库id,33:宣教任务模板库id 
 | 
          }); 
 | 
        } 
 | 
      }); 
 | 
      setTimeout(() => { 
 | 
        this.submitForm(); 
 | 
      }, 1000); 
 | 
      // this.submitForm(); 
 | 
    }, 
 | 
    // 保存科室/病区 
 | 
    putbelongDepts(id) { 
 | 
      this.tempDetpRelevanceslistform.forEach((item) => { 
 | 
        if (!item.tempid) item.tempid = id; 
 | 
      }); 
 | 
  
 | 
      this.tempbelongWardsform.forEach((item) => { 
 | 
        if (!item.tempid) item.tempid = id; 
 | 
      }); 
 | 
      if (this.tempDetpRelevanceslistform.length > 0) { 
 | 
        depthospgetson(this.tempDetpRelevanceslistform).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            this.$modal.msgSuccess("科室新增成功"); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
      if (this.tempbelongWardsform.length > 0) { 
 | 
        depthospgetson(this.tempbelongWardsform).then((res) => { 
 | 
          if (res.code == 200) { 
 | 
            this.$modal.msgSuccess("院区新增成功"); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
    }, 
 | 
    // 下一步 
 | 
    nextstep() { 
 | 
      if (this.Editprogress <= 2) { 
 | 
        return this.Editprogress++; 
 | 
      } 
 | 
    }, 
 | 
    // 上一步 
 | 
    laststep() { 
 | 
      this.Editprogress = this.Editprogress - 1; 
 | 
    }, 
 | 
    // 关闭 
 | 
    closeFm() { 
 | 
      this.$confirm("退出不会保留页面内容更改, 是否继续?", "提示", { 
 | 
        confirmButtonText: "确定", 
 | 
        cancelButtonText: "取消", 
 | 
        type: "warning", 
 | 
      }) 
 | 
        .then(() => { 
 | 
          const obj = { path: "/knowledge/templateku/" }; 
 | 
          this.$tab.closeOpenPage(obj); 
 | 
        }) 
 | 
        .catch(() => { 
 | 
          this.$message({ 
 | 
            type: "info", 
 | 
            message: "已取消", 
 | 
          }); 
 | 
        }); 
 | 
    }, 
 | 
    //控制语音文件(新) 
 | 
    handleChange(response, file, additionalParam) { 
 | 
      console.log(response); 
 | 
      console.log(additionalParam); 
 | 
      if (additionalParam == 1) { 
 | 
        this.indexform.ivrVoice = response.url; 
 | 
      } else if (additionalParam == 2) { 
 | 
        this.indexform.nomatchvoice = response.url; 
 | 
      } else if (additionalParam == 3) { 
 | 
        this.indexform.sliencevoice = response.url; 
 | 
      } else if (additionalParam == 4) { 
 | 
        this.indexform.noclearlyvoice = response.url; 
 | 
      } 
 | 
      this.$forceUpdate(); 
 | 
    }, 
 | 
    //控制语音文件 
 | 
    handleChanges(response, file, additionalParam) { 
 | 
      console.log(response); 
 | 
      console.log(additionalParam); 
 | 
      if (additionalParam == 1) { 
 | 
        this.topicobj.ivrVoice = response.url; 
 | 
      } else if (additionalParam == 2) { 
 | 
        this.topicobj.nomatchvoice = response.url; 
 | 
      } else if (additionalParam == 3) { 
 | 
        this.topicobj.sliencevoice = response.url; 
 | 
      } else if (additionalParam == 4) { 
 | 
        this.topicobj.noclearlyvoice = response.url; 
 | 
      } 
 | 
      this.$forceUpdate(); 
 | 
    }, 
 | 
    // 文件超出个数限制时的钩子 
 | 
    handleExceed(files, fileList) { 
 | 
      this.$message.warning( 
 | 
        `当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${ 
 | 
          files.length + fileList.length 
 | 
        } 个文件` 
 | 
      ); 
 | 
    }, 
 | 
    // 标签----------------- 
 | 
    gettabList() { 
 | 
      const tagqueryParams = { 
 | 
        pageNum: 1, 
 | 
        pageSize: 1000, 
 | 
        tagcategoryid: "0", 
 | 
      }; 
 | 
      listtag(tagqueryParams).then((response) => { 
 | 
        this.optionstag = response.rows; 
 | 
      }); 
 | 
    }, 
 | 
    handleClosetag(tag) { 
 | 
      const lindex = this.dynamicTags.indexOf(tag); 
 | 
      this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1); 
 | 
      this.ruleForm.ivrLibaTemplateTagList[lindex].isoperation = 3; 
 | 
    }, 
 | 
    handleInputConfirm() { 
 | 
      let tagvalue = {}; 
 | 
      let tagname = this.inputValue; 
 | 
      if (tagname) { 
 | 
        listtag({ 
 | 
          pageNum: 1, 
 | 
          pageSize: 1000, 
 | 
          tagcategoryid: "0", 
 | 
          tagname: tagname, 
 | 
        }).then((res) => { 
 | 
          if (res.rows[0]) { 
 | 
            tagvalue = res.rows[0]; 
 | 
            tagvalue.isoperation = 1; 
 | 
          } else { 
 | 
            tagvalue = { 
 | 
              tagname: tagname, 
 | 
              isoperation: 1, 
 | 
            }; 
 | 
          } 
 | 
          const exists = this.dynamicTags.some( 
 | 
            (department) => department.tagname === tagname 
 | 
          ); 
 | 
          if (exists) { 
 | 
            this.$modal.msgError("标签重复"); 
 | 
            return; 
 | 
          } 
 | 
          this.ruleForm.ivrLibaTemplateTagList.push(tagvalue); 
 | 
          this.dynamicTags.push(tagvalue); 
 | 
        }); 
 | 
      } 
 | 
      this.inputVisible = false; 
 | 
      this.inputValue = ""; 
 | 
    }, 
 | 
    remoteMethodtag(query) { 
 | 
      if (query !== "") { 
 | 
        this.loading = true; 
 | 
        setTimeout(() => { 
 | 
          this.loading = false; 
 | 
          listtag({ tagname: query, tagcategoryid: "0" }).then((res) => { 
 | 
            this.optionstag = res.rows; 
 | 
          }); 
 | 
        }, 200); 
 | 
      } else { 
 | 
        this.optionstag = []; 
 | 
      } 
 | 
    }, 
 | 
    showInput() { 
 | 
      this.inputVisible = true; 
 | 
    }, 
 | 
    //话术题目---------------- 
 | 
    addzbiao() {}, 
 | 
    resetQuery() { 
 | 
      this.queryParams = { pageNum: 1, pageSize: 10 }; 
 | 
      this.getaddtopiclist(); 
 | 
    }, 
 | 
    getaddtopiclist() { 
 | 
      this.drawer = true; 
 | 
      getverbaltricklist(this.queryParams).then((res) => { 
 | 
        this.loading = false; 
 | 
        this.userList = res.rows; 
 | 
        this.total = res.total; 
 | 
        console.log(this.userList); 
 | 
      }); 
 | 
    }, 
 | 
    addtopic(row) { 
 | 
      if ( 
 | 
        this.ruleForm.ivrLibaTemplateScriptVOList.some( 
 | 
          (obj) => obj.scriptTopic == row.scriptTopic 
 | 
        ) 
 | 
      ) { 
 | 
        this.$modal.msgError("该题目已存在"); 
 | 
        return; 
 | 
      } 
 | 
      getverbaltrick({ id: row.id }).then((res) => { 
 | 
        console.log(res, "详情"); 
 | 
        res.data.isoperation = 1; 
 | 
        res.data.pid = this.ruleForm.id; 
 | 
        res.data.ivrLibaScriptTargetoptionList.forEach((item) => { 
 | 
          item.isoperation = 1; 
 | 
        }); 
 | 
        this.ruleForm.ivrLibaTemplateScriptVOList.push(res.data); 
 | 
        this.sortFn(); 
 | 
        this.$modal.msgSuccess("添加成功"); 
 | 
      }); 
 | 
    }, 
 | 
    handleDelete(row) { 
 | 
      this.$modal 
 | 
        .confirm('是否确认删除问题:"' + row.scriptTopic + '?') 
 | 
        .then(() => { 
 | 
          this.ruleForm.ivrLibaTemplateScriptVOList.splice( 
 | 
            this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row), 
 | 
            1 
 | 
          ); 
 | 
          row.isoperation = 3; 
 | 
          if (row.id) { 
 | 
            this.delScriptVOList.push(row); 
 | 
          } 
 | 
          this.sortFn(); 
 | 
          this.$modal.msgSuccess("已删除,保存模板生效"); 
 | 
        }) 
 | 
        .catch(() => {}); 
 | 
    }, 
 | 
    handleUpdate(row) { 
 | 
      console.log(row); 
 | 
      this.optionIndex = this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row); 
 | 
      if (row.ivrLibaScriptTargetoptionList.length) { 
 | 
        console.log(11); 
 | 
        this.topicobj = row; 
 | 
        this.topicobj.valueType = row.valueType; 
 | 
      } else { 
 | 
        getverbaltrick({ id: row.id }).then((res) => { 
 | 
          if (res.data) { 
 | 
            this.topicobj = res.data; 
 | 
            console.log(res.data, "topicobj"); 
 | 
          } else { 
 | 
            this.topicobj = row; 
 | 
            console.log("没找到选项,请查看问题库是否正确配置"); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
    }, 
 | 
    syioption(row) { 
 | 
      const index = this.getIndexInArray( 
 | 
        this.ruleForm.ivrLibaTemplateScriptVOList, 
 | 
        row 
 | 
      ); 
 | 
      const item = this.ruleForm.ivrLibaTemplateScriptVOList.splice( 
 | 
        index, 
 | 
        1 
 | 
      )[0]; // 移除指定索引处的元素,并保存到item变量中 
 | 
      this.ruleForm.ivrLibaTemplateScriptVOList.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 
 | 
      this.sortFn(); 
 | 
    }, 
 | 
    xiayioption(row) { 
 | 
      const index = this.getIndexInArray( 
 | 
        this.ruleForm.ivrLibaTemplateScriptVOList, 
 | 
        row 
 | 
      ); 
 | 
      const item = this.ruleForm.ivrLibaTemplateScriptVOList.splice( 
 | 
        index, 
 | 
        1 
 | 
      )[0]; // 移除指定索引处的元素,并保存到item变量中 
 | 
      this.ruleForm.ivrLibaTemplateScriptVOList.splice(index + 1, 0, item); // 将item插入到索引位置的前一位 
 | 
      this.sortFn(); 
 | 
    }, 
 | 
    // 问题排序 
 | 
    sortFn() { 
 | 
      console.log(this.ruleForm.ivrLibaTemplateScriptVOList); 
 | 
  
 | 
      this.ruleForm.ivrLibaTemplateScriptVOList.forEach((item, index) => { 
 | 
        item.sort = Number(index) + 1; 
 | 
        console.log(this.ruleForm.ivrLibaTemplateScriptVOList.length); 
 | 
        console.log(item.sort); 
 | 
  
 | 
        if (item.sort == this.ruleForm.ivrLibaTemplateScriptVOList.length) { 
 | 
          item.nextScriptno = 0; 
 | 
        } else { 
 | 
          item.nextScriptno = item.sort + 1; 
 | 
        } 
 | 
        if (item.ivrLibaScriptTargetoptionList&&!item.branchFlag) { 
 | 
          item.ivrLibaScriptTargetoptionList.forEach((items) => { 
 | 
            items.nextQuestion = Number(item.sort) + 1; 
 | 
          }); 
 | 
        } 
 | 
      }); 
 | 
      this.$forceUpdate(); 
 | 
  
 | 
      console.log(this.ruleForm.ivrLibaTemplateScriptVOList); 
 | 
    }, 
 | 
    // -----------------------话术选项 
 | 
    deloption(item) { 
 | 
      const index = this.topicobj.ivrLibaScriptTargetoptionList.indexOf(item); 
 | 
      if (index != -1) { 
 | 
        if (item.id) { 
 | 
          console.log(item, "chunz"); 
 | 
          item.isoperation = 3; 
 | 
          console.log(this.topicobj.ivrLibaScriptTargetoptionList); 
 | 
          this.$forceUpdate(); 
 | 
        } else { 
 | 
          this.topicobj.ivrLibaScriptTargetoptionList.splice(index, 1); // 从索引位置删除一个元素 
 | 
        } 
 | 
        // this.sortFn(); 
 | 
      } else { 
 | 
        console.log("未找到该对象"); 
 | 
      } 
 | 
    }, 
 | 
    // 修改题目信息 
 | 
    Submittopicobj() { 
 | 
      this.$modal 
 | 
        .confirm( 
 | 
          '是否确认新增名称为"' + this.indexform.scriptTopic + '"的问题数据?' 
 | 
        ) 
 | 
        .then(() => { 
 | 
          this.indexform.isoperation = 1; 
 | 
          this.indexform.pid = this.ruleForm.id; 
 | 
          this.indexform.ivrLibaScriptTargetoptionList.forEach((item) => { 
 | 
            item.isoperation = 1; 
 | 
          }); 
 | 
          this.ruleForm.ivrLibaTemplateScriptVOList.push(this.indexform); 
 | 
          this.indexform = { 
 | 
            ivrLibaScriptTargetoptionList: [], 
 | 
          }; 
 | 
          this.drawer = false; 
 | 
  
 | 
          this.sortFn(); 
 | 
          this.$modal.msgSuccess("题目新增成功,保存模板生效"); 
 | 
        }); 
 | 
    }, 
 | 
  
 | 
    // --------------------- 
 | 
    resetForm(formName) { 
 | 
      this.$refs[formName].resetFields(); 
 | 
    }, 
 | 
    // 科室删除触发 
 | 
    removetag(row) { 
 | 
      let result = this.deptlist 
 | 
        .filter((item) => item.deptCode == row) 
 | 
        .map((item) => item.id); 
 | 
      console.log(result.length); 
 | 
      if (result.length) { 
 | 
        depthospgetsondel(result).then((res) => { 
 | 
          if (res.code) { 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
    }, 
 | 
    // 删除删除触发 
 | 
    removehpsp(row) { 
 | 
      let result = this.hosplist 
 | 
        .filter((item) => item.deptCode == row) 
 | 
        .map((item) => item.id); 
 | 
      if (result.length) { 
 | 
        depthospgetsondel(result).then((res) => { 
 | 
          if (res.code) { 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
    }, 
 | 
    // 预览--------------- 
 | 
    preview() { 
 | 
      console.log(this.ruleForm); 
 | 
      this.valssu = this.ruleForm.ivrLibaTemplateScriptVOList; 
 | 
      this.Editprogress = 3; 
 | 
    }, 
 | 
    // 前往测试 
 | 
    measurement() { 
 | 
      this.$modal 
 | 
        .confirm("即将前往模板测试页面,请确认模板数据已保存。") 
 | 
        .then((res) => { 
 | 
          this.$router.push({ 
 | 
            path: "/knowledge/templateku/configurat/measurement", 
 | 
            query: { 
 | 
              id: this.id, 
 | 
              name: this.ruleForm.templateName, 
 | 
              timeout: this.ruleForm.silencetime, 
 | 
            }, 
 | 
          }); 
 | 
        }) 
 | 
        .catch(() => {}); 
 | 
    }, 
 | 
    // 新建模板中临时题目 
 | 
    // 题目类型更换 
 | 
    typeselection(row) { 
 | 
      if (row == 1 && !this.indexform.ivrLibaScriptTargetoptionList.length) { 
 | 
        this.indexform.ivrLibaScriptTargetoptionList.push({ 
 | 
          guid: 1, 
 | 
          isoperation: 1, 
 | 
          targetvalue: "", 
 | 
          targetregex: "", 
 | 
          targetregex2: "", 
 | 
          dynamiccruxs: [], 
 | 
          nodynamiccruxs: [], 
 | 
          dynamiccruxsJson: "", 
 | 
          nodynamiccruxsJson: "", 
 | 
        }); 
 | 
      } 
 | 
      this.$forceUpdate(); 
 | 
    }, 
 | 
    addoptionson() { 
 | 
      this.indexform.ivrLibaScriptTargetoptionList.push({ 
 | 
        guid: 1, 
 | 
        isoperation: 1, 
 | 
        targetvalue: "", 
 | 
        targetregex: "", 
 | 
        targetregex2: "", 
 | 
        dynamiccruxs: [], 
 | 
        nodynamiccruxs: [], 
 | 
        dynamiccruxsJson: "", 
 | 
        nodynamiccruxsJson: "", 
 | 
      }); 
 | 
    }, 
 | 
  }, 
 | 
}; 
 | 
</script> 
 | 
  
 | 
<style lang="scss" scoped> 
 | 
.Questionnairemanagement { 
 | 
  // display: flex; 
 | 
} 
 | 
.sidecolumn { 
 | 
  margin: 20px; 
 | 
  margin-bottom: 0; 
 | 
  padding: 30px; 
 | 
  background: #edf1f7; 
 | 
  border: 1px solid #dcdfe6; 
 | 
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 
 | 
    0 0 6px 0 rgba(0, 0, 0, 0.04); 
 | 
} 
 | 
.leftvlue { 
 | 
  //   display: flex; 
 | 
  //   flex: 1; 
 | 
  // width: 80%; 
 | 
  margin: 20px; 
 | 
  padding: 30px; 
 | 
  background: #ffff; 
 | 
  border: 1px solid #dcdfe6; 
 | 
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 
 | 
    0 0 6px 0 rgba(0, 0, 0, 0.04); 
 | 
  .mulsz { 
 | 
    font-size: 20px; 
 | 
  } 
 | 
  .leftvlue-jbxx { 
 | 
    font-size: 24px; 
 | 
    border-left: 5px solid #41a1be; 
 | 
    padding-left: 5px; 
 | 
    margin: 15px 0; 
 | 
  } 
 | 
  .demo-cascader { 
 | 
    margin-right: 20px; 
 | 
  } 
 | 
  .PreviewTemplate { 
 | 
    color: #02a7f0; 
 | 
    cursor: pointer; 
 | 
    font-size: 20px; 
 | 
    margin: 0 20px; 
 | 
  } 
 | 
} 
 | 
.preview-left { 
 | 
  margin: 20px; 
 | 
  //   margin: 20px; 
 | 
  padding: 30px; 
 | 
  background: #ffff; 
 | 
  border: 1px solid #dcdfe6; 
 | 
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 
 | 
    0 0 6px 0 rgba(0, 0, 0, 0.04); 
 | 
  .scriptTopic-dev { 
 | 
    margin-bottom: 25px; 
 | 
    font-size: 20px !important; 
 | 
    .dev-text { 
 | 
      margin-bottom: 10px; 
 | 
    } 
 | 
  } 
 | 
  .headline { 
 | 
    display: flex; 
 | 
    justify-content: space-between; 
 | 
    font-size: 20px; 
 | 
    border-left: 3px solid #41a1be; 
 | 
    padding-left: 5px; 
 | 
    margin: 15px 0; 
 | 
  } 
 | 
  .topicxq { 
 | 
    background-color: #e2f5fc; 
 | 
    border-radius: 4px; 
 | 
    margin-top: 10px; 
 | 
    padding-left: 10px; 
 | 
    padding-top: 15px; 
 | 
  } 
 | 
} 
 | 
.xinz-inf { 
 | 
  font-size: 18px; 
 | 
  white-space: nowrap; 
 | 
  overflow: hidden; 
 | 
  text-overflow: ellipsis; 
 | 
  
 | 
  line-height: 48px; 
 | 
  
 | 
  .el-tag + .el-tag { 
 | 
    margin-left: 10px; 
 | 
  } 
 | 
  .button-new-tag { 
 | 
    margin-left: 10px; 
 | 
    height: 32px; 
 | 
    line-height: 30px; 
 | 
    padding-top: 0; 
 | 
    padding-bottom: 0; 
 | 
  } 
 | 
  .input-new-tag { 
 | 
    width: 90px; 
 | 
    margin-left: 10px; 
 | 
    vertical-align: bottom; 
 | 
  } 
 | 
} 
 | 
  
 | 
.xinz-infs { 
 | 
  font-size: 18px; 
 | 
  line-height: 48px; 
 | 
  
 | 
  .el-tag + .el-tag { 
 | 
    margin-left: 10px; 
 | 
  } 
 | 
} 
 | 
.addtopic { 
 | 
  margin-top: 30px; 
 | 
} 
 | 
.presentation { 
 | 
  margin: 20px 0; 
 | 
  display: flex; 
 | 
  .presentation-left { 
 | 
    width: 45%; 
 | 
    // height: 500px; 
 | 
    .button-textxg { 
 | 
      color: #024df0; 
 | 
    } 
 | 
    .button-textsc { 
 | 
      color: #f52727; 
 | 
    } 
 | 
  } 
 | 
  .spresentation-left { 
 | 
    width: 100%; 
 | 
    // height: 500px; 
 | 
    .button-textxg { 
 | 
      color: #024df0; 
 | 
    } 
 | 
    .button-textsc { 
 | 
      color: #f52727; 
 | 
    } 
 | 
  } 
 | 
  .presentation-right { 
 | 
    width: 55%; 
 | 
    max-height: 688px; 
 | 
    margin: 0 20px; 
 | 
    font-size: 18px; 
 | 
    -webkit-box-shadow: 0 2px 4px 0 rgba(32, 32, 32, 0.12), 
 | 
      0 0 6px 0 rgba(58, 57, 57, 0.04); 
 | 
    overflow: auto; 
 | 
    .headline { 
 | 
      display: flex; 
 | 
      justify-content: space-between; 
 | 
      font-size: 20px; 
 | 
      border-left: 3px solid #41a1be; 
 | 
      padding-left: 5px; 
 | 
      margin: 15px 0; 
 | 
    } 
 | 
    .topicxq { 
 | 
      background-color: #e2f5fc; 
 | 
      border-radius: 4px; 
 | 
      margin-top: 10px; 
 | 
      padding-left: 10px; 
 | 
      padding-top: 15px; 
 | 
    } 
 | 
  } 
 | 
} 
 | 
::v-deep .addtopic-input { 
 | 
  input { 
 | 
    background: #02a7f0; 
 | 
    color: #edf1f7; 
 | 
    width: 150px; 
 | 
  } 
 | 
} 
 | 
::v-deep.el-step.is-vertical .el-step__title { 
 | 
  font-size: 20px; 
 | 
} 
 | 
::v-deep.el-input--medium { 
 | 
  font-size: 18px !important; 
 | 
} 
 | 
::v-deep.ruleFormaa.el-select { 
 | 
  display: inline-block; 
 | 
  position: relative; 
 | 
  width: 700px; 
 | 
} 
 | 
.el-select__tags { 
 | 
  font-size: 20px; 
 | 
  max-width: 888px !important; 
 | 
} 
 | 
::v-deep.el-radio__inner { 
 | 
  width: 22px; 
 | 
  height: 22px; 
 | 
} 
 | 
// ::v-deep.topic-dev.el-radio__label { 
 | 
//   font-size: 24px; 
 | 
// } 
 | 
::v-deep.el-radio-group { 
 | 
  span { 
 | 
    font-size: 20px; 
 | 
  } 
 | 
} 
 | 
::v-deep.el-checkbox-group { 
 | 
  span { 
 | 
    font-size: 20px; 
 | 
  } 
 | 
} 
 | 
// ::v-deep.el-form-item--medium .el-form-item__content { 
 | 
//   line-height: 36px; 
 | 
//   display: flex; 
 | 
// } 
 | 
</style> 
 |