1
lkk
2025-04-16 4f55c0255e5e68b3685d1510062dff6e1e3dbc48
src/views/system/biol/index.vue
@@ -12,7 +12,7 @@
        <el-select
          v-model="queryParams.dyzt"
          placeholder="请选择"
          @change="handleQuery"
          @change="handleDyztChange"
          style="width: 100px"
        >
          <el-option
@@ -124,7 +124,7 @@
        <el-button
          type="primary"
          size="mini"
          :disabled="multiple"
          :disabled="single"
          @click="jiankangReport"
          >健康检查表打印</el-button
        >
@@ -544,15 +544,15 @@
import { getInfo } from "@/api/login";
import { isPdfOrJimu } from "@/api/doctor/checkAll";
import {
  listOrder,
  getNumber,
  getPdf,
  getPdfpre,
  getprint,
  hasReport,
  hasPrintCode,
  getOrderListOO,
  getNewDateList,
  getChexiao,
  xiugaidayinzhuangtai,
} from "@/api/hosp/order";
import moment from "moment";
import ViewPdf from "@/components/ViewPdf";
@@ -574,7 +574,7 @@
      radios: "1",
      dialogVisiblese: false,
      isLoading: false,
      isChexiao:false,
      isChexiao: false,
      createTimeList: "",
      // printObj: {
      //   id: "box",             //打印的区域
@@ -752,8 +752,12 @@
  },
  created() {
    // this.getNowTime();
    this.Company();
    // if (this.queryParams.dyzt === "0") {
    //   this.createTimeList = [];
    // } else {
    //   this.getdate();
    // }
    this.getdate();
  },
  mounted() {
@@ -763,6 +767,11 @@
  },
  methods: {
    getdate() {
      if (this.queryParams.dyzt === "0") {
        this.createTimeList = [];
        this.getList();
        return;
      }
      getNewDateList().then((res) => {
        this.createTimeList = [
          moment(res.data).format("YYYY-MM-DD 00:00:00"),
@@ -816,17 +825,21 @@
      const viewNum = this.mobanId;
      const params = { viewNum, tjNum };
      this.$tab.openPage("健康证检查表", "/report/jiankangzheng", params);
      let tjNumber = this.report[0];
      xiugaidayinzhuangtai(tjNumber).then((response) => {});
      this.dialogVisiblese = false;
      this.getList();
    },
    baogaoyulan() {
      const tjNumber = this.report[0];
      console.log(tjNumber, 5555);
      this.isLoading = true;
      this.isLoading = true;
      isPdfOrJimu(tjNumber).then((response) => {
        if (response.data.flag == "0") {
          const flag = true;
          this.isLoading = false;
          getPdf(tjNumber, flag).then((response) => {
          this.isLoading = false;
          let sfdy = this.queryParams.dyzt == 0 ? 1 : 0;
          getPdfpre(tjNumber, flag, sfdy).then((response) => {
            if (response.size === 0) {
              const loading = this.$loading({
                lock: true,
@@ -837,15 +850,12 @@
              setTimeout(() => {
                loading.close();
              }, 3000);
              // this.$message.msgSuccess("报告正在生成,请两分钟后预览!");
              this.$message({
                message: "报告正在生成,请两分钟后预览!",
                type: "warning",
              });
            } else {
              console.log(response);
              this.dialogVisible = true;
              this.url = window.webkitURL.createObjectURL(response); //将后端返回的blob文件读取出url
            }
          });
@@ -858,13 +868,13 @@
            params
          );
        }
        this.isLoading = false;
        this.isLoading = false;
      });
    },
    // 撤销打印
    chexiao() {
      const tjNUms = this.seleList.map((item) => item.tjNumber);
      this.isChexiao = true
      this.isChexiao = true;
      getChexiao(tjNUms).then((res) => {
        console.log(res, 6666);
        if (res.code === 200) {
@@ -873,7 +883,7 @@
        } else {
          this.$modal.msgError("撤销失败!");
        }
        this.isChexiao = false
        this.isChexiao = false;
      });
    },
    //打印小票
@@ -933,18 +943,6 @@
          contentType: "application/pdf",
        }).then((res) => {
          this.dialogVisible = true;
          // 转后后的blob对象
          console.log("blob", res.preview);
          // var ifr = document.createElement("iframe");
          // ifr.style.frameborder = "no";
          // ifr.style.display = "none";
          // ifr.style.pageBreakBefore = "always";
          // ifr.setAttribute("id", "printPdf");
          // ifr.setAttribute("name", "printPdf");
          // ifr.src =res.preview
          // document.body.appendChild(ifr);
          // this.doPrint("printPdf");
          // window.URL.revokeObjectURL( ifr.src);
          try {
            this.url = res.preview;
          } catch (error) {
@@ -953,117 +951,6 @@
        });
      });
    },
    // 体检报告
    // viewReport() {
    //   const flag = true;
    //   this.failList = [];
    //   this.form.name = "报告打印失败:";
    //   if (this.report.length == 1) {
    //     this.report.forEach((item) => {
    //       this.tjNumber = item;
    //     });
    //     getPdf(this.tjNumber, flag).then((response) => {
    //       if (response.size == 0) {
    //         // this.$message.error("该用户体检报告暂未完成!");
    //         this.dialogVisible = false;
    //         this.DataList1.forEach((item) => {
    //           if (item.tjNumber === this.tjNumber) {
    //             this.userId = item.tjCustomerName;
    //             this.form.name += item.tjCustomerName;
    //           }
    //         });
    //         this.failList.push({
    //           tjNumber: this.tjNumber,
    //           printStatus: 0,
    //           printBy: this.userId,
    //           createBy: this.userIds,
    //         });
    //       } else {
    //         this.dialogVisible = true;
    //         this.url = window.webkitURL.createObjectURL(response); //将后端返回的blob文件读取出url
    //         console.log(this.url)
    //         this.DataList1.forEach((item) => {
    //           if (item.tjNumber === this.tjNumber) {
    //             this.userId = item.tjCustomerName;
    //             // this.form.name += item.tjCustomerName
    //           }
    //         });
    //         this.failList.push({
    //           tjNumber: this.tjNumber,
    //           printStatus: 1,
    //           printBy: this.userId,
    //           createBy: this.userIds,
    //         });
    //       }
    //       this.joggle(this.failList);
    //       this.getList();
    //     });
    //   } else {
    //     for (let i = 0; i < this.report.length; i++) {
    //       if (i <= this.report.length) {
    //         this.tjNumber = this.report[i];
    //         getPdf(this.tjNumber, flag).then((response) => {
    //           if (response.size == 0) {
    //             this.failList = [];
    //             this.DataList1.forEach((item) => {
    //               if (item.tjNumber === this.report[i]) {
    //                 this.userId = item.tjCustomerName;
    //                 if (this.form.name) {
    //                   this.form.name =
    //                     this.form.name + "," + item.tjCustomerName;
    //                 }
    //               }
    //             });
    //             this.failList.push({
    //               tjNumber: this.report[i],
    //               printStatus: 0,
    //               printBy: this.userId,
    //               createBy: this.userIds,
    //             });
    //             this.joggle(this.failList);
    //             this.getList();
    //             // this.$message.error("该用户体检报告暂未完成!");
    //             this.dialogVisible = false;
    //           } else {
    //             this.failList = [];
    //             this.DataList1.forEach((item) => {
    //               if (item.tjNumber === this.report[i]) {
    //                 this.userId = item.tjCustomerName;
    //               }
    //             });
    //             this.failList.push({
    //               tjNumber: this.report[i],
    //               printStatus: 1,
    //               printBy: this.userId,
    //               createBy: this.userIds,
    //             });
    //             this.joggle(this.failList);
    //             this.getList();
    //             // this.dialogVisible = true;
    //             // this.url = window.webkitURL.createObjectURL(response); //将后端返回的blob文件读取出url
    //             const newBlob = [];
    //             newBlob.push(response);
    //             const blob = new Blob(newBlob, { type: "application/pdf" });
    //             var date = new Date().getTime();
    //             var ifr = document.createElement("iframe");
    //             ifr.style.frameborder = "no";
    //             ifr.style.display = "none";
    //             ifr.style.pageBreakBefore = "always";
    //             ifr.setAttribute("id", "printPdf" + date);
    //             ifr.setAttribute("name", "printPdf" + date);
    //             ifr.src = window.URL.createObjectURL(blob);
    //             document.body.appendChild(ifr);
    //             this.doPrint("printPdf" + date);
    //             window.URL.revokeObjectURL(ifr.src); // 释放URL 对象
    //           }
    //         });
    //       }
    //     }
    //   }
    // },
    doPrint(val) {
      var ordonnance = document.getElementById(val).contentWindow;
@@ -1227,6 +1114,16 @@
      this.queryParams.pageNum = 1;
      this.getList();
    },
    handleDyztChange(value) {
      if (value === "0") {
        // 确认一下 "未打印" 的 value 是不是 '0'
        this.createTimeList = [];
      } else {
        // 已打印 -> 设置默认登记时间
        this.getdate();
      }
      this.handleQuery();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.queryParams = {