qx
2025-07-04 4c4abb59d6ee838c61b851fcc7be93c0522c39c4
src/views/system/Checkout/index.vue
@@ -1,63 +1,27 @@
<template>
  <div class="app-container">
    <el-form
      :model="queryParams"
      ref="queryForm"
      size="small"
      :inline="true"
      v-show="showSearch"
      label-width="68px"
    >
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
      <el-form-item label="姓名" prop="name">
        <el-input
          style="width: 116px"
          ref="inputName"
          v-model="queryParams.name"
          placeholder="请输入姓名"
          @keyup.enter.native="handleQuery"
        />
        <el-input style="width: 116px" ref="inputName" v-model="queryParams.name" placeholder="请输入姓名"
          @keyup.enter.native="handleQuery" />
      </el-form-item>
      <el-form-item label="体检号" prop="tjNum">
        <el-input
          ref="inputName"
          v-model="queryParams.tjNum"
          placeholder="请输入体检号"
          @keyup.enter.native="handleQuery"
          @blur="hb"
          style="width: 170px"
          clearable
        />
        <el-input ref="inputName" v-model="queryParams.tjNum" placeholder="请输入体检号" @keyup.enter.native="handleQuery"
          @blur="hb" style="width: 170px" clearable />
      </el-form-item>
      <el-form-item label="登记时间" prop="createTimeList">
        <el-date-picker
          clearable
          v-model="createTimeList"
          @change="dateChangebirthday1"
          :default-time="['00:00:00', '23:59:00']"
          format="yyyy-MM-dd HH:mm"
          value-format="yyyy-MM-dd HH:mm"
          type="daterange"
          range-separator="-"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          :picker-options="pickerOptions"
        ></el-date-picker>
        <el-date-picker clearable v-model="createTimeList" @change="dateChangebirthday1"
          :default-time="['00:00:00', '23:59:00']" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm"
          type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
          :picker-options="pickerOptions"></el-date-picker>
      </el-form-item>
      <!-- <el-form-item label="报告时间" prop="reportTimeList">
        <el-date-picker clearable v-model="queryParams.reportTimeList" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" value-format="yyyy-MM-dd" placeholder="请选择出报告时间" style="width: 240px">
        </el-date-picker>
      </el-form-item> -->
      <el-form-item>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
          >搜索</el-button
        >
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
          >重置</el-button
        >
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
      </el-form-item>
    </el-form>
@@ -67,106 +31,34 @@
          v-hasPermi="['hosp:order:export']" style="margin-left:14px">导出</el-button>
      </el-col> -->
      <el-col :span="1.5">
        <el-button
          type="primary"
          size="mini"
          @click="handleDelete"
          :disabled="multiple"
          >签离登记</el-button
        >
        <el-button type="primary" size="mini" @click="handleDelete" :disabled="multiple">签离登记</el-button>
      </el-col>
      <right-toolbar
        :showSearch.sync="showSearch"
        @queryTable="getList"
        style="margin-right: 40px"
      ></right-toolbar>
      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" style="margin-right: 40px"></right-toolbar>
    </el-row>
    <template>
      <el-table
        ref="tb"
        border
        style="margin: 14px; width: 98%"
        v-loading="loading"
        :data="orderList"
        @selection-change="handleSelectionChange"
      >
        <el-table-column
          type="selection"
          width="40"
          align="center"
          fixed="left"
        />
        <el-table-column
          label="序号"
          align="center"
          prop="newID"
          width="50px"
          fixed="left"
        />
        <el-table-column
          label="姓名"
          align="center"
          prop="tjCustomerName"
          width="100px"
          :show-overflow-tooltip="true"
          fixed="left"
        />
        <el-table-column
          label="性别"
          align="center"
          prop="tjCustomerSex"
          width="55px"
          :show-overflow-tooltip="true"
        >
    <div id="ta">
      <el-table ref="tb" border style="margin: 14px; width: 98%" v-loading="loading" :data="orderList"
        @selection-change="handleSelectionChange">
        <el-table-column type="selection" width="40" align="center" fixed="left" />
        <el-table-column label="序号" align="center" prop="newID" width="50px" fixed="left" />
        <el-table-column label="姓名" align="center" prop="tjCustomerName" width="100px" :show-overflow-tooltip="true"
          fixed="left" />
        <el-table-column label="性别" align="center" prop="tjCustomerSex" width="55px" :show-overflow-tooltip="true">
          <template slot-scope="scope">
            <dict-tag
              :options="dict.type.sys_user_sex"
              :value="scope.row.tjCustomerSex"
            />
            <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.tjCustomerSex" />
          </template>
        </el-table-column>
        <el-table-column
          label="年龄"
          align="center"
          prop="tjCustomerAge"
          width="55px"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="电话"
          align="center"
          prop="tjCustomerPhone"
          width="120px"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="体检类型"
          align="center"
          prop="tjType"
          width="80px"
          :show-overflow-tooltip="true"
        >
        <el-table-column label="年龄" align="center" prop="tjCustomerAge" width="55px" :show-overflow-tooltip="true" />
        <el-table-column label="电话" align="center" prop="tjCustomerPhone" width="120px" :show-overflow-tooltip="true" />
        <el-table-column label="体检类型" align="center" prop="tjType" width="80px" :show-overflow-tooltip="true">
          <template slot-scope="scope">
            <span v-if="scope.row.tjType == '2'">个人</span>
            <span v-if="scope.row.tjType == '1'">团队</span>
          </template>
        </el-table-column>
        <el-table-column
          label="体检号"
          align="center"
          prop="tjNumber"
          width="160px"
          :show-overflow-tooltip="true"
        />
        <el-table-column label="体检号" align="center" prop="tjNumber" width="160px" :show-overflow-tooltip="true" />
        <el-table-column
          label="登记时间"
          align="center"
          prop="createTime"
          width="155px"
          :show-overflow-tooltip="true"
        >
        <el-table-column label="登记时间" align="center" prop="createTime" width="155px" :show-overflow-tooltip="true">
          <template slot-scope="scope">
            <span>{{ parseTime(scope.row.createTime) }}</span>
          </template>
@@ -181,205 +73,90 @@
            <span>{{ parseTime(scope.row.reportTime) }}</span>
          </template>
        </el-table-column> -->
        <el-table-column
          label="所选套餐"
          align="center"
          prop="pacName"
          width="150px"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="单位工号"
          align="center"
          prop="firmWorkId"
          width="100px"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="单位名称"
          align="center"
          prop="dictCompName"
          :show-overflow-tooltip="true"
          height="10px"
        />
        <el-table-column label="所选套餐" align="center" prop="pacName" width="150px" :show-overflow-tooltip="true" />
        <el-table-column label="单位工号" align="center" prop="firmWorkId" width="100px" :show-overflow-tooltip="true" />
        <el-table-column label="单位名称" align="center" prop="dictCompName" :show-overflow-tooltip="true" height="10px" />
      </el-table>
    </template>
    </div>
    <div class="pag">
      <div class="pag1">
        <el-pagination
          background
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="queryParams.pageNum"
          :page-sizes="[10, 20, 30, 40]"
          :page-size="queryParams.pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="total"
        >
        <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange"
          :current-page="queryParams.pageNum" :page-sizes="[10, 20, 30, 40]" :page-size="queryParams.pageSize"
          layout="total, sizes, prev, pager, next, jumper" :total="total">
        </el-pagination>
      </div>
    </div>
    <el-dialog
      title="PDF 预览"
      :visible.sync="dialogVisible"
      :close-on-click-modal="false"
    >
    <el-dialog title="PDF 预览" :visible.sync="dialogVisible" :close-on-click-modal="false">
      <div class="main">
        <iframe
          id="printIframe"
          :src="url"
          frameborder="0"
          style="width: 100%; height: 100%"
        ></iframe>
        <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe>
      </div>
    </el-dialog>
    <el-dialog
      title="导诊单"
      :visible.sync="daoZhenDan"
      :close-on-click-modal="false"
    >
    <el-dialog title="导诊单" :visible.sync="daoZhenDan" :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="title"
      :visible.sync="open"
      width="660px"
      :close-on-click-modal="false"
    >
      <el-form
        :model="formIn"
        ref="queryForm"
        size="small"
        :inline="true"
        label-width="68px"
      >
    <el-dialog :title="title" :visible.sync="open" width="660px" :close-on-click-modal="false">
      <el-form :model="formIn" ref="queryForm" size="small" :inline="true" label-width="68px">
        <el-form-item label="体检号" prop="tjNumber">
          <el-input
            ref="inputName"
            v-model="formIn.tjNumber"
            style="width: 212px"
            clearable
          />
          <el-input ref="inputName" v-model="formIn.tjNumber" style="width: 212px" clearable />
        </el-form-item>
        <el-form-item label="登记时间" prop="createTime">
          <el-input
            ref="inputName"
            v-model="formIn.createTime"
            style="width: 212px"
            clearable
          />
          <el-input ref="inputName" v-model="formIn.createTime" style="width: 212px" clearable />
        </el-form-item>
        <br />
        <el-form-item label="姓名" prop="tjCustomerName">
          <el-input
            style="width: 116px"
            ref="inputName"
            v-model="formIn.tjCustomerName"
          />
          <el-input style="width: 116px" ref="inputName" v-model="formIn.tjCustomerName" />
        </el-form-item>
        <el-form-item label="性别" prop="tjCustomerSex">
          <el-input
            style="width: 116px"
            ref="inputName"
            v-model="formIn.tjCustomerSex"
          >
          <el-input style="width: 116px" ref="inputName" v-model="formIn.tjCustomerSex">
          </el-input>
        </el-form-item>
        <el-form-item label="年龄" prop="tjCustomerAge">
          <el-input
            style="width: 116px"
            ref="inputName"
            v-model="formIn.tjCustomerAge"
            placeholder="请输入姓名"
          />
          <el-input style="width: 116px" ref="inputName" v-model="formIn.tjCustomerAge" placeholder="请输入姓名" />
        </el-form-item>
      </el-form>
      <el-table
        :data="numberList"
        style="width: 100%; margin-bottom: 10px"
        height="400px"
        border
        :row-class-name="tableRowClassName"
      >
        <el-table-column
          prop="proCheckType"
          label="检查类型"
          width="180"
          align="center"
        >
      <el-table :data="numberList" style="width: 100%; margin-bottom: 10px" height="400px" border
        :row-class-name="tableRowClassName">
        <el-table-column prop="proCheckType" label="检查类型" width="180" align="center">
        </el-table-column>
        <el-table-column prop="proName" label="项目" width="180" align="center">
        </el-table-column>
        <el-table-column label="完成" prop="type" width="86" align="center">
          <template slot-scope="scope">
            <el-checkbox
              @change="handelcheckbox1(scope.row)"
              v-model="scope.row.type"
              :disabled="scope.row.leave"
            ></el-checkbox>
            <el-checkbox @change="handelcheckbox1(scope.row)" v-model="scope.row.type"
              :disabled="scope.row.leave"></el-checkbox>
          </template>
        </el-table-column>
        <el-table-column label="弃检" prop="type2" width="86" align="center">
          <template slot-scope="scope">
            <el-checkbox
              @change="handelcheckbox(scope.row)"
              v-model="scope.row.type2"
              :disabled="scope.row.leave"
            >
            <el-checkbox @change="handelcheckbox(scope.row)" v-model="scope.row.type2" :disabled="scope.row.leave">
              <!-- <el-checkbox v-model="scope.row.type2"></el-checkbox> -->
            </el-checkbox>
          </template>
        </el-table-column>
        <el-table-column label="延期" prop="type3" width="86" align="center">
          <template slot-scope="scope">
            <el-checkbox
              @change="handelcheck(scope.row)"
              v-model="scope.row.type3"
              :disabled="scope.row.leave"
            >
            <el-checkbox @change="handelcheck(scope.row)" v-model="scope.row.type3" :disabled="scope.row.leave">
            </el-checkbox>
          </template>
        </el-table-column>
      </el-table>
      <div v-show="tcShow">
        <el-form
          :model="postpone"
          ref="queryForm"
          v-show="postpone"
          size="small"
          label-width="68px"
        >
        <el-form :model="postpone" ref="queryForm" v-show="postpone" size="small" label-width="68px">
          <el-form-item label="延期天数" prop="day">
            <el-input
              ref="inputName"
              v-model="postpone.day"
              style="width: 170px"
              clearable
            />
            <el-input ref="inputName" v-model="postpone.day" style="width: 170px" clearable />
          </el-form-item>
          <br />
          <el-form-item label="延期原因" prop="cause">
            <el-input
              style="width: 100%"
              ref="inputName"
              v-model="postpone.cause"
              maxlength="10"
              show-word-limit
            />
            <el-input style="width: 100%" ref="inputName" v-model="postpone.cause" maxlength="10" show-word-limit />
          </el-form-item>
        </el-form>
      </div>
@@ -387,12 +164,12 @@
      <!-- 弃检2,延期3 -->
      <div slot="footer" class="dialog-footer">
        <!-- <el-button @click="cancel">延期</el-button> -->
        <el-button :loading = isLoading @click="canaffirm">确认签离</el-button>
        <el-button :loading=isLoading @click="canaffirm">确认签离</el-button>
      </div>
    </el-dialog>
  </div>
</template>
<script>
import {
  getQianLiList,
@@ -412,7 +189,7 @@
  components: {
    ViewPdf,
  },
  dicts: ["dict_pay_type","sys_user_sex"],
  dicts: ["dict_pay_type", "sys_user_sex"],
  name: "Order",
  data() {
    return {
@@ -420,7 +197,7 @@
      leave: false,
      checked: false,
      radioId1: false,
      isLoading:false,
      isLoading: false,
      createTimeList: [],
      cusId: "",
      payType: "0",
@@ -999,6 +776,13 @@
};
</script>
<style lang="scss">
 .ta {
    .el-table__fixed-header-wrapper {
      .el-checkbox__inner {
        display: none !important;
      }
    }
  }
.pag {
  width: 100%;
  display: flex;
@@ -1013,6 +797,7 @@
  height: 700px;
  overflow: hidden;
}
#printIframe::-webkit-scrollbar {
  width: 6px;
@@ -1060,8 +845,8 @@
  display: flex;
  margin-top: 8px;
}
.el-table .warning-row {
  background: #e5f3ff !important;
}
</style>
</style>