887851419d98568a815de95a6a96fbdfb3dfcf38..35eea897fb33fa326969ddf4152c758808235a5f
6 天以前 qx
qx
35eea8 对比 | 目录
6 天以前 qx
qx
16f6f4 对比 | 目录
6 天以前 lkk
1
f95fee 对比 | 目录
5个文件已修改
2332 ■■■■ 已修改文件
src/api/doctor/checkAll.js 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/doctor/checkAll/index.vue 2146 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/project/index.vue 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/info/index.vue 76 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/doctor/checkAll.js
@@ -165,3 +165,24 @@
    data: dataList
  })
}
// 恢复异常列表
export function huiFuyichangxiangmu(tjNum) {
  return request({
    url: '/check/zongjianyishengHuiFuyichangxiangmu',
    method: 'get',
    params: {
      tjNum: tjNum
    }
  })
}
// 恢复异常按钮
export function hfbt(data) {
  return request({
    url: '/check/zongjianyishengHuiFuyichangxiangmuanniu',
    method: 'get',
    params: data
  })
}
src/views/doctor/checkAll/index.vue
@@ -1,88 +1,237 @@
<template>
  <div class="mainbox">
    <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px"
      v-if="tjStatus == 1">
    <el-form
      :model="queryParams"
      ref="tableList"
      :inline="true"
      label-width="76px"
      style="margin-top: 10px"
      v-if="tjStatus == 1"
    >
      <el-form-item label="姓名" prop="name">
        <el-input v-model="queryParams.name" style="width: 120px" placeholder="请输入姓名" clearable
          @keyup.enter.native="submitForm"></el-input>
        <el-input
          v-model="queryParams.name"
          style="width: 120px"
          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: 180px" placeholder="请输入体检号" clearable
          @keyup.enter.native="submitForm" @blur="hb"></el-input>
        <el-input
          ref="inputName"
          v-model="queryParams.tjNumber"
          style="width: 180px"
          placeholder="请输入体检号"
          clearable
          @keyup.enter.native="submitForm"
          @blur="hb"
        ></el-input>
      </el-form-item>
      <el-form-item label="单位名称" prop="tjCompName" style="margin-left: 20px">
        <el-select :remote-method="getRemoteData" v-model="queryParams.tjCompName" value-key="drugManufacturerId"
          style="width: 180px" remote filterable placeholder="请选择单位名称" clearable @change="searchSelect">
          <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName" :value="dict" />
      <el-form-item
        label="单位名称"
        prop="tjCompName"
        style="margin-left: 20px"
      >
        <el-select
          :remote-method="getRemoteData"
          v-model="queryParams.tjCompName"
          value-key="drugManufacturerId"
          style="width: 180px"
          remote
          filterable
          placeholder="请选择单位名称"
          clearable
          @change="searchSelect"
        >
          <el-option
            v-for="dict in CompanyList"
            :key="dict.drugManufacturerId"
            :label="dict.cnName"
            :value="dict"
          />
        </el-select>
      </el-form-item>
      <el-form-item label="审核医师" prop="shys">
        <el-input ref="inputName" v-model="queryParams.shys" style="width: 180px" placeholder="请输入审核医师" clearable
          @keyup.enter.native="submitForm"></el-input>
        <el-input
          ref="inputName"
          v-model="queryParams.shys"
          style="width: 180px"
          placeholder="请输入审核医师"
          clearable
          @keyup.enter.native="submitForm"
        ></el-input>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" size="mini" @click="submitForm" style="margin-right: 15px">搜索</el-button>
        <el-button
          type="primary"
          size="mini"
          @click="submitForm"
          style="margin-right: 15px"
          >搜索</el-button
        >
        <el-button size="mini" @click="resetQuery">重置</el-button>
        <el-button type="primary" size="mini" @click="toggleCollapse" style="margin-right: 15px"
          v-show="isCollapsed == 0">高级搜索</el-button>
        <el-button type="primary" size="mini" @click="toggleCollapse3" style="margin-right: 15px"
          v-show="isCollapsed == 1">高级搜索</el-button>
        <el-button
          type="primary"
          size="mini"
          @click="toggleCollapse"
          style="margin-right: 15px"
          v-show="isCollapsed == 0"
          >高级搜索</el-button
        >
        <el-button
          type="primary"
          size="mini"
          @click="toggleCollapse3"
          style="margin-right: 15px"
          v-show="isCollapsed == 1"
          >高级搜索</el-button
        >
      </el-form-item>
      <el-row v-show="isCollapsed == 1" :gutter="20">
        <el-col :span="8">
          <el-form-item label="体检时间" prop="tjTime">
            <el-date-picker v-model="startTime" type="datetimerange" align="right" :picker-options="pickerOptions"
              style="width: 310px" start-placeholder="开始日期" end-placeholder="结束日期"
              :default-time="['00:00:00', '23:00:00']" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm"
              @change="dateChangebirthday1">
            <el-date-picker
              v-model="startTime"
              type="datetimerange"
              align="right"
              :picker-options="pickerOptions"
              style="width: 310px"
              start-placeholder="开始日期"
              end-placeholder="结束日期"
              :default-time="['00:00:00', '23:00:00']"
              format="yyyy-MM-dd HH:mm"
              value-format="yyyy-MM-dd HH:mm"
              @change="dateChangebirthday1"
            >
            </el-date-picker>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px" v-else>
    <el-form
      :model="queryParams"
      ref="tableList"
      :inline="true"
      label-width="76px"
      style="margin-top: 10px"
      v-else
    >
      <el-form-item label="姓名" prop="name">
        <el-input v-model="queryParams.name" style="width: 120px" placeholder="请输入姓名" clearable
          @keyup.enter.native="submitForm"></el-input>
        <el-input
          v-model="queryParams.name"
          style="width: 120px"
          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: 180px" placeholder="请输入体检号" clearable
          @keyup.enter.native="submitForm" @blur="hb"></el-input>
        <el-input
          ref="inputName"
          v-model="queryParams.tjNumber"
          style="width: 180px"
          placeholder="请输入体检号"
          clearable
          @keyup.enter.native="submitForm"
          @blur="hb"
        ></el-input>
      </el-form-item>
      <el-form-item label="体检时间" prop="tjTime">
        <el-date-picker v-model="startTime" type="datetimerange" align="right" :picker-options="pickerOptions"
          style="width: 310px" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:00:00']"
          format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" @change="dateChangebirthday1">
        <el-date-picker
          v-model="startTime"
          type="datetimerange"
          align="right"
          :picker-options="pickerOptions"
          style="width: 310px"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          :default-time="['00:00:00', '23:00:00']"
          format="yyyy-MM-dd HH:mm"
          value-format="yyyy-MM-dd HH:mm"
          @change="dateChangebirthday1"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item label="单位名称" prop="tjCompName" style="margin-left: 20px">
        <el-select :remote-method="getRemoteData" v-model="queryParams.tjCompName" value-key="drugManufacturerId"
          style="width: 180px" remote filterable placeholder="请选择单位名称" clearable @change="searchSelect">
          <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName" :value="dict" />
      <el-form-item
        label="单位名称"
        prop="tjCompName"
        style="margin-left: 20px"
      >
        <el-select
          :remote-method="getRemoteData"
          v-model="queryParams.tjCompName"
          value-key="drugManufacturerId"
          style="width: 180px"
          remote
          filterable
          placeholder="请选择单位名称"
          clearable
          @change="searchSelect"
        >
          <el-option
            v-for="dict in CompanyList"
            :key="dict.drugManufacturerId"
            :label="dict.cnName"
            :value="dict"
          />
        </el-select>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" size="mini" @click="submitForm" style="margin-right: 15px">搜索</el-button>
        <el-button
          type="primary"
          size="mini"
          @click="submitForm"
          style="margin-right: 15px"
          >搜索</el-button
        >
        <el-button size="mini" @click="resetQuery">重置</el-button>
      </el-form-item>
    </el-form>
    <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 20px">
    <el-radio-group
      v-model="tjStatus"
      @input="radioChange"
      style="margin-left: 20px"
    >
      <el-radio-button label="0">未审核</el-radio-button>
      <el-radio-button label="1">已审核</el-radio-button>
    </el-radio-group>
    <template>
      <el-table v-loading="loading" :data="checkList" ref="table" border style="margin: 20px; width: 98%"
        @current-change="handleCurrentChange">
        <el-table-column label="体检号" align="center" prop="tjNumber" :show-overflow-tooltip="true" width="160px"
          fixed="left" />
        <el-table-column label="姓名" align="center" prop="cusName" :show-overflow-tooltip="true" width="100px"
          fixed="left" />
        <el-table-column label="性别" align="center" prop="cusSex" :show-overflow-tooltip="true" width="55px">
      <el-table
        v-loading="loading"
        :data="checkList"
        ref="table"
        border
        style="margin: 20px; width: 98%"
        @current-change="handleCurrentChange"
      >
        <el-table-column
          label="体检号"
          align="center"
          prop="tjNumber"
          :show-overflow-tooltip="true"
          width="160px"
          fixed="left"
        />
        <el-table-column
          label="姓名"
          align="center"
          prop="cusName"
          :show-overflow-tooltip="true"
          width="100px"
          fixed="left"
        />
        <el-table-column
          label="性别"
          align="center"
          prop="cusSex"
          :show-overflow-tooltip="true"
          width="55px"
        >
          <template slot-scope="scope">
            <span v-if="scope.row.cusSex == '0'">男</span>
            <span v-if="scope.row.cusSex == '1'">女</span>
@@ -90,69 +239,210 @@
            <span v-if="scope.row.cusSex == '9'">未说明性别</span>
          </template>
        </el-table-column>
        <el-table-column label="出生日期" align="center" prop="cusBrithday" :show-overflow-tooltip="true" width="110px" />
        <el-table-column label="电话" align="center" prop="cusPhone" :show-overflow-tooltip="true" width="130px" />
        <el-table-column label="审核时间" align="center" prop="shsj" :show-overflow-tooltip="true" width="180px" v-if="tjStatus == 1" />
        <el-table-column label="体检时间" align="center" prop="tjTime" :show-overflow-tooltip="true" width="180px" v-if="tjStatus == 0" />
        <el-table-column
          label="出生日期"
          align="center"
          prop="cusBrithday"
          :show-overflow-tooltip="true"
          width="110px"
        />
        <el-table-column
          label="电话"
          align="center"
          prop="cusPhone"
          :show-overflow-tooltip="true"
          width="130px"
        />
        <el-table-column
          label="审核时间"
          align="center"
          prop="shsj"
          :show-overflow-tooltip="true"
          width="180px"
          v-if="tjStatus == 1"
        />
        <el-table-column
          label="体检时间"
          align="center"
          prop="tjTime"
          :show-overflow-tooltip="true"
          width="180px"
          v-if="tjStatus == 0"
        />
        <!-- <el-table-column label="完成时间" align="center" prop="finishTime" :show-overflow-tooltip="true" width="160px" /> -->
        <el-table-column label="套餐名称" align="center" prop="pacName" :show-overflow-tooltip="true" width="160px" />
        <el-table-column label="状态" align="center" prop="tjStatus" :show-overflow-tooltip="true" width="120px"
          v-if="tjStatus == 0">
        <el-table-column
          label="套餐名称"
          align="center"
          prop="pacName"
          :show-overflow-tooltip="true"
          width="160px"
        />
        <el-table-column
          label="状态"
          align="center"
          prop="tjStatus"
          :show-overflow-tooltip="true"
          width="120px"
          v-if="tjStatus == 0"
        >
          <template slot-scope="scope" v-if="tjStatus == 0">
            <span>{{ scope.row.tjStatus == "1" ? "已审核" : "未审核" }}</span>
          </template>
        </el-table-column>
        <el-table-column label="审核医师" align="center" prop="shys" width="120px" v-if="tjStatus == 1" />
        <el-table-column label="单位名称" align="center" prop="tjCompName" :show-overflow-tooltip="true" />
        <el-table-column
          label="审核医师"
          align="center"
          prop="shys"
          width="120px"
          v-if="tjStatus == 1"
        />
        <el-table-column
          label="单位名称"
          align="center"
          prop="tjCompName"
          :show-overflow-tooltip="true"
        />
        <el-table-column label="体检类别" align="center" prop="tjCategory">
          <template slot-scope="scope">
            <dict-tag :options="dict.type.dict_tjtype" :value="scope.row.tjCategory" />
            <dict-tag
              :options="dict.type.dict_tjtype"
              :value="scope.row.tjCategory"
            />
          </template>
        </el-table-column>
        <el-table-column label="操作" align="center" width="120px" fixed="right">
        <el-table-column
          label="操作"
          align="center"
          width="120px"
          fixed="right"
        >
          <template slot-scope="scope">
            <el-button fixed="right" title="处方" type="text" size="mini" @click.stop="rowClick(scope.row)"
              icon="el-icon-edit-outline"></el-button>
            <el-button fixed="right" title="详情" type="text" size="mini" @click.stop="handleClick(scope.row)"
              icon="el-icon-document-copy"></el-button>
            <el-button type="text" size="mini" @click.stop="viewReport(scope.row)" v-if="scope.row.tjStatus == '1'"
              title="预览" icon="el-icon-view"></el-button>
            <el-button type="text" size="mini" v-if="scope.row.tjStatus == '1'" title="撤销"
              @click.stop="getRevoke(scope.row)" icon="el-icon-refresh-left"></el-button>
            <el-button
              fixed="right"
              title="处方"
              type="text"
              size="mini"
              @click.stop="rowClick(scope.row)"
              icon="el-icon-edit-outline"
            ></el-button>
            <el-button
              fixed="right"
              title="详情"
              type="text"
              size="mini"
              @click.stop="handleClick(scope.row)"
              icon="el-icon-document-copy"
            ></el-button>
            <el-button
              type="text"
              size="mini"
              @click.stop="viewReport(scope.row)"
              v-if="scope.row.tjStatus == '1'"
              title="预览"
              icon="el-icon-view"
            ></el-button>
            <el-button
              type="text"
              size="mini"
              v-if="scope.row.tjStatus == '1'"
              title="撤销"
              @click.stop="getRevoke(scope.row)"
              icon="el-icon-refresh-left"
            ></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="submitForm" />
          <pagination
            v-show="total > 0"
            :total="total"
            :page.sync="queryParams.page"
            :limit.sync="queryParams.pageSize"
            @pagination="submitForm"
          />
        </div>
      </div>
    </template>
    <!-- 点击弹出框 -->
    <el-drawer custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" size="100%"
      :show-close="true">
      <div v-loading="isLoading" element-loading-text="正在加载数据,请稍候..." element-loading-spinner="el-icon-loading"
        element-loading-background="rgba(255, 255, 255, 0.8)" style="height: 100%; padding: 20px; position: relative;">
    <el-drawer
      custom-class="tanchu"
      :visible.sync="drawer"
      :before-close="handleClose"
      :with-header="false"
      size="100%"
      :show-close="true"
    >
      <div
        v-loading="isLoading"
        element-loading-text="正在加载数据,请稍候..."
        element-loading-spinner="el-icon-loading"
        element-loading-background="rgba(255, 255, 255, 0.8)"
        style="height: 100%; padding: 20px; position: relative"
      >
        <div class="top">
          <table style="width: 100%; margin: 10px 10px; border: 1px solid #dfe6ec; border-collapse: collapse;"
            cellspacing="4">
          <table
            style="
              width: 100%;
              margin: 10px 10px;
              border: 1px solid #dfe6ec;
              border-collapse: collapse;
            "
            cellspacing="4"
          >
            <caption style="background-color: #f8f8f9; font-size: 18px">
              {{ tableAll.cusName }}的体检资料
              {{
                tableAll.cusName
              }}的体检资料
            </caption>
            <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; height: 36px;">
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">姓名:</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.cusName }}</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">性别: {{ tableAll.cusSex == 0 ? "男" : tableAll.cusSex == 1 ? "女" : "未知" }}</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">年龄:{{ tableAll.age }}</td>
            <tr
              style="
                border: 1px solid #dfe6ec;
                border-collapse: collapse;
                height: 36px;
              "
            >
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                姓名:
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                {{ tableAll.cusName }}
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                性别:
                {{
                  tableAll.cusSex == 0
                    ? "男"
                    : tableAll.cusSex == 1
                    ? "女"
                    : "未知"
                }}
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                年龄:{{ tableAll.age }}
              </td>
            </tr>
            <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; height: 36px;">
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">体检单号:</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.tjNumber }}</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">体检时间:</td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.tjTime }}</td>
            <tr
              style="
                border: 1px solid #dfe6ec;
                border-collapse: collapse;
                height: 36px;
              "
            >
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                体检单号:
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                {{ tableAll.tjNumber }}
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                体检时间:
              </td>
              <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
                {{ tableAll.tjTime }}
              </td>
            </tr>
          </table>
          <i class="el-icon-close" @click="guanbi"></i>
@@ -165,79 +455,173 @@
            </el-button>
          </div>
          <div class="btn1">
            <el-button @click="historicalreport()" type="primary"><span class="vertical-text">历史报告</span></el-button>
            <el-button @click="historicalreport()" type="primary"
              ><span class="vertical-text">历史报告</span></el-button
            >
          </div>
          <div v-if="tableAll.tjCategory == '02'" class="btn1">
            <el-button @click="medicalhistory()" type="primary"><span class="vertical-text">职业病史</span></el-button>
            <el-button @click="medicalhistory()" type="primary"
              ><span class="vertical-text">职业病史</span></el-button
            >
          </div>
          <div class="btn1" v-if="msgjianqian == 'y' || msgjianqian == 'Y'">
            <el-button @click="jianqian()" type="primary"><span class="vertical-text">检前问诊</span></el-button>
            <el-button @click="jianqian()" type="primary"
              ><span class="vertical-text">检前问诊</span></el-button
            >
          </div>
          <div class="btn1">
            <el-button @click="xiangmuqingkuang()" type="primary"><span class="vertical-text">项目情况</span></el-button>
            <el-button @click="xiangmuqingkuang()" type="primary"
              ><span class="vertical-text">项目情况</span></el-button
            >
          </div>
          <div class="btn1">
            <el-button @click="yichangjieguo()" type="primary"><span class="vertical-text">异常结果</span></el-button>
            <el-button @click="yichangjieguo()" type="primary"
              ><span class="vertical-text">异常结果</span></el-button
            >
          </div>
          <div class="btn1">
            <el-button @click="fuchaxiangmu()" type="primary"><span class="vertical-text">复查项目</span></el-button>
            <el-button @click="fuchaxiangmu()" type="primary"
              ><span class="vertical-text">复查项目</span></el-button
            >
          </div>
          <div class="btn1">
            <el-button @click="yichanghuifu()" type="primary"
              ><span class="vertical-text">异常恢复</span></el-button
            >
          </div>
        </div>
        <div class="box">
          <div class="left-container">
            <div class="left">
              <div v-for="(item, index) in changedate" :key="index">
                <div style="text-align: center; background-color: #aad8df; margin-top: 10px;">
                <div
                  style="
                    text-align: center;
                    background-color: #aad8df;
                    margin-top: 10px;
                  "
                >
                  {{ item.parent || "" }}
                </div>
                <div v-if="item.xmlb == '0'">
                  <el-table :data="item.sons" border style="width: 100%" :row-style="changRed"
                    :header-cell-style="{ background: '#aad8df' }">
                    <el-table-column align="center" label="检测项目" width="464">
                  <el-table
                    :data="item.sons"
                    border
                    style="width: 100%"
                    :row-style="changRed"
                    :header-cell-style="{ background: '#aad8df' }"
                  >
                    <el-table-column
                      align="center"
                      label="检测项目"
                      width="464"
                    >
                      <template slot-scope="scope">
                        <div>{{ scope.row.proName }}</div>
                      </template>
                    </el-table-column>
                    <el-table-column align="center" prop="proResult" label="检测结果" width="180"></el-table-column>
                    <el-table-column
                      align="center"
                      prop="proResult"
                      label="检测结果"
                      width="180"
                    ></el-table-column>
                    <el-table-column align="center" prop="" label="单位">
                      <template slot-scope="scope">
                        <div v-if="scope.row.project != null">{{ scope.row.standard.company || "" }}</div>
                        <div v-if="scope.row.project != null">
                          {{ scope.row.standard.company || "" }}
                        </div>
                        <div v-else>{{ scope.row.proAdvice }}</div>
                      </template>
                    </el-table-column>
                    <el-table-column align="center" prop="conclusion" label="异常" width="180"></el-table-column>
                    <el-table-column
                      align="center"
                      prop="conclusion"
                      label="异常"
                      width="180"
                    ></el-table-column>
                    <el-table-column align="center" prop="" label=" 参考范围">
                      <template slot-scope="scope">
                        <div v-if="scope.row.project != null">
                          {{ scope.row.standard.tjStandardGtValue || "/" + "-" + scope.row.standard.tjStandardLtValue ||
                            "/" }}
                          {{
                            scope.row.standard.tjStandardGtValue ||
                            "/" + "-" + scope.row.standard.tjStandardLtValue ||
                            "/"
                          }}
                        </div>
                        <div v-else>{{ scope.row.stanId || "/" }}</div>
                      </template>
                    </el-table-column>
                  </el-table>
                  <table style="width: 100%" v-if="tjproject != '1'">
                    <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 7%;">
                    <tr
                      style="
                        border: 1px solid #dfe6ec;
                        border-collapse: collapse;
                      "
                    >
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 7%;
                        "
                      >
                        小结:
                      </td>
                      <td style="border: 1px solid #dfe6ec; width: 45%">
                        <el-input v-model="item.remark" disabled></el-input>
                      </td>
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%;">
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 15%;
                        "
                      >
                        主检医师:
                      </td>
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2">
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                        "
                        colspan="2"
                      >
                        {{ item.doctorName }}
                      </td>
                    </tr>
                    <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 200px;">
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 240px;">
                    <tr
                      style="
                        border: 1px solid #dfe6ec;
                        border-collapse: collapse;
                        width: 200px;
                      "
                    >
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 240px;
                        "
                      >
                        备注:
                      </td>
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="3">
                        <el-input type="textarea" autosize placeholder="请输入内容" v-model="changedate[index].remark"
                          v-on:input="change" style="width: 100%"></el-input>
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                        "
                        colspan="3"
                      >
                        <el-input
                          type="textarea"
                          autosize
                          placeholder="请输入内容"
                          v-model="changedate[index].remark"
                          v-on:input="change"
                          style="width: 100%"
                        ></el-input>
                      </td>
                    </tr>
                  </table>
@@ -245,63 +629,161 @@
                <div v-else>
                  <table style="width: 100%" v-if="tjproject != '1'">
                    <tr style="border: 1px solid #dfe6ec">
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%; height: auto;">
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 15%;
                          height: auto;
                        "
                      >
                        检查所见:
                      </td>
                      <td style="border: 1px solid #dfe6ec; height: auto" colspan="2">
                        <el-input type="textarea" autosize placeholder="请输入内容" v-model="item.jgbx"
                          style="width: 100%"></el-input>
                      <td
                        style="border: 1px solid #dfe6ec; height: auto"
                        colspan="2"
                      >
                        <el-input
                          type="textarea"
                          autosize
                          placeholder="请输入内容"
                          v-model="item.jgbx"
                          style="width: 100%"
                        ></el-input>
                      </td>
                    </tr>
                    <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%;">
                    <tr
                      style="
                        border: 1px solid #dfe6ec;
                        border-collapse: collapse;
                      "
                    >
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 15%;
                        "
                      >
                        检查提示:
                      </td>
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2">
                        <el-input type="textarea" autosize placeholder="请输入内容" v-model="item.remark"
                          style="width: 100%"></el-input>
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                        "
                        colspan="2"
                      >
                        <el-input
                          type="textarea"
                          autosize
                          placeholder="请输入内容"
                          v-model="item.remark"
                          style="width: 100%"
                        ></el-input>
                      </td>
                    </tr>
                    <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 200px;">
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%;">
                    <tr
                      style="
                        border: 1px solid #dfe6ec;
                        border-collapse: collapse;
                        width: 200px;
                      "
                    >
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                          width: 15%;
                        "
                      >
                        主检医师:
                      </td>
                      <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2">
                      <td
                        style="
                          border: 1px solid #dfe6ec;
                          border-collapse: collapse;
                        "
                        colspan="2"
                      >
                        {{ item.doctorName }}
                      </td>
                    </tr>
                  </table>
                </div>
              </div>
              <div v-if="tableAll && tableAll.tjCategory === '02'" class="section-title">职业病总检</div>
              <el-form v-if="tableAll && tableAll.tjCategory === '02'" ref="numberValidateForm" label-width="80px"
                class="demo-ruleForm">
              <div
                v-if="tableAll && tableAll.tjCategory === '02'"
                class="section-title"
              >
                职业病总检
              </div>
              <el-form
                v-if="tableAll && tableAll.tjCategory === '02'"
                ref="numberValidateForm"
                label-width="80px"
                class="demo-ruleForm"
              >
                <el-form-item label="检查结论">
                  <el-input type="textarea" placeholder="请输入内容" v-model="zhiyeJl" :rows="3"
                    style="width: 96%"></el-input>
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="zhiyeJl"
                    :rows="3"
                    style="width: 96%"
                  ></el-input>
                </el-form-item>
                <el-form-item label="体检结果">
                  <el-input type="textarea" placeholder="请输入内容" v-model="zhiyeJg" :rows="3"
                    style="width: 96%"></el-input>
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="zhiyeJg"
                    :rows="3"
                    style="width: 96%"
                  ></el-input>
                </el-form-item>
              </el-form>
              <div style="margin: 0 0px 10px 15px" v-if="tjproject != '1'">
                <el-button type="primary" @click="propoChange">快捷建议</el-button>
                <el-button type="primary" @click="proposalChange">生成建议</el-button>
                <el-button type="primary" @click="propoChange"
                  >快捷建议</el-button
                >
                <el-button type="primary" @click="proposalChange"
                  >生成建议</el-button
                >
              </div>
              <el-form ref="numberValidateForm" label-width="80px" class="demo-ruleForm" v-if="tjproject != '1'">
              <el-form
                ref="numberValidateForm"
                label-width="80px"
                class="demo-ruleForm"
                v-if="tjproject != '1'"
              >
                <el-form-item label="总检建议">
                  <el-input type="textarea" placeholder="请输入内容" v-model="textarea1" :rows="3"
                    style="width: 96%"></el-input>
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="textarea1"
                    :rows="3"
                    style="width: 96%"
                  ></el-input>
                </el-form-item>
              </el-form>
              <div slot="footer" class="dialog-footers">
                <el-button type="primary" @click.stop="guanbi">取消</el-button>
                <el-button v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" type="primary"
                  @click.stop="rowClick" icon="el-icon-edit-outline">开处方</el-button>
                <el-button
                  v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')"
                  type="primary"
                  @click.stop="rowClick"
                  icon="el-icon-edit-outline"
                  >开处方</el-button
                >
                <div v-if="tjproject == '0'">
                  <el-button type="primary" @click="determine" :disabled="isdisabled">提交并生成报告</el-button>
                  <el-button
                    type="primary"
                    @click="determine"
                    :disabled="isdisabled"
                    >提交并生成报告</el-button
                  >
                </div>
              </div>
            </div>
@@ -310,28 +792,60 @@
            <div class="right">
              <template v-if="status1 == 0">
                <div v-for="(item, index) in yichangList" :key="index">
                  <div style="text-align: center; background-color: #67c23a; margin-top: 10px;">
                  <div
                    style="
                      text-align: center;
                      background-color: #67c23a;
                      margin-top: 10px;
                    "
                  >
                    {{ item.proName || "" }}
                  </div>
                  <template v-if="item.jyjc == '0'">
                    <el-table :stripe="true" :row-style="red" :data="item.sone" border style="width: 100%"
                      :header-cell-style="{ background: '#67C23A' }" :expand-row-keys="expends" :row-key="getRowKeys">
                    <el-table
                      :stripe="true"
                      :row-style="red"
                      :data="item.sone"
                      border
                      style="width: 100%"
                      :header-cell-style="{ background: '#67C23A' }"
                      :expand-row-keys="expends"
                      :row-key="getRowKeys"
                    >
                      <el-table-column type="expand">
                        <template slot-scope="props">
                          <div style="padding: 10px;">
                          <div style="padding: 10px">
                            <!-- 内容区域 -->
                            <div v-if="props.row.advices && props.row.advices.length > 0">
                              <div v-for="(jianyi, index1) in props.row.advices" :key="index1"
                                style="margin-bottom: 10px">
                            <div
                              v-if="
                                props.row.advices &&
                                props.row.advices.length > 0
                              "
                            >
                              <div
                                v-for="(jianyi, index1) in props.row.advices"
                                :key="index1"
                                style="margin-bottom: 10px"
                              >
                                <div>
                                  标题:
                                  <el-input v-model="jianyi.bt" size="small" type="textarea" autosize
                                    @blur="handleAdviceBlur(props.row, index1)"></el-input>
                                  <el-input
                                    v-model="jianyi.bt"
                                    size="small"
                                    type="textarea"
                                    autosize
                                    @blur="handleAdviceBlur(props.row, index1)"
                                  ></el-input>
                                </div>
                                <div>
                                  内容:
                                  <el-input v-model="jianyi.nr" size="small" type="textarea" autosize
                                    @blur="handleAdviceBlur(props.row, index1)"></el-input>
                                  <el-input
                                    v-model="jianyi.nr"
                                    size="small"
                                    type="textarea"
                                    autosize
                                    @blur="handleAdviceBlur(props.row, index1)"
                                  ></el-input>
                                </div>
                              </div>
                            </div>
@@ -339,50 +853,111 @@
                            <div v-else>
                              <div>
                                标题:
                                <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize
                                  @blur="handleAdviceBlur(props.row, -1)"></el-input>
                                <el-input
                                  v-model="emptyAdvice.bt"
                                  size="small"
                                  type="textarea"
                                  autosize
                                  @blur="handleAdviceBlur(props.row, -1)"
                                ></el-input>
                              </div>
                              <div>
                                内容:
                                <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize
                                  @blur="handleAdviceBlur(props.row, -1)"></el-input>
                                <el-input
                                  v-model="emptyAdvice.nr"
                                  size="small"
                                  type="textarea"
                                  autosize
                                  @blur="handleAdviceBlur(props.row, -1)"
                                ></el-input>
                              </div>
                            </div>
                            <div style="margin-top: 10px;">
                              <el-button @click="shanchu(props.row)" type="danger" size="small">删除</el-button>
                            <div style="margin-top: 10px">
                              <el-button
                                @click="shanchu(props.row)"
                                type="danger"
                                size="small"
                                >删除</el-button
                              >
                            </div>
                          </div>
                        </template>
                      </el-table-column>
                      <el-table-column align="center" label="检测项目" :show-overflow-tooltip="true" width="353">
                      <el-table-column
                        align="center"
                        label="检测项目"
                        :show-overflow-tooltip="true"
                        width="353"
                      >
                        <template slot-scope="scope">
                          <div>{{ scope.row.proName }}</div>
                        </template>
                      </el-table-column>
                      <el-table-column align="center" prop="proResult" label="检测结果" width="85"></el-table-column>
                      <el-table-column align="center" prop="stanId" label=" 参考范围" width="117"></el-table-column>
                      <el-table-column align="center" prop="proAdvice" label="单位" width="78"></el-table-column>
                      <el-table-column
                        align="center"
                        prop="proResult"
                        label="检测结果"
                        width="85"
                      ></el-table-column>
                      <el-table-column
                        align="center"
                        prop="stanId"
                        label=" 参考范围"
                        width="117"
                      ></el-table-column>
                      <el-table-column
                        align="center"
                        prop="proAdvice"
                        label="单位"
                        width="78"
                      ></el-table-column>
                    </el-table>
                  </template>
                  <template v-if="item.jyjc == '1'">
                    <el-table :stripe="true" :row-style="red" :data="item.sone" border style="width: 100%"
                      :header-cell-style="{ background: '#67C23A' }" :expand-row-keys="expends" :row-key="getRowKeys">
                    <el-table
                      :stripe="true"
                      :row-style="red"
                      :data="item.sone"
                      border
                      style="width: 100%"
                      :header-cell-style="{ background: '#67C23A' }"
                      :expand-row-keys="expends"
                      :row-key="getRowKeys"
                    >
                      <el-table-column type="expand">
                        <template slot-scope="props">
                          <div style="padding: 10px;">
                          <div style="padding: 10px">
                            <!-- 内容区域 -->
                            <div v-if="props.row.advices && props.row.advices.length > 0">
                              <div v-for="(jianyi, index1) in props.row.advices" :key="index1"
                                style="margin-bottom: 10px">
                            <div
                              v-if="
                                props.row.advices &&
                                props.row.advices.length > 0
                              "
                            >
                              <div
                                v-for="(jianyi, index1) in props.row.advices"
                                :key="index1"
                                style="margin-bottom: 10px"
                              >
                                <div>
                                  标题:
                                  <el-input v-model="jianyi.bt" size="small" type="textarea" autosize
                                    @blur="handleAdviceBlur(props.row, index1)"></el-input>
                                  <el-input
                                    v-model="jianyi.bt"
                                    size="small"
                                    type="textarea"
                                    autosize
                                    @blur="handleAdviceBlur(props.row, index1)"
                                  ></el-input>
                                </div>
                                <div>
                                  内容:
                                  <el-input v-model="jianyi.nr" size="small" type="textarea" autosize
                                    @blur="handleAdviceBlur(props.row, index1)"></el-input>
                                  <el-input
                                    v-model="jianyi.nr"
                                    size="small"
                                    type="textarea"
                                    autosize
                                    @blur="handleAdviceBlur(props.row, index1)"
                                  ></el-input>
                                </div>
                              </div>
                            </div>
@@ -390,22 +965,42 @@
                            <div v-else>
                              <div>
                                标题:
                                <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize
                                  @blur="handleAdviceBlur(props.row, -1)"></el-input>
                                <el-input
                                  v-model="emptyAdvice.bt"
                                  size="small"
                                  type="textarea"
                                  autosize
                                  @blur="handleAdviceBlur(props.row, -1)"
                                ></el-input>
                              </div>
                              <div>
                                内容:
                                <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize
                                  @blur="handleAdviceBlur(props.row, -1)"></el-input>
                                <el-input
                                  v-model="emptyAdvice.nr"
                                  size="small"
                                  type="textarea"
                                  autosize
                                  @blur="handleAdviceBlur(props.row, -1)"
                                ></el-input>
                              </div>
                            </div>
                            <div style="margin-top: 10px;">
                              <el-button @click="shanchu(props.row)" type="danger" size="small">删除</el-button>
                            <div style="margin-top: 10px">
                              <el-button
                                @click="shanchu(props.row)"
                                type="danger"
                                size="small"
                                >删除</el-button
                              >
                            </div>
                          </div>
                        </template>
                      </el-table-column>
                      <el-table-column align="center" label="检测项目" width="232" :show-overflow-tooltip="true">
                      <el-table-column
                        align="center"
                        label="检测项目"
                        width="232"
                        :show-overflow-tooltip="true"
                      >
                        <template slot-scope="scope">
                          <span v-if="scope.row.type == '0'">未审核</span>
                          <span v-if="scope.row.type == '1'">已审核</span>
@@ -413,22 +1008,52 @@
                          <span v-if="scope.row.type == '3'">延期</span>
                        </template>
                      </el-table-column>
                      <el-table-column align="center" prop="proResult" label="检测结果" width="403"></el-table-column>
                      <el-table-column
                        align="center"
                        prop="proResult"
                        label="检测结果"
                        width="403"
                      ></el-table-column>
                    </el-table>
                  </template>
                </div>
              </template>
              <template v-if="status1 == 1">
                <div>
                  <div style="text-align: center; background-color: #e6a23c; margin-top: 10px;">
                  <div
                    style="
                      text-align: center;
                      background-color: #e6a23c;
                      margin-top: 10px;
                    "
                  >
                    项目检查情况
                  </div>
                  <el-table :row-style="redxiangmu" :data="statusList" style="width: 100%"
                    :header-cell-style="{ background: '#e6a23c' }">
                    <el-table-column align="center" label="部门" width="144" prop="deptName"></el-table-column>
                    <el-table-column align="center" prop="proName" label="项目" width="260"></el-table-column>
                    <el-table-column label="状态" align="center" prop="type" :show-overflow-tooltip="true" width="120">
                  <el-table
                    :row-style="redxiangmu"
                    :data="statusList"
                    style="width: 100%"
                    :header-cell-style="{ background: '#e6a23c' }"
                  >
                    <el-table-column
                      align="center"
                      label="部门"
                      width="144"
                      prop="deptName"
                    ></el-table-column>
                    <el-table-column
                      align="center"
                      prop="proName"
                      label="项目"
                      width="260"
                    ></el-table-column>
                    <el-table-column
                      label="状态"
                      align="center"
                      prop="type"
                      :show-overflow-tooltip="true"
                      width="120"
                    >
                      <template slot-scope="scope">
                        <span v-if="scope.row.type == '0'">未审核</span>
                        <span v-if="scope.row.type == '1'">已审核</span>
@@ -436,10 +1061,21 @@
                        <span v-if="scope.row.type == '3'">延期</span>
                      </template>
                    </el-table-column>
                    <el-table-column label="检查时间" align="center" prop="bcupdateTime" width="160" />
                     <el-table-column label="操作" align="center" width="130px">
                    <el-table-column
                      label="检查时间"
                      align="center"
                      prop="bcupdateTime"
                      width="160"
                    />
                    <el-table-column label="操作" align="center" width="130px">
                      <template slot-scope="scope">
                        <el-button type="primary" size="mini" @click="huifu" v-if="scope.row.type == '2'">恢复</el-button>
                        <el-button
                          type="primary"
                          size="mini"
                          @click="huifu"
                          v-if="scope.row.type == '2'"
                          >恢复</el-button
                        >
                      </template>
                    </el-table-column>
                  </el-table>
@@ -448,34 +1084,77 @@
              <template v-if="status1 == 2">
                <div>
                  <div style="text-align: center; margin-top: 10px;">
                  <div style="text-align: center; margin-top: 10px">
                    复查项目
                  </div>
                  <div style="display: flex;margin:15px ;">
                    <span slot="label" style="display: inline-block; border-bottom: 2px solid blue;font-size: 0.8vw;"
                      @click="handleQuery">
                  <div style="display: flex; margin: 15px">
                    <span
                      slot="label"
                      style="
                        display: inline-block;
                        border-bottom: 2px solid blue;
                        font-size: 0.8vw;
                      "
                      @click="handleQuery"
                    >
                      项目选择
                    </span>
                    <div v-if="xmChange.length > 0" style="display: flex;">
                      <div style="margin:0 40px;font-size: 0.8vw;">项目名称:{{ xmChange[0].proName || "" }}</div>
                      <div style="margin:0 80px ;font-size: 0.8vw;">价格:{{ xmChange[0].price || "" }}</div>
                    <div v-if="xmChange.length > 0" style="display: flex">
                      <div style="margin: 0 40px; font-size: 0.8vw">
                        项目名称:{{ xmChange[0].proName || "" }}
                      </div>
                      <div style="margin: 0 80px; font-size: 0.8vw">
                        价格:{{ xmChange[0].price || "" }}
                      </div>
                    </div>
                    <div v-else style="display: flex;">
                      <div style="margin:0 40px;font-size: 0.8vw;">项目名称:{{ }}</div>
                      <div style="margin:0 80px ;font-size: 0.8vw;">价格:{{ }}</div>
                    <div v-else style="display: flex">
                      <div style="margin: 0 40px; font-size: 0.8vw">
                        项目名称:{{}}
                      </div>
                      <div style="margin: 0 80px; font-size: 0.8vw">
                        价格:{{}}
                      </div>
                    </div>
                    <el-button type="primary" size="mini" @click="handleaddClick()">添加</el-button>
                    <el-button
                      type="primary"
                      size="mini"
                      @click="handleaddClick()"
                      >添加</el-button
                    >
                  </div>
                  <el-table :row-style="redxiangmu" :data="fcList" style="width: 100%" border>
                    <el-table-column type="selection" width="40" align="center" />
                  <el-table
                    :row-style="redxiangmu"
                    :data="fcList"
                    style="width: 100%"
                    border
                  >
                    <el-table-column
                      type="selection"
                      width="40"
                      align="center"
                    />
                    <el-table-column label="序号" align="center" prop="newID" />
                    <el-table-column label="名称" align="center" prop="proName" width="100px" />
                    <el-table-column
                      label="名称"
                      align="center"
                      prop="proName"
                      width="100px"
                    />
                    <el-table-column label="价格" align="center" prop="price" />
                    <el-table-column label="科室" align="center" prop="deptName" />
                    <el-table-column
                      label="科室"
                      align="center"
                      prop="deptName"
                    />
                    <el-table-column label="操作" align="center" width="130px">
                      <template slot-scope="scope">
                        <el-button type="primary" size="mini" @click="handledeleteClick(scope.row)">删除</el-button>
                        <el-button
                          type="primary"
                          size="mini"
                          @click="handledeleteClick(scope.row)"
                          >删除</el-button
                        >
                      </template>
                    </el-table-column>
                  </el-table>
@@ -484,141 +1163,315 @@
              <template v-if="status1 == 3">
                <div class="hist3">
                  <span class="txt">问诊信息</span>
                  <el-form ref="form" :model="formobj" label-width="100px" :inline="true" size="mini">
                  <el-form
                    ref="form"
                    :model="formobj"
                    label-width="100px"
                    :inline="true"
                    size="mini"
                  >
                    <el-collapse class="coll" v-model="activeName" accordion>
                      <el-collapse-item class="coll" title="基本信息" name="1" style="width: 100%; font-weight: 600">
                      <el-collapse-item
                        class="coll"
                        title="基本信息"
                        name="1"
                        style="width: 100%; font-weight: 600"
                      >
                        <div style="width: 100%">
                          <el-form-item label="姓名" prop="cusName">
                            <el-input disabled v-model="formobj.cusName" placeholder="请输入姓名" />
                            <el-input
                              disabled
                              v-model="formobj.cusName"
                              placeholder="请输入姓名"
                            />
                          </el-form-item>
                          <el-form-item label="职业" prop="work">
                            <el-select filterable v-model="formobj.work" placeholder="请选择职业" clearable
                              style="width: 150px" disabled>
                              <el-option v-for="dict in dict.type.tj_work" :key="dict.value" :label="dict.label"
                                :value="dict.value" />
                            <el-select
                              filterable
                              v-model="formobj.work"
                              placeholder="请选择职业"
                              clearable
                              style="width: 150px"
                              disabled
                            >
                              <el-option
                                v-for="dict in dict.type.tj_work"
                                :key="dict.value"
                                :label="dict.label"
                                :value="dict.value"
                              />
                            </el-select>
                          </el-form-item>
                          <el-form-item label="工作状态" prop="workStatus">
                            <el-select disabled filterable v-model="formobj.workStatus" placeholder="请选择工作状态" clearable
                              style="width: 150px">
                              <el-option v-for="dict in dict.type.tj_work_status" :key="dict.value" :label="dict.label"
                                :value="dict.value" />
                            <el-select
                              disabled
                              filterable
                              v-model="formobj.workStatus"
                              placeholder="请选择工作状态"
                              clearable
                              style="width: 150px"
                            >
                              <el-option
                                v-for="dict in dict.type.tj_work_status"
                                :key="dict.value"
                                :label="dict.label"
                                :value="dict.value"
                              />
                            </el-select>
                          </el-form-item>
                          <el-form-item label="接触毒物" prop="contactPoison">
                            <el-input disabled type="textarea" rows="4" v-model="formobj.contactPoison"
                              placeholder="请输入接触毒物" style="width: 700px" />
                            <el-input
                              disabled
                              type="textarea"
                              rows="4"
                              v-model="formobj.contactPoison"
                              placeholder="请输入接触毒物"
                              style="width: 700px"
                            />
                          </el-form-item>
                          <el-form-item label="既往病史" prop="medicalHistory">
                            <el-input disabled type="textarea" rows="4" v-model="formobj.medicalHistory"
                              placeholder="请输入既往病史" style="width: 700px" />
                            <el-input
                              disabled
                              type="textarea"
                              rows="4"
                              v-model="formobj.medicalHistory"
                              placeholder="请输入既往病史"
                              style="width: 700px"
                            />
                          </el-form-item>
                        </div>
                      </el-collapse-item>
                      <el-collapse-item title="月经史" name="2" v-show="sex">
                        <div style="width: 100%">
                          <el-form-item label="初潮(岁)" prop="chuchao">
                            <el-input v-model="formobj.chuchao" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.chuchao"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                          <el-form-item label="经期" prop="jingqi">
                            <el-input v-model="formobj.jingqi" disabled style="width: 70px" />天
                            <el-input
                              v-model="formobj.jingqi"
                              disabled
                              style="width: 70px"
                            />天
                          </el-form-item>
                          <el-form-item label="周期" prop="zhouqi">
                            <el-input v-model="formobj.zhouqi" disabled style="width: 70px" />天
                            <el-input
                              v-model="formobj.zhouqi"
                              disabled
                              style="width: 70px"
                            />天
                          </el-form-item>
                          <el-form-item label="末次月经" prop="mociage">
                            <el-input v-model="formobj.mociage" disabled style="width: 100px" />
                            <el-input
                              v-model="formobj.mociage"
                              disabled
                              style="width: 100px"
                            />
                          </el-form-item>
                        </div>
                      </el-collapse-item>
                      <el-collapse-item title="生育史" name="3" v-show="sex">
                        <div style="width: 100%">
                          <el-form-item label="现有子女(人)" prop="zinv">
                            <el-input v-model="formobj.zinv" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.zinv"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                          <el-form-item label="流产(次)" prop="liuchan">
                            <el-input v-model="formobj.liuchan" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.liuchan"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                          <el-form-item label="早产(次)" prop="zaochan">
                            <el-input v-model="formobj.zaochan" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.zaochan"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                          <el-form-item label="死产(次)" prop="sichan">
                            <el-input v-model="formobj.sichan" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.sichan"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                          <el-form-item label="异常胎(次)" prop="yichangtai">
                            <el-input v-model="formobj.yichangtai" style="width: 70px" disabled />
                            <el-input
                              v-model="formobj.yichangtai"
                              style="width: 70px"
                              disabled
                            />
                          </el-form-item>
                        </div>
                      </el-collapse-item>
                      <el-collapse-item title="烟酒史" name="4">
                        <div style="width: 100%">
                          <el-form-item label="是否吸烟" prop="xiyan">
                            <el-select disabled filterable v-model="formobj.xiyan" placeholder="请选择是否吸烟" clearable
                              style="width: 150px">
                              <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value"
                                :label="dict.label" :value="dict.value" />
                            <el-select
                              disabled
                              filterable
                              v-model="formobj.xiyan"
                              placeholder="请选择是否吸烟"
                              clearable
                              style="width: 150px"
                            >
                              <el-option
                                v-for="dict in dict.type.tj_smoking_pinlv"
                                :key="dict.value"
                                :label="dict.label"
                                :value="dict.value"
                              />
                            </el-select>
                          </el-form-item>
                          <el-form-item label="吸烟频率" prop="xiyanpinlv">
                            <el-input v-model="formobj.xiyanpinlv" disabled style="width: 70px" />支/天
                            <el-input
                              v-model="formobj.xiyanpinlv"
                              disabled
                              style="width: 70px"
                            />支/天
                          </el-form-item>
                          <el-form-item label="吸烟时间" prop="xiyanyear">
                            <el-input v-model="formobj.xiyanyear" disabled style="width: 70px" />年
                          </el-form-item><br />
                            <el-input
                              v-model="formobj.xiyanyear"
                              disabled
                              style="width: 70px"
                            />年 </el-form-item
                          ><br />
                          <el-form-item label="是否饮酒" prop="yinjiu">
                            <el-select filterable v-model="formobj.yinjiu" disabled placeholder="请选择是否饮酒" clearable
                              style="width: 150px">
                              <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value"
                                :label="dict.label" :value="dict.value" />
                            <el-select
                              filterable
                              v-model="formobj.yinjiu"
                              disabled
                              placeholder="请选择是否饮酒"
                              clearable
                              style="width: 150px"
                            >
                              <el-option
                                v-for="dict in dict.type.tj_smoking_pinlv"
                                :key="dict.value"
                                :label="dict.label"
                                :value="dict.value"
                              />
                            </el-select>
                          </el-form-item>
                          <el-form-item label="饮酒频率" prop="yinjiupinlv">
                            <el-input v-model="formobj.yinjiupinlv" disabled style="width: 70px" />ml/天
                            <el-input
                              v-model="formobj.yinjiupinlv"
                              disabled
                              style="width: 70px"
                            />ml/天
                          </el-form-item>
                          <el-form-item label="饮酒时间" prop="yinjiuyear">
                            <el-input v-model="formobj.yinjiuyear" disabled style="width: 70px" />年
                            <el-input
                              v-model="formobj.yinjiuyear"
                              disabled
                              style="width: 70px"
                            />年
                          </el-form-item>
                          <el-form-item label="其他" prop="qita">
                            <el-input v-model="formobj.qita" placeholder="请输入其他" disabled type="textarea"
                              style="width: 600px" rows="2" />
                            <el-input
                              v-model="formobj.qita"
                              placeholder="请输入其他"
                              disabled
                              type="textarea"
                              style="width: 600px"
                              rows="2"
                            />
                          </el-form-item>
                        </div>
                      </el-collapse-item>
                      <el-collapse-item title="急慢性职业病史信息" name="5">
                        <div style="width: 100%">
                          <el-table border :data="formobj.tjAskHistorysList" ref="tjAskHistorys" style="width: 98%">
                            <el-table-column type="selection" width="40" align="center" />
                            <el-table-column label="疾病名称" prop="diseaseName">
                          <el-table
                            border
                            :data="formobj.tjAskHistorysList"
                            ref="tjAskHistorys"
                            style="width: 98%"
                          >
                            <el-table-column
                              type="selection"
                              width="40"
                              align="center"
                            />
                            <el-table-column
                              label="疾病名称"
                              prop="diseaseName"
                            >
                              <template slot-scope="scope">
                                <el-input size="mini" disabled v-model="scope.row.diseaseName" placeholder="请输入疾病名称" />
                                <el-input
                                  size="mini"
                                  disabled
                                  v-model="scope.row.diseaseName"
                                  placeholder="请输入疾病名称"
                                />
                              </template>
                            </el-table-column>
                            <el-table-column label="诊断日期" prop="diseaseData">
                            <el-table-column
                              label="诊断日期"
                              prop="diseaseData"
                            >
                              <template slot-scope="scope">
                                <el-date-picker size="mini" v-model="scope.row.diseaseData" align="right" type="date"
                                  placeholder="选择日期" :picker-options="pickerOptions" style="width: 130px"
                                  value-format="yyyy-MM-dd">
                                <el-date-picker
                                  size="mini"
                                  v-model="scope.row.diseaseData"
                                  align="right"
                                  type="date"
                                  placeholder="选择日期"
                                  :picker-options="pickerOptions"
                                  style="width: 130px"
                                  value-format="yyyy-MM-dd"
                                >
                                </el-date-picker>
                              </template>
                            </el-table-column>
                            <el-table-column label="诊断单位" prop="diseaseCompany">
                            <el-table-column
                              label="诊断单位"
                              prop="diseaseCompany"
                            >
                              <template slot-scope="scope">
                                <el-input size="mini" disabled v-model="scope.row.diseaseCompany"
                                  placeholder="请输入诊断单位" />
                                <el-input
                                  size="mini"
                                  disabled
                                  v-model="scope.row.diseaseCompany"
                                  placeholder="请输入诊断单位"
                                />
                              </template>
                            </el-table-column>
                            <el-table-column label="是否痊愈" prop="isOk">
                              <template slot-scope="scope">
                                <el-select disabled filterable size="mini" v-model="scope.row.isOk"
                                  placeholder="请选择是否痊愈" clearable>
                                  <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label"
                                    :value="dict.value" />
                                <el-select
                                  disabled
                                  filterable
                                  size="mini"
                                  v-model="scope.row.isOk"
                                  placeholder="请选择是否痊愈"
                                  clearable
                                >
                                  <el-option
                                    v-for="dict in dict.type.sys_yes_no"
                                    :key="dict.value"
                                    :label="dict.label"
                                    :value="dict.value"
                                  />
                                </el-select>
                              </template>
                            </el-table-column>
                            <el-table-column label="备注" prop="remark">
                              <template slot-scope="scope">
                                <el-input disabled size="mini" v-model="scope.row.remark" placeholder="请输入备注" />
                                <el-input
                                  disabled
                                  size="mini"
                                  v-model="scope.row.remark"
                                  placeholder="请输入备注"
                                />
                              </template>
                            </el-table-column>
                          </el-table>
@@ -626,51 +1479,111 @@
                      </el-collapse-item>
                      <el-collapse-item title="职业史" name="7">
                        <div style="width: 100%">
                          <el-table border :data="formobj.workLogs" style="width: 98%">
                            <el-table-column type="selection" width="40" align="center" />
                          <el-table
                            border
                            :data="formobj.workLogs"
                            style="width: 98%"
                          >
                            <el-table-column
                              type="selection"
                              width="40"
                              align="center"
                            />
                            <el-table-column label="开始时间" prop="beginTime">
                              <template slot-scope="scope">
                                <el-date-picker size="mini" v-model="scope.row.beginTime" align="right" type="date"
                                  placeholder="选择日期" :picker-options="pickerOptions" style="width: 130px"
                                  value-format="yyyy-MM-dd">
                                <el-date-picker
                                  size="mini"
                                  v-model="scope.row.beginTime"
                                  align="right"
                                  type="date"
                                  placeholder="选择日期"
                                  :picker-options="pickerOptions"
                                  style="width: 130px"
                                  value-format="yyyy-MM-dd"
                                >
                                </el-date-picker>
                              </template>
                            </el-table-column>
                            <el-table-column label="结束时间" prop="endTime">
                              <template slot-scope="scope">
                                <el-date-picker size="mini" disabled v-model="scope.row.endTime" align="right"
                                  type="date" placeholder="选择日期" :picker-options="pickerOptions" style="width: 130px"
                                  value-format="yyyy-MM-dd">
                                <el-date-picker
                                  size="mini"
                                  disabled
                                  v-model="scope.row.endTime"
                                  align="right"
                                  type="date"
                                  placeholder="选择日期"
                                  :picker-options="pickerOptions"
                                  style="width: 130px"
                                  value-format="yyyy-MM-dd"
                                >
                                </el-date-picker>
                              </template>
                            </el-table-column>
                            <el-table-column label="工作单位" prop="workCompany">
                            <el-table-column
                              label="工作单位"
                              prop="workCompany"
                            >
                              <template slot-scope="scope">
                                <el-input size="mini" disabled v-model="scope.row.workCompany" placeholder="请输入工作单位" />
                                <el-input
                                  size="mini"
                                  disabled
                                  v-model="scope.row.workCompany"
                                  placeholder="请输入工作单位"
                                />
                              </template>
                            </el-table-column>
                            <el-table-column label="部门" prop="workDept">
                              <template slot-scope="scope">
                                <el-input disabled size="mini" v-model="scope.row.workDept" placeholder="请输入部门" />
                                <el-input
                                  disabled
                                  size="mini"
                                  v-model="scope.row.workDept"
                                  placeholder="请输入部门"
                                />
                              </template>
                            </el-table-column>
                            <el-table-column label="工种" prop="workType">
                              <template slot-scope="scope">
                                <el-input disabled size="mini" v-model="scope.row.workType" placeholder="请输入工种" />
                                <el-input
                                  disabled
                                  size="mini"
                                  v-model="scope.row.workType"
                                  placeholder="请输入工种"
                                />
                              </template>
                            </el-table-column>
                            <el-table-column label="有害因素" prop="harmTypeLogs">
                            <el-table-column
                              label="有害因素"
                              prop="harmTypeLogs"
                            >
                              <template slot-scope="scope">
                                <el-select filterable disabled size="mini" v-model="scope.row.harmTypeLogs" multiple
                                  placeholder="请选择有害因素" clearable>
                                  <el-option v-for="dict in harmTypeList" :key="dict.aid" :label="dict.harmtype"
                                    :value="dict.aid" />
                                <el-select
                                  filterable
                                  disabled
                                  size="mini"
                                  v-model="scope.row.harmTypeLogs"
                                  multiple
                                  placeholder="请选择有害因素"
                                  clearable
                                >
                                  <el-option
                                    v-for="dict in harmTypeList"
                                    :key="dict.aid"
                                    :label="dict.harmtype"
                                    :value="dict.aid"
                                  />
                                </el-select>
                              </template>
                            </el-table-column>
                            <el-table-column label="防护措施" prop="fangHu">
                              <template slot-scope="scope">
                                <el-input disabled size="mini" v-model="scope.row.fangHu" placeholder="请输入防护措施" />
                                <el-input
                                  disabled
                                  size="mini"
                                  v-model="scope.row.fangHu"
                                  placeholder="请输入防护措施"
                                />
                              </template>
                            </el-table-column>
                          </el-table>
@@ -680,62 +1593,177 @@
                  </el-form>
                </div>
              </template>
              <el-button type="primary" @click="addnew" :disabled="isdisabled" style="margin-top: 20px;">新增</el-button>
              <template v-if="status1 == 4">
                <div>
                  <el-table
                    :data="ychfList"
                    style="width: 100%"
                    :header-cell-style="{ background: '#e6a23c' }"
                  >
                    <el-table-column
                      align="center"
                      prop="jcxm"
                      label="项目名"
                      width="260"
                    ></el-table-column>
                    <el-table-column
                      label="结果"
                      align="center"
                      prop="jcjg"
                      width="160"
                    />
                    <el-table-column label="操作" align="center" width="130px">
                      <template v-slot="scope">
                        <el-button
                          type="primary"
                          size="mini"
                          @click="hfyc(scope.row.id)"
                          >恢复</el-button
                        >
                      </template>
                    </el-table-column>
                  </el-table>
                </div>
              </template>
              <el-button
                type="primary"
                @click="addnew"
                :disabled="isdisabled"
                style="margin-top: 20px"
                >新增</el-button
              >
            </div>
          </div>
        </div>
      </div>
    </el-drawer>
    <el-dialog title="PDF 预览" :visible.sync="dialogVisible" :close-on-click-modal="false" width="50%">
    <el-dialog
      title="PDF 预览"
      :visible.sync="dialogVisible"
      :close-on-click-modal="false"
      width="50%"
    >
      <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-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>
    </el-dialog>
    <el-dialog title="新增异常结果" :visible.sync="addNewDialogVisible" width="900px" class="custom-dialog">
      <el-form :model="newItem" ref="newItemForm" label-width="100px" class="custom-form">
    <el-dialog
      title="新增异常结果"
      :visible.sync="addNewDialogVisible"
      width="900px"
      class="custom-dialog"
    >
      <el-form
        :model="newItem"
        ref="newItemForm"
        label-width="100px"
        class="custom-form"
      >
        <el-form-item label="项目分类" prop="parentName">
          <el-select v-model="newItem.parentName" placeholder="请选择项目分类" clearable filterable
            @change="handleCategoryChange">
            <el-option v-for="item in projectCategories" :key="item.proId" :label="item.proName"
              :value="item.proName" />
          <el-select
            v-model="newItem.parentName"
            placeholder="请选择项目分类"
            clearable
            filterable
            @change="handleCategoryChange"
          >
            <el-option
              v-for="item in projectCategories"
              :key="item.proId"
              :label="item.proName"
              :value="item.proName"
            />
          </el-select>
        </el-form-item>
        <el-form-item label="检测项目" prop="jcxm">
          <el-input v-model="newItem.jcxm" placeholder="请输入检测项目或从分类选择" clearable></el-input>
          <el-input
            v-model="newItem.jcxm"
            placeholder="请输入检测项目或从分类选择"
            clearable
          ></el-input>
        </el-form-item>
        <el-form-item label="检测结果" prop="jcjg">
          <el-input v-model="newItem.jcjg" placeholder="请输入检测结果" clearable></el-input>
          <el-input
            v-model="newItem.jcjg"
            placeholder="请输入检测结果"
            clearable
          ></el-input>
        </el-form-item>
        <el-form-item label="参考范围" prop="ckfw">
          <el-input v-model="newItem.ckfw" placeholder="请输入参考范围" clearable></el-input>
          <el-input
            v-model="newItem.ckfw"
            placeholder="请输入参考范围"
            clearable
          ></el-input>
        </el-form-item>
        <el-form-item label="单位" prop="dw">
          <el-input v-model="newItem.dw" placeholder="请输入单位" clearable></el-input>
          <el-input
            v-model="newItem.dw"
            placeholder="请输入单位"
            clearable
          ></el-input>
        </el-form-item>
        <!-- 动态建议组 -->
        <div v-for="(advice, index) in newItem.map" :key="index" class="advice-group">
        <div
          v-for="(advice, index) in newItem.map"
          :key="index"
          class="advice-group"
        >
          <el-form-item label="建议标题" :prop="'map.' + index + '.bt'">
            <el-input v-model="advice.bt" placeholder="请输入建议标题" clearable @focus="tan($event)"></el-input>
            <el-input
              v-model="advice.bt"
              placeholder="请输入建议标题"
              clearable
              @focus="tan($event)"
            ></el-input>
          </el-form-item>
          <el-form-item label="建议内容" :prop="'map.' + index + '.nr'">
            <el-input v-model="advice.nr" type="textarea" rows="3" placeholder="请输入建议内容" resize="none"
              @focus="tan($event)"></el-input>
            <el-input
              v-model="advice.nr"
              type="textarea"
              rows="3"
              placeholder="请输入建议内容"
              resize="none"
              @focus="tan($event)"
            ></el-input>
          </el-form-item>
          <el-button v-if="index > 0" type="danger" size="small" @click="removeAdvice(index)"
            style="margin-left: 100px; margin-bottom: 10px;">删除</el-button>
          <el-button
            v-if="index > 0"
            type="danger"
            size="small"
            @click="removeAdvice(index)"
            style="margin-left: 100px; margin-bottom: 10px"
            >删除</el-button
          >
        </div>
        <el-form-item>
          <el-button type="primary" size="small" @click="addAdvice" style="margin-left: 100px;">添加建议</el-button>
          <el-button
            type="primary"
            size="small"
            @click="addAdvice"
            style="margin-left: 100px"
            >添加建议</el-button
          >
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
@@ -743,22 +1771,40 @@
        <el-button type="primary" @click="submitNewItem">确定</el-button>
      </span>
    </el-dialog>
    <el-dialog title="快捷建议选择" :visible.sync="showjianyi" width="1000px" class="custom-dialog"
      :before-close="handleCloseAdviceDialog">
    <el-dialog
      title="快捷建议选择"
      :visible.sync="showjianyi"
      width="1000px"
      class="custom-dialog"
      :before-close="handleCloseAdviceDialog"
    >
      <!-- 搜索区域 -->
      <div style="margin-bottom: 15px;">
      <div style="margin-bottom: 15px">
        <el-form :inline="true">
          <el-form-item label="建议名称">
            <el-input v-model="queryParams1.zyzd" placeholder="请输入建议名称进行筛选" clearable style="width: 200px"
              @input="filterAdvices(true)" @keyup.enter.native="filterAdvices(true)" />
            <el-input
              v-model="queryParams1.zyzd"
              placeholder="请输入建议名称进行筛选"
              clearable
              style="width: 200px"
              @input="filterAdvices(true)"
              @keyup.enter.native="filterAdvices(true)"
            />
          </el-form-item>
        </el-form>
      </div>
      <!-- 建议表格 -->
      <el-table v-loading="adviceLoading" :data="advicerulesList" ref="adviceTable" border highlight-current-row
        @current-change="handleCurrentChangeAdvice" style="max-height: 400px; overflow-y: auto;"
        :empty-text="adviceEmptyText">
      <el-table
        v-loading="adviceLoading"
        :data="advicerulesList"
        ref="adviceTable"
        border
        highlight-current-row
        @current-change="handleCurrentChangeAdvice"
        style="max-height: 400px; overflow-y: auto"
        :empty-text="adviceEmptyText"
      >
        <el-table-column label="科室" prop="ks" width="100" align="center" />
        <el-table-column label="建议名称" prop="jymc" align="center" />
        <el-table-column label="建议内容" prop="jynr" align="center" />
@@ -767,24 +1813,45 @@
      <!-- 分页 -->
      <div class="pag">
        <div class="pag2">
          <pagination v-show="total1 > 0" :total="total1" :page.sync="queryParams1.pageNum"
            :limit.sync="queryParams1.pageSize" @pagination="filterAdvices(false)" />
          <pagination
            v-show="total1 > 0"
            :total="total1"
            :page.sync="queryParams1.pageNum"
            :limit.sync="queryParams1.pageSize"
            @pagination="filterAdvices(false)"
          />
        </div>
      </div>
      <!-- 底部按钮 -->
      <span slot="footer" class="dialog-footer">
        <el-button @click="cancelAdviceDialog">取消</el-button>
        <el-button type="primary" @click="applySelectedAdvice" :disabled="!selectedAdvice">确定</el-button>
        <el-button
          type="primary"
          @click="applySelectedAdvice"
          :disabled="!selectedAdvice"
          >确定</el-button
        >
      </span>
    </el-dialog>
    <el-dialog :visible.sync="xmopen" width="800px" append-to-body>
      <div style="margin: 20px">
        <el-table :data="datasList" ref="elTable" v-loading="loading" @selection-change="handlexmChange" border
          height="320px">
        <el-table
          :data="datasList"
          ref="elTable"
          v-loading="loading"
          @selection-change="handlexmChange"
          border
          height="320px"
        >
          <el-table-column type="selection" width="40" align="center" />
          <el-table-column label="名称" align="center" prop="proName" width="100px" />
          <el-table-column
            label="名称"
            align="center"
            prop="proName"
            width="100px"
          />
          <el-table-column label="价格" align="center" prop="price" />
          <el-table-column label="科室" align="center" prop="deptName" />
        </el-table>
@@ -799,11 +1866,16 @@
    <Prescription ref="Pre" :preObj="preObj" />
    <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" />
    <createproposal ref="createproposal" :creatobj="creatobj" />
    <el-dialog title="常用建议维护" :visible.sync="propdialog" width="500px" append-to-body></el-dialog>
    <el-dialog
      title="常用建议维护"
      :visible.sync="propdialog"
      width="500px"
      append-to-body
    ></el-dialog>
  </div>
</template>
<script>
import _ from 'lodash';
import _ from "lodash";
import jianqianwenzhen from "@/components/jianqianwenzhen";
import Packages from "@/components/Packages";
import Prescription from "@/components/Prescription";
@@ -824,14 +1896,16 @@
  addOrder,
  addOrder1,
  getFcList,
  UpdFcPro
  UpdFcPro,
  huiFuyichangxiangmu,
  hfbt,
} from "@/api/doctor/checkAll";
import { getInfoById } from "@/api/hosp/history";
import { getInfo } from "@/api/login";
import { getCompany, queryCompany } from "@/api/team/tuanti";
import { reportHistory, yichang, shanchu } from "@/api/doctor/check";
import { getPdf, revoke } from "@/api/hosp/order";
import { cSWebGetPro,huifu, } from "@/api/doctor/examination";
import { cSWebGetPro, huifu } from "@/api/doctor/examination";
import ViewPdf from "@/components/ViewPdf";
import Historicalreport from "@/components/Historicalreport";
import { getDicts } from "@/api/system/dict/data";
@@ -865,35 +1939,36 @@
  name: "checkAll",
  data() {
    return {
      zhiyeJl: '', // 初始化检查结论为空
      zhiyeJg: '未发现目标性疾病', // 初始化体检结果为默认值
      zhiyeJl: "", // 初始化检查结论为空
      zhiyeJg: "未发现目标性疾病", // 初始化体检结果为默认值
      selectedAdvice: null,
      activeAdviceIndex: 0,
      advicerulesList: [],
      xmChange: [],
      ychfList: [],
      showjianyi: false,
      adviceLoading: false,
      adviceEmptyText: '暂无数据',
      adviceEmptyText: "暂无数据",
      total1: 0,
      forms: {
        pacName: ""
        pacName: "",
      },
      xmopen: false,
      datasList: [],
      queryParams1: {
        pageNum: 1,
        pageSize: 10,
        zyzd: '',
        zyzd: "",
      },
      adviceCache: new Map(),
      addNewDialogVisible: false,
      newItem: {
        parentName: '',
        jcxm: '',
        jcjg: '',
        ckfw: '',
        dw: '',
        map: [{ bt: '', nr: '' }]
        parentName: "",
        jcxm: "",
        jcjg: "",
        ckfw: "",
        dw: "",
        map: [{ bt: "", nr: "" }],
      },
      projectCategories: [],
      emptyAdvice: {
@@ -922,21 +1997,21 @@
      isdisabled: false,
      showjianyi: false,
      addNewDialogVisible: false,
      adviceEmptyText: '暂无数据',
      adviceEmptyText: "暂无数据",
      total1: 0,
      adviceCache: new Map(),
      queryParams1: {
        pageNum: 1,
        pageSize: 10,
        zyzd: '',
        zyzd: "",
      },
      newItem: {
        parentName: '',
        jcxm: '',
        jcjg: '',
        ckfw: '',
        dw: '',
        map: [{ bt: '', nr: '' }]
        parentName: "",
        jcxm: "",
        jcjg: "",
        ckfw: "",
        dw: "",
        map: [{ bt: "", nr: "" }],
      },
      projectCategories: [],
      src: "",
@@ -1058,20 +2133,22 @@
  mounted() {
    this.$nextTick(() => {
      this.$refs.inputName.focus();
      this.viewportHeight = window.innerHeight || document.documentElement.clientHeight;
      this.viewportHeight =
        window.innerHeight || document.documentElement.clientHeight;
    });
  },
  methods: {
    // 打开建议选择弹窗
    tan(event) {
      this.activeAdviceIndex = event.target.closest('.advice-group')
        ? Array.from(event.target.closest('.el-form').querySelectorAll('.advice-group'))
          .indexOf(event.target.closest('.advice-group'))
      this.activeAdviceIndex = event.target.closest(".advice-group")
        ? Array.from(
            event.target.closest(".el-form").querySelectorAll(".advice-group")
          ).indexOf(event.target.closest(".advice-group"))
        : 0;
      this.queryParams1.pageNum = 1;
      this.queryParams1.pageSize = 10;
      this.queryParams1.zyzd = '';
      this.queryParams1.zyzd = "";
      this.selectedAdvice = null;
      this.advicerulesList = [];
      this.total1 = 0;
@@ -1086,18 +2163,21 @@
        this.queryParams1.pageNum = 1;
      }
      const cacheKey = `${this.queryParams1.zyzd || ''}_${this.queryParams1.pageNum}_${this.queryParams1.pageSize}`;
      const cacheKey = `${this.queryParams1.zyzd || ""}_${
        this.queryParams1.pageNum
      }_${this.queryParams1.pageSize}`;
      if (this.adviceCache.has(cacheKey)) {
        const cachedData = this.adviceCache.get(cacheKey);
        this.advicerulesList = cachedData.rows;
        this.total1 = cachedData.total;
        this.adviceEmptyText = this.advicerulesList.length === 0 ? '暂无匹配的建议' : '暂无数据';
        this.adviceEmptyText =
          this.advicerulesList.length === 0 ? "暂无匹配的建议" : "暂无数据";
        return;
      }
      this.adviceLoading = true;
      this.adviceEmptyText = '加载中...';
      this.adviceEmptyText = "加载中...";
      listAdvicerules(this.queryParams1)
        .then((response) => {
@@ -1109,14 +2189,15 @@
            total: this.total1,
          });
          this.adviceEmptyText = this.advicerulesList.length === 0 ? '暂无匹配的建议' : '暂无数据';
          this.adviceEmptyText =
            this.advicerulesList.length === 0 ? "暂无匹配的建议" : "暂无数据";
        })
        .catch((error) => {
          console.error('筛选快捷建议失败:', error);
          console.error("筛选快捷建议失败:", error);
          this.advicerulesList = [];
          this.total1 = 0;
          this.adviceEmptyText = '加载失败,请稍后重试';
          this.$message.error('加载建议失败,请检查网络后重试');
          this.adviceEmptyText = "加载失败,请稍后重试";
          this.$message.error("加载建议失败,请检查网络后重试");
        })
        .finally(() => {
          this.adviceLoading = false;
@@ -1126,7 +2207,6 @@
    handleCurrentChangeAdvice(currentRow) {
      this.selectedAdvice = currentRow;
    },
    toggleCollapse3() {
      this.isCollapsed = 0;
@@ -1144,14 +2224,14 @@
        this.showjianyi = false;
        this.selectedAdvice = null;
      } else {
        this.$message.warning('请先选择一条建议');
        this.$message.warning("请先选择一条建议");
      }
    },
    cancelAdviceDialog() {
      this.showjianyi = false;
      this.selectedAdvice = null;
      this.queryParams1.zyzd = '';
      this.queryParams1.zyzd = "";
      this.queryParams1.pageNum = 1;
      this.advicerulesList = [];
      this.total1 = 0;
@@ -1160,16 +2240,16 @@
    handleCloseAdviceDialog(done) {
      if (this.selectedAdvice) {
        this.$confirm('您已选择一条建议,确定要关闭吗?', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning',
        this.$confirm("您已选择一条建议,确定要关闭吗?", "提示", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning",
        })
          .then(() => {
            this.cancelAdviceDialog();
            done();
          })
          .catch(() => { });
          .catch(() => {});
      } else {
        this.cancelAdviceDialog();
        done();
@@ -1181,8 +2261,10 @@
      if (index === -1) {
        if (this.emptyAdvice.bt || this.emptyAdvice.nr) {
          advicesToSubmit = [{ bt: this.emptyAdvice.bt || '', nr: this.emptyAdvice.nr || '' }];
          this.$set(row, 'advices', advicesToSubmit);
          advicesToSubmit = [
            { bt: this.emptyAdvice.bt || "", nr: this.emptyAdvice.nr || "" },
          ];
          this.$set(row, "advices", advicesToSubmit);
        }
      } else {
        advicesToSubmit = row.advices;
@@ -1192,12 +2274,14 @@
        return;
      }
      const parentItem = this.yichangList.find(item =>
        item.sone.some(soneItem => soneItem.orderDetailId === row.orderDetailId)
      const parentItem = this.yichangList.find((item) =>
        item.sone.some(
          (soneItem) => soneItem.orderDetailId === row.orderDetailId
        )
      );
      if (!parentItem) {
        this.$message.error('未找到对应的父级项目');
        this.$message.error("未找到对应的父级项目");
        return;
      }
@@ -1213,16 +2297,18 @@
        id: row.orderDetailId,
      };
      addOrder1(data).then((res) => {
        if (res.code === 200) {
          // 成功更新建议
        } else {
          this.$message.error('建议更新失败:' + (res.msg || '未知错误'));
        }
      }).catch((error) => {
        console.error('建议更新失败:', error);
        this.$message.error('建议更新失败:' + error.message);
      });
      addOrder1(data)
        .then((res) => {
          if (res.code === 200) {
            // 成功更新建议
          } else {
            this.$message.error("建议更新失败:" + (res.msg || "未知错误"));
          }
        })
        .catch((error) => {
          console.error("建议更新失败:", error);
          this.$message.error("建议更新失败:" + error.message);
        });
    },
    handleSelectionChange(selection) {
@@ -1238,46 +2324,50 @@
        ckfw: this.newItem.ckfw,
        dw: this.newItem.dw,
        map: this.newItem.map,
        jyjc: this.newItem.ckfw ? "0" : "1"
        jyjc: this.newItem.ckfw ? "0" : "1",
      };
      addOrder1(data).then((res) => {
        if (res.code === 200) {
          this.$message.success('新增异常结果成功');
          this.addNewDialogVisible = false;
          this.yichangjieguo();
        } else {
          this.$message.error('新增失败');
        }
      }).catch((error) => {
        console.error('新增异常结果失败:', error);
        this.$message.error('新增异常结果失败');
      });
      addOrder1(data)
        .then((res) => {
          if (res.code === 200) {
            this.$message.success("新增异常结果成功");
            this.addNewDialogVisible = false;
            this.yichangjieguo();
          } else {
            this.$message.error("新增失败");
          }
        })
        .catch((error) => {
          console.error("新增异常结果失败:", error);
          this.$message.error("新增异常结果失败");
        });
    },
    addnew() {
      this.newItem = {
        parentName: '',
        jcxm: '',
        jcjg: '',
        ckfw: '',
        dw: '',
        map: [{ bt: '', nr: '' }]
        parentName: "",
        jcxm: "",
        jcjg: "",
        ckfw: "",
        dw: "",
        map: [{ bt: "", nr: "" }],
      };
      this.addNewDialogVisible = true;
      cSWebGetPro(this.tjNumber).then((res) => {
        if (res.data && Array.isArray(res.data)) {
          this.projectCategories = res.data;
        } else {
          this.$message.warning('未获取到项目分类数据');
      cSWebGetPro(this.tjNumber)
        .then((res) => {
          if (res.data && Array.isArray(res.data)) {
            this.projectCategories = res.data;
          } else {
            this.$message.warning("未获取到项目分类数据");
            this.projectCategories = [];
          }
        })
        .catch((error) => {
          console.error("获取项目分类失败:", error);
          this.$message.error("获取项目分类失败");
          this.projectCategories = [];
        }
      }).catch((error) => {
        console.error('获取项目分类失败:', error);
        this.$message.error('获取项目分类失败');
        this.projectCategories = [];
      });
        });
    },
    handleCategoryChange(value) {
@@ -1287,18 +2377,18 @@
    },
    change(val) {
      console.log('选中的值是:', val);
      console.log("选中的值是:", val);
    },
    addAdvice() {
      this.newItem.map.push({ bt: '', nr: '' });
      this.newItem.map.push({ bt: "", nr: "" });
    },
    removeAdvice(index) {
      if (this.newItem.map.length > 1) {
        this.newItem.map.splice(index, 1);
      } else {
        this.$message.warning('至少保留一组建议');
        this.$message.warning("至少保留一组建议");
      }
    },
@@ -1307,53 +2397,60 @@
      shanchu({
        id: row.orderDetailId,
      }).then((res) => {
        console.log(res, 1111);
      })
        .then((res) => {
          console.log(res, 1111);
        if (res.code === 200) {
          const parentItem = this.yichangList.find(item =>
            item.sone.some(soneItem => soneItem.orderDetailId === row.orderDetailId)
          );
          if (res.code === 200) {
            const parentItem = this.yichangList.find((item) =>
              item.sone.some(
                (soneItem) => soneItem.orderDetailId === row.orderDetailId
              )
            );
          if (parentItem) {
            const index = parentItem.sone.findIndex(item => item.orderDetailId === row.orderDetailId);
            if (index > -1) {
              parentItem.sone.splice(index, 1);
            if (parentItem) {
              const index = parentItem.sone.findIndex(
                (item) => item.orderDetailId === row.orderDetailId
              );
              if (index > -1) {
                parentItem.sone.splice(index, 1);
              if (parentItem.sone.length === 0) {
                const parentIndex = this.yichangList.indexOf(parentItem);
                if (parentIndex > -1) {
                  this.yichangList.splice(parentIndex, 1);
                if (parentItem.sone.length === 0) {
                  const parentIndex = this.yichangList.indexOf(parentItem);
                  if (parentIndex > -1) {
                    this.yichangList.splice(parentIndex, 1);
                  }
                }
              }
              this.getExpends();
              this.$forceUpdate();
              this.$message.success('删除成功');
                this.getExpends();
                this.$forceUpdate();
                this.$message.success("删除成功");
              } else {
                this.$message.error("未找到要删除的子项");
              }
            } else {
              this.$message.error('未找到要删除的子项');
              this.$message.error("未找到要删除的父项");
            }
          } else {
            this.$message.error('未找到要删除的父项');
            this.$message.error("后端删除失败:" + (res.msg || "未知错误"));
          }
        } else {
          this.$message.error('后端删除失败:' + (res.msg || '未知错误'));
        }
      }).catch((error) => {
        console.error('删除失败:', error);
        this.$message.error('删除操作失败:' + error.message);
      }).finally(() => {
        this.isdisabled = false;
      });
        })
        .catch((error) => {
          console.error("删除失败:", error);
          this.$message.error("删除操作失败:" + error.message);
        })
        .finally(() => {
          this.isdisabled = false;
        });
    },
    handleQuery() {
      this.xmopen = true;
      let data = {
        tjNum: this.tjNumber,
        type: 0
        type: 0,
      };
      getFcList(data).then(res => {
      getFcList(data).then((res) => {
        this.datasList = res.data;
      });
    },
@@ -1362,16 +2459,18 @@
      console.log(this.xmChange);
      let data = {
        orderId: this.xmChange[0].orderId,
        data: [{
          proId: this.xmChange[0].proId,
          type: 1
        }]
        data: [
          {
            proId: this.xmChange[0].proId,
            type: 1,
          },
        ],
      };
      UpdFcPro(data).then(res => { });
      UpdFcPro(data).then((res) => {});
    },
    handledeleteClick() {
      UpdFcPro(data).then(res => { });
      UpdFcPro(data).then((res) => {});
    },
    handlexmChange(selection) {
@@ -1393,8 +2492,8 @@
    },
    getExpends() {
      this.expends = this.yichangList.flatMap(item =>
        item.sone.map(soneItem => soneItem.orderDetailId)
      this.expends = this.yichangList.flatMap((item) =>
        item.sone.map((soneItem) => soneItem.orderDetailId)
      );
    },
@@ -1425,8 +2524,8 @@
          }
        })
        .catch((error) => {
          console.error('获取项目情况失败:', error);
          this.$message.error('获取项目情况失败');
          console.error("获取项目情况失败:", error);
          this.$message.error("获取项目情况失败");
        })
        .finally(() => {
          this.loading = false;
@@ -1447,7 +2546,10 @@
          this.yichangList = res.data;
          this.yichangList.forEach((item) => {
            item.sone.forEach((soneItem) => {
              if (!Array.isArray(soneItem.advices) || soneItem.advices.length === 0) {
              if (
                !Array.isArray(soneItem.advices) ||
                soneItem.advices.length === 0
              ) {
                soneItem.advices = [{ bt: "", nr: "" }];
              }
            });
@@ -1457,8 +2559,8 @@
          }
        })
        .catch((error) => {
          console.error('获取异常结果失败:', error);
          this.$message.error('获取异常结果失败');
          console.error("获取异常结果失败:", error);
          this.$message.error("获取异常结果失败");
        })
        .finally(() => {
          this.loading = false;
@@ -1482,6 +2584,41 @@
        })
        .finally(() => {
          this.loading = false;
        });
    },
    yichanghuifu() {
      this.loading = true;
      this.status1 = 4;
      let tjNum = this.tjNumber;
      console.log(this.tjNumber, 111222);
      huiFuyichangxiangmu(tjNum).then((res) => {
        console.log(res, 9999999);
        this.ychfList = res.data;
      });
    },
    hfyc(id) {
      this.$confirm("确认要恢复该项吗?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          // 用户确认后执行接口
          hfbt({ id })
            .then((res) => {
              this.$message.success("恢复成功");
              this.yichanghuifu(); // 恢复后刷新列表
            })
            .catch((err) => {
              console.error(err);
              this.$message.error("恢复失败");
            });
        })
        .catch(() => {
          // 用户取消了操作
          this.$message.info("已取消恢复");
        });
    },
@@ -1585,7 +2722,7 @@
              }, 3000);
              this.$message({
                message: "请撤回重新生成报告",
                type: "error"
                type: "error",
              });
            } else {
              this.dialogVisible = true;
@@ -1595,7 +2732,11 @@
        } else {
          let url = response.data.url;
          const params = { url };
          this.$tab.openPage("健康证检查表", "/report/zongjianjiankangzheng", params);
          this.$tab.openPage(
            "健康证检查表",
            "/report/zongjianjiankangzheng",
            params
          );
        }
      });
    },
@@ -1614,7 +2755,7 @@
            let dictTypes = "sys_user_sex";
            return getDicts(dictTypes);
          } else {
            throw new Error('获取年龄单位字典失败');
            throw new Error("获取年龄单位字典失败");
          }
        })
        .then((res) => {
@@ -1633,7 +2774,7 @@
            };
            return getTjYxjcList(data);
          } else {
            throw new Error('获取性别字典失败');
            throw new Error("获取性别字典失败");
          }
        })
        .then((res) => {
@@ -1642,8 +2783,8 @@
          this.$refs.bbb.title = "报告字典";
        })
        .catch((error) => {
          console.error('生成图文报告失败:', error);
          this.$message.error('生成图文报告失败');
          console.error("生成图文报告失败:", error);
          this.$message.error("生成图文报告失败");
        })
        .finally(() => {
          this.loading = false;
@@ -1664,8 +2805,8 @@
          }
        })
        .catch((error) => {
          console.error('获取历史报告失败:', error);
          this.$message.error('获取历史报告失败');
          console.error("获取历史报告失败:", error);
          this.$message.error("获取历史报告失败");
        })
        .finally(() => {
          this.loading = false;
@@ -1699,8 +2840,8 @@
          }
        })
        .catch((error) => {
          console.error('获取职业病史失败:', error);
          this.$message.error('获取职业病史失败');
          console.error("获取职业病史失败:", error);
          this.$message.error("获取职业病史失败");
        })
        .finally(() => {
          this.loading = false;
@@ -1871,15 +3012,14 @@
      this.submitForm();
    },
    huifu(row){
    huifu(row) {
      const tjNUm = this.tjNumber;
      const proId = row.proId;
        huifu(tjNUm, proId).then((res) => {
          if (res.code == 200) {
           this.xiangmuqingkuang()
          }
        });
      huifu(tjNUm, proId).then((res) => {
        if (res.code == 200) {
          this.xiangmuqingkuang();
        }
      });
    },
    changRed({ row }) {
@@ -1911,17 +3051,17 @@
    },
    qingkong() {
      this.tableAll = {}
      this.changedate = []
      this.yichangList = []
      this.statusList = []
      this.xmChange = []
      this.fcList =[]
      this.formobj ={}
      this.tableAll = {};
      this.changedate = [];
      this.yichangList = [];
      this.statusList = [];
      this.xmChange = [];
      this.fcList = [];
      this.formobj = {};
    },
    handleClick(row) {
      this.qingkong()
      this.qingkong();
      this.$refs.Pre.open = false;
      this.tableAll = row;
      this.tjproject = "0";
@@ -1952,32 +3092,39 @@
                        this.textarea1 = item.checkAdvice || "";
                      });
                      this.initialTotalCheckAdvice = this.textarea1;
                      this.initialState = JSON.parse(JSON.stringify(this.changedate));
                      this.initialState = JSON.parse(
                        JSON.stringify(this.changedate)
                      );
                      for (let i = 0; i < this.changedate.length; i++) {
                        this.remark = this.changedate[i].remark;
                      }
                      // 回显 zhiyeJl 和 zhiyeJg
                      this.zhiyeJl = response.data.zhiyeJl || '';
                      this.zhiyeJg = response.data.zhiyeJg || '未发现目标性疾病';
                      this.zhiyeJl = response.data.zhiyeJl || "";
                      this.zhiyeJg =
                        response.data.zhiyeJg || "未发现目标性疾病";
                    } else {
                      this.$message({
                        type: "warning",
                        message: "该客户没有体检项目数据",
                      });
                      // 如果没有数据,清空字段
                      this.zhiyeJl = '';
                      this.zhiyeJg = '未发现目标性疾病';
                      this.zhiyeJl = "";
                      this.zhiyeJg = "未发现目标性疾病";
                    }
                  });
                });
              }
            });
          } else {
            this.$confirm("" + this.status.name + "正在修改该信息, 是否强制进去?", "提示", {
              confirmButtonText: "是",
              cancelButtonText: "否",
              type: "warning",
            })
            this.$confirm(
              "" + this.status.name + "正在修改该信息, 是否强制进去?",
              "提示",
              {
                confirmButtonText: "是",
                cancelButtonText: "否",
                type: "warning",
              }
            )
              .then(() => {
                this.yichangjieguo();
                getInfo().then((response) => {
@@ -1999,21 +3146,24 @@
                          for (let i = 0; i < this.changedate.length; i++) {
                            this.remark = this.changedate[i].remark;
                          }
                          this.initialState = JSON.parse(JSON.stringify(this.changedate));
                          this.initialState = JSON.parse(
                            JSON.stringify(this.changedate)
                          );
                          this.changedate.forEach((item) => {
                            this.textarea1 = item.checkAdvice || "";
                          });
                          // 回显 zhiyeJl 和 zhiyeJg
                          this.zhiyeJl = response.data.zhiyeJl || '';
                          this.zhiyeJg = response.data.zhiyeJg || '未发现目标性疾病';
                          this.zhiyeJl = response.data.zhiyeJl || "";
                          this.zhiyeJg =
                            response.data.zhiyeJg || "未发现目标性疾病";
                        } else {
                          this.$message({
                            type: "warning",
                            message: "该客户没有体检项目数据",
                          });
                          // 如果没有数据,清空字段
                          this.zhiyeJl = '';
                          this.zhiyeJg = '未发现目标性疾病';
                          this.zhiyeJl = "";
                          this.zhiyeJg = "未发现目标性疾病";
                        }
                      });
                    });
@@ -2032,7 +3182,10 @@
    },
    handleClose(done) {
      if (JSON.stringify(this.initialState) !== JSON.stringify(this.changedate) || this.initialTotalCheckAdvice !== this.textarea1) {
      if (
        JSON.stringify(this.initialState) !== JSON.stringify(this.changedate) ||
        this.initialTotalCheckAdvice !== this.textarea1
      ) {
        this.$confirm("您有未保存的更改,确定要关闭吗?", "提示", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
@@ -2049,7 +3202,7 @@
              done();
            });
          })
          .catch(() => { });
          .catch(() => {});
      } else {
        let data = {
          userId: this.userId,
@@ -2078,7 +3231,7 @@
        advice,
        checkStatus: 1,
        zhiyeJl: this.zhiyeJl, // 添加检查结论
        zhiyeJg: this.zhiyeJg  // 添加体检结果
        zhiyeJg: this.zhiyeJg, // 添加体检结果
      };
      let dataList = this.yichangList
        .map((item) => {
@@ -2101,8 +3254,8 @@
          if (response.code === 200) {
            this.$modal.msgSuccess("提交成功");
            // 清空字段
            this.zhiyeJl = '';
            this.zhiyeJg = '';
            this.zhiyeJl = "";
            this.zhiyeJg = "";
            let reportData = {
              userId: this.userId,
@@ -2249,38 +3402,38 @@
}
/* 每个按钮的位置和动画延迟 */
.btnbox>div:nth-child(1) {
.btnbox > div:nth-child(1) {
  top: 20%;
  /* 第一个按钮的位置 */
  animation-delay: 0s;
  /* 无延迟 */
}
.btnbox>div:nth-child(2) {
.btnbox > div:nth-child(2) {
  top: 30%;
  /* 第二个按钮的位置 */
  animation-delay: 0.2s;
}
.btnbox>div:nth-child(3) {
.btnbox > div:nth-child(3) {
  top: 40%;
  /* 第三个按钮的位置 */
  animation-delay: 0.4s;
}
.btnbox>div:nth-child(4) {
.btnbox > div:nth-child(4) {
  top: 50%;
  /* 第四个按钮的位置 */
  animation-delay: 0.6s;
}
.btnbox>div:nth-child(5) {
.btnbox > div:nth-child(5) {
  top: 60%;
  /* 第五个按钮的位置 */
  animation-delay: 0.8s;
}
.btnbox>div:nth-child(6) {
.btnbox > div:nth-child(6) {
  top: 70%;
  /* 第六个按钮的位置 */
  animation-delay: 1s;
@@ -2631,4 +3784,5 @@
//   width: auto; /* 自适应宽度 */
//   min-width: 300px; /* 设置最小宽度,确保分页器不会太窄 */
//   text-align: center; /* 确保分页器内部元素居中 */
// }</style>
// }
</style>
src/views/hosp/project/index.vue
@@ -623,9 +623,17 @@
          />
        </el-form-item>
        <el-form-item label="是否参与异常" prop="sfcyyc">
          <el-select v-model="form.sfcyyc" placeholder="请选择是否参与异常" style="width: 200px">
            <el-option v-for="dict in dictTypesy" :key="dict.value" :label="dict.label"
              :value="dict.value"></el-option>
          <el-select
            v-model="form.sfcyyc"
            placeholder="请选择是否参与异常"
            style="width: 200px"
          >
            <el-option
              v-for="dict in dictTypesy"
              :key="dict.value"
              :label="dict.label"
              :value="dict.value"
            ></el-option>
          </el-select>
        </el-form-item>
      </el-form>
@@ -1006,13 +1014,13 @@
      },
      dictTypesy: [
        {
          value:"0",
          label:"是"
          value: "0",
          label: "是",
        },
        {
          value:"1",
          label:"否"
        }
          value: "1",
          label: "否",
        },
      ],
      xmmc: "",
      chargeId: [],
@@ -1118,9 +1126,9 @@
  watch: {
    deptName(val) {
      this.debounceFilter(val);
    },
    },
    treeId(newVal) {
      console.log(newVal,8989)
      console.log(newVal, 8989);
      if (newVal && newVal.length > 0) {
        this.$nextTick(() => {
          const lastId = newVal[newVal.length - 1] || "532";
@@ -1349,7 +1357,7 @@
          this.dialogTableVisible = true;
          if (this.deptOptionstree.length != 0) {
            this.$nextTick(() => {
              this.chargeId.push(this.deptOptionstree[0].id);
              // this.chargeId.push(this.deptOptionstree[0].id);
            });
          }
@@ -1376,10 +1384,13 @@
      }
    },
    getlistSfxm() {
      console.log(2222);
      this.loading = true;
      this.List = true;
      listSfxm(this.querycharge).then((response) => {
        this.sfxmList = response.rows;
        this.sfxmList = response.rows || [];
        console.log(response.rows, 111222);
        response.rows.forEach((item, index) => {
          item.newID =
            (this.querycharge.pageNum - 1) * this.querycharge.pageSize +
@@ -1404,18 +1415,26 @@
      this.queryParam.id = data.id;
      this.List = false;
      this.getListByXmId();
      this.total = 0;
    },
    getListByXmId() {
      console.log(this.sfxmList);
      this.loading = true;
      getListByXmId(this.queryParam).then((response) => {
        this.sfxmList = response.data.date;
        response.data.date.forEach((item, index) => {
          item.newID =
            (this.queryParam.page - 1) * this.queryParam.pageSize + index + 1;
        });
        this.sfxmList = response.data.date || [];
        if (response.data.date == null) {
          return;
        } else {
          response.data.date.forEach((item, index) => {
            item.newID =
              (this.queryParam.page - 1) * this.queryParam.pageSize + index + 1;
          });
        }
        this.total = response.data.total;
        this.loading = false;
      });
      this.loading = false;
    },
    normalizer(node) {
      if (node.children && !node.children.length) {
@@ -1445,18 +1464,17 @@
    getDeptTree() {
      return deptTree111().then((response) => {
        this.deptOptions = response.data;
        this.treeId = []
        if(this.treeDate.id){
          this.treeId.push( this.treeDate.id)
        }else{
          this.treeId.push("532")
        this.treeId = [];
        if (this.treeDate.id) {
          this.treeId.push(this.treeDate.id);
        } else {
          this.treeId.push("532");
        }
      });
    },
    handleNodeClick(date) {
      this.treeDate = date;
      this.xiugaiList ={}
      this.xiugaiList = {};
      this.xiugais = date.qf === "0";
      let proId = date.id;
      getInfoByProId(proId).then((response) => {
@@ -1611,7 +1629,7 @@
      }
    },
    handleUpdate1() {
      this.form={}
      this.form = {};
      this.form = this.xiugaiList;
      this.form.proStatus = this.form.proStatus.toString();
      this.form.sfcyyc = this.form.sfcyyc.toString();
@@ -1761,7 +1779,7 @@
          this.precomputePinyin();
        });
      }
      console.log(this.treeId)
      console.log(this.treeId);
    },
    submit() {
      this.ChangeList.forEach((item) => {
src/views/system/info/index.vue
@@ -188,7 +188,7 @@
      </el-row>
    </el-form>
    <div style="display: flex; justify-content: space-between;">
      <el-radio-group
        v-model="jcStatus"
        @input="radioChange"
@@ -196,8 +196,38 @@
      >
        <el-radio-button label="0">已检未结账人员</el-radio-button>
        <el-radio-button label="1">未检人员</el-radio-button>
         <el-radio-button label="2">全部人员</el-radio-button>
        <el-radio-button label="2">全部人员</el-radio-button>
      </el-radio-group>
      <el-form
        :model="queryParams1"
        ref="queryForm"
        size="small"
        :inline="true"
        v-show="showSearch"
        label-width="68px"
        style="margin-top: 20px; margin-right: 22%;"
      >
        <el-form-item label="结账时间">
            <el-date-picker clearable v-model="queryParams1.reservationTime" type="date" value-format="yyyy-MM-dd"
              placeholder="请选择结账时间">
            </el-date-picker>
          </el-form-item>
        <el-form-item>
            <el-button
              type="primary"
              icon="el-icon-search"
              size="mini"
              @click="handleQuery1"
              style="margin: 0 15px"
              >搜索</el-button
            >
            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery1"
              >重置</el-button
            >
          </el-form-item>
      </el-form>
    </div>
    <el-row :gutter="20">
      <el-col :span="12" :xs="24" style="padding: 0px 20px">
@@ -212,11 +242,11 @@
          max-height="260px"
        >
          <el-table-column type="selection" width="55" align="center" />
          <el-table-column label="序号" align="center" prop="newID" />
          <el-table-column label="姓名" align="center" prop="name" />
          <el-table-column label="性别" align="center" prop="sex" />
          <el-table-column label="电话" align="center" prop="iphone" />
          <el-table-column label="状态" align="center" prop="tjStatus" />
          <el-table-column label="序号" align="center" prop="newID" width="50" />
          <el-table-column label="姓名" align="center" prop="name" width="100" />
          <el-table-column label="性别" align="center" prop="sex" width="80" />
          <el-table-column label="电话" align="center" prop="iphone" width="120" />
          <el-table-column label="状态" align="center" prop="tjStatus" width="80"  />
          <el-table-column label="体检时间" align="center" prop="tjTime">
          </el-table-column>
        </el-table>
@@ -278,10 +308,20 @@
  name: "Info",
  dicts: ["dict_pay_type"],
  data() {
    let checkPhoneNum = (rule, value, callback) => {
      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
      if (value == "" && value == undefined && !value) {
        return callback("");
      } else if (value != undefined && value != "") {
        return callback();
      } else if (!patter.test(value)) {
        return callback("");
      }
    };
    return {
      // 绑定单选按钮
      tjStatus: "0",
      jcStatus:0,
      jcStatus: 0,
      formInline: {
        payer: "",
        price: "",
@@ -326,10 +366,17 @@
        payer: null,
        payee: null,
      },
      queryParams1:{
        reservationTime:null
      },
      // 表单参数
      form: {},
      // 表单校验
      rules: {},
      rules: {
        reservationTime: [
          { required: true, validator: checkPhoneNum, trigger: "change" },
        ],
      },
    };
  },
  created() {
@@ -369,9 +416,7 @@
      this.compId = val;
    },
    radioChange(val){
    },
    radioChange(val) {},
    // 体检公司拼音搜索
    getRemoteData(query) {
@@ -443,6 +488,13 @@
        this.loading = false;
      });
    },
    handleQuery1(){
    },
     resetQuery1() {
      this.resetForm("queryForm1");
      this.handleQuery1();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.resetForm("queryForm");
vue.config.js
@@ -10,7 +10,7 @@
const name = process.env.VUE_APP_TITLE || "智慧健康体检管理系统"; // 网页标题
const port = process.env.port || process.env.npm_config_port || 80; // 端口
const generateHash = (str) => require('crypto').createHash('md5').update(str).digest('hex').slice(0, 8);
// vue.config.js 配置说明
//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions
// 这里只列一部分,具体配置参考文档
@@ -39,7 +39,7 @@
  // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist)
  outputDir: "dist",
  // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下)
  assetsDir: "static",
  assetsDir: "static",
  // 是否开启eslint保存检测,有效值:ture | false | 'error'
  lintOnSave: process.env.NODE_ENV === "development",
  // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。
@@ -53,18 +53,15 @@
      // detail: https://cli.vuejs.org/config/#devserver-proxy
      [process.env.VUE_APP_BASE_API]: {
        // target: `https://ltpeis.xaltjdkj.cn:5801/`,
        // target: `http://192.168.1.99:5012`,
        target: `http://192.168.1.2:5011`,
<<<<<<< HEAD
        // target: `http://192.168.1.113:5011`,
=======
        target: `http://192.168.1.2:5011`,
>>>>>>> f1bd6c371da44538248ea8fd479f0f4a2180e337
        // target: `http://192.168.1.99:5012`,
>>>>>>> f95fee588c5327b3a4f7b6c283b473c05abb8c76
        target: `http://192.168.1.113:5011`,
        // target: `http://192.168.1.2:5011`,
        // // target: `http://192.168.0.99:8080/ltkj-admin`,
        // target: `https://ltpeis.xaltjdkj.cn:5011/ltkj-admin`,
        // target: `http://10.168.0.9:5011`,  `
        // target: `http://10.168.0.9:5011`,
        changeOrigin: true,
        pathRewrite: {
          ["^" + process.env.VUE_APP_BASE_API]: "",