<template> 
 | 
  <div class="Questionnairemanagement"> 
 | 
    <!-- 上侧栏 --> 
 | 
    <div class="sidecolumn"> 
 | 
      <div> 
 | 
        <el-steps simple :active="Editprogress"> 
 | 
          <el-step 
 | 
            icon="el-icon-edit" 
 | 
            title="基础信息" 
 | 
            description="选择模板、形式等基础信息" 
 | 
          ></el-step> 
 | 
          <el-step 
 | 
            icon="el-icon-user" 
 | 
            title="任务主体" 
 | 
            description="在本部选择服务患者" 
 | 
          ></el-step> 
 | 
        </el-steps> 
 | 
      </div> 
 | 
    </div> 
 | 
    <!-- 下侧数据 --> 
 | 
    <div class="leftvlue" style="margin: 0 20px"> 
 | 
      <!-- 基本信息 --> 
 | 
      <div v-if="Editprogress == 1"> 
 | 
        <el-alert title="选择模板、形式等基础信息" type="success" effect="dark"> 
 | 
        </el-alert> 
 | 
        <div class="leftvlue-jbxx"> 
 | 
          <!-- 基础信息 --> 
 | 
          <div class="examine-jic"> 
 | 
            <div class="headline"> 
 | 
              <div>基础信息</div> 
 | 
            </div> 
 | 
            <div class="jic-value"> 
 | 
              <el-form ref="form" :model="form" label-width="105px"> 
 | 
                <el-row :gutter="20"> 
 | 
                  <el-col :span="12" 
 | 
                    ><el-form-item label="任务名称"> 
 | 
                      <el-input 
 | 
                        style="width: 220px" 
 | 
                        v-model="form.taskName" 
 | 
                        placeholder="请输入任务名称" 
 | 
                      /> </el-form-item 
 | 
                  ></el-col> 
 | 
                  <el-col :span="8" 
 | 
                    ><el-form-item label="模板名称"> 
 | 
                      <el-input 
 | 
                        style="width: 220px" 
 | 
                        :disabled="true" 
 | 
                        v-model="form.templatename" 
 | 
                        placeholder="点击右侧选择" 
 | 
                      /> </el-form-item 
 | 
                  ></el-col> 
 | 
                  <el-col :span="4"> 
 | 
                    <el-button 
 | 
                      type="primary" 
 | 
                      icon="el-icon-edit" 
 | 
                      @click="drawermb = true" 
 | 
                      circle 
 | 
                    ></el-button> 
 | 
                  </el-col> 
 | 
                </el-row> 
 | 
  
 | 
                <el-form-item label="任务描述"> 
 | 
                  <el-input 
 | 
                    type="textarea" 
 | 
                    v-model="form.taskDesc" 
 | 
                    placeholder="请输入任务描述" 
 | 
                  /> 
 | 
                </el-form-item> 
 | 
                <el-form-item label="发送设置:"> 
 | 
                  <el-radio-group v-model="form.sendType"> 
 | 
                    <el-radio :label="1">时间段发送</el-radio> 
 | 
                    <el-radio :label="3">时间点发送</el-radio> 
 | 
                    <el-radio :label="2">即刻发送</el-radio> 
 | 
                  </el-radio-group> 
 | 
                </el-form-item> 
 | 
                <el-form-item label="发送日期:" v-if="form.sendType == 1"> 
 | 
                  <el-date-picker 
 | 
                    v-model="daytime" 
 | 
                    @change="changeTimeday" 
 | 
                    type="daterange" 
 | 
                    range-separator="至" 
 | 
                    start-placeholder="开始日期" 
 | 
                    end-placeholder="结束日期" 
 | 
                    value-format="yyyy-MM-dd" 
 | 
                  > 
 | 
                  </el-date-picker> 
 | 
                </el-form-item> 
 | 
  
 | 
                <el-form-item label="发送时间点:" v-if="form.sendType == 3"> 
 | 
                  <div style="display: flex"> 
 | 
                    <div style="margin-right: 10px"> 
 | 
                      <el-date-picker 
 | 
                        v-model="time4" 
 | 
                        value-format="yyyy-MM-dd HH:mm:ss" 
 | 
                        @change="Totaldate" 
 | 
                        type="datetime" 
 | 
                        placeholder="选择日期时间" 
 | 
                      > 
 | 
                      </el-date-picker> 
 | 
                    </div> 
 | 
                  </div> 
 | 
                </el-form-item> 
 | 
  
 | 
                <el-form-item label="发送时间段:" v-if="form.sendType == 1"> 
 | 
                  <div style="display: flex"> 
 | 
                    <div style="margin-right: 10px"> 
 | 
                      <span style="font-size: 18px; margin-right: 10px" 
 | 
                        >时间段一</span 
 | 
                      > 
 | 
                      <el-time-picker 
 | 
                        is-range 
 | 
                        arrow-control 
 | 
                        @change="changeTime" 
 | 
                        v-model="time1" 
 | 
                        range-separator="至" 
 | 
                        start-placeholder="开始时间" 
 | 
                        end-placeholder="结束时间" 
 | 
                        placeholder="选择时间范围" 
 | 
                        value-format="HH:mm:ss" 
 | 
                      > 
 | 
                      </el-time-picker> 
 | 
                    </div> 
 | 
                    <div style="margin-right: 10px"> 
 | 
                      <span style="font-size: 18px; margin-right: 10px" 
 | 
                        >时间段二</span 
 | 
                      > 
 | 
                      <el-time-picker 
 | 
                        is-range 
 | 
                        arrow-control 
 | 
                        @change="changeTime" 
 | 
                        v-model="time2" 
 | 
                        range-separator="至" 
 | 
                        start-placeholder="开始时间" 
 | 
                        end-placeholder="结束时间" 
 | 
                        placeholder="选择时间范围" 
 | 
                        value-format="HH:mm:ss" 
 | 
                      > 
 | 
                      </el-time-picker> 
 | 
                    </div> 
 | 
                    <div style="margin-right: 10px"> 
 | 
                      <span style="font-size: 18px; margin-right: 10px" 
 | 
                        >时间段三</span 
 | 
                      > 
 | 
                      <el-time-picker 
 | 
                        is-range 
 | 
                        arrow-control 
 | 
                        @change="changeTime" 
 | 
                        v-model="time3" 
 | 
                        range-separator="至" 
 | 
                        start-placeholder="开始时间" 
 | 
                        end-placeholder="结束时间" 
 | 
                        placeholder="选择时间范围" 
 | 
                        value-format="HH:mm:ss" 
 | 
                      > 
 | 
                      </el-time-picker> 
 | 
                    </div> 
 | 
                  </div> 
 | 
                </el-form-item> 
 | 
                <el-form-item label="服务形式"> 
 | 
                  <el-checkbox-group v-model="checkList"> 
 | 
                    <el-checkbox 
 | 
                      v-for="(item, index) in checkboxlist" 
 | 
                      :key="index" 
 | 
                      :label="item.value" 
 | 
                    > 
 | 
                      {{ item.label }}</el-checkbox 
 | 
                    > 
 | 
                  </el-checkbox-group> 
 | 
                </el-form-item> 
 | 
              </el-form> 
 | 
            </div> 
 | 
          </div> 
 | 
          <div class="examine-jic"> 
 | 
            <div class="headline"> 
 | 
              <div>变量匹配量参</div> 
 | 
            </div> 
 | 
            <div class="examine-jic"> 
 | 
              <div class="jic-value"> 
 | 
                <el-row :gutter="20"> 
 | 
                  <el-table :data="variableList" style="width: 100%"> 
 | 
                    <el-table-column 
 | 
                      prop="name" 
 | 
                      align="center" 
 | 
                      label="变量名称" 
 | 
                    > 
 | 
                    </el-table-column> 
 | 
                    <el-table-column prop="value" align="center" label="匹配符"> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column label="替换值" align="center"> 
 | 
                      <template slot-scope="scope"> 
 | 
                        <el-input 
 | 
                          :disabled="scope.row.default" 
 | 
                          v-model="scope.row.fill" 
 | 
                          placeholder="请输入内容" 
 | 
                        ></el-input> 
 | 
                      </template> 
 | 
                    </el-table-column> 
 | 
                    <el-table-column label="操作" align="center"> 
 | 
                      <template slot-scope="scope"> 
 | 
                        <!-- <el-button 
 | 
                          size="mini" 
 | 
                          @click="variableEdit(scope.$index, scope.row)" 
 | 
                          >编辑</el-button 
 | 
                        > --> 
 | 
                        <el-button 
 | 
                          size="mini" 
 | 
                          type="danger" 
 | 
                          @click="variableDelete(scope.$index, scope.row)" 
 | 
                          >删除</el-button 
 | 
                        > 
 | 
                      </template> 
 | 
                    </el-table-column> 
 | 
                  </el-table> 
 | 
                </el-row> 
 | 
              </div> 
 | 
            </div> 
 | 
          </div> 
 | 
        </div> 
 | 
        <el-button type="success" @click="nextstep('ruleForm')">{{ 
 | 
          quote ? "立即创建" : "任务详情配置" 
 | 
        }}</el-button> 
 | 
        <el-button @click="resetForm('ruleForm')">重置</el-button> 
 | 
      </div> 
 | 
  
 | 
      <!-- 任务详情 --> 
 | 
      <div v-if="Editprogress == 2"> 
 | 
        <el-alert title="在本阶段选择随访病人" type="success" effect="dark"> 
 | 
        </el-alert> 
 | 
        <div class="leftvlue-jbxx"> 
 | 
          <div class="examine-jic"> 
 | 
            <div class="headline"> 
 | 
              <div>患者列表</div> 
 | 
            </div> 
 | 
            <div class="examine-jic"> 
 | 
              <div class="jic-value"> 
 | 
                <el-row :gutter="20"> 
 | 
                  <!--用户数据--> 
 | 
  
 | 
                  <el-row :gutter="10" class="mb8"> 
 | 
                    <el-col :span="1.5"> 
 | 
                      <el-select 
 | 
                        v-model="patientqueryParams.allhosp" 
 | 
                        placeholder="请选择新增类型" 
 | 
                      > 
 | 
                        <el-option 
 | 
                          v-for="item in taskoptions" 
 | 
                          :key="item.value" 
 | 
                          :label="item.label" 
 | 
                          :value="item.value" 
 | 
                        > 
 | 
                        </el-option> 
 | 
                      </el-select> 
 | 
                    </el-col> 
 | 
                    <el-col :span="1.5"> 
 | 
                      <el-button 
 | 
                        type="primary" 
 | 
                        plain 
 | 
                        icon="el-icon-plus" 
 | 
                        size="medium" 
 | 
                        :disabled="!patientqueryParams.allhosp" 
 | 
                        @click="handleAddpatient" 
 | 
                        >新增</el-button 
 | 
                      > 
 | 
                    </el-col> 
 | 
  
 | 
                    <el-col :span="1.5"> 
 | 
                      <el-button 
 | 
                        type="danger" 
 | 
                        plain 
 | 
                        icon="el-icon-delete" 
 | 
                        size="medium" 
 | 
                        :disabled="multiple" 
 | 
                        @click="handleDelete" 
 | 
                        >删除</el-button 
 | 
                      > 
 | 
                    </el-col> 
 | 
  
 | 
                    <!-- <el-col :span="1.5"> </el-col> --> 
 | 
                  </el-row> 
 | 
                  <!-- 选中患者列表 --> 
 | 
                  <SFtable 
 | 
                    @details="detailhz" 
 | 
                    @handleUpdate="handleUpdate" 
 | 
                    :currentList="overallCase" 
 | 
                    :tableLabel="tableLabelhz" 
 | 
                    :serialnumber="false" 
 | 
                    :searchTrue="true" 
 | 
                    :multiplechoice="false" 
 | 
                    :controlxz="false" 
 | 
                    :typeinfo="2" 
 | 
                  /> 
 | 
                  <pagination 
 | 
                    v-show="total > 0" 
 | 
                    :total="total" 
 | 
                    :page.sync="topqueryParams.pageNum" 
 | 
                    :limit.sync="topqueryParams.pageSize" 
 | 
                    @pagination="getList" 
 | 
                  /> 
 | 
                </el-row> 
 | 
              </div> 
 | 
            </div> 
 | 
          </div> 
 | 
        </div> 
 | 
        <el-button type="primary" @click="laststep()">上一步</el-button> 
 | 
        <el-button type="success" @click="submitForm('ruleForm')">{{ 
 | 
          quote ? "立即创建" : "确认任务配置" 
 | 
        }}</el-button> 
 | 
        <el-button @click="resetForm('ruleForm')">重置</el-button> 
 | 
      </div> 
 | 
    </div> 
 | 
    <!-- 添加患者 --> 
 | 
    <el-dialog 
 | 
      title="选择患者" 
 | 
      :visible.sync="dialogVisiblepatient" 
 | 
      width="70%" 
 | 
      :before-close="handleClosehz" 
 | 
      :close-on-click-modal="false" 
 | 
    > 
 | 
      <div class="examine-jic"> 
 | 
        <div class="jic-value"> 
 | 
          <el-row :gutter="20"> 
 | 
            <!--用户数据--> 
 | 
            <el-form 
 | 
              :model="patientqueryParams" 
 | 
              ref="queryForm" 
 | 
              size="small" 
 | 
              :inline="true" 
 | 
              v-show="showSearch" 
 | 
              label-width="98px" 
 | 
            > 
 | 
              <el-form-item label="患者名称:"> 
 | 
                <el-input 
 | 
                  v-model="patientqueryParams.name" 
 | 
                  @keyup.enter.native="handleQuery" 
 | 
                ></el-input> 
 | 
              </el-form-item> 
 | 
              <el-form-item label="创建时间"> 
 | 
                <el-date-picker 
 | 
                  v-model="dateRange" 
 | 
                  style="width: 240px" 
 | 
                  value-format="yyyy-MM-dd" 
 | 
                  type="daterange" 
 | 
                  range-separator="-" 
 | 
                  start-placeholder="开始日期" 
 | 
                  end-placeholder="结束日期" 
 | 
                ></el-date-picker> 
 | 
              </el-form-item> 
 | 
  
 | 
              <el-form-item> 
 | 
                <el-button 
 | 
                  type="primary" 
 | 
                  icon="el-icon-search" 
 | 
                  size="medium" 
 | 
                  @click="handleQuery" 
 | 
                  >搜索</el-button 
 | 
                > 
 | 
                <el-button 
 | 
                  icon="el-icon-refresh" 
 | 
                  size="medium" 
 | 
                  @click="resetQuery" 
 | 
                  >重置</el-button 
 | 
                > 
 | 
              </el-form-item> 
 | 
            </el-form> 
 | 
            <!-- 选择患者列表 --> 
 | 
            <SFtable 
 | 
              ref="multipleTable" 
 | 
              @handleUpdate="handleUpdate" 
 | 
              @handleSelectionChange="handleSelectionChange" 
 | 
              :currentList="patientuserList" 
 | 
              :tableLabel="tableLabelhz" 
 | 
              :serialnumber="false" 
 | 
              :center="false" 
 | 
              :typeinfo="3" 
 | 
            /> 
 | 
          </el-row> 
 | 
          <pagination 
 | 
            v-show="patienttotal > 0" 
 | 
            :total="patienttotal" 
 | 
            :page.sync="patientqueryParams.pageNum" 
 | 
            :limit.sync="patientqueryParams.pageSize" 
 | 
            @pagination="handleAddpatient" 
 | 
          /> 
 | 
        </div> 
 | 
      </div> 
 | 
      <span slot="footer" class="dialog-footer"> 
 | 
        <el-button @click="dialogVisiblepatient = false">取 消</el-button> 
 | 
        <el-button type="primary" @click="AddDispatchpatients" 
 | 
          >确定添加</el-button 
 | 
        > 
 | 
      </span> 
 | 
    </el-dialog> 
 | 
    <el-dialog title="模板预览" :visible.sync="previewtf" width="60%"> 
 | 
      <div class="preview-left"> 
 | 
        <!-- 单选 --> 
 | 
        <div 
 | 
          class="scriptTopic-dev" 
 | 
          v-for="(item, index) in questionList" 
 | 
          :key="item.aaa" 
 | 
        > 
 | 
          <div class="dev-text"> 
 | 
            {{ index + 1 }}、<span>{{ item.scriptContent }}</span> 
 | 
          </div> 
 | 
  
 | 
          <div class="dev-xx" v-if="item.valueType == 1"> 
 | 
            <el-radio-group v-model="item.radio"> 
 | 
              <el-radio 
 | 
                v-for="(items, index) in item.ivrLibaScriptTargetoptionList" 
 | 
                :key="items.id" 
 | 
                :label="items.id" 
 | 
                >{{ items.targetvalue }} 
 | 
              </el-radio> 
 | 
            </el-radio-group> 
 | 
          </div> 
 | 
          <div v-else> 
 | 
            <el-input 
 | 
              type="textarea" 
 | 
              placeholder="未获取到信息" 
 | 
              v-model.sync="item.scriptResult" 
 | 
              :rows="2" 
 | 
            /> 
 | 
          </div> 
 | 
        </div> 
 | 
      </div> 
 | 
      <span slot="footer" class="dialog-footer"> 
 | 
        <el-button @click="previewGo">前往模板详情修改</el-button> 
 | 
        <el-button type="primary" @click="previewFn">确认使用</el-button> 
 | 
      </span> 
 | 
    </el-dialog> 
 | 
    <el-drawer 
 | 
      title="随访内容列表" 
 | 
      :visible.sync="drawermb" 
 | 
      direction="rtl" 
 | 
      size="50%" 
 | 
    > 
 | 
      <div class="headline"></div> 
 | 
      <div class="examine-jic"> 
 | 
        <div class="jic-value"> 
 | 
          <el-row :gutter="20"> 
 | 
            <!--用户数据--> 
 | 
  
 | 
            <el-form 
 | 
              :model="topqueryParams" 
 | 
              ref="queryForm" 
 | 
              size="small" 
 | 
              :inline="true" 
 | 
              v-show="showSearch" 
 | 
              label-width="98px" 
 | 
            > 
 | 
              <el-form-item label="随访名称"> 
 | 
                <el-input v-model="topqueryParams.templateName"></el-input> 
 | 
              </el-form-item> 
 | 
  
 | 
              <el-form-item label="适用科室" prop="status"> 
 | 
                <el-select v-model="topqueryParams.topicd" placeholder="请选择"> 
 | 
                  <el-option 
 | 
                    v-for="item in topicoptions" 
 | 
                    :key="item.value" 
 | 
                    :label="item.label" 
 | 
                    :value="item.value" 
 | 
                  > 
 | 
                  </el-option> 
 | 
                </el-select> 
 | 
              </el-form-item> 
 | 
              <el-form-item label="随访模板分类" prop="region"> 
 | 
                <el-select 
 | 
                  v-model="topqueryParams.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-form-item> 
 | 
                <el-button 
 | 
                  type="primary" 
 | 
                  icon="el-icon-search" 
 | 
                  size="medium" 
 | 
                  @click="handleQuery" 
 | 
                  >搜索</el-button 
 | 
                > 
 | 
                <el-button 
 | 
                  icon="el-icon-refresh" 
 | 
                  size="medium" 
 | 
                  @click="resetQuery" 
 | 
                  >重置</el-button 
 | 
                > 
 | 
              </el-form-item> 
 | 
            </el-form> 
 | 
            <el-divider></el-divider> 
 | 
            <!-- 选择模板列表 --> 
 | 
            <SFtable 
 | 
              @selectfn="selectfn" 
 | 
              :currentList="userList" 
 | 
              :tableLabel="tableLabel" 
 | 
              :controlsc="false" 
 | 
              :multiplechoice="false" 
 | 
              :typeinfo="1" 
 | 
            /> 
 | 
            <pagination 
 | 
              v-show="total > 0" 
 | 
              :total="total" 
 | 
              :page.sync="topqueryParams.pageNum" 
 | 
              :limit.sync="topqueryParams.pageSize" 
 | 
              @pagination="Acquisitiontype" 
 | 
            /> 
 | 
          </el-row> 
 | 
        </div> 
 | 
      </div> 
 | 
    </el-drawer> 
 | 
  </div> 
 | 
</template> 
 | 
  
 | 
<script> 
 | 
import { messagelistpatient } from "@/api/patient/homepage"; 
 | 
import store from "@/store"; 
 | 
import { 
 | 
  getTaskpatient, 
 | 
  getlibrarylist, 
 | 
  getFollowuplist, 
 | 
  getQtemplatelist, 
 | 
  TaskTemplatecomit, 
 | 
  getTaskInfo, 
 | 
  gethetaskinfo, 
 | 
  delhetaskinfo, 
 | 
  Editsingletask, 
 | 
  getvFollowup, 
 | 
  getFollowupclassify, 
 | 
} from "@/api/AiCentre/index"; 
 | 
import { listDept } from "@/api/system/dept"; 
 | 
  
 | 
import SFtable from "@/components/SFtable"; //表格组件 
 | 
  
 | 
export default { 
 | 
  name: "serviceDetailsa", 
 | 
  data() { 
 | 
    const endDate = new Date(); 
 | 
    const startDate = new Date(); 
 | 
    startDate.setDate(endDate.getDate() - 7); // 设置开始日期为当前日期前7天 
 | 
    return { 
 | 
      title: "随访内容列表", 
 | 
      currenttype: 1, //1随访2问卷3通知宣教 
 | 
      id: "", // 
 | 
      previewid: "", //任务模板传递id 
 | 
      libName: "", 
 | 
      overallCase: [], //选择患者总 
 | 
      // 日期范围 
 | 
      dateRange: [startDate, endDate], 
 | 
      allpids: [], 
 | 
      libId: null, //模板库模板id 
 | 
      nhh: null, //是否依照新增 
 | 
      Editprogress: 1, //编辑进度 
 | 
      drawermb: false, //选择模板弹窗 
 | 
      previewtf: false, //预览 
 | 
      loading: false, // 遮罩层 
 | 
      patientloading: false, // 遮罩层 
 | 
      dialogVisiblepatient: false, //添加患者弹框 
 | 
      radio: 1, 
 | 
      checkboxlist: [], 
 | 
      tableLabel: [], 
 | 
      questionList: [], 
 | 
      // 患者表单 
 | 
      tableLabelhz: [ 
 | 
        { label: "患者名称", width: "", prop: "name" }, 
 | 
        { label: "性别", width: "", prop: "sex" }, 
 | 
        { label: "年龄", width: "", prop: "age" }, 
 | 
        { label: "就诊科室", width: "", prop: "deptName" }, 
 | 
        { label: "入院日期", width: "", prop: "birthdate" }, 
 | 
        { label: "创建人(缺)", width: "", prop: "update_by" }, 
 | 
      ], 
 | 
  
 | 
      tableLabelmz: [ 
 | 
        { label: "随访名称", width: "", prop: "templateName" }, 
 | 
        { label: "主要内容", width: "", prop: "note" }, 
 | 
        { label: "修改日期", width: "", prop: "updateTime" }, 
 | 
        { label: "创建人(缺)", width: "", prop: "updateBy" }, 
 | 
      ], 
 | 
  
 | 
      // 服务形式 
 | 
      preachform: [ 
 | 
        { label: "线下", value: 1 }, 
 | 
        { label: "电话", value: 2 }, 
 | 
        { label: "小程序", value: 3 }, 
 | 
        { label: "短信", value: 4 }, 
 | 
        { label: "微信公众", value: 5 }, 
 | 
        { label: "钉钉", value: 6 }, 
 | 
        { label: "智能机器人", value: 7 }, 
 | 
      ], 
 | 
      // 时间处理 
 | 
      daytime: [], //日期 
 | 
      applydaytime: [], //计算日期 
 | 
      time1: "", //上午时间段 
 | 
      time2: "", //下午时间段 
 | 
      time3: "", //晚上时间段 
 | 
      time4: "", //晚上时间段 
 | 
      topqueryParams: { 
 | 
        pageNum: 1, // 
 | 
        pageSize: 10, 
 | 
      }, 
 | 
      checkList: [], 
 | 
      deliverytopqueryParams: { 
 | 
        pageNum: 1, // 
 | 
        pageSize: 10, 
 | 
      }, 
 | 
      patientqueryParams: { 
 | 
        pageNum: 1, // 
 | 
        pageSize: 10, 
 | 
      }, 
 | 
      topicoptions: [{ children: [{ children: [] }] }], 
 | 
      showSearch: true, // 
 | 
      total: 0, // 
 | 
      sontotal: 0, // 
 | 
      patienttotal: 0, // 
 | 
      // 选中数组 
 | 
      ids: [], 
 | 
      // 非单个禁用 
 | 
      single: true, 
 | 
      // 非多个禁用 
 | 
      multiple: true, 
 | 
      // 用户表格数据 
 | 
      userList: [], //模板列表 
 | 
      patientuserList: [], //选择患者列表 
 | 
      sonuserList: [], //选中患者列表 
 | 
      delvariableList: [], //删除变量临时存储 
 | 
      indexAssortlist: [], 
 | 
  
 | 
      variableList: [ 
 | 
        { 
 | 
          name: "姓名", 
 | 
          value: "${name}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
        { 
 | 
          name: "地址", 
 | 
          value: "${dzz}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
        { 
 | 
          name: "电话", 
 | 
          value: "${dhh}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
      ], //变量列表 
 | 
      transitionList: [ 
 | 
        { 
 | 
          name: "姓名", 
 | 
          value: "${name}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
        { 
 | 
          name: "地址", 
 | 
          value: "${dzz}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
        { 
 | 
          name: "电话", 
 | 
          value: "${dhh}", 
 | 
          fill: "派发时自动匹配", 
 | 
          default: true, 
 | 
        }, 
 | 
      ], 
 | 
      variableListTime: [], 
 | 
      tasktopic: null, //新增类型 
 | 
      SelectPatientslist: [], 
 | 
      form: { 
 | 
        patTaskRelevances: [], 
 | 
        sendType: 1, 
 | 
        templatename: "", 
 | 
        templateid: null, 
 | 
        libtemplateid: null, 
 | 
      }, 
 | 
      taskoptions: [ 
 | 
        { 
 | 
          value: "1", 
 | 
          label: "出院病人", 
 | 
        }, 
 | 
        { 
 | 
          value: "2", 
 | 
          label: "门诊病人", 
 | 
        }, 
 | 
        { 
 | 
          value: "3", 
 | 
          label: "体检病人", 
 | 
        }, 
 | 
      ], 
 | 
      quote: false, 
 | 
      serviceType:null, 
 | 
  
 | 
    }; 
 | 
  }, 
 | 
  components: { SFtable }, 
 | 
  
 | 
  created() { 
 | 
    this.id = this.$route.query.id; 
 | 
    this.form.type = this.$route.query.type; 
 | 
    this.serviceType = Number(this.$route.query.serviceType); 
 | 
    this.form.serviceType = Number(this.$route.query.serviceType); 
 | 
    this.form.nhh = this.$route.query.nhh; 
 | 
    // this.listDept(); 
 | 
    this.Acquisitiontype(); 
 | 
    this.Getdetails(); 
 | 
  }, 
 | 
  
 | 
  methods: { 
 | 
    // { 
 | 
    //   姓名: { "${name}": "龙傲天" }, 
 | 
    //   地址: { "${dzz}": "龙宫" }, 
 | 
    //   电话: { "${dhh}": "八个八" }, 
 | 
    // } 
 | 
    // 变量转换对象转数组 
 | 
    convertFormat1ToFormat2(data) { 
 | 
      let result = []; 
 | 
      for (let key in data) { 
 | 
        let innerKey = Object.keys(data[key])[0]; 
 | 
        result.push({ 
 | 
          name: key, 
 | 
          value: innerKey, 
 | 
          fill: data[key][innerKey], 
 | 
        }); 
 | 
      } 
 | 
      return result; 
 | 
    }, 
 | 
    // 数组转对象 
 | 
    convertFormat2ToFormat1(data) { 
 | 
      let result = {}; 
 | 
      data.forEach((item) => { 
 | 
        let innerObj = {}; 
 | 
        innerObj[item.value] = item.fill; 
 | 
        result[item.name] = innerObj; 
 | 
      }); 
 | 
      return result; 
 | 
    }, 
 | 
    // 获取当前类型 
 | 
    Acquisitiontype() { 
 | 
      let queryParams = { 
 | 
        pageNum: this.topqueryParams.pageNum, 
 | 
        pageSize: this.topqueryParams.pageSize, 
 | 
        isavailable: "", 
 | 
      }; 
 | 
      this.currenttype = this.$route.query.type; 
 | 
      // 出院、门诊、专病随访 
 | 
      this.title = "随访内容列表"; 
 | 
      this.tableLabel = this.tableLabelmz; 
 | 
      if (this.form.serviceType == 2 || this.form.serviceType == 3) { 
 | 
        this.checkboxlist = [ 
 | 
          { 
 | 
            value: "1", 
 | 
            label: "人工", 
 | 
          }, 
 | 
          { 
 | 
            value: "3", 
 | 
            label: "电话", 
 | 
          }, 
 | 
          { 
 | 
            value: "4", 
 | 
            label: "短信", 
 | 
          }, 
 | 
          { 
 | 
            value: "5", 
 | 
            label: "微信公众号", 
 | 
          }, 
 | 
          { 
 | 
            value: "6", 
 | 
            label: "微信小程序", 
 | 
          }, 
 | 
  
 | 
          { 
 | 
            value: "8", 
 | 
            label: "智能机器人", 
 | 
          }, 
 | 
        ]; 
 | 
      } else if (this.form.serviceType == 5) { 
 | 
        this.checkboxlist = [ 
 | 
          { 
 | 
            value: "3", 
 | 
            label: "电话", 
 | 
          }, 
 | 
          { 
 | 
            value: "4", 
 | 
            label: "短信", 
 | 
          }, 
 | 
          { 
 | 
            value: "5", 
 | 
            label: "微信公众号", 
 | 
          }, 
 | 
          { 
 | 
            value: "6", 
 | 
            label: "微信小程序", 
 | 
          }, 
 | 
  
 | 
          { 
 | 
            value: "8", 
 | 
            label: "智能机器人", 
 | 
          }, 
 | 
        ]; 
 | 
      } 
 | 
  
 | 
      getFollowuplist(queryParams).then((response) => { 
 | 
        this.userList = response.rows; 
 | 
        this.total = response.total; 
 | 
      }); 
 | 
    }, 
 | 
  
 | 
    nextstep() { 
 | 
      if (this.Editprogress <= 3) { 
 | 
        return this.Editprogress++; 
 | 
      } 
 | 
    }, 
 | 
    // 保存 
 | 
    submitForm(formName) { 
 | 
      this.form.preachform = this.checkList.join(","); 
 | 
      // this.formatFn(1); 
 | 
      if (!this.form.patTaskRelevances[0]) { 
 | 
        this.$modal.msgError("请选择病人"); 
 | 
        return; 
 | 
      } 
 | 
      const filteredArray = this.variableList.filter( 
 | 
        (item) => 
 | 
          item.name !== "姓名" && item.name !== "电话" && item.name !== "地址" 
 | 
      ); 
 | 
      console.log(filteredArray, "存前变量"); 
 | 
      this.form.textParam = this.convertFormat2ToFormat1(filteredArray); 
 | 
      if (this.form.taskid) { 
 | 
        this.form.isoperation = 2; 
 | 
      } else { 
 | 
        this.form.isoperation = 1; 
 | 
      } 
 | 
      this.form.serviceType=this.serviceType; 
 | 
      Editsingletask(this.form).then((res) => { 
 | 
        if (res.code == 200) { 
 | 
          if (this.form.taskid) { 
 | 
            this.$modal.msgSuccess("新增成功"); 
 | 
          } else { 
 | 
            this.$modal.msgSuccess("修改成功"); 
 | 
          } 
 | 
          this.$router.push({ 
 | 
            path: "/followvisit/tasklist", 
 | 
            query: { tasktopic: this.form.serviceType }, 
 | 
          }); 
 | 
        } 
 | 
      }); 
 | 
    }, 
 | 
    // ----------------------表格子组件事件 
 | 
    // 确认选择模板放入任务模板 
 | 
    selectfn(row, type) { 
 | 
      // 模板情况下获取模板信息 
 | 
      console.log(row, "选择模板"); 
 | 
      this.libName = row.templateName; 
 | 
      this.libId = row.id; 
 | 
      getvFollowup({ id: row.id }).then((res) => { 
 | 
        if (res.code == 200) { 
 | 
          this.Tasktemplate = res.data; 
 | 
          const data = res.data; 
 | 
          this.questionList = data.ivrLibaTemplateScriptVOList; 
 | 
          this.previewtf = true; 
 | 
          this.previewid = data.id; 
 | 
          console.log(this.questionList, "questionList"); 
 | 
          this.Variablehandling(data.ivrLibaTemplateScriptVOList, 1); 
 | 
        } 
 | 
      }); 
 | 
    }, 
 | 
    // 处理问题层变量 
 | 
    Variablehandling(arr, type) { 
 | 
      let Variablist = []; 
 | 
      this.variableList = []; //变量列表 
 | 
      if (type == 1) { 
 | 
        console.log(arr); 
 | 
        // 循环问题 
 | 
        arr.forEach((res) => { 
 | 
          console.log(JSON.parse(res.otherdata), "ss"); 
 | 
          // 循环选项 
 | 
          JSON.parse(res.otherdata).forEach((item) => { 
 | 
            if (item.default != 1) { 
 | 
              Variablist.push({ 
 | 
                value: item.variate, 
 | 
                fill: "", 
 | 
                name: item.variatename, 
 | 
              }); 
 | 
            } 
 | 
          }); 
 | 
        }); 
 | 
        const Aarr = Variablist.filter( 
 | 
          (obj, index, self) => 
 | 
            index === 
 | 
            self.findIndex((t) => t.name === obj.name && t.value === obj.value) 
 | 
        ); 
 | 
        this.variableList = this.transitionList.concat(Aarr); 
 | 
        console.log(this.variableList, "variableList"); 
 | 
        // this.form.textParam = this.convertFormat2ToFormat1(this.variableList); 
 | 
      } 
 | 
    }, 
 | 
    // 子任务二级弹框 
 | 
    handleAddpatient(row) { 
 | 
      console.log(this.overallCase, "ssaaa"); 
 | 
      this.allpids = []; 
 | 
      this.overallCase.forEach((item) => { 
 | 
        this.allpids.push(item.patid); 
 | 
      }); 
 | 
      if (this.patientqueryParams.allhosp == 1) { 
 | 
        this.tableLabelhz = [ 
 | 
          { label: "患者名称", width: "", prop: "name" }, 
 | 
          { label: "性别", width: "", prop: "sex" }, 
 | 
          { label: "年龄", width: "", prop: "age" }, 
 | 
          { label: "主任医师", width: "", prop: "drname" }, 
 | 
          { label: "就诊科室", width: "", prop: "deptName" }, 
 | 
          { label: "入院日期", width: "", prop: "birthdate" }, 
 | 
          { label: "创建人", width: "", prop: "createBy" }, 
 | 
        ]; 
 | 
      } else if (this.patientqueryParams.allhosp == 2) { 
 | 
        this.tableLabelhz = [ 
 | 
          { label: "患者名称", width: "", prop: "name" }, 
 | 
          { label: "性别", width: "", prop: "sex" }, 
 | 
          { label: "年龄", width: "", prop: "age" }, 
 | 
          { label: "诊断", width: "", prop: "diagname" }, 
 | 
          { label: "就诊科室", width: "", prop: "deptName" }, 
 | 
          { label: "入院日期", width: "", prop: "birthdate" }, 
 | 
          { label: "创建人", width: "", prop: "createBy" }, 
 | 
        ]; 
 | 
      } 
 | 
      if (this.allpids[0]) { 
 | 
        this.patientqueryParams.pids = this.allpids; 
 | 
        console.log(this.patientqueryParams.pids); 
 | 
      } else { 
 | 
        this.patientqueryParams.pids = null; 
 | 
      } 
 | 
  
 | 
      getTaskpatient( 
 | 
        this.addDateRange(this.patientqueryParams, this.dateRange) 
 | 
      ).then((response) => { 
 | 
        this.patientuserList = response.rows; 
 | 
        this.patienttotal = response.total; 
 | 
        this.loading = false; 
 | 
        this.Restorecheck(); 
 | 
      }); 
 | 
      this.dialogVisiblepatient = true; 
 | 
    }, 
 | 
    handleUpdate() {}, 
 | 
    handleDelete() {}, 
 | 
    handleExport() {}, 
 | 
    // 选中患者表 
 | 
    handlePitchionChange() {}, 
 | 
    // 选择患者表数据 
 | 
    handleSelectionChange(selection) { 
 | 
      console.log("多选患者"); 
 | 
      this.SelectPatientslist = selection; 
 | 
      this.multiple = !selection.length; 
 | 
  
 | 
      // 赋值给整体选中数组 
 | 
      this.SelectPatientslist.forEach((item) => { 
 | 
        const isExist = this.overallCase.find((obj) => obj.name == item.name); 
 | 
        if (!isExist) { 
 | 
          console.log(this.patientqueryParams.allhosp, "allhosp"); 
 | 
          item.isoperation = 1; 
 | 
          item.patid = item.id; 
 | 
          item.hospType = this.patientqueryParams.allhosp; 
 | 
          this.overallCase.push(item); 
 | 
          this.form.patTaskRelevances.push(item); 
 | 
          console.log(this.overallCase, "this.overallCase"); 
 | 
        } 
 | 
      }); 
 | 
    }, 
 | 
    // 切换页后恢复选中 
 | 
    Restorecheck() { 
 | 
      console.log(this.overallCase, "this.overallCase"); 
 | 
      const allid = this.overallCase.map((item) => item.id); 
 | 
      const overlap = this.patientuserList.filter((value) => { 
 | 
        return allid.includes(value.id); 
 | 
      }); 
 | 
      console.log(overlap, "overlap"); 
 | 
  
 | 
      // 保持ids和当前页面的同步性 
 | 
      this.SelectPatientslist = overlap; 
 | 
      console.log(this.SelectPatientslist, "进入分页SelectPatientslist"); 
 | 
  
 | 
      this.toggleSelection(overlap); 
 | 
    }, 
 | 
    // 挂载选择状态 
 | 
    toggleSelection(rows) { 
 | 
      if (rows) { 
 | 
        this.decision = true; 
 | 
        this.$nextTick(() => { 
 | 
          rows.forEach((row) => { 
 | 
            this.$refs.multipleTable.toggleRowSelection(row, true); 
 | 
          }); 
 | 
          this.decision = false; 
 | 
        }); 
 | 
        console.log(123); 
 | 
      } else { 
 | 
        this.$refs.multipleTable.clearSelection(); 
 | 
      } 
 | 
    }, 
 | 
    // 删除选中患者 
 | 
    detailhz(row, info) { 
 | 
      this.$modal 
 | 
        .confirm('是否确认删除患者"' + row.name + '"的服务项?') 
 | 
        .then(() => { 
 | 
          let indexa = this.overallCase.indexOf(row); 
 | 
          let indexb = this.form.patTaskRelevances.indexOf(row); 
 | 
          this.overallCase.splice(indexa, 1); 
 | 
          this.form.patTaskRelevances[indexb].isoperation = 3; 
 | 
          this.$modal.msgSuccess("删除成功"); 
 | 
        }); 
 | 
    }, 
 | 
    getList() {}, 
 | 
    handleQuery() { 
 | 
      this.handleAddpatient(); 
 | 
    }, 
 | 
    resetQuery() { 
 | 
      this.dateRange = []; 
 | 
      // 查询参数 
 | 
      this.queryParams = { 
 | 
        pageNum: 1, 
 | 
        pageSize: 10, 
 | 
        userName: undefined, 
 | 
        phonenumber: undefined, 
 | 
        status: undefined, 
 | 
        deptId: undefined, 
 | 
      }; 
 | 
    }, 
 | 
    handleClosehz() { 
 | 
      this.dialogVisiblepatient = false; 
 | 
    }, 
 | 
    // 上一步 
 | 
    laststep() { 
 | 
      this.Editprogress--; 
 | 
    }, 
 | 
    // 提交表单 
 | 
    resetForm(formName) { 
 | 
      this.$refs[formName].resetFields(); 
 | 
    }, 
 | 
    // 预览模板 
 | 
    PreviewTemplate() {}, 
 | 
    Acknowledgereference() { 
 | 
      this.quote = true; 
 | 
    }, 
 | 
    // 获取详情 
 | 
    Getdetails() { 
 | 
      if (this.id) { 
 | 
        getTaskInfo({ taskid: this.id }).then((res) => { 
 | 
          let filteredArray = ""; 
 | 
          console.log(2233); 
 | 
          if (res.code == 200) { 
 | 
            this.form = res.data; 
 | 
      this.form.serviceType=this.serviceType; 
 | 
            this.overallCase = this.form.patTaskRelevances.concat(); 
 | 
            this.checkList = this.form.preachform.split(","); 
 | 
            console.log(this.form.showDate, "this.form"); 
 | 
            this.daytime = this.form.showDate.split(","); 
 | 
            this.changeTimeday(this.daytime); 
 | 
            if (this.form.showTimeMorn) { 
 | 
              if (this.form.sendType == 3) { 
 | 
                this.time4 = this.form.showTimeMorn; 
 | 
              } else { 
 | 
                this.time1 = this.form.showTimeMorn.split(","); 
 | 
              } 
 | 
            } 
 | 
            if (this.form.showTimeNoon) 
 | 
              this.time2 = this.form.showTimeNoon.split(","); 
 | 
            if (this.form.showTimeNight) 
 | 
              this.time3 = this.form.showTimeNight.split(","); 
 | 
            console.log(1122); 
 | 
            filteredArray = this.convertFormat1ToFormat2(this.form.textParam); 
 | 
            this.variableList = this.transitionList.concat(filteredArray); 
 | 
          } else { 
 | 
            this.$modal.msgError(res.code); 
 | 
          } 
 | 
        }); 
 | 
      } 
 | 
      getFollowupclassify({}).then((res) => { 
 | 
        this.indexAssortlist = res.rows; 
 | 
      }); 
 | 
    }, 
 | 
    // 获取科室列表 
 | 
    listDept() { 
 | 
      listDept().then((res) => { 
 | 
        this.topicoptions = this.handleTree(res.data, "deptId"); 
 | 
        console.log(this.topicoptions, "topicoptions"); 
 | 
      }); 
 | 
    }, 
 | 
    // 新增派送患者 
 | 
    AddDispatchpatients() { 
 | 
      // this.SelectPatientslist.forEach((item) => { 
 | 
      //   item.isoperation = 1; 
 | 
      // }); 
 | 
      // this.form.patTaskRelevances.push(...this.SelectPatientslist); 
 | 
      // this.overallCase.push(...this.SelectPatientslist); 
 | 
      this.dialogVisiblepatient = false; 
 | 
    }, 
 | 
  
 | 
    variableDelete(index, row) { 
 | 
      this.variableList.splice(index, 1); 
 | 
      row.isoperation = 3; 
 | 
      this.delvariableList.push(row); 
 | 
      console.log(index, row); 
 | 
    }, 
 | 
    // 时间---------- 
 | 
    changeTime(row) { 
 | 
      console.log(row, "时间"); 
 | 
      this.processingTime(); 
 | 
    }, 
 | 
    Totaldate(row) { 
 | 
      console.log(row, "时间"); 
 | 
      this.form.sendTimeslot = [{ begantime: row, endtime: row, xh: 1 }]; 
 | 
      this.form.showTimeMorn = row; 
 | 
      console.log(this.form.sendTimeslot, "时间"); 
 | 
    }, 
 | 
    changeTimeday(row) { 
 | 
      console.log(row, "日期"); 
 | 
      const startDate = new Date(row[0]); 
 | 
      const endDate = new Date(row[1]); 
 | 
      this.applydaytime = this.getDates(startDate, endDate); 
 | 
      if (!top) { 
 | 
        this.processingTime(); 
 | 
      } 
 | 
    }, 
 | 
    getDates(startDate, endDate) { 
 | 
      const dates = []; 
 | 
      let currentDate = new Date(startDate); 
 | 
  
 | 
      while (currentDate <= endDate) { 
 | 
        dates.push(this.$moment(currentDate).format("YYYY-MM-DD")); 
 | 
        currentDate.setDate(currentDate.getDate() + 1); 
 | 
      } 
 | 
  
 | 
      return dates; 
 | 
    }, 
 | 
    // 时间最终处理方法 
 | 
    processingTime() { 
 | 
      const combinedData = []; 
 | 
      let serialnumber = 1; 
 | 
      if (this.time3[0]) { 
 | 
        serialnumber = 3; 
 | 
      } else if (this.time2[0]) { 
 | 
        serialnumber = 2; 
 | 
      } else if (this.time1[0]) { 
 | 
        serialnumber = 1; 
 | 
      } else { 
 | 
        return; 
 | 
      } 
 | 
  
 | 
      for (let i = 0; i < this.applydaytime.length; i++) { 
 | 
        combinedData.push({ 
 | 
          begantime: `${this.applydaytime[i]} ${this.time1[0]}`, 
 | 
          endtime: `${this.applydaytime[i]} ${this.time1[1]}`, 
 | 
          xh: serialnumber * i + 1, 
 | 
        }); 
 | 
        if (serialnumber >= 2) { 
 | 
          combinedData.push({ 
 | 
            begantime: `${this.applydaytime[i]} ${this.time2[0]}`, 
 | 
            endtime: `${this.applydaytime[i]} ${this.time2[1]}`, 
 | 
            xh: serialnumber * i + 2, 
 | 
          }); 
 | 
        } 
 | 
        if (serialnumber >= 3) { 
 | 
          combinedData.push({ 
 | 
            begantime: `${this.applydaytime[i]} ${this.time3[0]}`, 
 | 
            endtime: `${this.applydaytime[i]} ${this.time3[1]}`, 
 | 
            xh: serialnumber * i + 3, 
 | 
          }); 
 | 
        } 
 | 
      } 
 | 
      this.form.sendTimeslot = combinedData; 
 | 
      // 展示数据临时存储日期、早、中、晚 
 | 
      console.log(this.daytime); 
 | 
  
 | 
      this.form.showDate = this.daytime.join(","); 
 | 
      if (this.time1) this.form.showTimeMorn = this.time1.join(","); 
 | 
      if (this.time2) this.form.showTimeNoon = this.time2.join(","); 
 | 
      if (this.time3) this.form.showTimeNight = this.time3.join(","); 
 | 
      console.log(combinedData, "combinedData"); 
 | 
    }, 
 | 
    // 查看模板 
 | 
    previewGo() { 
 | 
      this.$router.push({ 
 | 
        path: "/knowledge/tpuconfigurat/", 
 | 
        query: { id: this.previewid, task: true, data: this.form }, 
 | 
      }); 
 | 
    }, 
 | 
    previewFn() { 
 | 
      let id = this.Tasktemplate.id; 
 | 
      this.Tasktemplate.id = null; 
 | 
      this.Tasktemplate.ivrLibaTemplateScriptVOList.forEach((item) => { 
 | 
        item.ivrTaskScriptTargetoptionList = item.ivrLibaScriptTargetoptionList; 
 | 
      }); 
 | 
      console.log(this.Tasktemplate.ivrLibaTemplateScriptVOList); 
 | 
  
 | 
      this.Tasktemplate.ivrTaskTemplateScriptVOList = 
 | 
        this.Tasktemplate.ivrLibaTemplateScriptVOList; 
 | 
      this.Tasktemplate.ivrLibaTemplateTagList = null; 
 | 
      this.Tasktemplate.tempDetpRelevances = null; 
 | 
      this.Tasktemplate.libtemplateid = id; 
 | 
      this.Tasktemplate.isoperation = 1; 
 | 
      this.Tasktemplate.libtemplatename = this.Tasktemplate.templatename; 
 | 
      console.log(this.libName, this.libId); 
 | 
  
 | 
      TaskTemplatecomit(this.Tasktemplate).then((response) => { 
 | 
        console.log(response); 
 | 
        this.previewtf = false; 
 | 
        this.form.templateid = response.data; 
 | 
        this.form.libtemplateid = this.libId; 
 | 
        this.form.templatename = this.libName; 
 | 
        console.log(this.form.templatename, "ss"); 
 | 
        this.$modal.msgSuccess("选择模板成功", this.form.templatename); 
 | 
      }); 
 | 
    }, 
 | 
    // 处理服务形式 
 | 
    formatFn(type) { 
 | 
      console.log(this.preachform, "preachform"); 
 | 
      console.log(this.checkList, "checklist"); 
 | 
      let list = []; 
 | 
      let formlist = []; 
 | 
      if (type == 1) { 
 | 
        this.preachform.forEach((item) => { 
 | 
          this.checkList.forEach((obj) => { 
 | 
            if (item.label == obj) { 
 | 
              list.push(item.value); 
 | 
            } 
 | 
          }); 
 | 
        }); 
 | 
        this.form.preachform = list.join(","); 
 | 
      } else { 
 | 
        console.log(this.form.preachform, "this.form.preachform"); 
 | 
        formlist = this.form.preachform.split(","); 
 | 
        console.log(11); 
 | 
        this.preachform.forEach((item) => { 
 | 
          formlist.forEach((obj) => { 
 | 
            if (item.value == obj) { 
 | 
              list.push(item.label); 
 | 
            } 
 | 
          }); 
 | 
        }); 
 | 
        this.checkList = list; 
 | 
      } 
 | 
    }, 
 | 
  }, 
 | 
}; 
 | 
</script> 
 | 
  
 | 
<style lang="scss" scoped> 
 | 
.Questionnairemanagement { 
 | 
} 
 | 
.leftvlue-jbxx { 
 | 
  margin-top: 10px; 
 | 
} 
 | 
.sidecolumn { 
 | 
  width: 100%; 
 | 
  // min-height: 12vh; 
 | 
  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: 100%; 
 | 
  margin-top: 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); 
 | 
} 
 | 
.examine-jic { 
 | 
  margin: 20px; 
 | 
  .headline { 
 | 
    font-size: 24px; 
 | 
    border-left: 5px solid #41a1be; 
 | 
    padding-left: 5px; 
 | 
    margin-bottom: 10px; 
 | 
    display: flex; 
 | 
    justify-content: space-between; 
 | 
    .Add-details { 
 | 
      font-size: 18px; 
 | 
      color: #02a7f0; 
 | 
      cursor: pointer; 
 | 
    } 
 | 
  } 
 | 
  .jic-value { 
 | 
    font-size: 20px; 
 | 
    border-top: 1px solid #a7abac; 
 | 
    padding: 10px; 
 | 
    margin-bottom: 10px; 
 | 
    .details-jic { 
 | 
      padding: 10px 15px; 
 | 
      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); 
 | 
      .details-title { 
 | 
        display: flex; 
 | 
        justify-content: space-between; 
 | 
        margin-bottom: 10px; 
 | 
        div:nth-child(2) { 
 | 
          color: #02a7f0; 
 | 
          cursor: pointer; 
 | 
        } 
 | 
      } 
 | 
      .details-renw { 
 | 
        background: #e4ebfc; 
 | 
        padding: 15px 5px; 
 | 
        border-radius: 5px; 
 | 
        margin-bottom: 20px; 
 | 
      } 
 | 
    } 
 | 
  } 
 | 
} 
 | 
// .leftvlue-jbxx { 
 | 
//   margin-bottom: 50px; 
 | 
//   font-size: 20px; 
 | 
//   span { 
 | 
//     position: absolute; 
 | 
//     right: 80px; 
 | 
//   } 
 | 
//   .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; 
 | 
    } 
 | 
  } 
 | 
} 
 | 
.jic-value { 
 | 
  font-size: 20px; 
 | 
  border-top: 1px solid #a7abac; 
 | 
  padding: 10px; 
 | 
  margin-bottom: 10px; 
 | 
  .details-jic { 
 | 
    padding: 10px 15px; 
 | 
    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); 
 | 
    .details-title { 
 | 
      display: flex; 
 | 
      justify-content: space-between; 
 | 
      margin-bottom: 10px; 
 | 
      div:nth-child(2) { 
 | 
        color: #02a7f0; 
 | 
        cursor: pointer; 
 | 
      } 
 | 
    } 
 | 
    .details-renw { 
 | 
      background: #e4ebfc; 
 | 
      padding: 15px 5px; 
 | 
      border-radius: 5px; 
 | 
      margin-bottom: 20px; 
 | 
    } 
 | 
  } 
 | 
} 
 | 
::v-deep .addtopic-input { 
 | 
  input { 
 | 
    background: #02a7f0; 
 | 
    color: #edf1f7; 
 | 
    width: 150px; 
 | 
  } 
 | 
} 
 | 
::v-deep.el-step.is-vertical .el-step__title { 
 | 
  font-size: 25px; 
 | 
} 
 | 
::v-deep.el-row { 
 | 
  margin-bottom: 10px; 
 | 
} 
 | 
// ::v-deep.el-input--medium { 
 | 
//   font-size: 24px !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.scriptTopic-dev.el-radio__label { 
 | 
//   font-size: 24px; 
 | 
// } 
 | 
::v-deep.el-radio-group { 
 | 
  span { 
 | 
    font-size: 24px; 
 | 
  } 
 | 
} 
 | 
::v-deep.el-input.is-disabled .el-input__inner { 
 | 
  background-color: #f5f7fa; 
 | 
  border-color: #dfe4ed; 
 | 
  color: rgb(253, 66, 66); 
 | 
  cursor: not-allowed; 
 | 
} 
 | 
::v-deep.el-checkbox-group { 
 | 
  span { 
 | 
    font-size: 24px; 
 | 
  } 
 | 
} 
 | 
</style> 
 |