1
lkk
2025-04-11 c3e7f99b9070230896865a7a0f805473aeed83ea
src/views/doctor/inspectCheck/index.vue
@@ -6,6 +6,7 @@
      size="small"
      :inline="true"
      label-width="68px"
      @submit.native.prevent
    >
      <el-form-item label="体检号" prop="reportDoctorCode">
        <el-input
@@ -39,7 +40,6 @@
          size="mini"
          style="margin-right: 15px"
          @click="tongbu"
          :disabled="!selectedFirstTable"
          >同步</el-button
        >
      </el-form-item>
@@ -62,6 +62,7 @@
          style="width: 100%"
          @selection-change="handleSelectionChange"
          :header-cell-style="{ background: '#aad8df' }"
          height="350"
        >
          <el-table-column
            fixed
@@ -69,7 +70,6 @@
            align="center"
            label="选择"
            width="40"
            :selectable="isSelectable"
          >
          </el-table-column>
          <el-table-column
@@ -102,7 +102,8 @@
            label="检验项目"
            align="center"
            prop="checkParts"
            width="150px"
            width="350px"
            :show-overflow-tooltip="true"
          />
          <el-table-column
            label="项目编号"
@@ -121,7 +122,9 @@
            align="center"
            prop="examinationDate"
            width="150px"
          />
          <!-- :formatter="formatDate" -->
          <el-table-column
            label="门诊号"
@@ -282,10 +285,11 @@
    </div>
    <el-table
      border
      max-height="280"
      height="350"
      ref="tab1"
      :data="checkList"
      v-loading="loading"
      style="width: 100%"
      @selection-change="handleSelectionChangeSecond"
    >
      <el-table-column type="selection" width="55"> </el-table-column>
@@ -346,6 +350,7 @@
  
  <script>
import { getlisList, getJyTjList, asyncPacs } from "@/api/doctor/pacsCheck";
import moment from "moment";
export default {
  dicts: ["dict_tj_status"],
@@ -431,9 +436,20 @@
      }
      console.log("Query Params:", this.queryParams);
    },
    isSelectable(row) {
      return !!row.mzh;
    },
    /* formatDate(row) {
      if (!row.examinationDate) return "";
      // 使用 moment 解析指定格式的日期字符串
      const date = moment(row.examinationDate, "MM DD YYYY hh:mmA");
      if (!date.isValid()) return "无效日期";
      // 格式化为所需格式
      return date.format("YYYY-MM-DD HH:mm");
    }, */
    // isSelectable(row) {
    //   return !!row.mzh;
    // },
    tableRowClassName({ row }) {
      return !row.mzh ? "row-disabled" : "";
    },
@@ -446,31 +462,34 @@
      }
      console.log(val, 999); */
      /* if (val.length > 0) {
        const selectedRow = val[0];
        console.log(val[0], 555);
      if (val.length > 0) {
        // const selectedRow = val[0];
        // console.log(val[0], 555);
        this.selectedFirstTable = selectedRow;
        this.selectedFirstTable = val;
        console.log("当前选中的行数据:", this.selectedFirstTable);
        // this.fetchRightTableData(selectedRow);
      } else {
        this.selectedFirstTable = null;
        this.checkList = [];
      } */
      }
    },
    // 根据选中的行数据请求右边表格数据
    /* fetchRightTableData() {
      const code = selectedRow.mzh;
      if (!code) return;
       getJyTjList(code).then((response) => {
    fetchRightTableData() {
      const code = queryParams.tjNum;
      // if (!code) return;
      getJyTjList(code).then((response) => {
        this.checkList = response.data;
        this.loading = false;
      });
    }, */
    },
    handleSelectionChangeSecond(selectedRows) {
      this.selectedSecondTable = selectedRows;
      if (selectedRows.length > 1) {
        let del_row = selectedRows.shift();
        this.$refs.tab1.toggleRowSelection(del_row, false); //设置这一行取消选中
      }
      console.log("当前选中的行数据:", this.selectedSecondTable);
    },
    getList() {
@@ -498,22 +517,10 @@
            this.loading = false;
            this.exaLists = res.data;
            // const code = this.exaLists[0].mzh;
            if (
              this.exaLists &&
              this.exaLists.length > 0 &&
              this.exaLists[0].mzh
            ) {
              const code = this.exaLists[0].mzh;
              getJyTjList(code).then((response) => {
                this.checkList = response.data;
              });
            } else {
              this.$message.error("未找到有效的 mzh 值,无法获取相关数据");
            }
            /*  getJyTjList(code).then((response) => {
            const code = this.queryParams.tjNum;
            getJyTjList(code).then((response) => {
              this.checkList = response.data;
            }); */
            });
          }
        })
        .catch((error) => {
@@ -554,21 +561,24 @@
      this.$modal.loading("正在同步,请稍候...");
      this.setTime();
      const requestData = {
        lis: [this.selectedFirstTable], // 左侧表格选中数据
        lis: this.selectedFirstTable.map((item) => ({
          ...item,
          tjNum: this.queryParams.tjNum,
        })),
        jcxmid: this.selectedFirstTable.jcxmid,
        shys: this.selectedFirstTable.shys,
        tj: this.selectedSecondTable[0], // 右侧表格选中数据
      };
      if (!this.selectedSecondTable || this.selectedSecondTable.length === 0) {
      /*   if (!this.selectedSecondTable || this.selectedSecondTable.length === 0) {
        this.$message.error("至少选一条数据!");
        return;
      }
      } */
      asyncPacs(requestData)
        .then((res) => {
          if (res.code == 200) {
            // this.fetchRightTableData(this.selectedFirstTable);
            this.fetchRightTableData(this.selectedFirstTable);
            clearInterval(this.clearTimeSet);
            this.clearTimeSet = null;
            this.$modal.closeLoading();
@@ -601,7 +611,7 @@
.table-title {
  text-align: center;
  margin-bottom: 15px;
  margin-bottom: 10px;
}
.row-disabled {
  color: #ccc; /* 设置禁用行的字体颜色 */