qinxianzhangyao
2024-03-15 ac6766c11f8a2b8de903b58c13a8f206fa01dccd
src/views/doctor/check/index.vue
@@ -1,73 +1,32 @@
<template>
  <div>
    <el-form
      :model="queryParams"
      ref="tableList"
      :inline="true"
      label-width="76px"
      style="margin-top: 10px"
    >
    <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px">
      <el-form-item label="姓名" prop="name">
        <el-input
          v-model="queryParams.name"
          style="width: 116px"
          placeholder="请输入姓名"
          clearable
          @keyup.enter.native="submitForm"
        ></el-input>
        <el-input v-model="queryParams.name" style="width: 116px" placeholder="请输入姓名" clearable
          @keyup.enter.native="submitForm"></el-input>
      </el-form-item>
      <el-form-item label="体检号" prop="tjNumber">
        <el-input
          ref="inputName"
          v-model="queryParams.tjNumber"
          style="width: 240px"
          placeholder="请输入体检号"
          clearable
          @blur="hb"
          @keyup.enter.native="submitForm"
        ></el-input>
        <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 240px" placeholder="请输入体检号" clearable
          @blur="hb" @keyup.enter.native="submitForm"></el-input>
      </el-form-item>
      <el-form-item>
        <el-button size="mini" type="primary" @click="submitForm"
          >搜索</el-button
        >
        <el-button size="mini" type="primary" @click="submitForm">搜索</el-button>
        <el-button size="mini" @click="resetQuery">重置</el-button>
      </el-form-item>
    </el-form>
    <div style="display: flex">
      <el-radio-group
        v-model="tjStatus"
        @input="radioChange"
        style="margin-left: 30px"
      >
      <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 30px">
        <el-radio-button label="0">未检</el-radio-button>
        <el-radio-button label="1">已检</el-radio-button>
      </el-radio-group>
    </div>
    <template>
      <el-table
        :data="tableList"
        v-loading="loading"
        ref="table"
        height="536px"
        style="margin: 20px; width: 98%"
        border
        :cell-class-name="myclass"
      >
      <el-table :data="tableList" v-loading="loading" ref="table" height="536px" style="margin: 20px; width: 98%" border
        :cell-class-name="myclass">
        <!-- <template slot="empty">数据正在加载中</template> -->
        <el-table-column
          label="体检号"
          align="center"
          prop="tjNumber"
          width="160px"
        />
        <el-table-column
          label="姓名"
          align="center"
          prop="cusName"
          width="90px"
        />
        <el-table-column label="体检号" align="center" prop="tjNumber" width="160px" />
        <el-table-column label="姓名" align="center" prop="cusName" width="90px" />
        <el-table-column label="性别" align="center" prop="cusSex" width="60px">
          <template slot-scope="scope">
            <span v-if="scope.row.cusSex == '0'">男</span>
@@ -76,119 +35,50 @@
            <span v-if="scope.row.cusSex == '9'">未说明性别</span>
          </template>
        </el-table-column>
        <el-table-column
          label="出生日期"
          align="center"
          prop="cusBrithday"
          width="100px"
        />
        <el-table-column
          label="电话"
          align="center"
          prop="cusPhone"
          width="100px"
        />
        <el-table-column
          label="体检类型"
          align="center"
          prop="tjType"
          width="80px"
        />
        <el-table-column
          label="登记时间"
          align="center"
          prop="tjTime"
          width="160px"
        >
        <el-table-column label="出生日期" align="center" prop="cusBrithday" width="100px" />
        <el-table-column label="电话" align="center" prop="cusPhone" width="100px" />
        <el-table-column label="体检类型" align="center" prop="tjType" width="80px" />
        <el-table-column label="登记时间" align="center" prop="tjTime" width="160px">
        </el-table-column>
        <el-table-column
          label="体检时间"
          align="center"
          prop="tjTime"
          width="100px"
        >
        <el-table-column label="体检时间" align="center" prop="tjTime" width="100px">
          <template slot-scope="scope">
            <span>{{ parseTime(scope.row.tjTime, "{y}-{m}-{d}") }}</span>
          </template>
        </el-table-column>
        <el-table-column
          label="未检项"
          prop="notCheckeds"
          :show-overflow-tooltip="true"
        />
        <el-table-column label="未检项" prop="notCheckeds" :show-overflow-tooltip="true" />
        <el-table-column label="操作" align="center" width="130px">
          <template slot-scope="scope">
            <el-button
              type="primary"
              icon="el-icon-first-aid-kit"
              size="mini"
              @click="Changeapplyfor(scope.row)"
              title="会诊申请"
              v-if="tjStatus == '1'"
            ></el-button>
            <el-button
              type="primary"
              icon="el-icon-share"
              size="mini"
              @click="handleClick(scope.row)"
              title="详情"
            ></el-button>
            <el-button type="primary" icon="el-icon-first-aid-kit" size="mini" @click="Changeapplyfor(scope.row)"
              title="会诊申请" v-if="tjStatus == '1'"></el-button>
            <el-button type="primary" icon="el-icon-share" size="mini" @click="handleClick(scope.row)"
              title="详情"></el-button>
          </template>
        </el-table-column>
      </el-table>
      <div class="pag">
        <div class="pag1">
          <pagination
            v-show="total > 0"
            :total="total"
            :page.sync="queryParams.page"
            :limit.sync="queryParams.pageSize"
            @pagination="getList"
          />
          <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize"
            @pagination="getList" />
        </div>
      </div>
    </template>
    <el-dialog
      :title="title"
      :visible.sync="open"
      width="1000px"
      append-to-body
    >
    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
      <el-row>
        <el-col :span="9" v-if="hzlogList.length >= 1">
          <h3>会诊申请记录</h3>
          <el-table :data="hzlogList" style="width: 100%" border>
            <el-table-column
              label="申请人"
              align="center"
              prop="hzDoctorName"
              width="100px"
            />
            <el-table-column label="申请人" align="center" prop="hzDoctorName" width="100px" />
            <el-table-column label="科室" align="center" prop="hzDeptName" />
            <el-table-column label="操作" align="center" width="150px">
              <template slot-scope="scope">
                <el-button
                  type="primary"
                  size="mini"
                  @click="hadleedit(scope.row)"
                  v-if="
                    scope.row.hzReplyLogsList.length == 0 &&
                    scope.row.hzDoctorId == info.userId
                  "
                  >修改</el-button
                >
                <el-button
                  type="primary"
                  size="mini"
                  v-if="
                    scope.row.hzReplyLogsList.length == 0 &&
                    scope.row.hzDoctorId == info.userId
                  "
                  @click="handledele(scope.row)"
                  >删除</el-button
                >
                <el-button type="primary" size="mini" @click="hadleedit(scope.row)" v-if="scope.row.hzReplyLogsList.length == 0 &&
      scope.row.hzDoctorId == info.userId
      ">修改</el-button>
                <el-button type="primary" size="mini" v-if="scope.row.hzReplyLogsList.length == 0 &&
      scope.row.hzDoctorId == info.userId
      " @click="handledele(scope.row)">删除</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -197,18 +87,10 @@
          <h3 style="text-align: center">会诊记录申请</h3>
          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
            <el-form-item label="姓名" prop="cusName">
              <el-input
                v-model="form.cusName"
                placeholder="请输入姓名"
                disabled
              />
              <el-input v-model="form.cusName" placeholder="请输入姓名" disabled />
            </el-form-item>
            <el-form-item label="体检号" prop="tjNumber">
              <el-input
                v-model="form.tjNumber"
                placeholder="请输入体检号"
                disabled
              />
              <el-input v-model="form.tjNumber" placeholder="请输入体检号" disabled />
            </el-form-item>
            <el-form-item label="会诊科室" prop="hzType">
              <el-radio-group v-model="form.hzType">
@@ -216,42 +98,15 @@
                <el-radio-button label="1">科室会诊</el-radio-button>
              </el-radio-group>
            </el-form-item>
            <el-form-item
              label="选择科室"
              v-if="form.hzType == '1'"
              style="margin-top: 22px"
            >
              <el-select
                v-model="form.hzDeptId"
                multiple
                filterable
                style="width: 100%"
              >
                <el-option
                  v-for="item in deptList"
                  :key="item.deptId"
                  :label="item.deptName"
                  :value="item.deptId"
                ></el-option>
            <el-form-item label="选择科室" v-if="form.hzType == '1'" style="margin-top: 22px">
              <el-select v-model="form.hzDeptId" multiple filterable style="width: 100%">
                <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName"
                  :value="item.deptId"></el-option>
              </el-select>
            </el-form-item>
            <el-form-item
              label="申请人"
              prop="hzDoctorId"
              style="margin-top: 22px"
            >
              <el-select
                v-model="form.hzDoctorId"
                placeholder="请选择"
                style="width: 100%"
                filterable
              >
                <el-option
                  v-for="item in userList"
                  :key="item.userId"
                  :label="item.nickName"
                  :value="item.userId"
                >
            <el-form-item label="申请人" prop="hzDoctorId" style="margin-top: 22px">
              <el-select v-model="form.hzDoctorId" placeholder="请选择" style="width: 100%" filterable>
                <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
                </el-option>
              </el-select>
            </el-form-item>
@@ -268,56 +123,27 @@
      </div>
    </el-dialog>
    <el-dialog
      :title="title"
      :visible.sync="foropen"
      width="1000px"
      append-to-body
    >
    <el-dialog :title="title" :visible.sync="foropen" width="1000px" append-to-body>
      <el-row>
        <el-col :span="8" v-if="hasdeptList.length >= 1">
          <h3 style="text-align: center">会诊申请记录</h3>
          <el-table
            :data="hasdeptList"
            style="width: 100%"
            border
            ref="tab"
            @selection-change="handleSelectionChange"
          >
          <el-table :data="hasdeptList" style="width: 100%" border ref="tab" @selection-change="handleSelectionChange">
            <el-table-column type="selection" width="50" align="center" />
            <el-table-column
              label="申请人"
              align="center"
              prop="hzDoctorName"
              width="100px"
            />
            <el-table-column
              label="科室"
              align="center"
              prop="hzDeptName"
              width="260px"
            />
            <el-table-column label="申请人" align="center" prop="hzDoctorName" width="100px" />
            <el-table-column label="科室" align="center" prop="hzDeptName" width="260px" />
          </el-table>
        </el-col>
        <el-col :span="16" style="padding: 0 10px">
          <h3 style="text-align: center">会诊意见</h3>
          <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px">
            <div
              v-for="(item, index) in hzReplyLogsList"
              :key="index"
              style="padding-bottom: 5px; border-bottom: 1px solid black"
            >
            <div v-for="(item, index) in hzReplyLogsList" :key="index"
              style="padding-bottom: 5px; border-bottom: 1px solid black">
              <!-- <div>会诊科室:{{ item.replyDeptName }}</div> -->
              <div>医生:{{ item.hzDoctorName }}</div>
              <div>回复:{{ item.replyContent }}</div>
            </div>
          </div>
          <el-input
            type="textarea"
            :rows="2"
            placeholder="请输入内容"
            v-model="textarea"
          >
          <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="textarea">
          </el-input>
          <div style="padding: 10px 10px">
            <el-button type="primary" @click="submitFormreply">回复</el-button>
@@ -330,12 +156,7 @@
      </div> -->
    </el-dialog>
    <el-dialog
      title="填写是否重大阳性"
      :visible.sync="checkval"
      width="800px"
      append-to-body
    >
    <el-dialog title="填写是否重大阳性" :visible.sync="checkval" width="800px" append-to-body>
      <el-form ref="form" :model="formIn" label-width="100px">
        <el-form-item label="姓名">
          <el-input v-model="formIn.cusName" disabled></el-input>
@@ -356,18 +177,8 @@
          </el-radio-group>
        </el-form-item>
        <el-form-item label="等级">
          <el-select
            v-model="formIn.level"
            placeholder="请选择"
            filterable
            style="width: 100%"
          >
            <el-option
              v-for="item in dict.type.lj_positive"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
          <el-select v-model="formIn.level" placeholder="请选择" filterable style="width: 100%">
            <el-option v-for="item in dict.type.lj_positive" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </el-select>
        </el-form-item>
@@ -381,31 +192,16 @@
      </div>
    </el-dialog>
    <el-dialog
      title="PDF 预览"
      :visible.sync="dialogVisible"
      :close-on-click-modal="false"
    >
    <el-dialog title="PDF 预览" :visible.sync="dialogVisible" :close-on-click-modal="false">
      <div class="main">
        <iframe
          id="printIframe"
          :src="url"
          frameborder="0"
          style="width: 100%; height: 100%"
        ></iframe>
        <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe>
      </div>
    </el-dialog>
    <!-- 点击右边弹出层 -->
    <el-drawer
      :visible.sync="drawer"
      :with-header="false"
      size="70%"
      :before-close="handleClose"
    >
    <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose">
      <div style="font-size: 14px">
        <table
          style="
        <table style="
            width: 96%;
            height:70px;
            margin: 10px 10px;
@@ -413,19 +209,14 @@
            border: 1px solid #dfe6ec;
            border-collapse: collapse;
            font-size:16px
          "
          cellspacing="4"
        >
          " cellspacing="4">
          <caption style="background-color: #f8f8f9; font-size: 18px">
            填写{{
              tableAll.cusName
            }}的体检资料
      tableAll.cusName
    }}的体检资料
          </caption>
          <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
            <td
              style="border: 1px solid #dfe6ec; border-collapse: collapse"
              align="right"
            >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
              姓名:
            </td>
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
@@ -437,10 +228,7 @@
                <span v-if="scope.row.cusSex == '9'">未说明性别</span>
              </template>
            </td>
            <td
              style="border: 1px solid #dfe6ec; border-collapse: collapse"
              align="right"
            >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
              性别:
            </td>
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
@@ -448,19 +236,13 @@
            </td>
          </tr>
          <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
            <td
              style="border: 1px solid #dfe6ec; border-collapse: collapse"
              align="right"
            >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
              体检单号:
            </td>
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
              {{ tableAll.tjNumber }}
            </td>
            <td
              style="border: 1px solid #dfe6ec; border-collapse: collapse"
              align="right"
            >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right">
              体检时间:
            </td>
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
@@ -471,75 +253,38 @@
      </div>
      <div style="display: flex">
        <div style="margin: 10px 10px" v-if="hasdeptList.length >= 1">
          <el-button type="primary" size="mini" @click="Changeapply()"
            >会诊申请</el-button
          >
          <el-button type="primary" size="mini" @click="Changeapply()">会诊申请</el-button>
        </div>
        <div style="margin: 10px 10px">
          <el-button type="primary" size="mini" @click="historicalreport()"
            >历史报告</el-button
          >
          <el-button type="primary" size="mini" @click="historicalreport()">历史报告</el-button>
        </div>
        <div style="margin: 10px 10px">
          <el-button type="primary" size="mini" @click="jianqian"
            >检前问诊</el-button
          >
          <el-button type="primary" size="mini" @click="jianqian">检前问诊</el-button>
        </div>
      </div>
      <el-row>
        <el-col v-show="baogaoqian">
          <template>
            <div style="margin-left: 10px">
              <el-radio-group
                v-model="radio"
                v-for="(item, index) in Parent"
                :key="index"
                @input="radioChange1(item.proId, item)"
              >
                <el-radio-button :label="item.proId">{{
                  item.proName
                }}</el-radio-button>
              </el-radio-group>
            </div>
          </template>
          <el-table
            v-loading="loading"
            :data="proParentList.sons"
            border
            height="460px"
            style="width: 96%; margin: 10px 10px"
          >
            <el-table-column
              prop="project.proName"
              label="检测项目"
              width="150"
              fixed="left"
            >
            <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px;">
              <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index">
                <el-table v-loading="loading" :data="proParentList.sons" border height="460px"
            style="width: 96%; margin: 10px 10px">
            <el-table-column prop="project.proName" label="检测项目" width="150" fixed="left">
              <!-- <template slot-scope="scope">
            {{ scope.row.project.proName }}
          </template> -->
            </el-table-column>
            <el-table-column prop="proResult" label="检测结果" width="200">
              <template slot-scope="scope">
                <el-input
                  type="textarea"
                  autosize
                  size="mini"
                  v-model="scope.row.proResult"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  @blur="handleInputConfirm(scope.row)"
                  @input="vale"
                  @focus="handleInConfirm(scope.row)"
                ></el-input>
                <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off"
                  placeholder="请输入检测结果" @blur="handleInputConfirm(scope.row)" @input="vale"
                  @focus="handleInConfirm(scope.row)"></el-input>
              </template>
            </el-table-column>
            <el-table-column label="规则" width="55">
              <template slot-scope="scope">
                <el-button class="blue-button" @click="handleguize(scope.row)"
                  >...</el-button
                >
                <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button>
              </template>
            </el-table-column>
            <el-table-column prop="project.proMetering" label="单位">
@@ -551,136 +296,68 @@
            </el-table-column>
            <el-table-column prop="conclusion" label="结果结论" width="200">
              <template slot-scope="scope">
                <el-input
                  size="mini"
                  type="textarea"
                  autosize
                  v-model="scope.row.conclusion"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  disabled
                ></el-input>
                <el-input size="mini" type="textarea" autosize v-model="scope.row.conclusion" autocomplete="off"
                  placeholder="请输入检测结果" disabled></el-input>
              </template>
            </el-table-column>
            <el-table-column
              prop="exceptionDesc"
              label="是否异常"
              width="80px"
              align="center"
            >
            <el-table-column prop="exceptionDesc" label="是否异常" width="80px" align="center">
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column
              prop="isReturn"
              label="是否复诊"
              width="80px"
              align="center"
            >
            <el-table-column prop="isReturn" label="是否复诊" width="80px" align="center">
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.isReturn"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column prop="project.resultType" label="结果类型">
              <template slot-scope="scope">
                <dict-tag
                  :options="dict.type.tj_result_type"
                  :value="scope.row.project.resultType"
                />
                <dict-tag :options="dict.type.tj_result_type" :value="scope.row.project.resultType" />
              </template>
            </el-table-column>
            <el-table-column prop="isPositive" label="重大阳性">
              <template slot-scope="scope">
                <el-switch
                  v-model="scope.row.isPositive"
                  active-value="1"
                  inactive-value="0"
                  @change="checkboxchange(scope.row)"
                ></el-switch>
                <el-switch v-model="scope.row.isPositive" active-value="1" inactive-value="0"
                  @change="checkboxchange(scope.row)"></el-switch>
              </template>
            </el-table-column>
          </el-table>
          <div style="font-size: 14px; overflow-y: auto; height: 286px">
            <table
              style="
            <table style="
                width: 96%;
                margin: 4px 10px;
                border: 1px solid #dfe6ec;
                border-collapse: collapse;
              "
              cellspacing="4"
            >
              " cellspacing="4">
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  病种选择:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="value"
                    multiple
                    placeholder="请选择"
                    style="width: 100%; height: 45px"
                    v-if="deptAdviceList"
                    @change="sel"
                    filterable
                  >
                    <el-option
                      v-for="item in deptAdviceList"
                      :key="item.id"
                      :label="item.title"
                      :value="item.id"
                    >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  <el-select v-model="value" multiple placeholder="请选择" style="width: 100%; height: 45px"
                    v-if="deptAdviceList" @change="sel" filterable>
                    <el-option v-for="item in deptAdviceList" :key="item.id" :label="item.title" :value="item.id">
                    </el-option>
                  </el-select>
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  主检医师:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="doctorName"
                    placeholder="请选择"
                    style="width: 100%"
                    v-if="deptAdviceList"
                    @change="selName"
                    filterable
                  >
                    <el-option
                      v-for="item in userList"
                      :key="item.userId"
                      :label="item.nickName"
                      :value="item.userId"
                    >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  <el-select v-model="doctorName" placeholder="请选择" style="width: 100%" v-if="deptAdviceList"
                    @change="selName" filterable>
                    <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
                    </el-option>
                  </el-select>
                </td>
              </tr>
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  建议:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                  colspan="2"
                >
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="proParentList.remark"
                    rows="7"
                  >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2">
                  <el-input type="textarea" placeholder="请输入内容" v-model="proParentList.remark" rows="7">
                  </el-input>
                </td>
              </tr>
@@ -693,67 +370,49 @@
          v-hasPermi="['system:notice:add']"
          v-show="tjStatus == '1'"
        >会诊申请</el-button> -->
              <el-button
                type="primary"
                @click="determine"
                v-show="tjStatus == '0'"
                >提 交</el-button
              >
              <el-button type="primary" @click="determine" v-show="tjStatus == '0'">提 交</el-button>
            </div>
          </div>
              </el-tab-pane>
            </el-tabs>
          </template>
          <!-- <template>
            <div style="margin-left: 10px">
              <el-radio-group
                v-model="radio"
                v-for="(item, index) in Parent"
                :key="index"
                @input="radioChange1(item.proId, item)"
              >
                <el-radio-button :label="item.proId">{{
                  item.proName
                }}</el-radio-button>
              </el-radio-group>
            </div>
          </template> -->
        </el-col>
        <el-col :span="18" v-show="baogaohou">
          <template>
            <div style="margin-left: 10px">
              <el-radio-group
                v-model="radio"
                v-for="(item, index) in Parent"
                :key="index"
                @input="radioChange1(item.proId, item)"
              >
                <el-radio-button :label="item.proId">{{
                  item.proName
                }}</el-radio-button>
              </el-radio-group>
            </div>
          </template>
          <el-table
            v-loading="loading"
            :data="proParentList.sons"
            border
            height="460px"
            style="width: 96%; margin: 10px 10px"
          >
            <el-table-column
              prop="project.proName"
              label="检测项目"
              width="150"
              fixed="left"
            >
            <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px;">
              <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index">
                <el-table v-loading="loading" :data="proParentList.sons" border height="460px"
            style="width: 96%; margin: 10px 10px">
            <el-table-column prop="project.proName" label="检测项目" width="150" fixed="left">
              <!-- <template slot-scope="scope">
            {{ scope.row.project.proName }}
          </template> -->
            </el-table-column>
            <el-table-column prop="proResult" label="检测结果" width="200">
              <template slot-scope="scope">
                <el-input
                  type="textarea"
                  autosize
                  size="mini"
                  v-model="scope.row.proResult"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  @blur="handleInputConfirm(scope.row)"
                  @input="vale"
                  @focus="handleInConfirm(scope.row)"
                ></el-input>
                <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off"
                  placeholder="请输入检测结果" @blur="handleInputConfirm(scope.row)" @input="vale"
                  @focus="handleInConfirm(scope.row)"></el-input>
              </template>
            </el-table-column>
            <el-table-column label="规则" width="55">
              <template slot-scope="scope">
                <el-button class="blue-button" @click="handleguize(scope.row)"
                  >...</el-button
                >
                <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button>
              </template>
            </el-table-column>
            <el-table-column prop="project.proMetering" label="单位">
@@ -765,136 +424,68 @@
            </el-table-column>
            <el-table-column prop="conclusion" label="结果结论" width="200">
              <template slot-scope="scope">
                <el-input
                  size="mini"
                  type="textarea"
                  autosize
                  v-model="scope.row.conclusion"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  disabled
                ></el-input>
                <el-input size="mini" type="textarea" autosize v-model="scope.row.conclusion" autocomplete="off"
                  placeholder="请输入检测结果" disabled></el-input>
              </template>
            </el-table-column>
            <el-table-column
              prop="exceptionDesc"
              label="是否异常"
              width="80px"
              align="center"
            >
            <el-table-column prop="exceptionDesc" label="是否异常" width="80px" align="center">
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column
              prop="isReturn"
              label="是否复诊"
              width="80px"
              align="center"
            >
            <el-table-column prop="isReturn" label="是否复诊" width="80px" align="center">
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.isReturn"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column prop="project.resultType" label="结果类型">
              <template slot-scope="scope">
                <dict-tag
                  :options="dict.type.tj_result_type"
                  :value="scope.row.project.resultType"
                />
                <dict-tag :options="dict.type.tj_result_type" :value="scope.row.project.resultType" />
              </template>
            </el-table-column>
            <el-table-column prop="isPositive" label="重大阳性">
              <template slot-scope="scope">
                <el-switch
                  v-model="scope.row.isPositive"
                  active-value="1"
                  inactive-value="0"
                  @change="checkboxchange(scope.row)"
                ></el-switch>
                <el-switch v-model="scope.row.isPositive" active-value="1" inactive-value="0"
                  @change="checkboxchange(scope.row)"></el-switch>
              </template>
            </el-table-column>
          </el-table>
          <div style="font-size: 14px; overflow-y: auto; height: 286px">
            <table
              style="
            <table style="
                width: 96%;
                margin: 4px 10px;
                border: 1px solid #dfe6ec;
                border-collapse: collapse;
              "
              cellspacing="4"
            >
              " cellspacing="4">
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  病种选择:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="value"
                    multiple
                    placeholder="请选择"
                    style="width: 100%; height: 45px"
                    v-if="deptAdviceList"
                    @change="sel"
                    filterable
                  >
                    <el-option
                      v-for="item in deptAdviceList"
                      :key="item.id"
                      :label="item.title"
                      :value="item.id"
                    >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  <el-select v-model="value" multiple placeholder="请选择" style="width: 100%; height: 45px"
                    v-if="deptAdviceList" @change="sel" filterable>
                    <el-option v-for="item in deptAdviceList" :key="item.id" :label="item.title" :value="item.id">
                    </el-option>
                  </el-select>
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  主检医师:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="doctorName"
                    placeholder="请选择"
                    style="width: 100%"
                    v-if="deptAdviceList"
                    @change="selName"
                    filterable
                  >
                    <el-option
                      v-for="item in userList"
                      :key="item.userId"
                      :label="item.nickName"
                      :value="item.userId"
                    >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  <el-select v-model="doctorName" placeholder="请选择" style="width: 100%" v-if="deptAdviceList"
                    @change="selName" filterable>
                    <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
                    </el-option>
                  </el-select>
                </td>
              </tr>
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                  建议:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                  colspan="2"
                >
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="proParentList.remark"
                    rows="7"
                  >
                <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2">
                  <el-input type="textarea" placeholder="请输入内容" v-model="proParentList.remark" rows="7">
                  </el-input>
                </td>
              </tr>
@@ -907,20 +498,26 @@
          v-hasPermi="['system:notice:add']"
          v-show="tjStatus == '1'"
        >会诊申请</el-button> -->
              <el-button
                type="primary"
                @click="determine"
                v-show="tjStatus == '0'"
                >提 交</el-button
              >
              <el-button type="primary" @click="determine" v-show="tjStatus == '0'">提 交</el-button>
            </div>
          </div>
              </el-tab-pane>
            </el-tabs>
          </template>
          <!-- <template>
            <div style="margin-left: 10px">
              <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index"
                @input="radioChange1(item.proId, item)">
                <el-radio-button :label="item.proId">{{
      item.proName
    }}</el-radio-button>
              </el-radio-group>
            </div>
          </template> -->
        </el-col>
        <el-col :span="6" style="margin-top: 15px">
          <Historicalreport
            v-show="lishi"
            :reportHistorydata="reportHistorydata"
          ></Historicalreport>
          <Historicalreport v-show="lishi" :reportHistorydata="reportHistorydata"></Historicalreport>
        </el-col>
      </el-row>
@@ -967,16 +564,8 @@
    </el-drawer>
    <Public ref="aaa" :row="row" @add="handleChanges" />
    <el-dialog
      title="提示"
      :visible.sync="jianqians"
      width="1000px"
      :before-close="handleClose1"
    >
      <jianqianwenzhen
        :jianqianwenzhendata="jianqianwenzhendata"
        v-if="flags"
      ></jianqianwenzhen>
    <el-dialog title="提示" :visible.sync="jianqians" width="1000px" :before-close="handleClose1">
      <jianqianwenzhen :jianqianwenzhendata="jianqianwenzhendata" v-if="flags"></jianqianwenzhen>
      <span slot="footer" class="dialog-footer">
        <el-button @click="jianqians = false">取 消</el-button>
      </span>
@@ -1109,7 +698,7 @@
      queryParam: {
        page: 1,
        pageSize: 1000,
      },
      rules: {
        hzType: [
@@ -1146,7 +735,7 @@
  methods: {
    /** 查询用户列表 */
    getListUser() {
      listUser(this.addDateRange(this.queryParam, this.dateRange)).then(
      listUser().then(
        (response) => {
          this.userList = response.rows;
          this.userList.forEach((element) => {
@@ -1338,10 +927,10 @@
          if (response.data) {
            if (response.data.date) {
              this.tableList = response.data.date;
              this.queryParams.tjNumber =""
              this.queryParams.tjNumber = ""
            } else {
              this.tableList = response.data.customers;
              this.queryParams.tjNumber =""
              this.queryParams.tjNumber = ""
            }
            this.total = response.data.total;
          } else {
@@ -1349,8 +938,8 @@
          }
        }
      });
      // this.loading = true;
      // (this.queryParams = {
      //   page: 1,
@@ -1383,8 +972,8 @@
      this.resetForm("tableList");
      this.submitForm();
      this.$nextTick(() => {
      this.$refs.inputName.focus();
    });
        this.$refs.inputName.focus();
      });
    },
    Changeapplyfor(row) {
@@ -1760,6 +1349,7 @@
      };
      getParentId(data).then((response) => {
        this.proParentList = response.data;
        this.loading = false;
        this.value = [];
        if (this.proParentList.xiaoJieIds != null) {
@@ -1770,7 +1360,6 @@
            });
          }
        }
        this.proParentList.sons.forEach((item) => {
          this.doctorName = item.doctorName;
          if (this.doctorName == null) {
@@ -1832,6 +1421,195 @@
          });
        }
      });
    },
    handleTabClick(tab, event) {
      // console.log(tab, event);
      // console.log(tab.name);
      this.Parent.forEach(item => {
        if (tab.name == item.proId) {
          this.Parentcheck = item;
        }
      })
      this.$confirm(
        "检测到体检结果未提交,是否在离开该项目前提交修改?",
        "确认信息",
        {
          distinguishCancelAndClose: true,
          confirmButtonText: "提交",
          cancelButtonText: "不保存,离开",
        }
      )
        .then(() => {
          // 体检号
          let tjNumber = this.tableAll.tjNumber;
          this.userList.forEach((item) => {
            if (this.doctorName == item.nickName) {
              this.doctorName = item.userId;
            }
          });
          this.proParentList.sons.forEach((item) => {
            if (this.rows) {
              this.rows.forEach((item1) => {
                if (item1 === item) {
                  item = item1;
                }
                // if (item.isReturn == true) {
                //   item.isReturn = 1;
                // }
                // if (item.isReturn == false) {
                //   item.isReturn = 0;
                // }
              });
            }
            this.tjOrderDetail.push({
              proName: item.project.proName,
              proId: item.project.proId,
              orderDetailId: item.orderDetailId,
              flowingWaterId: item.flowingWaterId,
              proResult: item.proResult,
              tjStatus: 1,
              isReturn: item.isReturn === true ? 1 : 0,
              exceptionDesc: item.exceptionDesc === true ? 1 : 0,
              conclusion: item.conclusion,
              rulesList: item.rulesList,
            });
          });
          var data = [
            {
              tjNumber,
              proId: this.proId,
              remark: this.proParentList.remark, // 备注
              proName: this.proName, //父项
              summaryList: this.value, //小结
              doctorName: this.doctorName,
              tjOrderDetailList: this.tjOrderDetail,
            },
          ];
          getaddRemark(data).then((res) => {
            this.$modal.msgSuccess("提交成功");
          });
          this.proName = item.proName;
          this.nums = tab.name;
          this.proId = tab.name;
          var data = {
            tjNumber: this.tjNumber,
            proParentId: this.nums,
          };
          getParentId(data).then((response) => {
            this.proParentList = response.data;
            this.value = [];
            if (this.proParentList.xiaoJieIds != null) {
              if (this.proParentList.xiaoJieIds.length != 0) {
                this.proParentList.xiaoJieIds.forEach((item2) => {
                  let item = Number(item2);
                  this.value.push(item);
                });
              }
            }
            this.proParentList.sons.forEach((item) => {
              this.doctorName = item.doctorName;
              if (this.doctorName == null) {
                this.userList.forEach((element) => {
                  const userName = this.$store.state.user.name;
                  if (userName == element.userName) {
                    this.doctorName = element.nickName;
                  }
                });
              }
              if (item.isReturn == 1) {
                item.isReturn = true;
              }
              if (item.isReturn == 0) {
                item.isReturn = false;
              }
              if (item.exceptionDesc == "1") {
                item.exceptionDesc = true;
              }
              if (item.exceptionDesc == "0") {
                item.exceptionDesc = false;
              }
            });
            if (this.proParentList.xiaoJie.length != 0) {
              this.Parent.forEach((item3) => {
                if (item3.proId === tab.name) {
                  this.remark =  this.Parentcheck.remark;
                }
              });
            } else {
              this.remark = "";
            }
          });
          getDeptAdvice(this.proId).then((response) => {
            this.deptAdviceList = response.data;
          });
        })
        .catch((action) => {
          this.$message({
            type: "warning",
            message: action === "cancel" ? "放弃保存并离开" : "停留在当前页面",
          });
          this.proName = this.Parentcheck.proName;
          this.nums = tab.name;
          this.proId = tab.name;
          let data = {
            tjNumber: this.tjNumber,
            proParentId: this.nums,
          };
          getParentId(data).then((response) => {
            this.proParentList = response.data;
            this.value = [];
            if (this.proParentList.xiaoJieIds != null) {
              if (this.proParentList.xiaoJieIds.length != 0) {
                this.proParentList.xiaoJieIds.forEach((item2) => {
                  let item = Number(item2);
                  this.value.push(item);
                });
              }
            }
            this.proParentList.sons.forEach((item) => {
              this.doctorName = item.doctorName;
              if (this.doctorName == null) {
                this.userList.forEach((element) => {
                  const userName = this.$store.state.user.name;
                  if (userName == element.userName) {
                    this.doctorName = element.nickName;
                  }
                });
              }
              if (item.isReturn == 1) {
                item.isReturn = true;
              }
              if (item.isReturn == 0) {
                item.isReturn = false;
              }
              if (item.exceptionDesc == "1") {
                item.exceptionDesc = true;
              }
              if (item.exceptionDesc == "0") {
                item.exceptionDesc = false;
              }
            });
            if (this.proParentList.xiaoJie.length != 0) {
              this.Parent.forEach((item3) => {
                if (item3.proId === tab.name) {
                  this.remark =  this.Parentcheck.remark;
                }
              });
            } else {
              this.remark = "";
            }
          });
          getDeptAdvice(this.proId).then((response) => {
            this.deptAdviceList = response.data;
          });
        });
    },
    // 按钮点击事件
@@ -1955,7 +1733,7 @@
        })
        .catch((action) => {
          this.$message({
            type: "info",
            type: "warning",
            message: action === "cancel" ? "放弃保存并离开" : "停留在当前页面",
          });
          this.proName = item.proName;
@@ -2080,7 +1858,7 @@
  },
};
</script>
<style >
<style>
.el-table .cell {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
@@ -2126,6 +1904,14 @@
.pag1 {
  width: 30%;
}
</style>
.el-message {
  top: 40px !important;
  border: 1px solid #c1c1c1;
  background-color: #c1c1c1;
}
.el-message * {
  color: var(--white) !important;
}
</style>