<template>
  <div class="app-container" ref="layout">
    <div ref="topform" class="form">
      <SearchFilter
        labelWidth="100px"
        :labelWidths="310"
        size="small"
        @search="handleQuery"
        @reset="resetQuery"
        @minShowCtrol="getMaxTableHeight"
        :query="queryParams"
        v-show="showSearch"
      >
        <el-form-item label="患者姓名" prop="patientName">
          <el-input
            v-model="queryParams.patientName"
            placeholder="请输入患者姓名"
            clearable
            @keyup.enter.native="handleQuery"
            style="width: 220px"
          />
        </el-form-item>
        <el-form-item label="患者电话" prop="patientPhone">
          <el-input
            v-model="queryParams.patientPhone"
            placeholder="请输入患者电话"
            clearable
            @keyup.enter.native="handleQuery"
            style="width: 220px"
          />
        </el-form-item>
        <el-form-item label="外呼时间" prop="startTime">
          <el-date-picker
            v-model="dischargeTime"
            type="daterange"
            range-separator="至"
            start-placeholder="开始日期"
            style="width: 220px"
            value-format="yyyy-MM-dd"
            end-placeholder="结束日期"
            @change="changeTime"
          >
          </el-date-picker>
        </el-form-item>
        <el-form-item label="问卷名称" prop="questionnaireName">
          <el-select
            v-model="queryParams.questionInfoId"
            placeholder="请选择问卷名称"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in questionnaireList"
              :key="item.id"
              :label="item.questionnaireName"
              :value="item.id"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="任务节点类型" prop="taskNodeType">
          <el-select
            v-model="queryParams.taskNodeType"
            placeholder="请选择任务节点类型"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in options"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="医院" prop="hospitalAgencyId">
          <el-select
            v-model="queryParams.hospitalAgencyId"
            filterable
            placeholder="请选择医院"
            style="width: 220px"
            clearable
            @clear="clearhospitalAgency"
            @change="changehospitalAgency"
          >
            <el-option
              v-for="item in hospitalAgencylist"
              :key="item.id"
              :label="item.agencyName"
              :value="item.id"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="科室" prop="departmentId">
          <el-select
            v-model="queryParams.departmentId"
            filterable
            placeholder="请选择科室"
            style="width: 220px"
            clearable
            @clear="cleardepartment"
            @change="changedepartment"
          >
            <el-option
              v-for="item in departmentlist"
              :key="item.id"
              :label="item.departmentName"
              :value="item.id"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="任务执行状态" prop="nodeExecuteStatus">
          <el-select
            v-model="queryParams.nodeExecuteStatus"
            placeholder="请选择任务执行状态"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in nodeExecutList"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="任务执行类型" prop="taskExcuteType">
          <el-select
            v-model="queryParams.taskExcuteType"
            placeholder="请选择任务执行类型"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in taskExcuteTypelist"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>

        <el-form-item label="调查结果" prop="contentedFlag">
          <el-select
            v-model="queryParams.contentedFlag"
            placeholder="请选择调查结果"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in contentedFlaglist"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="批次" prop="sn">
          <span>
            <sn
              @on-template="messageontemplateword"
              :templateId="queryParams.sn"
            ></sn>
          </span>
        </el-form-item>
        <el-form-item label="通话状态" prop="phoneNodeExecuteResultStatus">
          <el-select
            v-model="queryParams.phoneNodeExecuteResultStatus"
            placeholder="请选择通话状态"
            clearable
            style="width: 220px"
          >
            <el-option
              v-for="item in SUCCESSlist"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
      </SearchFilter>
    </div>
    <div ref="table">
      <el-table
        :max-height="maxTableHeight"
        v-loading="loading"
        :data="patientInfoList"
        @selection-change="handleSelectionChange"
      >
        <!-- <el-table-column type="selection" width="55" /> -->
        <el-table-column label="序号" type="index" width="48" align="center" />
        <el-table-column
          label="患者姓名"
          align="center"
          prop="patientName"
          width="110"
        />
        <el-table-column
          label="患者电话"
          align="center"
          prop="patientPhone"
          width="110"
        />
        <el-table-column
          label="路径名称"
          align="center"
          prop="manageRouteName"
          width="110"
        />
        <el-table-column
          label="问卷模板名称"
          align="center"
          prop="questionnaireName"
          width="120"
        />
        <el-table-column
          label="话术名称"
          align="center"
          prop="scriptTemplateName"
          width="110"
        />
        <el-table-column
          label="医院"
          align="center"
          prop="hospitalAgencyName"
          width="110"
        />
        <el-table-column
          label="科室名称"
          align="center"
          prop="departmentName"
          width="110"
        />
        <el-table-column
          label="执行状态"
          align="center"
          prop="nodeExecuteStatus"
          width="150"
        >
          <template slot-scope="scope">
            <span style="color: #67c23a">
              {{
                scope.row.nodeExecuteStatus == "EXECUTED" ? "已执行" : ""
              }}</span
            >
            <span style="color: #f56c6c">
              {{
                scope.row.nodeExecuteStatus == "UNEXECUTED" ? "未执行" : ""
              }}</span
            >
          </template>
        </el-table-column>
        <el-table-column
          label="通话状态"
          align="center"
          prop="phoneNodeExecuteResultStatus"
          width="150"
        >
          <template slot-scope="scope">
            {{
              scope.row.phoneNodeExecuteResultStatus == "SUCCESS"
                ? "已接通"
                : "未接通"
            }}
          </template>
        </el-table-column>
        <el-table-column
          label="反馈意见"
          align="center"
          prop="fillBlanksAnswer"
          width="150"
        />

        <el-table-column
          label="就诊时间"
          align="center"
          prop="visitDate"
          width="150"
        />
        <el-table-column
          label="执行时间"
          align="center"
          prop="nodePlanTime"
          width="150"
        />

        <el-table-column label="调查结果" align="center" prop="contentedFlag" />
        <el-table-column
          label="操作"
          align="center"
          class-name="small-padding fixed-width"
          fixed="right"
          width="150"
        >
          <template slot-scope="scope">
            <el-button
              v-if="
                ((scope.row.phoneDialMethod == 'AI' &&
                  scope.row.nodeExecuteStatus == 'EXECUTED') ||
                  (scope.row.phoneDialMethod == 'COMMON' &&
                    scope.row.nodeExecuteStatus == 'EXECUTED')) &&
                scope.row.phoneNodeExecuteResultStatus == 'SUCCESS'
              "
              size="mini"
              type="text"
              @click="playback(scope.row)"
              icon="el-icon-headset"
              >回放</el-button
            >
            <el-button
              v-if="
                scope.row.nodeExecuteStatus == 'EXECUTED' &&
                scope.row.taskNodeType == 'QUESTIONNAIRE_SCALE'
              "
              size="mini"
              type="text"
              icon="el-icon-notebook-2"
              @click="questionlook(scope.row)"
              >问卷查看</el-button
            >
          </template>
        </el-table-column>
      </el-table>
    </div>
    <!-- <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
              :limit.sync="queryParams.pageSize" @pagination="getList" /> -->
    <myPagination
      v-show="total > 0"
      :total="total"
      :pageSize="queryParams.pageSize"
      :indexFromWrap="queryParams.pageNum"
      @updateCPage="updateCPage"
    ></myPagination>

    <el-dialog title="问卷查看" :visible.sync="questionshow" width="40%">
      <div class="bottomheaderdata">
        <div class="right">
          <div
            class="title"
            v-if="questiondata.totalScore || questiondata.totalScore == 0"
          >
            总分：{{ questiondata.totalScore }}分
          </div>
          <div
            class="words"
            v-for="(item, index) in questiondata.subjectResultList"
            :key="index"
          >
            {{ index + 1 }}.{{ item.questionName }}
            <span v-if="item.questionType == 'MULTIPLE_CHOICE'"
              >（单选题）</span
            >
            <span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'"
              >（多选题）</span
            >
            <span v-if="item.questionType == 'SCORING_QUESTIONS'"
              >（打分题）</span
            >
            <span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'"
              >（组合单选题）</span
            >
            <span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'"
              >（组合多选题）</span
            >
            <span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'"
              >（组合填空题）</span
            >
            <span v-if="item.questionType == 'FILL_IN_THE_BLANKS'"
              >（填空题）</span
            >
            <span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'"
              >（组合打分题）</span
            >
            <span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
              >（日期填空题）</span
            >
            <span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
              >（时间填空题）</span
            >
            <span v-if="item.questionType == 'FEEDBACK_BLANKS_SUBJECT'"
              >（反馈填空题）</span
            >
            <el-radio-group
              v-if="
                item.questionType == 'MULTIPLE_CHOICE' ||
                item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
                item.questionType == 'SCORING_QUESTIONS' ||
                item.questionType == 'COMBINATION_SCORING_SUBJECT'
              "
              v-model="item.checked"
              class="custom-radio-group"
              @change="radioGroupChange($event, item)"
            >
              <el-radio
                disabled
                class="custom"
                v-for="(aitem, aindex) in item.optionResults"
                :key="aindex"
                :label="aitem.id"
                @change="radioChange($event, aitem, index)"
              >
                {{ aitem.optionName }}
              </el-radio>
            </el-radio-group>
            <el-checkbox-group
              v-model="checkeddata"
              @change="radioGroupChange($event, item, 'checkbox')"
              v-if="
                item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
                item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
              "
            >
              <el-checkbox
                disabled
                v-for="(aitem, aindex) in item.optionResults"
                :key="aindex"
                :label="aitem.id"
                @change="radioChangecheck($event, aitem, index, aindex)"
              >
                {{ aitem.optionName }}
              </el-checkbox>
            </el-checkbox-group>
            <div
              v-if="
                item.questionType == 'FILL_IN_THE_BLANKS' ||
                item.questionType == 'COMBINATION_BLANKS_SUBJECT' ||
                item.questionType == 'FEEDBACK_BLANKS_SUBJECT'
              "
              class="tk"
            >
              <el-input
                disabled
                v-model="item.fillBlanksAnswer"
                placeholder="请输入答案"
                type="textarea"
              />
            </div>
            <div
              v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
              style="margin: 20px 0 10px 30px"
            >
              <el-date-picker
                disabled
                @change="timepicker($event, index)"
                clearable
                v-model="item.fillBlanksAnswer"
                type="date"
                value-format="yyyy-MM-dd"
                placeholder="选择日期"
              >
              </el-date-picker>
            </div>
            <div
              style="margin: 20px 0 10px 30px"
              v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
            >
              <el-time-select
                disabled
                @change="timepickerselect($event, index)"
                clearable
                v-model="item.fillBlanksAnswer"
                :picker-options="{
                  start: '08:30',
                  step: '00:30',
                  end: '23:30',
                }"
                placeholder="选择时间"
              >
              </el-time-select>
            </div>
          </div>
        </div>
      </div>
    </el-dialog>
    <el-dialog
      title="回放"
      :visible.sync="audioshow"
      width="800px"
      :before-close="audiohandleClose"
    >
      <div class="audio">
        <div style="display: flex">
          <span class="name">姓名:{{ patientName }}</span>
          <audio ref="audioPlayer" :src="audiourl" controls></audio>
        </div>
        <div v-for="(item, index) in formlist" :key="index">
          <div class="imagelist" v-if="item.role == 'speech'">
            <img src="@/assets/manage/chat.png" alt="" />
            <div class="question">
              <span class="questionname">问题：</span>
              <span class="content">{{ item.contextText }}</span>
            </div>
          </div>

          <div class="imagelistright" v-if="item.role == 'voice'">
            <div class="question">
              <span class="questionname">{{ item.contextText }}</span>
            </div>
            <img src="@/assets/manage/solution.png" alt="" />
          </div>
        </div>
      </div>
    </el-dialog>
  </div>
</template>
  
    <script>
import { questionnaireTaskOptionList, selectQuestionInfoList } from "@/api/manage/Satisfactionsurvey"
import SearchFilter from "../../components/SearchForm.vue";
import { getAgencyList, selectAgencyList, } from "@/api/manage/selectAgencyList";
import { selectPatientQuestionSubmit } from "@/api/system/taskExecuteRecord";
import {
  getPhoneDialVideo,
} from "@/api/system/followup";
import sn from "@/views/manage/components/sn";



export default {
  name: "visitout",
  components: { SearchFilter, sn },
  data() {
    return {
      maxTableHeight: undefined,
      // 通话状态
      SUCCESSlist: [
        {
          value: "SUCCESS",
          label: "已接通",
        },
        {
          value: "FAILURE",
          label: "未接通",
        },

      ],
      // 节点任务执行状态
      nodeExecutList: [
        {
          value: "EXECUTED",
          label: "已执行",
        },
        {
          value: "UNEXECUTED",
          label: "未执行",
        },
      ],
      // 任务类型
      taskExcuteTypelist: [
        {
          value: "BATCH_TASK",
          label: "批量任务",
        },
        {
          value: "ACTUAL_TIME_TASK",
          label: "单通电话",
        },

      ],
      // 调查结果
      contentedFlaglist: [
        {
          value: "CONTENTED",
          label: "满意",
        },
        {
          value: "DISCONTENTED",
          label: "不满意",
        },

      ],
      //播放回放
      audiourl: undefined,
      audioshow: false,
      whshow: null,
      AItrue: null,
      COMMONtrue: null,
      foldshow: null,
      totalScoredata: 0,
      questiondata: {
        totalScore: 0, //总分
        routeHandlePerson: null,
        routeHandleId: null,
      },
      // 问卷弹框
      questionshow: false,
      checkeddata: [],
      formlist: [],
      patientName: null,


      // 问卷名称
      questionnaireList: [],
      //医院list
      hospitalAgencylist: [],
      // 院区list
      campusAgencylist: [],
      //科室list
      departmentlist: [],
      //病区list
      wardlist: [],
      //导入
      fileList: [],
      // 遮罩层
      loading: true,
      // 选中数组
      ids: [],
      patientVisitRecordId: [],
      // 非单个禁用
      single: true,
      // 非多个禁用
      multiple: true,
      // 显示搜索条件
      showSearch: true,
      // 总条数
      total: 0,
      // 表格数据
      patientInfoList: [],
      // 弹出层标题

      // 是否显示弹出层
      uploadopen: false,
      // 查询参数
      dischargeTime: [],// 初始化为默认日期范围
      queryParams: {
        pageNum: 1,
        pageSize: 10,
        startTime: null,
        endTime: null,
        questionnaireName: null,
        taskNodeType: null,
        patientName: null,
        patientPhone: null,
        hospitalAgencyId: null,
        departmentId: null,
        nodeExecuteStatus: '',
        taskExcuteType: null,
        contentedFlag: null,
        phoneNodeExecuteResultStatus: null,
        sn: null,
        questionInfoId: null,
        questionSubjectOptionId: null,
        optionChooseSign: null,
      },
      show: false,

      options: [{
        value: 'PHONE_OUTBOUND',
        label: '电话外呼'
      }, {
        value: 'QUESTIONNAIRE_SCALE',
        label: '问卷量表'
      }],
      // 表单参数
      form: {},
      // 表单校验
      rules: {},
    };
  },
  created() {
    this.queryParams.questionInfoId = this.$route.query.questionInfoId
    this.queryParams.questionSubjectOptionId = this.$route.query.questionSubjectOptionId
    this.queryParams.optionChooseSign = this.$route.query.optionChooseSign
    this.selectAgencyinfo();
    this.getDefaultDateRange()
    this.getQuestion();
    this.getList();
  },
  mounted() {
    this.getMaxTableHeight();
    this.screenChange();
  },
  methods: {
    updateCPage(index, size) {
      this.queryParams.pageNum = index;
      this.queryParams.pageSize = size;
      this.getList();
    },
    // 回放关闭
    audiohandleClose() {
      this.$refs.audioPlayer.pause();
      this.audioshow = false;
      this.audiourl = null;
    },
    // 回放点击事件
    async playback(row) {
      console.log(row, 'row')
      this.patientName = row.patientName
      // await this.$confirm("是否确认回放?", "提示", {
      //   confirmButtonText: "确认",
      //   cancelButtonText: "取消",
      //   type: "warning",
      // }).then(() => {
      getPhoneDialVideo(row.manageRouteNodeId).then((res) => {
        console.log(res, "res");
        this.audioshow = true;
        this.audiourl = process.env.VUE_APP_BASE_API + res.data.phoneDialRecordVideo;
        this.formlist = res.data.record;
        setTimeout(() => {
          this.$refs.audioPlayer.load(); // 重新加载音频，以确保每次播放都是新的音频文件
          // this.$refs.audioPlayer.play();
          // }, 1000);
        });
      });
    },
    // 问卷查看
    async questionlook(row) {
      // this.totalScoredata=0,
      await selectPatientQuestionSubmit(row.taskExecuteRecordId).then((res) => {
        this.questiondata = res.data;
        console.log(this.questiondata, ' this.questiondata')
        this.questiondata.subjectResultList.forEach((e) => {
          // if(e.whetherScore==1){
          //   e.optionResults.forEach((el) => {
          //     if(el.optionChooseSign=="0"){
          //       this.totalScoredata += el.optionScore
          //     }
          //   })
          // }
          e.optionResults.forEach((el) => {
            if (
              (el.optionChooseSign == "0" &&
                e.questionType == "MULTIPLE_CHOICE") ||
              e.questionType == "COMBINATION_RADIO_SUBJECT"
            ) {
              e.checked = el.id;
            } else if (
              el.optionChooseSign == "0" &&
              e.questionType == "MULTIPLE_CHOICE_QUESTIONS"
            ) {
              this.checkeddata.push(el.id);
            } else if (
              el.optionChooseSign == "0" &&
              e.questionType == "SCORING_QUESTIONS"
            ) {
              e.checked = el.id;
            } else if (
              e.questionType == "COMBINATION_MULTIPLE_SUBJECT" &&
              el.optionChooseSign == "0"
            ) {
              this.checkeddata.push(el.id);
            }
          });
        });
        this.questionshow = true;
      });
    },
    changeTime(e) {
      this.show = false;
    },
    getDefaultDateRange() {
      this.show = true;
      const endDate = new Date(); // 今天的日期
      const startDate = new Date();
      startDate.setDate(endDate.getDate() - 6); // 往前倒退七天
      console.log(startDate, endDate);
      this.dischargeTime[0] = startDate;
      this.dischargeTime[1] = endDate;
      this.queryParams.startTime = this.formatDate(this.dischargeTime[0]);
      this.queryParams.endTime = this.formatDate(this.dischargeTime[1]);
    },
    formatDate(date) {
      const year = date.getFullYear();
      const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始，需要加1
      const day = String(date.getDate()).padStart(2, '0');
      return `${year}-${month}-${day}`;
    },
    getQuestion() {
      selectQuestionInfoList().then(response => {
        this.questionnaireList = response
      })
    },
    /** 查询患者信息列表 */
    getList() {
      this.loading = true;
      questionnaireTaskOptionList(this.queryParams).then((response) => {
        this.patientInfoList = response.rows;
        this.total = response.total;
        this.loading = false;
      });
    },
    /** 搜索按钮操作 */
    handleQuery() {
      if (this.dischargeTime?.length > 0) {
        if (this.show == true) {
          this.queryParams.startTime = this.formatDate(this.dischargeTime[0]);
          this.queryParams.endTime = this.formatDate(this.dischargeTime[1]);

        } else if (this.show == false) {
          this.queryParams.startTime = this.dischargeTime[0];
          this.queryParams.endTime = this.dischargeTime[1];

        }

      }
      else {
        this.queryParams.startTime = null;
        this.queryParams.endTime = null;
      }
      this.queryParams.pageNum = 1;
      this.query = this.queryParams
      this.getList();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.queryParams = {
        pageNum: 1,
        pageSize: 10,
        questionInfoId: this.$route.query.questionInfoId,
        questionSubjectOptionId: this.$route.query.questionSubjectOptionId,
        optionChooseSign: this.$route.query.optionChooseSign,
      };
      this.dischargeTime = [];
      this.queryParams.startTime = "";
      this.queryParams.endTime = "";
      this.resetForm("queryForm");
      this.handleQuery();
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map((item) => item.id);
      this.patientVisitRecordIds = selection.map(
        (item) => item.patientVisitRecordId
      );
      this.single = selection.length !== 1;
      this.multiple = !selection.length;
    },
    //清空科室
    cleardepartment() {
      this.queryParams.wardId = null;
      if (this.queryParams.departmentId) {
        this.getAgencyListinfo("DEPARTMENT", this.queryParams.departmentId);
      } else if (this.queryParams.campusAgencyId) {
        this.getAgencyListinfo("CAMPUS", this.queryParams.campusAgencyId);
      } else if (this.queryParams.hospitalAgencyId) {
        this.getAgencyListinfo("HOSPITAL", this.queryParams.hospitalAgencyId);
      }
    },
    //选中科室获取病区
    changedepartment(id) {
      this.getAgencyListinfo("DEPARTMENT", id);
      // let query = {
      //   nodeType: 'WARD',
      //   parentDepartmentId: id,
      // }
      // getDepartmentList(query).then(res => {
      //   this.wardlist = res.data
      this.queryParams.wardId = null;
      // })
    },
    //选中医院获取院区
    changehospitalAgency(id) {
      this.getAgencyListinfo("HOSPITAL", id);
      this.queryParams.departmentId = null;
      // })

    },
    //清空医院
    clearhospitalAgency() {
      this.queryParams.departmentId = null;
      setTimeout(() => {
        this.attendingPhysicianlist = [];
      }, 1000);
    },
    //获取下级单位
    getAgencyListinfo(nodeType, id) {
      let query = {
        nodeType: nodeType,
      };
      if (nodeType == "HOSPITAL") {
        query.hospitalId = id;
      } else if (nodeType == "CAMPUS") {
        query.campusId = id;
      } else if (nodeType == "DEPARTMENT") {
        query.departmentId = id;
      }
      getAgencyList(query).then((res) => {
        if (nodeType == "HOSPITAL") {
          this.campusAgencylist = res.data.campusList;
          this.departmentlist = res.data.departmentList;
        } else if (nodeType == "CAMPUS") {
          this.departmentlist = res.data.departmentList;
        }
        this.wardlist = res.data.wardList;
      });
    },
    selectAgencyinfo() {
      let query = {
        agencyStatus: "ON",
        nodeType: "HOSPITAL",
      };
      selectAgencyList(query).then((res) => {
        this.hospitalAgencylist = res.data;
        if (this.hospitalAgencylist.length == 1) {
          this.queryParams.hospitalAgencyId = this.hospitalAgencylist[0].id
          this.getAgencyListinfo("HOSPITAL", this.hospitalAgencylist[0].id);
        }
      });
    },

    //批次
    messageontemplateword(item) {
      console.log(item, 'sn');
      this.queryParams.sn = item.sn;
    },

    // 详情
    handdatile(row) {


    },
    // 获取表格最高高度
    getMaxTableHeight() {
      const windowInnerHeight = window.innerHeight; // 屏幕可视高度
      const layoutDiv = this.$refs.layout;
      const formDiv = this.$refs.topform;
      const mb8Div = this.$refs.mb8;
      this.maxTableHeight =
        windowInnerHeight -
        134 -
        this.getBoxPadding(layoutDiv) -
        this.getBoxHeight(mb8Div) -
        this.getBoxHeight(formDiv);
    },
    // 屏幕resize监听
    screenChange() {
      // 屏幕resize监听事件：一旦屏幕宽高发生变化，就会执行resize
      window.addEventListener("resize", this.getMaxTableHeight, true);
      // 将屏幕监听事件移除
      // 这步是必须的。离开页面时不移除，再返回，或者进入到别的有相同元素的页面会报错
      // 或者将这里的方法直接写在beforeDestroy函数中也可以
      this.$once("hook:beforeDestroy", () => {
        window.removeEventListener("resize", this.getMaxTableHeight, true);
      });
    },
  },
};
    </script>
    <style lang="scss" scoped>
::v-deep .el-input.is-disabled .el-input__inner {
  background-color: #fff !important;
  color: black !important;
}

::v-deep .el-textarea.is-disabled .el-textarea__inner {
  background-color: #fff !important;
  color: black !important;
}

::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner {
  border: 1px solid #dcdfe6 !important;
  border-color: #1890ff !important;
}

::v-deep .el-checkbox__input.is-disabled + span.el-checkbox__label {
  color: black !important;
}

::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after {
  border-color: #1890ff !important;
}

::v-deep .el-checkbox__input.is-disabled .el-checkbox__inner {
  background-color: #fff !important;
}

::v-deep .el-radio__input.is-disabled .el-radio__inner {
  border: 1px solid #dcdfe6 !important;
  background-color: #fff !important;
}

::v-deep .el-radio__input.is-disabled.is-checked .el-radio__inner {
  border-color: #1890ff !important;
}

::v-deep .el-radio__input.is-disabled.is-checked .el-radio__inner::after {
  color: #1890ff !important;
  background-color: #1890ff !important;
}

::v-deep .el-radio__input.is-disabled + span.el-radio__label {
  color: black !important;
}
.titlenew {
  font-size: 16px;
  font-weight: 600;
  height: 60px;
  margin-left: 20px;
}

::v-deep .el-table__fixed-right::before {
  height: 0px !important;
}
.bottomheaderdata {
  width: 99%;
  background-color: #fff;
  margin: 0 auto;

  .title {
    line-height: 40px;
    font-size: 20px;
    margin: 0 10px;
  }

  .words {
    font-size: 15px;
    padding: 10px 50px 10px 10px;
  }
}
.audio {
  margin: 10px 0px 10px 0;
  .name {
    display: inline-block;
    margin: 20px;
  }

  .imagelist {
    padding-top: 10px;
    display: flex;
    img {
      width: 40px;
      height: 40px;
    }
    .question {
      // width: 1000px;
      // height: 30px;
      padding-left: 10px;
      padding-right: 10px;
      background: #fafbff;
      box-shadow: 5px 5px 10px #dbe5f4;
      border-radius: 5px;
      line-height: 30px;
      margin-top: 5px;
      margin-left: 5px;
    }
    .questionname {
      color: #559ca6;
      padding-left: 10px;
      font-weight: 600;
    }
    .content {
      color: #939394;
    }
  }
  .imagelistright {
    padding-top: 10px;
    display: flex;
    // float: right;
    justify-content: flex-end;
    align-items: center;
    img {
      width: 40px;
      height: 40px;
      margin-left: 5px;
    }
    .question {
      // width: 200px;
      // height: 30px;
      padding-left: 10px;
      padding-right: 10px;

      background: #51b9ff;
      box-shadow: 5px 5px 10px #dbe5f4;
      border-radius: 5px;
      line-height: 30px;
      margin-top: 5px;
      margin-left: 5px;
      color: #fff;
      text-align: center;
    }
    // .questionname {
    //   color: #5da0aa;
    //   padding-left: 10px;
    // }
    .content {
      color: #dcdfe6;
    }
  }
}
audio {
  width: 350px;
}
.tk {
  ::v-deep .el-textarea__inner {
    margin: 20px 0 10px 30px;
  }
}

::v-deep .el-radio {
  padding: 10px;
}

::v-deep .el-checkbox-group {
  display: flex;
  flex-direction: column;
  padding: 10px 0px 10px 24px;
}

::v-deep .el-checkbox {
  padding: 10px 0 10px 0px;
  // padding: 10px;
}

.custom-radio-group {
  display: flex;
  flex-direction: column;
  padding: 10px 0 10px 10px;

  .custom {
    padding: 10px 0 10px 10px;
  }
}

.custom-radio-group {
  display: flex;
  flex-direction: column;
  padding: 10px 0 10px 10px;

  .custom {
    padding: 10px 0 10px 10px;
  }
}
</style>
  