lkk
2025-03-19 8e1fd6a60ac2ba10b15566f536116af397d1964a
工龄&套餐名称
2个文件已修改
2493 ■■■■ 已修改文件
src/views/doctor/checkAll/index.vue 1119 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/tijian/index.vue 1374 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/doctor/checkAll/index.vue
@@ -1,47 +1,127 @@
<template>
  <div class="mainbox">
    <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px">
    <el-form
      :model="queryParams"
      ref="tableList"
      :inline="true"
      label-width="76px"
      style="margin-top: 10px"
    >
      <el-form-item label="姓名" prop="name">
        <el-input v-model="queryParams.name" style="width: 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
        v-loading="loading"
        :data="checkList"
        ref="table"
        border
        style="margin: 20px; width: 98%"
        @current-change="handleCurrentChange"
      >
        <!-- <template slot="empty">数据正在加载中</template> -->
        <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="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-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>
@@ -49,8 +129,20 @@
            <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="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="体检时间"
@@ -59,65 +151,152 @@
          :show-overflow-tooltip="true"
          width="110px"
        /> -->
        <el-table-column label="审核时间" align="center" prop="shsj" :show-overflow-tooltip="true" width="180px" />
        <el-table-column label="完成时间" align="center" prop="finishTime" :show-overflow-tooltip="true" width="160px" />
        <el-table-column label="状态" align="center" prop="tjStatus" :show-overflow-tooltip="true" width="120px">
        <el-table-column
          v-if="tjStatus === '1'"
          label="审核时间"
          align="center"
          prop="shsj"
          :show-overflow-tooltip="true"
          width="180px"
        />
        <el-table-column
          v-if="tjStatus === '0'"
          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"
        >
          <template slot-scope="scope">
            <span>{{ scope.row.tjStatus == "1" ? "已审核" : "未审核" }}</span>
          </template>
        </el-table-column>
        <el-table-column label="单位名称" align="center" prop="tjCompName" :show-overflow-tooltip="true" />
        <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="handleClick(scope.row)"
            icon="el-icon-document-copy"></el-button>
            <el-button fixed="right" title="同步" type="text" size="mini" @click.stop="tongbu(scope.row)" v-if="scope.row.tjStatus != '1'"
            icon="el-icon-upload2"></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
              fixed="right"
              title="同步"
              type="text"
              size="mini"
              @click.stop="tongbu(scope.row)"
              v-if="scope.row.tjStatus != '1'"
              icon="el-icon-upload2"
            ></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 type="text" size="mini" @click="generate(scope.row)" v-if="scope.row.tjStatus=='1'">生成</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
              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">
    <el-drawer
      custom-class="tanchu"
      :visible.sync="drawer"
      :before-close="handleClose"
      :with-header="false"
      size="100%"
      show-close="true"
    >
      <div class="top">
        <table style="
        <table
          style="
            width: 100%;
            margin: 10px 10px;
            border: 1px solid #dfe6ec;
            border-collapse: collapse;
          " cellspacing="4">
          "
          cellspacing="4"
        >
          <caption style="background-color: #f8f8f9; font-size: 18px">
            {{
              tableAll.cusName
            }}的体检资料
          </caption>
          <tr style="
          <tr
            style="
              border: 1px solid #dfe6ec;
              border-collapse: collapse;
              height: 36px;
            ">
            "
          >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
              姓名:
            </td>
@@ -132,16 +311,18 @@
                tableAll.cusSex == 0
                  ? "男"
                  : tableAll.cusSex == 1
                    ? "女"
                    : "未知"
                  ? "女"
                  : "未知"
              }}
            </td>
          </tr>
          <tr style="
          <tr
            style="
              border: 1px solid #dfe6ec;
              border-collapse: collapse;
              height: 36px;
            ">
            "
          >
            <td style="border: 1px solid #dfe6ec; border-collapse: collapse">
              体检单号:
            </td>
@@ -166,42 +347,64 @@
          </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>
      <div class="box">
        <div class="left-container">
          <div class="left">
            <div v-for="(item, index) in changedate" :key="index">
              <div style="
              <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
                  :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
                    align="center"
                    prop="proResult"
                    label="检测结果"
                    width="180"
                  >
                  </el-table-column>
                  <el-table-column align="center" prop="" label="单位">
                    <template slot-scope="scope">
@@ -211,7 +414,12 @@
                      <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">
@@ -226,43 +434,71 @@
                  </el-table-column>
                </el-table>
                <table style="width: 100%" v-if="tjproject != '1'">
                  <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                    <td style="
                  <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="
                    <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="
                  <tr
                    style="
                      border: 1px solid #dfe6ec;
                      border-collapse: collapse;
                      width: 200px;
                    ">
                    <td style="
                    "
                  >
                    <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%">
                    <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>
                      <!-- <textarea
                        placeholder="请输入内容"
@@ -278,16 +514,27 @@
              <div v-else>
                <table style="width: 100%" v-if="tjproject != '1'">
                  <tr style="border: 1px solid #dfe6ec">
                    <td style="
                    <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%">
                    <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>
                      <!-- <textarea
                        placeholder="请输入内容"
@@ -297,16 +544,32 @@
                      ></textarea> -->
                    </td>
                  </tr>
                  <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                    <td style="
                  <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%">
                    <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>
                      <!-- <textarea
      
@@ -316,19 +579,29 @@
                      ></textarea> -->
                    </td>
                  </tr>
                  <tr style="
                  <tr
                    style="
                      border: 1px solid #dfe6ec;
                      border-collapse: collapse;
                      width: 200px;
                    ">
                    <td style="
                    "
                  >
                    <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>
@@ -337,22 +610,47 @@
            </div>
            <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
                  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>
@@ -361,30 +659,57 @@
          <div class="right">
            <template v-if="status1 == 0">
              <div v-for="(item, index) in yichangList" :key="index">
                <div style="
                <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></el-input>
                                <el-input
                                  v-model="jianyi.bt"
                                  size="small"
                                  type="textarea"
                                  autosize
                                ></el-input>
                              </div>
                              <div>
                                内容:
                                <el-input v-model="jianyi.nr" size="small" type="textarea" autosize></el-input>
                                <el-input
                                  v-model="jianyi.nr"
                                  size="small"
                                  type="textarea"
                                  autosize
                                ></el-input>
                              </div>
                            </div>
                          </div>
@@ -393,55 +718,113 @@
                          <div v-else>
                            <div>
                              标题:
                              <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize></el-input>
                              <el-input
                                v-model="emptyAdvice.bt"
                                size="small"
                                type="textarea"
                                autosize
                              ></el-input>
                            </div>
                            <div>
                              内容:
                              <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize></el-input>
                              <el-input
                                v-model="emptyAdvice.nr"
                                size="small"
                                type="textarea"
                                autosize
                              ></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
                      align="center"
                      prop="proResult"
                      label="检测结果"
                      width="85"
                    >
                    </el-table-column>
                    <el-table-column align="center" prop="stanId" label=" 参考范围" width="117">
                    <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
                      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></el-input>
                                <el-input
                                  v-model="jianyi.bt"
                                  size="small"
                                  type="textarea"
                                  autosize
                                ></el-input>
                              </div>
                              <div>
                                内容:
                                <el-input v-model="jianyi.nr" size="small" type="textarea" autosize></el-input>
                                <el-input
                                  v-model="jianyi.nr"
                                  size="small"
                                  type="textarea"
                                  autosize
                                ></el-input>
                              </div>
                            </div>
                          </div>
@@ -450,28 +833,52 @@
                          <div v-else>
                            <div>
                              标题:
                              <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize></el-input>
                              <el-input
                                v-model="emptyAdvice.bt"
                                size="small"
                                type="textarea"
                                autosize
                              ></el-input>
                            </div>
                            <div>
                              内容:
                              <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize></el-input>
                              <el-input
                                v-model="emptyAdvice.nr"
                                size="small"
                                type="textarea"
                                autosize
                              ></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">
                        <div>{{ scope.row.proName }}</div>
                      </template>
                    </el-table-column>
                    <el-table-column align="center" prop="proResult" label="检测结果" width="403">
                    <el-table-column
                      align="center"
                      prop="proResult"
                      label="检测结果"
                      width="403"
                    >
                    </el-table-column>
                  </el-table>
                </template>
@@ -479,21 +886,43 @@
            </template>
            <template v-if="status1 == 1">
              <div>
                <div style="
                <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
                  :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
                    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-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>
@@ -501,7 +930,12 @@
                      <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"
                    prop="bcupdateTime"
                    width="160"
                  />
                </el-table>
              </div>
            </template>
@@ -511,69 +945,152 @@
      <div class="hist3" v-if="wenzhen">
        <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>
@@ -581,72 +1098,152 @@
              <div style="width: 100%">
                <el-form-item label="是否吸烟" prop="xiyan">
                  <!-- <el-input v-model="form.xiyanpinlv" placeholder="请输入吸烟频率" /> -->
                  <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-input v-model="form.yinjiupinlv" placeholder="请输入饮酒频率" /> -->
                  <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
                  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">
                    <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">
                    <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-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> -->
                      <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>
@@ -659,48 +1256,94 @@
                  <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">
                    <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">
                    <template slot-scope="scope">
                      <!-- <el-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> -->
                      <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>
@@ -711,13 +1354,31 @@
      </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>
@@ -727,7 +1388,12 @@
    <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
      title="常用建议维护"
      :visible.sync="propdialog"
      width="500px"
      append-to-body
    >
    </el-dialog>
  </div>
</template>
@@ -758,7 +1424,7 @@
import { getCompany, queryCompany } from "@/api/team/tuanti";
import { reportHistory, yichang, shanchu } from "@/api/doctor/check";
import { getPdf, revoke } from "@/api/hosp/order";
import { cSWebGetPro,dataSynchronization } from "@/api/doctor/examination";
import { cSWebGetPro, dataSynchronization } from "@/api/doctor/examination";
import ViewPdf from "@/components/ViewPdf";
import Historicalreport from "@/components/Historicalreport";
import { getDicts } from "@/api/system/dict/data";
@@ -957,32 +1623,32 @@
      dataSynchronization(tjNumber)
        .then((res, error) => {
          if (res.code == 200) {
            this.clearTimeSet = null;
            this.$modal.closeLoading();
            this.$modal.msgSuccess("同步成功!");
          }
        })
        .catch((error) => {
          this.clearTimeSet = null;
          this.$modal.closeLoading();
        });
    },
    shanchu(row) {
      console.log(row)
      console.log(row);
      shanchu({
        id: row.orderDetailId,
      }).then((res) => {
        console.log(res);
        // 找到要删除项所在的父级数组
        const parentItem = this.yichangList.find(item =>
          item.sone.some(soneItem => soneItem.proId === row.proId)
        const parentItem = this.yichangList.find((item) =>
          item.sone.some((soneItem) => soneItem.proId === row.proId)
        );
        if (parentItem) {
          // 从父级的 sone 数组中删除该项
          const index = parentItem.sone.findIndex(item => item.proId === row.proId);
          const index = parentItem.sone.findIndex(
            (item) => item.proId === row.proId
          );
          if (index > -1) {
            parentItem.sone.splice(index, 1);
@@ -997,11 +1663,10 @@
            // 更新 expends 数组
            this.getExpends();
            this.$message.success('删除成功');
            this.$message.success("删除成功");
          }
        }
      })
      });
    },
    getConfigKey() {
      getconfigKey("sfkqtwbg").then((res) => {
@@ -1176,7 +1841,7 @@
              }, 3000);
              this.$message({
                message: "报告正在生成,请两分钟后预览!",
                type: "error"
                type: "error",
              });
            } else {
              this.dialogVisible = true;
@@ -1779,7 +2444,7 @@
              state: 1,
              id: this.MsgId,
            };
            getfiedState(data).then((res) => { });
            getfiedState(data).then((res) => {});
            this.submitForm();
          });
      } else {
@@ -1811,7 +2476,7 @@
    //     });
    //   }
    // },
    change(vale) { },
    change(vale) {},
    // determine() {
    //   let tjNumber = this.tableAll.tjNumber;
@@ -2087,38 +2752,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;
src/views/system/tijian/index.vue
@@ -1,7 +1,18 @@
<template>
  <div class="app-container">
    <el-dialog :title="title" :visible.sync="open1" width="1000px" append-to-body>
      <el-form ref="form1" :model="form1" :rules="rules1" label-width="100px" :inline="true">
    <el-dialog
      :title="title"
      :visible.sync="open1"
      width="1000px"
      append-to-body
    >
      <el-form
        ref="form1"
        :model="form1"
        :rules="rules1"
        label-width="100px"
        :inline="true"
      >
        <el-form-item label="单位名称" prop="cnName">
          <el-input v-model="form1.cnName" placeholder="请输入中文名称" />
        </el-form-item>
@@ -18,10 +29,16 @@
          <el-input v-model="form1.legalPerson" placeholder="请输入法人" />
        </el-form-item>
        <el-form-item label="注册地址" prop="registerAddress">
          <el-input v-model="form1.registerAddress" placeholder="请输入注册地址" />
          <el-input
            v-model="form1.registerAddress"
            placeholder="请输入注册地址"
          />
        </el-form-item>
        <el-form-item label="通讯地址" prop="mailingAddress">
          <el-input v-model="form1.mailingAddress" placeholder="请输入通讯地址" />
          <el-input
            v-model="form1.mailingAddress"
            placeholder="请输入通讯地址"
          />
        </el-form-item>
        <el-form-item label="开户银行" prop="bankAccount">
          <el-input v-model="form1.bankAccount" placeholder="请输入开户银行" />
@@ -48,12 +65,25 @@
          <el-input v-model="form1.orderNum" placeholder="请输入排序" />
        </el-form-item>
        <el-form-item label="有效时间" prop="validTime">
          <el-date-picker clearable v-model="form1.validTime" type="date" value-format="yyyy-MM-dd"
            placeholder="请选择有效时间">
          </el-date-picker> </el-form-item><br />
          <el-date-picker
            clearable
            v-model="form1.validTime"
            type="date"
            value-format="yyyy-MM-dd"
            placeholder="请选择有效时间"
          >
          </el-date-picker> </el-form-item
        ><br />
        <el-form-item label="备注" prop="remark">
          <el-input v-model="form1.remark" type="textarea" placeholder="请输入内容" :rows="2" label-width="400px"
            style="width: 830px" resize="none"></el-input>
          <el-input
            v-model="form1.remark"
            type="textarea"
            placeholder="请输入内容"
            :rows="2"
            label-width="400px"
            style="width: 830px"
            resize="none"
          ></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer2">
@@ -64,92 +94,160 @@
    <el-row :gutter="20">
      <el-col :span="17">
        <div class="grid-content bg-purple">
          <el-form :inline="true" ref="form" :model="form" :rules="rules" :label-position="labelPosition"
            label-width="106px" v-show="top">
          <el-form
            :inline="true"
            ref="form"
            :model="form"
            :rules="rules"
            :label-position="labelPosition"
            label-width="106px"
            v-show="top"
          >
            <el-form-item label="匿名" prop="isNow">
              <el-select v-model="isNow" placeholder="是否匿名" @change="freezing(isNow)">
                <el-option v-for="dict in dictType" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-select
                v-model="isNow"
                placeholder="是否匿名"
                @change="freezing(isNow)"
              >
                <el-option
                  v-for="dict in dictType"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="姓名" prop="cusName" :rules="[
              {
                required: true,
                validator: (rule, value, callback) => {
                  if (!form.cusName) {
                    callback('');
                  } else if (form.cusName) {
                    callback();
                  }
            <el-form-item
              label="姓名"
              prop="cusName"
              :rules="[
                {
                  required: true,
                  validator: (rule, value, callback) => {
                    if (!form.cusName) {
                      callback('');
                    } else if (form.cusName) {
                      callback();
                    }
                  },
                  trigger: 'blur',
                },
                trigger: 'blur',
              },
            ]">
              <span slot="label" style="display: inline-block; border-bottom: 2px solid blue" @click="openname">
              ]"
            >
              <span
                slot="label"
                style="display: inline-block; border-bottom: 2px solid blue"
                @click="openname"
              >
                姓名
              </span>
              <el-input v-model="form.cusName" placeholder="请输入姓名" :disabled="isDisabled"
                @input="form.cusName = $event.replace(/\s/g, '')" />
              <el-input
                v-model="form.cusName"
                placeholder="请输入姓名"
                :disabled="isDisabled"
                @input="form.cusName = $event.replace(/\s/g, '')"
              />
            </el-form-item>
            <el-form-item label="证件类型" prop="idType">
              <el-select :disabled="isDisabled" v-model="form.idType" placeholder="请选择证件类型">
                <el-option v-for="dict in dict.type.dict_user_cardtype" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-select
                :disabled="isDisabled"
                v-model="form.idType"
                placeholder="请选择证件类型"
              >
                <el-option
                  v-for="dict in dict.type.dict_user_cardtype"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="民族" prop="cusNational">
              <el-select filterable :disabled="isDisabled" v-model="form.cusNational" placeholder="请选择民族">
                <el-option v-for="dict in dict.type.dict_user_national" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-select
                filterable
                :disabled="isDisabled"
                v-model="form.cusNational"
                placeholder="请选择民族"
              >
                <el-option
                  v-for="dict in dict.type.dict_user_national"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="性别" prop="cusSex" :rules="[
              {
                required: true,
                validator: (rule, value, callback) => {
                  if (!form.cusSex && showHidden.has_sex === 'Y') {
                    callback('');
                  } else if (showHidden.has_sex === 'N') {
                    callback();
                  } else if (form.cusSex && showHidden.has_sex === 'Y') {
                    callback();
                  }
            <el-form-item
              label="性别"
              prop="cusSex"
              :rules="[
                {
                  required: true,
                  validator: (rule, value, callback) => {
                    if (!form.cusSex && showHidden.has_sex === 'Y') {
                      callback('');
                    } else if (showHidden.has_sex === 'N') {
                      callback();
                    } else if (form.cusSex && showHidden.has_sex === 'Y') {
                      callback();
                    }
                  },
                  trigger: 'blur',
                },
                trigger: 'blur',
              },
            ]">
              <el-select :disabled="isDisabled" v-model="form.cusSex" placeholder="性别">
                <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label"
                  :value="parseInt(dict.value)"></el-option>
              ]"
            >
              <el-select
                :disabled="isDisabled"
                v-model="form.cusSex"
                placeholder="性别"
              >
                <el-option
                  v-for="dict in dict.type.sys_user_sex"
                  :key="dict.value"
                  :label="dict.label"
                  :value="parseInt(dict.value)"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="证件号码" prop="cusIdcard" :rules="[
              {
                required: true,
                validator: (rule, value, callback) => {
                  if (!form.cusIdcard && showHidden.has_idcard === 'Y') {
                    callback('');
                  } else if (showHidden.has_idcard === 'N') {
                    callback();
                  } else if (
                    form.cusIdcard &&
                    showHidden.has_idcard === 'Y'
                  ) {
                    callback();
                  }
            <el-form-item
              label="证件号码"
              prop="cusIdcard"
              :rules="[
                {
                  required: true,
                  validator: (rule, value, callback) => {
                    if (!form.cusIdcard && showHidden.has_idcard === 'Y') {
                      callback('');
                    } else if (showHidden.has_idcard === 'N') {
                      callback();
                    } else if (
                      form.cusIdcard &&
                      showHidden.has_idcard === 'Y'
                    ) {
                      callback();
                    }
                  },
                  trigger: 'blur',
                },
                trigger: 'blur',
              },
            ]">
              <span slot="label" style="display: inline-block; border-bottom: 2px solid blue" @click="handleQuery">
              ]"
            >
              <span
                slot="label"
                style="display: inline-block; border-bottom: 2px solid blue"
                @click="handleQuery"
              >
                证件号码
              </span>
              <el-input :disabled="isDisabled" v-model="form.cusIdcard" placeholder="请输入身份证号"
                @input="handleIdCardInput" />
              <el-input
                :disabled="isDisabled"
                v-model="form.cusIdcard"
                placeholder="请输入身份证号"
                @input="handleIdCardInput"
              />
              <!-- <i style="
                    font-size: 1rem;
                    position: absolute;
@@ -160,83 +258,173 @@
            </el-form-item>
            <el-form-item label="婚姻" prop="cusMarryStatus">
              <el-select :disabled="isDisabled" v-model="form.cusMarryStatus" placeholder="婚姻状况">
                <el-option v-for="dict in dict.type.dict_user_marry" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-select
                :disabled="isDisabled"
                v-model="form.cusMarryStatus"
                placeholder="婚姻状况"
              >
                <el-option
                  v-for="dict in dict.type.dict_user_marry"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="电话" prop="cusPhone" :rules="[
              {
                required: true,
                validator: (rule, value, callback) => {
                  if (!form.cusPhone && showHidden.is_phone === 'Y') {
                    callback('');
                  } else if (showHidden.is_phone === 'N') {
                    callback();
                  } else if (form.cusPhone && showHidden.is_phone === 'Y') {
                    callback();
                  }
            <el-form-item
              label="电话"
              prop="cusPhone"
              :rules="[
                {
                  required: true,
                  validator: (rule, value, callback) => {
                    if (!form.cusPhone && showHidden.is_phone === 'Y') {
                      callback('');
                    } else if (showHidden.is_phone === 'N') {
                      callback();
                    } else if (form.cusPhone && showHidden.is_phone === 'Y') {
                      callback();
                    }
                  },
                  trigger: 'blur',
                },
                trigger: 'blur',
              },
            ]">
              <el-input v-model="form.cusPhone" placeholder="请输入联系电话" :disabled="isDisabled"
                @input="form.cusPhone = $event.replace(/\s/g, '')" />
              ]"
            >
              <el-input
                v-model="form.cusPhone"
                placeholder="请输入联系电话"
                :disabled="isDisabled"
                @input="form.cusPhone = $event.replace(/\s/g, '')"
              />
            </el-form-item>
            <el-form-item label="出生日期" prop="cusBrithday">
              <el-date-picker :disabled="isDisabled" clearable v-model="form.cusBrithday" type="date"
                value-format="yyyy-MM-dd" placeholder="请选择出生日期" style="width: 93%">
              <el-date-picker
                :disabled="isDisabled"
                clearable
                v-model="form.cusBrithday"
                type="date"
                value-format="yyyy-MM-dd"
                placeholder="请选择出生日期"
                style="width: 93%"
              >
              </el-date-picker>
            </el-form-item>
            <el-form-item label="职业" prop="career">
              <el-select filterable :disabled="isDisabled" v-model="form.career" placeholder="请输入职业">
                <el-option v-for="dict in dict.type.dict_job" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-select
                filterable
                :disabled="isDisabled"
                v-model="form.career"
                placeholder="请输入职业"
              >
                <el-option
                  v-for="dict in dict.type.dict_job"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="邮箱" prop="cusEmail">
              <el-input v-model="form.cusEmail" placeholder="请输入邮箱" :disabled="isDisabled" />
              <el-input
                v-model="form.cusEmail"
                placeholder="请输入邮箱"
                :disabled="isDisabled"
              />
            </el-form-item>
            <el-form-item label="年龄" prop="age">
              <el-input v-model="form.age" :disabled="isDisabled" style="width: 30%" />
              <el-select :disabled="isDisabled" v-model="form.ageUnit" style="width: 20%">
                <el-option v-for="dict in dict.type.dict_ageunit" :key="dict.value" :label="dict.label"
                  :value="dict.value"></el-option>
              <el-input
                v-model="form.age"
                :disabled="isDisabled"
                style="width: 30%"
              />
              <el-select
                :disabled="isDisabled"
                v-model="form.ageUnit"
                style="width: 20%"
              >
                <el-option
                  v-for="dict in dict.type.dict_ageunit"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-form>
          <el-form :inline="true" ref="form" :model="form" :rules="rules" :label-position="labelPosition"
            label-width="106px" v-show="top">
          <el-form
            :inline="true"
            ref="form"
            :model="form"
            :rules="rules"
            :label-position="labelPosition"
            label-width="106px"
            v-show="top"
          >
            <el-form-item label="介绍人" prop="cusIntroduce">
              <el-input :disabled="isDisabled" v-model="form.cusIntroduce" placeholder="请输入介绍人" />
              <el-input
                :disabled="isDisabled"
                v-model="form.cusIntroduce"
                placeholder="请输入介绍人"
              />
            </el-form-item>
            <el-form-item label="文化程度" prop="wenHua" label-width="93px">
              <el-input :disabled="isDisabled" v-model="form.wenHua" placeholder="请输入文化程度" />
              <el-input
                :disabled="isDisabled"
                v-model="form.wenHua"
                placeholder="请输入文化程度"
              />
            </el-form-item>
            <el-form-item label="工龄" prop="gl">
              <div>
                <el-input v-model="form.gl" style="width: 50%">
                  <template slot="append">年</template>
                </el-input>
              </div>
            </el-form-item>
          </el-form>
          <el-form ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="106px"
            v-show="top">
          <el-form
            ref="form"
            :model="form"
            :rules="rules"
            :label-position="labelPosition"
            label-width="106px"
            v-show="top"
          >
            <el-row :gutter="21">
              <el-col :span="19">
                <el-form-item label="户口地址" prop="addr">
                  <el-input v-model="form.addr" placeholder="请输入户口地址" :disabled="isDisabled" />
                  <el-input
                    v-model="form.addr"
                    placeholder="请输入户口地址"
                    :disabled="isDisabled"
                  />
                </el-form-item>
              </el-col>
            </el-row>
          </el-form>
          <el-form ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="106px"
            v-show="top">
          <el-form
            ref="form"
            :model="form"
            :rules="rules"
            :label-position="labelPosition"
            label-width="106px"
            v-show="top"
          >
            <el-row :gutter="21">
              <el-col :span="19">
                <el-form-item label="现住地址" prop="cusAddr">
                  <el-input v-model="form.cusAddr" placeholder="请输入现居住地址" :disabled="isDisabled" />
                  <el-input
                    v-model="form.cusAddr"
                    placeholder="请输入现居住地址"
                    :disabled="isDisabled"
                  />
                </el-form-item>
              </el-col>
            </el-row>
@@ -245,11 +433,35 @@
          <el-row v-show="top">
            <el-col :span="19">
              <div style="float: right; margin-bottom: 10px">
                <el-button v-show="lishi" type="primary" @click="cope" size="mini">一键复制</el-button>
                <el-button type="primary" @click="inputChanges" v-show="lishi" size="mini"
                  :disabled="confirm">历史体检记录</el-button>
                <el-button :disabled="isDisabled" type="primary" size="mini" @click="submitForm">登记</el-button>
                <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" @queryTable="getList">重置</el-button>
                <el-button
                  v-show="lishi"
                  type="primary"
                  @click="cope"
                  size="mini"
                  >一键复制</el-button
                >
                <el-button
                  type="primary"
                  @click="inputChanges"
                  v-show="lishi"
                  size="mini"
                  :disabled="confirm"
                  >历史体检记录</el-button
                >
                <el-button
                  :disabled="isDisabled"
                  type="primary"
                  size="mini"
                  @click="submitForm"
                  >登记</el-button
                >
                <el-button
                  icon="el-icon-refresh"
                  size="mini"
                  @click="resetQuery"
                  @queryTable="getList"
                  >重置</el-button
                >
              </div>
            </el-col>
          </el-row>
@@ -257,50 +469,132 @@
      </el-col>
      <el-col :span="7" v-show="top">
        <div class="content" v-show="showHidden.mall_hasPhoto == 'Y'">
          <div v-show="hide" style="border: 1px dashed #dcdfe6; width: 180px; height: 180px">
          <div
            v-show="hide"
            style="border: 1px dashed #dcdfe6; width: 180px; height: 180px"
          >
            <img v-if="imageUrl" :src="imageUrl" class="avatar" />
          </div>
          <div v-if="imgSrc" class="img_bg_camera">
            <img style="
            <img
              style="
                width: 200px;
                height: 200px;
                margin-left: -20px;
                margin-top: 90px;
                padding-top: 1px;
              " :src="imgSrc" alt="" class="tx_img" />
              "
              :src="imgSrc"
              alt=""
              class="tx_img"
            />
          </div>
          <video v-show="hides" id="videoCamera" :width="videoWidth" :height="videoHeight" autoplay
            style="margin-top: 1px"></video>
          <canvas style="display: none" id="canvasCamera" :width="videoWidth" :height="videoHeight"></canvas>
          <video
            v-show="hides"
            id="videoCamera"
            :width="videoWidth"
            :height="videoHeight"
            autoplay
            style="margin-top: 1px"
          ></video>
          <canvas
            style="display: none"
            id="canvasCamera"
            :width="videoWidth"
            :height="videoHeight"
          ></canvas>
          <div class="camera_outer" style="margin-top: 10px">
            <el-button type="primary" plain size="mini" @click="getCompetence()">打开摄像头</el-button>
            <el-button type="primary" plain size="mini" @click="setImage()">拍照</el-button>
            <el-button type="primary" plain size="mini" @click="getCompetence()"
              >打开摄像头</el-button
            >
            <el-button type="primary" plain size="mini" @click="setImage()"
              >拍照</el-button
            >
            <br />
          </div>
        </div>
      </el-col>
    </el-row>
    <el-dialog title="选择套餐" :visible.sync="taocan" width="70%" height="700px" :close-on-click-modal="false">
      <el-tabs type="border-card" style="height: 560px; margin: 0 10px; width: 100%" v-model="activeNames"
        @tab-click="handleClick">
    <el-dialog
      title="选择套餐"
      :visible.sync="taocan"
      width="70%"
      height="700px"
      :close-on-click-modal="false"
    >
      <el-tabs
        type="border-card"
        style="height: 560px; margin: 0 10px; width: 100%"
        v-model="activeNames"
        @tab-click="handleClick"
      >
        <el-tab-pane label="套餐" name="first">
          <el-form :model="queryParam" ref="queryForm" size="small" :inline="true" v-if="showSearch" label-width="auto">
          <el-form
            :model="queryParam"
            ref="queryForm"
            size="small"
            :inline="true"
            v-if="showSearch"
            label-width="auto"
          >
            <el-form-item label="套餐名称" prop="pacName">
              <el-input v-model="queryParam.pacName" placeholder="请输入套餐名称" clearable @keyup.enter.native="handle" />
              <el-input
                v-model="queryParam.pacName"
                placeholder="请输入套餐名称"
                clearable
                @keyup.enter.native="handle"
              />
            </el-form-item>
            <el-form-item>
              <el-button type="primary" icon="el-icon-search" size="mini" @click="handle">查询</el-button>
              <el-button
                type="primary"
                icon="el-icon-search"
                size="mini"
                @click="handle"
                >查询</el-button
              >
            </el-form-item>
          </el-form>
          <div class="tab4">
            <div class="grid-content bg-purple" style="margin-left: 5px; width: 98%">
              <el-table v-loading="loading" element-loading-text="正在加载中..." element-loading-spinner="el-icon-loading"
                border :data="newpacName" @selection-change="handleSelectionChange" height="450px" ref="tb">
                <el-table-column type="selection" width="40px" align="center" label="选择" />
                <el-table-column label="套餐名称" align="center" prop="pacName" width="120px" />
                <el-table-column label="套餐价格" align="center" prop="price" width="120px" />
                <el-table-column label="套餐明细" align="center" prop="allProName" :show-overflow-tooltip="true" />
            <div
              class="grid-content bg-purple"
              style="margin-left: 5px; width: 98%"
            >
              <el-table
                v-loading="loading"
                element-loading-text="正在加载中..."
                element-loading-spinner="el-icon-loading"
                border
                :data="newpacName"
                @selection-change="handleSelectionChange"
                height="450px"
                ref="tb"
              >
                <el-table-column
                  type="selection"
                  width="40px"
                  align="center"
                  label="选择"
                />
                <el-table-column
                  label="套餐名称"
                  align="center"
                  prop="pacName"
                  width="120px"
                />
                <el-table-column
                  label="套餐价格"
                  align="center"
                  prop="price"
                  width="120px"
                />
                <el-table-column
                  label="套餐明细"
                  align="center"
                  prop="allProName"
                  :show-overflow-tooltip="true"
                />
              </el-table>
            </div>
          </div>
@@ -308,43 +602,84 @@
        <el-tab-pane label="组合" name="third">
          <el-row :gutter="20" style="width: 100%">
            <el-col :span="6" style="min-width: 200px">
              <div style="text-align: center; margin-bottom: 10px; margin-top: 10px;">
              <div
                style="
                  text-align: center;
                  margin-bottom: 10px;
                  margin-top: 10px;
                "
              >
                项目列表
              </div>
              <el-input placeholder="输入关键字进行过滤" v-model="filterage">
              </el-input>
              <div class="tab3">
                <el-tree class="filter-tree" v-loading="loading" :data="packageList" :props="defaultProp" show-checkbox
                  node-key="id" @check="handlepackage" :default-checked-keys="checkedkeys"
                  :filter-node-method="filterpackage" ref="treas" :render-content="renderContents">
                <el-tree
                  class="filter-tree"
                  v-loading="loading"
                  :data="packageList"
                  :props="defaultProp"
                  show-checkbox
                  node-key="id"
                  @check="handlepackage"
                  :default-checked-keys="checkedkeys"
                  :filter-node-method="filterpackage"
                  ref="treas"
                  :render-content="renderContents"
                >
                </el-tree>
              </div>
            </el-col>
            <el-col :span="6" style="min-width: 200px">
              <div style="text-align: center; margin-bottom: 10px; margin-top: 10px;">
              <div
                style="
                  text-align: center;
                  margin-bottom: 10px;
                  margin-top: 10px;
                "
              >
                明细项目列表
              </div>
              <div class="tab3">
                <el-tree class="filter-tree" v-loading="loading" :data="packagedataList" node-key="proId"
                  :props="defaultpackProps" :filter-node-method="filterpackage" @check-change="handlePackageChecked"
                  :default-checked-keys="checkedListkey1" :render-content="renderContent">
                <el-tree
                  class="filter-tree"
                  v-loading="loading"
                  :data="packagedataList"
                  node-key="proId"
                  :props="defaultpackProps"
                  :filter-node-method="filterpackage"
                  @check-change="handlePackageChecked"
                  :default-checked-keys="checkedListkey1"
                  :render-content="renderContent"
                >
                </el-tree>
              </div>
            </el-col>
            <el-col :span="11">
              <div class="grid-content bg-purple">
                <div style="
                <div
                  style="
                    text-align: center;
                    margin-bottom: 10px;
                    margin-top: 10px;
                  ">
                  "
                >
                  已选项目列表
                </div>
                <el-table :data="DataLists" border style="width: 100%" height="400" :span-method="objectspanmethod">
                <el-table
                  :data="DataLists"
                  border
                  style="width: 100%"
                  height="400"
                  :span-method="objectspanmethod"
                >
                  <el-table-column prop="propinName" label="检查项目">
                  </el-table-column>
                  <el-table-column prop="proName" label="明细项目" width="260px">
                  <el-table-column
                    prop="proName"
                    label="明细项目"
                    width="260px"
                  >
                  </el-table-column>
                  <el-table-column prop="sl" label="数量" width="56px">
                  </el-table-column>
@@ -352,11 +687,21 @@
                  <el-table-column prop="proPrice" label="原价" width="56px">
                  </el-table-column>
                  <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width"
                    width="50px">
                  <el-table-column
                    label="操作"
                    align="center"
                    fixed="right"
                    class-name="small-padding fixed-width"
                    width="50px"
                  >
                    <template slot-scope="scope">
                      <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDel(scope.row)"
                        title="删除"></el-button>
                      <el-button
                        size="mini"
                        type="text"
                        icon="el-icon-delete"
                        @click="handleDel(scope.row)"
                        title="删除"
                      ></el-button>
                    </template>
                  </el-table-column>
                </el-table>
@@ -369,49 +714,109 @@
        <el-tab-pane label="单项" name="second">
          <el-row :gutter="20" style="width: 100%">
            <el-col :span="6" style="min-width: 200px">
              <div style="text-align: center; margin-bottom: 10px; margin-top: 10px;">
              <div
                style="
                  text-align: center;
                  margin-bottom: 10px;
                  margin-top: 10px;
                "
              >
                项目列表
              </div>
              <el-input placeholder="输入关键字进行过滤" v-model="filterText" style="margin-bottom: 10px;">
              <el-input
                placeholder="输入关键字进行过滤"
                v-model="filterText"
                style="margin-bottom: 10px"
              >
              </el-input>
              <div class="tab3">
                <el-tree class="filter-tree" v-loading="loading" :data="Treedata" :props="defaultProps" show-checkbox
                  node-key="proId" @check="handleCurrentChecked" :default-checked-keys="checkedkey"
                  :filter-node-method="filterNode" ref="tree" :render-content="renderContent">
                <el-tree
                  class="filter-tree"
                  v-loading="loading"
                  :data="Treedata"
                  :props="defaultProps"
                  show-checkbox
                  node-key="proId"
                  @check="handleCurrentChecked"
                  :default-checked-keys="checkedkey"
                  :filter-node-method="filterNode"
                  ref="tree"
                  :render-content="renderContent"
                >
                </el-tree>
              </div>
            </el-col>
            <el-col :span="6" style="min-width: 200px">
              <div style="text-align: center; margin-bottom: 10px; margin-top: 10px;">
              <div
                style="
                  text-align: center;
                  margin-bottom: 10px;
                  margin-top: 10px;
                "
              >
                明细项目列表
              </div>
              <div class="tab3">
                <el-tree class="filter-tree" v-loading="loading" :data="TreedataList" node-key="proId"
                  :props="defaultProps" :filter-node-method="filterNode" show-checkbox
                  @check-change="handleCurrentChecked1" :default-checked-keys="checkedListkey"
                  :render-content="renderContent">
                <el-tree
                  class="filter-tree"
                  v-loading="loading"
                  :data="TreedataList"
                  node-key="proId"
                  :props="defaultProps"
                  :filter-node-method="filterNode"
                  show-checkbox
                  @check-change="handleCurrentChecked1"
                  :default-checked-keys="checkedListkey"
                  :render-content="renderContent"
                >
                </el-tree>
              </div>
            </el-col>
            <el-col :span="11">
              <div class="grid-content bg-purple">
                <div style="text-align: center; margin-bottom: 10px; margin-top: 10px;">
                <div
                  style="
                    text-align: center;
                    margin-bottom: 10px;
                    margin-top: 10px;
                  "
                >
                  已选项目列表
                </div>
                <el-table :data="DataList" border style="width: 100%" height="400" :span-method="objectSpanMethod">
                <el-table
                  :data="DataList"
                  border
                  style="width: 100%"
                  height="400"
                  :span-method="objectSpanMethod"
                >
                  <el-table-column prop="propinName" label="检查项目">
                  </el-table-column>
                  <el-table-column prop="proName" label="明细项目" width="260px">
                  <el-table-column
                    prop="proName"
                    label="明细项目"
                    width="260px"
                  >
                  </el-table-column>
                  <el-table-column prop="sl" label="数量" width="56px">
                  </el-table-column>
                  <el-table-column prop="proPrice" label="原价" width="56px">
                  </el-table-column>
                  <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width"
                    width="50px">
                  <el-table-column
                    label="操作"
                    align="center"
                    fixed="right"
                    class-name="small-padding fixed-width"
                    width="50px"
                  >
                    <template slot-scope="scope">
                      <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
                        title="删除"></el-button>
                      <el-button
                        size="mini"
                        type="text"
                        icon="el-icon-delete"
                        @click="handleDelete(scope.row)"
                        title="删除"
                      ></el-button>
                    </template>
                  </el-table-column>
                </el-table>
@@ -431,81 +836,198 @@
      <el-col :span="15">
        <div class="grid-content bg-purple">
          <template>
            <el-form :model="form" :inline="true" label-width="75px" style="margin-left: 20px; width: 900px">
            <el-form
              :model="form"
              :inline="true"
              label-width="75px"
              style="margin-left: 20px; width: 900px"
            >
              <el-form-item label="姓名" prop="cusName">
                <span slot="label"> 姓名 </span>
                <el-input v-model="form.cusName" placeholder="请输入姓名" :disabled="isDisabled" />
                <el-input
                  v-model="form.cusName"
                  placeholder="请输入姓名"
                  :disabled="isDisabled"
                />
              </el-form-item>
              <el-form-item label="性别" prop="cusSex">
                <el-select :disabled="isDisabled" v-model="form.cusSex" placeholder="性别" style="width: 150px">
                  <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label"
                    :value="parseInt(dict.value)"></el-option>
                <el-select
                  :disabled="isDisabled"
                  v-model="form.cusSex"
                  placeholder="性别"
                  style="width: 150px"
                >
                  <el-option
                    v-for="dict in dict.type.sys_user_sex"
                    :key="dict.value"
                    :label="dict.label"
                    :value="parseInt(dict.value)"
                  ></el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="证件号码" prop="cusIdcard">
                <span slot="label"> 证件号码 </span>
                <el-input :disabled="isDisabled" v-model="form.cusIdcard" placeholder="请输入身份证号" @input="inputChange" />
                <el-input
                  :disabled="isDisabled"
                  v-model="form.cusIdcard"
                  placeholder="请输入身份证号"
                  @input="inputChange"
                />
              </el-form-item>
              <el-form-item label="单位名称" prop="firmName">
                <el-select v-model="form.firmName" remote default-first-option allow-create filterable
                  style="width: 200px" placeholder="请选择单位名称" clearable @change="idFn1" @clear="clear">
                  <el-option v-for="dict in CompanyList" :key="dict.cnName" :label="dict.cnName" :value="dict.cnName" />
                <el-select
                  v-model="form.firmName"
                  remote
                  default-first-option
                  allow-create
                  filterable
                  style="width: 200px"
                  placeholder="请选择单位名称"
                  clearable
                  @change="idFn1"
                  @clear="clear"
                >
                  <el-option
                    v-for="dict in CompanyList"
                    :key="dict.cnName"
                    :label="dict.cnName"
                    :value="dict.cnName"
                  />
                </el-select>
              </el-form-item>
              <el-form-item label="单位部门" prop="firmDeptName">
                <el-input v-model="form.firmDeptName" style="width: 150px" placeholder="请输入单位部门" @input="inputChange" />
                <el-input
                  v-model="form.firmDeptName"
                  style="width: 150px"
                  placeholder="请输入单位部门"
                  @input="inputChange"
                />
              </el-form-item>
              <el-form-item label="体检类型">
                <el-select v-model="form.tjType" placeholder="请选择体检类型">
                  <el-option v-for="dict in dict.type.dict_team" :key="dict.value" :label="dict.label"
                    :value="dict.value"></el-option>
                  <el-option
                    v-for="dict in dict.type.dict_team"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="体检类别">
                <el-select style="width: 200px" v-model="tjCategory" placeholder="请选择体检类别">
                  <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.value" :label="dict.label"
                    :value="dict.value"></el-option>
                <el-select
                  style="width: 200px"
                  v-model="tjCategory"
                  placeholder="请选择体检类别"
                >
                  <el-option
                    v-for="dict in dict.type.dict_tjtype"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
                <!-- <el-input v-model="form.category" placeholder="请输入体检类别" /> -->
              </el-form-item>
              <el-form-item label="应收金额">
                <el-input placeholder="应收金额" v-model="TotalPrice1" disabled style="width: 150px"></el-input>
                <el-input
                  placeholder="应收金额"
                  v-model="TotalPrice1"
                  disabled
                  style="width: 150px"
                ></el-input>
              </el-form-item>
              <el-form-item label="折扣">
                <!-- {{ discount }} -->
                <el-input-number ref="inputNumber" style="width: 150px" v-model="discount" :precision="1" :step="0.1"
                  :max="10" :min="0" @change="debounceNumberChange" :disabled="isfalse"></el-input-number>
                <el-input-number
                  ref="inputNumber"
                  style="width: 150px"
                  v-model="discount"
                  :precision="1"
                  :step="0.1"
                  :max="10"
                  :min="0"
                  @change="debounceNumberChange"
                  :disabled="isfalse"
                ></el-input-number>
              </el-form-item>
              <el-form-item label="实收金额">
                <el-input placeholder="实收金额" v-model="TotalPrice" style="width: 206px" @input="changeXianjia"
                  @blur="numberChangeXianPrice(discount, discount)" />
                <el-input
                  placeholder="实收金额"
                  v-model="TotalPrice"
                  style="width: 206px"
                  @input="changeXianjia"
                  @blur="numberChangeXianPrice(discount, discount)"
                />
              </el-form-item>
              <br />
              <el-form-item style="margin-left: 149px">
                <el-button type="primary" @click="Package" size="mini" style="margin-right: 20px">选择套餐</el-button>
                <el-button type="primary" @click="resetpackage" size="mini" style="margin-right: 20px">重置套餐</el-button>
                <el-button type="primary" @click="submitPrice" :loading="loadingSubmit" :disabled="loadingSubmit"
                  v-if="showHidden.has_charge == 'N'" size="mini">签到登记</el-button>
                <el-button type="primary" @click="submitCheckinfee" :disabled="confirm"
                  v-if="showHidden.has_charge == 'Y'" size="mini">登记收费</el-button>
                <el-button
                  type="primary"
                  @click="Package"
                  size="mini"
                  style="margin-right: 20px"
                  >选择套餐</el-button
                >
                <el-button
                  type="primary"
                  @click="resetpackage"
                  size="mini"
                  style="margin-right: 20px"
                  >重置套餐</el-button
                >
                <el-button
                  type="primary"
                  @click="submitPrice"
                  :loading="loadingSubmit"
                  :disabled="loadingSubmit"
                  v-if="showHidden.has_charge == 'N'"
                  size="mini"
                  >签到登记</el-button
                >
                <el-button
                  type="primary"
                  @click="submitCheckinfee"
                  :disabled="confirm"
                  v-if="showHidden.has_charge == 'Y'"
                  size="mini"
                  >登记收费</el-button
                >
              </el-form-item>
              <!-- </el-form> -->
              <!-- </div> -->
            </el-form>
          </template>
          <el-dialog title="邮寄" :visible.sync="malldisble" :close-on-click-modal="false">
            <el-form :model="addAddress" :rules="rules" label-width="78px" style="margin-left: 7px">
          <el-dialog
            title="邮寄"
            :visible.sync="malldisble"
            :close-on-click-modal="false"
          >
            <el-form
              :model="addAddress"
              :rules="rules"
              label-width="78px"
              style="margin-left: 7px"
            >
              <el-form-item label="姓名">
                <el-input placeholder="姓名" v-model="addAddress.getUser"></el-input>
                <el-input
                  placeholder="姓名"
                  v-model="addAddress.getUser"
                ></el-input>
              </el-form-item>
              <el-form-item label="电话">
                <el-input placeholder="电话" v-model="addAddress.phone"></el-input>
                <el-input
                  placeholder="电话"
                  v-model="addAddress.phone"
                ></el-input>
              </el-form-item>
              <el-form-item label="地址">
                <el-input placeholder="地址" v-model="addAddress.address"></el-input>
                <el-input
                  placeholder="地址"
                  v-model="addAddress.address"
                ></el-input>
              </el-form-item>
            </el-form>
            <div slot="footer" class="dialog-footer">
@@ -514,36 +1036,44 @@
            </div>
          </el-dialog>
          <div style="
          <div
            style="
              display: flex;
              align-items: center;
              justify-content: flex-start;
              width: 100%;
            ">
            <div style="
            "
          >
            <div
              style="
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                margin-left: 46px;
                font-size: 16px;
                margin-right: 20px;
              ">
              "
            >
              <span v-if="this.tableData1[0]">{{
                this.tableData1[0].pacName || ""
              }}</span>
              已选项目条数:<span style="font-weight: 700; color: red; margin-right: 5px">{{ this.tableData1.length || 0
              }}</span>条
              已选项目条数:<span
                style="font-weight: 700; color: red; margin-right: 5px"
                >{{ this.tableData1.length || 0 }}</span
              >条
            </div>
            已选项目列表
          </div>
          <div style="
          <div
            style="
              padding: 0px 6px;
              border: 1px solid #e6ebf5;
              max-height: 650%;
              overflow: auto;
              width: 916px;
              margin-left: 35px;
            ">
            "
          >
            <el-table :data="tableData1" border style="width: 100%">
              <el-table-column prop="proName" label="项目" width="180">
              </el-table-column>
@@ -551,7 +1081,10 @@
                <template slot-scope="scope">
                  <template v-if="isAll(scope.row.proType)"> 全部 </template>
                  <template v-else>
                    <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.proType" />
                    <dict-tag
                      :options="dict.type.sys_user_sex"
                      :value="scope.row.proType"
                    />
                  </template>
                </template>
              </el-table-column>
@@ -561,9 +1094,18 @@
              <el-table-column label="折扣">
                <template slot-scope="scope">
                  <!-- 只输入纯数字折扣 -->
                  <el-input-number v-model.number="scope.row.discount" @input="validateDiscount(scope.row)"
                    @change="handleManualChange(scope.row)" placeholder="输入折扣" size="small" type="number" :precision="1"
                    :step="0.1" :max="10" :min="0">
                  <el-input-number
                    v-model.number="scope.row.discount"
                    @input="validateDiscount(scope.row)"
                    @change="handleManualChange(scope.row)"
                    placeholder="输入折扣"
                    size="small"
                    type="number"
                    :precision="1"
                    :step="0.1"
                    :max="10"
                    :min="0"
                  >
                  </el-input-number>
                </template>
              </el-table-column>
@@ -571,11 +1113,13 @@
                <template slot-scope="scope">
                  {{ scope.row.nowPrice.toFixed(2) }}
                </template>
              </el-table-column>
              <el-table-column prop="proCheckMethod" label="是否空腹">
                <template slot-scope="scope">
                  <dict-tag :options="dict.type.sys_yes_no" :value="scope.row.proCheckMethod" />
                  <dict-tag
                    :options="dict.type.sys_yes_no"
                    :value="scope.row.proCheckMethod"
                  />
                </template>
              </el-table-column>
              <!-- <el-table-column prop="proCheckMethod" label="公费">
@@ -587,7 +1131,13 @@
              </el-table-column> -->
              <el-table-column label="操作" align="center" width="80px">
                <template slot-scope="scope">
                  <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete1(scope.row)" title="删除">
                  <el-button
                    size="mini"
                    type="text"
                    icon="el-icon-delete"
                    @click="handleDelete1(scope.row)"
                    title="删除"
                  >
                  </el-button>
                </template>
              </el-table-column>
@@ -597,63 +1147,163 @@
      </el-col>
    </el-row>
    <el-dialog title="导检单预览" :visible.sync="dialogVisibles" :close-on-click-modal="false">
    <el-dialog
      title="导检单预览"
      :visible.sync="dialogVisibles"
      :close-on-click-modal="false"
    >
      <div class="main">
        <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe>
        <iframe
          id="printIframe"
          :src="url"
          frameborder="0"
          style="width: 100%; height: 100%"
        ></iframe>
      </div>
    </el-dialog>
    <el-dialog title="收费" :visible.sync="charge" width="59%" height="700px">
      <div>
        <el-table id="sig" v-loading="loading" :data="feeitems" @selection-change="handleSelect" tooltip-effect="dark"
          ref="multipleTable" border>
        <el-table
          id="sig"
          v-loading="loading"
          :data="feeitems"
          @selection-change="handleSelect"
          tooltip-effect="dark"
          ref="multipleTable"
          border
        >
          <el-table-column type="selection" width="55" align="center" />
          <el-table-column label="姓名" align="center" prop="tjName" width="100px" />
          <el-table-column
            label="姓名"
            align="center"
            prop="tjName"
            width="100px"
          />
          <el-table-column label="性别" align="center" prop="sex" width="90px">
            <template slot-scope="scope">
              <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
              <dict-tag
                :options="dict.type.sys_user_sex"
                :value="scope.row.sex"
              />
            </template>
          </el-table-column>
          <el-table-column label="身份证" align="center" prop="idCard" width="150px"
            :show-overflow-tooltip="true"></el-table-column>
          <el-table-column label="手机号" align="center" prop="tjPhone" width="120px"
            :show-overflow-tooltip="true"></el-table-column>
          <el-table-column label="体检号" align="center" prop="tjNumber" width="160px" />
          <el-table-column label="登记时间" align="center" prop="tjFlowingWater.createTime"
            :show-overflow-tooltip="true"></el-table-column>
          <el-table-column label="单位名称" align="center" prop="tjComp"></el-table-column>
          <el-table-column label="体检类型" align="center" prop="tjType" width="80px">
          <el-table-column
            label="身份证"
            align="center"
            prop="idCard"
            width="150px"
            :show-overflow-tooltip="true"
          ></el-table-column>
          <el-table-column
            label="手机号"
            align="center"
            prop="tjPhone"
            width="120px"
            :show-overflow-tooltip="true"
          ></el-table-column>
          <el-table-column
            label="体检号"
            align="center"
            prop="tjNumber"
            width="160px"
          />
          <el-table-column
            label="登记时间"
            align="center"
            prop="tjFlowingWater.createTime"
            :show-overflow-tooltip="true"
          ></el-table-column>
          <el-table-column
            label="单位名称"
            align="center"
            prop="tjComp"
          ></el-table-column>
          <el-table-column
            label="体检类型"
            align="center"
            prop="tjType"
            width="80px"
          >
            <template slot-scope="scope">
              <dict-tag :options="dict.type.dict_team" :value="scope.row.tjType" />
              <dict-tag
                :options="dict.type.dict_team"
                :value="scope.row.tjType"
              />
            </template>
          </el-table-column>
          <el-table-column label="订单流水号" align="center" prop="tjFlowingWater.waterId" width="200px" />
          <el-table-column label="收费员" align="center" prop="tjFlowingWater.updateBy" width="100px" />
          <el-table-column
            label="订单流水号"
            align="center"
            prop="tjFlowingWater.waterId"
            width="200px"
          />
          <el-table-column
            label="收费员"
            align="center"
            prop="tjFlowingWater.updateBy"
            width="100px"
          />
        </el-table>
        <el-row :gutter="10" class="mb8">
          <el-col :span="20">
            <el-form :inline="true" :model="formInline" class="demo-form-inline" style="margin: 12px 6px">
            <el-form
              :inline="true"
              :model="formInline"
              class="demo-form-inline"
              style="margin: 12px 6px"
            >
              <el-form-item label="应收金额">
                <el-input style="width: 86px" :value="formInline.price + '.00'" placeholder="金额"
                  :disabled="true"></el-input>
                <el-input
                  style="width: 86px"
                  :value="formInline.price + '.00'"
                  placeholder="金额"
                  :disabled="true"
                ></el-input>
              </el-form-item>
              <el-form-item label="优惠">
                <el-input-number style="width: 140px" v-model="discount" :precision="1" :step="0.1" :max="10" :min="0"
                  @change="debounceNumberChange" :disabled="isfalse"></el-input-number>
                <el-input-number
                  style="width: 140px"
                  v-model="discount"
                  :precision="1"
                  :step="0.1"
                  :max="10"
                  :min="0"
                  @change="debounceNumberChange"
                  :disabled="isfalse"
                ></el-input-number>
              </el-form-item>
              <el-form-item label="实收金额">
                <el-input v-model="formInline.paidIn" placeholder="实付" style="width: 94px">
                <el-input
                  v-model="formInline.paidIn"
                  placeholder="实付"
                  style="width: 94px"
                >
                </el-input>
              </el-form-item>
              <el-form-item label="付款类型" prop="payType">
                <el-select style="width: 120px" v-model="formInline.payType" placeholder="请选择付款类型">
                  <el-option v-for="dict in dict.type.dict_pay_type" :key="dict.value" :label="dict.label"
                    :value="dict.value"></el-option>
                <el-select
                  style="width: 120px"
                  v-model="formInline.payType"
                  placeholder="请选择付款类型"
                >
                  <el-option
                    v-for="dict in dict.type.dict_pay_type"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
              </el-form-item>
              <el-form-item>
                <el-button style="margin-left: 15px" type="primary" size="mini" @click="SubmitEvent">收费</el-button>
                <el-button
                  style="margin-left: 15px"
                  type="primary"
                  size="mini"
                  @click="SubmitEvent"
                  >收费</el-button
                >
              </el-form-item>
            </el-form>
          </el-col>
@@ -667,15 +1317,24 @@
        </el-table>
      </div>
    </el-dialog>
    <el-dialog title="提示" :visible.sync="cardreader" width="30%" :close-on-press-escape="false"
      :close-on-click-modal="false">
    <el-dialog
      title="提示"
      :visible.sync="cardreader"
      width="30%"
      :close-on-press-escape="false"
      :close-on-click-modal="false"
    >
      <template>
        <el-radio-group v-model="cardreaderradio" @input="changeradio">
          <el-radio :label="3">身份证</el-radio>
          <el-radio :label="6">健康码</el-radio>
        </el-radio-group>
        <div style="margin-top: 10px" v-show="cardreaderradio == 6">
          <el-input v-model="inputSSS" ref="tableHeadFilterInp" placeholder="请输入内容"></el-input>
          <el-input
            v-model="inputSSS"
            ref="tableHeadFilterInp"
            placeholder="请输入内容"
          ></el-input>
        </div>
      </template>
      <span slot="footer" class="dialog-footer">
@@ -684,7 +1343,11 @@
      </span>
    </el-dialog>
    <div style="position: absolute; bottom: 100px; width: 360px; display: none">
      <div id="printBill" style="width: 280px; font-size: 1px" ref="printContent">
      <div
        id="printBill"
        style="width: 280px; font-size: 1px"
        ref="printContent"
      >
        <div style="font-size: 1px">
          <div style="text-align: center">
            <h3>{{ hospName }}小票</h3>
@@ -738,7 +1401,7 @@
  getByTjNum,
} from "@/api/hosp/customer";
import { getPrintSetUp } from "@/api/system/examcharge";
import cnchar from 'cnchar';
import cnchar from "cnchar";
import {
  tuantiSelect,
  deptTreeSelect,
@@ -778,6 +1441,7 @@
    "dict_job",
    "dict_user_cardtype",
    "dict_ageunit",
    "gz",
  ],
  name: "Tijian",
  components: {
@@ -1057,7 +1721,6 @@
    };
  },
  watch: {
    filterText(val) {
      this.$refs.tree.filter(val);
    },
@@ -1081,7 +1744,7 @@
  },
  methods: {
    handleIdCardInput(value) {
      this.form.cusIdcard = value.replace(/\s/g, '');
      this.form.cusIdcard = value.replace(/\s/g, "");
      this.inputChange(); // 保留原有的身份证输入处理逻辑
    },
    debounceNumberChange(currentValue, oldValue) {
@@ -1130,14 +1793,18 @@
          });
          this.$modal.msgSuccess("删除成功");
        })
        .catch(() => { });
        .catch(() => {});
    },
    handleManualChange(row) {
      console.log("这是主动出发的");
      this.updateProPrice(row);
    },
    validateDiscount(row) {
      if (this.TotalPrice !== undefined && !isNaN(this.TotalPrice) && this.TotalPrice !== this.lastXianPrice) {
      if (
        this.TotalPrice !== undefined &&
        !isNaN(this.TotalPrice) &&
        this.TotalPrice !== this.lastXianPrice
      ) {
        this.updateProPrice1(row);
        this.lastXianPrice = this.TotalPrice;
      }
@@ -1160,13 +1827,13 @@
        (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10;
    },
    updateProPrice1(row) {
      console.log("进入了1")
      console.log("进入了1");
      const ordPrice = new Big(row.ordPrice);
      const discount = new Big(row.discount);
      const result = ordPrice.times(discount.div(10));
      row.nowPrice = result.toNumber();
      const totalYsPrice = this.tableData1.reduce((sum, item) => {
        return sum.plus(new Big(item.nowPrice || '0'));
        return sum.plus(new Big(item.nowPrice || "0"));
      }, new Big(0));
      const totalYsPriceNum = totalYsPrice.toNumber();
      if (this.TotalPrice !== undefined && !isNaN(this.TotalPrice)) {
@@ -1175,13 +1842,18 @@
        if (!diff.eq(0) && this.tableData1.length > 0) {
          const lastItem = this.tableData1[this.tableData1.length - 1];
          const newYsPrice = new Big(lastItem.nowPrice).plus(diff).toNumber();
          this.$set(this.tableData1[this.tableData1.length - 1], 'nowPrice', newYsPrice);
          this.$set(
            this.tableData1[this.tableData1.length - 1],
            "nowPrice",
            newYsPrice
          );
        }
      }
      // Update youhui calculation
      if (this.TotalPrice1 !== 0 && this.TotalPrice !== 0) {
        this.discount = (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10;
        this.discount =
          (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10;
      } else {
        this.discount = 0;
      }
@@ -1244,15 +1916,13 @@
        if (this.form.firmId === originalCompId) {
          this.form.firmId = "";
        }
      }
      if (this.form.firmName) {
          this.form.tjType = this.dict.type.dict_team[1].value;
        }else{
          this.form.tjType = this.dict.type.dict_team[0].value;
        }
        this.form.tjType = this.dict.type.dict_team[1].value;
      } else {
        this.form.tjType = this.dict.type.dict_team[0].value;
      }
    },
    getCurrentDateTime() {
      const currentDate = new Date();
@@ -1295,21 +1965,21 @@
      if (data.proName.indexOf(value) !== -1) return true;
      if (data.proEngName.indexOf(value) !== -1) return true;
      // 匹配小写
      let arr = data.proName.spell('low', 'array');
      let spell = arr.join('');
      let arr = data.proName.spell("low", "array");
      let spell = arr.join("");
      let lengths = [0];
      for (var i = 0; i < arr.length - 1; i++) {
        lengths.push(lengths[i] + arr[i].length);
      };
      }
      //判断label完整拼音 中 输入值的 index 是不是等于某个汉字第一个拼音字母的index值
      if (lengths.indexOf(spell.indexOf(value)) !== -1) return true
      if (lengths.indexOf(spell.indexOf(value)) !== -1) return true;
      // 大写
      let arrUp = data.proName.spell('up', 'array');
      let spellUp = arrUp.join('');
      let arrUp = data.proName.spell("up", "array");
      let spellUp = arrUp.join("");
      let lengthsUp = [0];
      for (var i = 0; i < arrUp.length - 1; i++) {
        lengthsUp.push(lengthsUp[i] + arrUp[i].length);
      };
      }
      return lengthsUp.indexOf(spellUp.indexOf(value)) !== -1;
    },
    filterpackage(value, data) {
@@ -1332,9 +2002,7 @@
    },
    getList1() {
      getInfo().then((response) => {
        this.hospName = response.hospName;
      });
      getIsRequired().then((response) => {
        this.showHidden = response.data;
@@ -1360,8 +2028,8 @@
            d.getFullYear() -
            birthdays.getFullYear() -
            (d.getMonth() < birthdays.getMonth() ||
              (d.getMonth() == birthdays.getMonth() &&
                d.getDate() < birthdays.getDate())
            (d.getMonth() == birthdays.getMonth() &&
              d.getDate() < birthdays.getDate())
              ? 1
              : 0);
          this.form.cusSex = sex;
@@ -1520,7 +2188,7 @@
            _this.thisVideo.play();
          };
        })
        .catch((err) => { });
        .catch((err) => {});
    },
    //  绘制图片(拍照功能)
@@ -1555,15 +2223,12 @@
        .then((_) => {
          done();
        })
        .catch((_) => { });
        .catch((_) => {});
    },
    /** 查询信息列表 */
    getList() {
      getInfo().then((response) => {
      });
      getInfo().then((response) => {});
      let cusSex = this.form.cusSex;
      //全部套餐
      if (cusSex) {
@@ -1628,7 +2293,7 @@
              pacId: "",
              proIds: [],
            };
            getaddtTransition(data).then((response) => { });
            getaddtTransition(data).then((response) => {});
            this.$tab.refreshPage();
          });
        } else {
@@ -1719,9 +2384,15 @@
        if (valid) {
          // 创建表单数据的副本并去除空格
          const formData = { ...this.form };
          formData.cusName = formData.cusName ? formData.cusName.replace(/\s/g, '') : '';
          formData.cusPhone = formData.cusPhone ? formData.cusPhone.replace(/\s/g, '') : '';
          formData.cusIdcard = formData.cusIdcard ? formData.cusIdcard.replace(/\s/g, '') : '';
          formData.cusName = formData.cusName
            ? formData.cusName.replace(/\s/g, "")
            : "";
          formData.cusPhone = formData.cusPhone
            ? formData.cusPhone.replace(/\s/g, "")
            : "";
          formData.cusIdcard = formData.cusIdcard
            ? formData.cusIdcard.replace(/\s/g, "")
            : "";
          // 处理性别值
          if (formData.cusSex === "女") {
@@ -1906,7 +2577,6 @@
              /* this.$refs.aaa.open = true;
              this.$refs.aaa.getAllList();
              this.$refs.aaa.title = "证件字典"; */
            } else if (res.msg == "S") {
              this.cardreader = true;
              _this.cardreaderradio = 3;
@@ -1950,8 +2620,8 @@
            d.getFullYear() -
            birthdays.getFullYear() -
            (d.getMonth() < birthdays.getMonth() ||
              (d.getMonth() == birthdays.getMonth() &&
                d.getDate() < birthdays.getDate())
            (d.getMonth() == birthdays.getMonth() &&
              d.getDate() < birthdays.getDate())
              ? 1
              : 0);
          _this.form.age = age; // 赋值计算的年龄
@@ -2098,8 +2768,8 @@
                d.getFullYear() -
                birthdays.getFullYear() -
                (d.getMonth() < birthdays.getMonth() ||
                  (d.getMonth() == birthdays.getMonth() &&
                    d.getDate() < birthdays.getDate())
                (d.getMonth() == birthdays.getMonth() &&
                  d.getDate() < birthdays.getDate())
                  ? 1
                  : 0);
@@ -2200,8 +2870,8 @@
                d.getFullYear() -
                birthdays.getFullYear() -
                (d.getMonth() < birthdays.getMonth() ||
                  (d.getMonth() == birthdays.getMonth() &&
                    d.getDate() < birthdays.getDate())
                (d.getMonth() == birthdays.getMonth() &&
                  d.getDate() < birthdays.getDate())
                  ? 1
                  : 0);
@@ -2256,7 +2926,6 @@
      this.malldisble = false;
      this.defaultKeys = [];
      this.DataLists = [];
    },
    cancell() {
@@ -2310,7 +2979,7 @@
      this.DataList = []; // 清空已选项目列表
      this.checkedkey = []; // 清空树的选中状态
      this.checkedListkey = [];
      this.TreedataList = []
      this.TreedataList = [];
      let data = {
        cusId,
@@ -2373,12 +3042,10 @@
                  });
                });
              }
            } catch (error) { }
            } catch (error) {}
            this.loading = false;
          });
        }
        else {
        } else {
          this.taocan = true;
          this.loading = true;
          tuantiSelect(param).then((res) => {
@@ -2398,7 +3065,7 @@
                  });
                });
              }
            } catch (error) { }
            } catch (error) {}
            this.loading = false;
          });
        }
@@ -2422,7 +3089,7 @@
                });
              });
            }
          } catch (error) { }
          } catch (error) {}
          this.loading = false;
        });
      }
@@ -2544,8 +3211,11 @@
        // 回显 TreedataList 到 DataList
        if (this.TreedataList && this.TreedataList.length > 0) {
          this.DataList = this.TreedataList;
          this.marryall = this.DataList.reduce((sum, item) => sum + (item.proPrice || 0) * (item.sl || 1), 0);
          this.checkedListkey = this.DataList.map(item => item.proId);
          this.marryall = this.DataList.reduce(
            (sum, item) => sum + (item.proPrice || 0) * (item.sl || 1),
            0
          );
          this.checkedListkey = this.DataList.map((item) => item.proId);
          this.$nextTick(() => {
            this.$refs.tree.setCheckedKeys(this.checkedListkey);
          });
@@ -2574,7 +3244,8 @@
      // 设置 packageList 的选中状态
      this.$nextTick(() => {
        if (this.$refs.treas) { // 确保 treas 引用已经存在
        if (this.$refs.treas) {
          // 确保 treas 引用已经存在
          this.$refs.treas.setCheckedKeys(selectedPackageIds, true);
        }
        // 更新 checkedkeys 以反映当前选中的包
@@ -2594,12 +3265,13 @@
    updateDataListsBasedOnSelection(selectedPackageIds) {
      // 根据选中的包ID更新 DataLists
      this.DataLists = [];
      selectedPackageIds.forEach(id => {
        let packageItem = this.packageList.find(item => item.id === id);
      selectedPackageIds.forEach((id) => {
        let packageItem = this.packageList.find((item) => item.id === id);
        if (packageItem) {
          // 这里假设每个包项目都有一个 proId 数组或者类似的结构,用来获取包中的项目
          if (packageItem.proIds) { // 假设 packageItem 包含一个 proId 数组
            packageItem.proIds.forEach(proId => {
          if (packageItem.proIds) {
            // 假设 packageItem 包含一个 proId 数组
            packageItem.proIds.forEach((proId) => {
              let project = this.findProjectById(proId); // 假设有一个函数来找到项目
              if (project) {
                this.DataLists.push(project);
@@ -2610,13 +3282,16 @@
      });
      // 计算合计
      this.marryalls = this.DataLists.reduce((sum, item) => sum + item.proPrice, 0);
      this.marryalls = this.DataLists.reduce(
        (sum, item) => sum + item.proPrice,
        0
      );
    },
    findProjectById(proId) {
      // 此函数假设你有一个全局的项目列表或者可以从某个API获取
      // 这里只是一个示例,实际应用中应该根据你的数据结构来实现
      return this.allpackageList.find(item => item.proId === proId) || null;
      return this.allpackageList.find((item) => item.proId === proId) || null;
    },
    handlepackage(data, checked, checkedNodes) {
@@ -2713,9 +3388,11 @@
    handleCurrentChecked(data, checked, checkedNodes) {
      this.dataObj = data;
      if (checked.checkedNodes.length > 0) {
        const promises = checked.checkedNodes.map(node => getProSonDxList(node.proId));
        Promise.all(promises).then(results => {
          this.TreedataList = results.flatMap(res => res.data.list);
        const promises = checked.checkedNodes.map((node) =>
          getProSonDxList(node.proId)
        );
        Promise.all(promises).then((results) => {
          this.TreedataList = results.flatMap((res) => res.data.list);
          this.checkedListkey = [];
          this.DataList = [];
@@ -2728,7 +3405,9 @@
          // 更新名称和计算总价
          this.DataList.forEach((item1) => {
            const parent = checked.checkedNodes.find(node => node.proId === item1.proParentId);
            const parent = checked.checkedNodes.find(
              (node) => node.proId === item1.proParentId
            );
            if (parent) {
              item1.propinName = parent.proName;
            }
@@ -2896,23 +3575,27 @@
      };
      // 根据体检类型选择不同的处理方法
      if (this.form.firmId) {
        tuantiqueren(data).then((response) => {
          if (response.code == 200) {
            this.processOrderItems(cusId);
          }
          this.isSubmitting = false; // 提交完成后重置标志
        }).catch(() => {
          this.isSubmitting = false; // 确保在错误情况下也重置标志
        });
        tuantiqueren(data)
          .then((response) => {
            if (response.code == 200) {
              this.processOrderItems(cusId);
            }
            this.isSubmitting = false; // 提交完成后重置标志
          })
          .catch(() => {
            this.isSubmitting = false; // 确保在错误情况下也重置标志
          });
      } else {
        getaddtTransition(data).then((response) => {
          if (response.code == 200) {
            this.processOrderItems(cusId);
          }
          this.isSubmitting = false; // 提交完成后重置标志
        }).catch(() => {
          this.isSubmitting = false; // 确保在错误情况下也重置标志
        });
        getaddtTransition(data)
          .then((response) => {
            if (response.code == 200) {
              this.processOrderItems(cusId);
            }
            this.isSubmitting = false; // 提交完成后重置标志
          })
          .catch(() => {
            this.isSubmitting = false; // 确保在错误情况下也重置标志
          });
      }
      this.taocan = false;
@@ -2924,7 +3607,7 @@
    processOrderItems(cusId) {
      getTransitionList1(cusId).then((response) => {
        this.tableData1 = response.data;
       let Price = 0;
        let Price = 0;
        if (this.tableData1) {
          this.tableData1.forEach((item) => {
            if (item.tjCategory != null) {
@@ -2937,12 +3620,15 @@
            }
            this.TotalPrice1 += item.ordPrice || 0; // 累加应收金额
            Price += item.nowPrice || 0; // 累加实收金额
            this.TotalPrice = Price.toFixed(2)
            this.TotalPrice = Price.toFixed(2);
          });
          console.log(this.TotalPrice1, this.TotalPrice)
          console.log(this.TotalPrice1, this.TotalPrice);
          // 计算折扣
          this.discount = this.TotalPrice1 > 0 ?
            (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10 : 0;
          this.discount =
            this.TotalPrice1 > 0
              ? (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) *
                10
              : 0;
          this.list1 = false;
          this.list3 = true;
@@ -2970,9 +3656,15 @@
        // 去空格处理
        const processedForm = {
          ...this.form,
          cusName: this.form.cusName ? this.form.cusName.replace(/\s/g, '') : '',
          cusPhone: this.form.cusPhone ? this.form.cusPhone.replace(/\s/g, '') : '',
          cusIdcard: this.form.cusIdcard ? this.form.cusIdcard.replace(/\s/g, '') : ''
          cusName: this.form.cusName
            ? this.form.cusName.replace(/\s/g, "")
            : "",
          cusPhone: this.form.cusPhone
            ? this.form.cusPhone.replace(/\s/g, "")
            : "",
          cusIdcard: this.form.cusIdcard
            ? this.form.cusIdcard.replace(/\s/g, "")
            : "",
        };
        List.forEach((item) => {
@@ -3021,7 +3713,7 @@
            // 使用去掉空格后的数据
            cusName: processedForm.cusName,
            cusPhone: processedForm.cusPhone,
            cusIdcard: processedForm.cusIdcard
            cusIdcard: processedForm.cusIdcard,
          };
        } else {
          data = {
@@ -3035,7 +3727,7 @@
            // 使用去掉空格后的数据
            cusName: processedForm.cusName,
            cusPhone: processedForm.cusPhone,
            cusIdcard: processedForm.cusIdcard
            cusIdcard: processedForm.cusIdcard,
          };
        }
@@ -3134,7 +3826,6 @@
            }
            this.discount =
              (this.formInline.paidIn / this.formInline.price) * 10;
          } else {
            this.discount = 10;
            this.formInline.paidIn = "0.00";
@@ -3277,12 +3968,11 @@
            discount: item.discount,
            parentProId: item.parentProId,
            cusIdCard: item.cusId,
            yhj: item.nowPrice
            yhj: item.nowPrice,
          })); // 创建新的对象,包含 discount 和 id
        gaibianzhekou(newArray).then((res) => {
          this.loadingSubmit = false;
          if (res.code === 200) {
            let data;
            if (pacId || this.tjOrderList.length > 0) {