From a2c6e0da9d51c37ceff8d0d7e1bb7f4f85f1deb5 Mon Sep 17 00:00:00 2001
From: qx <1084500556@qq.com>
Date: 星期三, 16 四月 2025 14:15:24 +0800
Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb

---
 src/views/system/biol/index.vue |  708 +++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 503 insertions(+), 205 deletions(-)

diff --git a/src/views/system/biol/index.vue b/src/views/system/biol/index.vue
index 265edb9..af62fec 100644
--- a/src/views/system/biol/index.vue
+++ b/src/views/system/biol/index.vue
@@ -1,19 +1,87 @@
 <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="dyzt">
+        <el-select
+          v-model="queryParams.dyzt"
+          placeholder="璇烽�夋嫨"
+          @change="handleDyztChange"
+          style="width: 100px"
+        >
+          <el-option
+            v-for="item in optionsOne"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
       <el-form-item label="濮撳悕" prop="name">
-        <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" style="width: 100px"
-          @keyup.enter.native="handleQuery" />
+        <el-input
+          v-model="queryParams.name"
+          placeholder="璇疯緭鍏ュ鍚�"
+          style="width: 100px"
+          @keyup.enter.native="handleQuery"
+        />
       </el-form-item>
       <el-form-item label="浣撴鍙�" prop="tjNum">
-        <el-input style="width: 170px" v-model="queryParams.tjNum" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable
-          @keyup.enter.native="handleQuery" ref="inputName" @blur="hb" />
+        <el-input
+          style="width: 170px"
+          v-model="queryParams.tjNum"
+          placeholder="璇疯緭鍏ヤ綋妫�鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+          ref="inputName"
+          @blur="hb"
+        />
       </el-form-item>
-      <el-form-item label="鎶ュ憡鏃堕棿" prop="createTimeList">
-        <el-date-picker clearable v-model="createTimeList" type="daterange" range-separator="-" start-placeholder="寮�濮嬫棩鏈�"
-          end-placeholder="缁撴潫鏃ユ湡" :picker-options="pickerOptions" :default-time="['00:00:00', '23:00:00']"
-          format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="璇烽�夋嫨鍑烘姤鍛婃椂闂�"
-          @change="dateChangebirthday1">
+      <el-form-item
+        label="鍗曚綅鍚嶇О"
+        prop="tjCompName"
+        style="margin-left: 20px"
+      >
+        <el-select
+          :remote-method="getRemoteData"
+          v-model="queryParams.tjCompName"
+          value-key="drugManufacturerId"
+          style="width: 180px"
+          remote
+          filterable
+          placeholder="璇烽�夋嫨鍗曚綅鍚嶇О"
+          clearable
+          @change="searchSelect"
+        >
+          <el-option
+            v-for="dict in CompanyList"
+            :key="dict.drugManufacturerId"
+            :label="dict.cnName"
+            :value="dict"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="鐧昏鏃堕棿" prop="createTimeList">
+        <el-date-picker
+          clearable
+          v-model="createTimeList"
+          type="daterange"
+          range-separator="-"
+          start-placeholder="寮�濮嬫棩鏈�"
+          end-placeholder="缁撴潫鏃ユ湡"
+          :picker-options="pickerOptions"
+          :default-time="['00:00:00', '23:00:00']"
+          format="yyyy-MM-dd HH:mm:ss"
+          value-format="yyyy-MM-dd HH:mm:ss"
+          placeholder="璇烽�夋嫨鍑烘姤鍛婃椂闂�"
+          @change="dateChangebirthday1"
+        >
         </el-date-picker>
       </el-form-item>
       <!-- <el-form-item label="鍗曚綅鍚嶇О" prop="firmId">
@@ -25,8 +93,16 @@
       </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>
 
@@ -36,16 +112,45 @@
           v-hasPermi="['hosp:order:export']">瀵煎嚭</el-button>
       </el-col> -->
       <el-col :span="1.5">
-        <el-button type="primary" size="mini" :disabled="multiple" @click="viewReport">鎵归噺浣撴鎶ュ憡鎵撳嵃</el-button>
+        <el-button
+          type="primary"
+          size="mini"
+          :disabled="multiple"
+          @click="viewReport"
+          >鎵归噺浣撴鎶ュ憡鎵撳嵃</el-button
+        >
       </el-col>
       <el-col :span="1.5">
-        <el-button type="primary" size="mini" :disabled="multiple" @click="jiankangReport">鍋ュ悍妫�鏌ヨ〃鎵撳嵃</el-button>
+        <el-button
+          type="primary"
+          size="mini"
+          :disabled="single"
+          @click="jiankangReport"
+          >鍋ュ悍妫�鏌ヨ〃鎵撳嵃</el-button
+        >
       </el-col>
       <!-- <el-col :span="1.5">
         <el-button type="primary" size="mini" :disabled="multiple" @click="jiankangReport">鎵归噺浣撴鎶ュ憡瀵煎嚭</el-button>
       </el-col> -->
       <el-col :span="1.5">
-        <el-button type="primary" size="mini" :disabled="single" @click="baogaoyulan">鎶ュ憡棰勮</el-button>
+        <el-button
+          type="primary"
+          size="mini"
+          :disabled="single"
+          :loading="isLoading"
+          @click="baogaoyulan"
+          >鎶ュ憡棰勮</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          size="mini"
+          :disabled="single"
+          :loading="isChexiao"
+          @click="chexiao"
+          >鎾ら攢鎶ュ憡</el-button
+        >
       </el-col>
       <el-col :span="1.5">
         <div id="main111">
@@ -65,57 +170,149 @@
     </div> -->
 
     <template>
-      <el-table border style="margin: 14px; width: 99%" v-loading="loading"
-        :default-sort="{ prop: 'reportTime', order: 'descending' }" :data="orderList"
-        @selection-change="handleSelectionChange" ref="multipleTable">
-        <el-table-column type="selection" width="40px" align="center" height="10px" fixed="left" />
+      <el-table
+        border
+        style="margin: 14px; width: 77%"
+        v-loading="loading"
+        :default-sort="{ prop: 'reportTime', order: 'descending' }"
+        :data="orderList"
+        @selection-change="handleSelectionChange"
+        ref="multipleTable"
+      >
+        <el-table-column
+          type="selection"
+          width="40px"
+          align="center"
+          height="10px"
+          fixed="left"
+        />
         <!-- <el-table-column label="搴忓彿" align="center" prop="newID" width="50px" fixed="left" height="10px" /> -->
-        <el-table-column label="濮撳悕" align="center" prop="tjCustomerName" height="10px" width="90px"
-          :show-overflow-tooltip="true" />
-        <el-table-column label="鎬у埆" align="center" prop="tjCustomerSex" width="55px" height="10px"
-          :show-overflow-tooltip="true">
+        <el-table-column
+          label="濮撳悕"
+          align="center"
+          prop="tjCustomerName"
+          height="10px"
+          width="90px"
+          :show-overflow-tooltip="true"
+        />
+        <el-table-column
+          label="鎬у埆"
+          align="center"
+          prop="tjCustomerSex"
+          width="55px"
+          height="10px"
+          :show-overflow-tooltip="true"
+        >
           <template slot-scope="scope">
             <span v-if="scope.row.tjCustomerSex == '0'">鐢�</span>
             <span v-if="scope.row.tjCustomerSex == '1'">濂�</span>
             <span v-if="scope.row.tjCustomerSex == '2'">鏈煡</span>
           </template>
         </el-table-column>
-        <el-table-column label="骞撮緞" align="center" prop="tjCustomerAge" height="10px" width="60px"
-          :show-overflow-tooltip="true" />
-        <el-table-column label="鐢佃瘽" align="center" prop="tjCustomerPhone" :show-overflow-tooltip="true" height="10px"
-          width="110px" />
-        <el-table-column label="浣撴绫诲瀷" align="center" prop="tjType" height="10px" width="80px"
-          :show-overflow-tooltip="true">
+        <el-table-column
+          label="骞撮緞"
+          align="center"
+          prop="tjCustomerAge"
+          height="10px"
+          width="60px"
+          :show-overflow-tooltip="true"
+        />
+        <el-table-column
+          label="鐢佃瘽"
+          align="center"
+          prop="tjCustomerPhone"
+          :show-overflow-tooltip="true"
+          height="10px"
+          width="110px"
+        />
+        <el-table-column
+          label="浣撴绫诲瀷"
+          align="center"
+          prop="tjType"
+          height="10px"
+          width="80px"
+          :show-overflow-tooltip="true"
+        >
           <template slot-scope="scope">
+            <dict-tag
+              :options="dict.type.dict_team"
+              :value="scope.row.tjType"
+            />
+          </template>
+          <!-- <template slot-scope="scope">
             <span v-if="scope.row.tjType == '1'">鍥㈤槦</span>
             <span v-if="scope.row.tjType == '2'">涓汉</span>
-          </template>
+          </template> -->
         </el-table-column>
-        <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" :show-overflow-tooltip="true" width="160px" />
-        <el-table-column label="鎵�閫夊椁�" align="center" prop="pacName" height="10px" :show-overflow-tooltip="true"
-          width="140px" />
-        <el-table-column label="鐧昏浜�" align="center" prop="createBy" height="10px" :show-overflow-tooltip="true"
-          width="100px" />
-        <el-table-column label="鐧昏鏃堕棿" align="center" prop="createTime" width="155px" height="10px"
-          :show-overflow-tooltip="true">
+        <el-table-column
+          label="浣撴鍙�"
+          align="center"
+          prop="tjNumber"
+          :show-overflow-tooltip="true"
+          width="160px"
+        />
+        <el-table-column
+          label="鎵�閫夊椁�"
+          align="center"
+          prop="pacName"
+          height="10px"
+          :show-overflow-tooltip="true"
+          width="140px"
+        />
+        <el-table-column
+          label="鐧昏浜�"
+          align="center"
+          prop="createBy"
+          height="10px"
+          :show-overflow-tooltip="true"
+          width="100px"
+        />
+        <el-table-column
+          label="鐧昏鏃堕棿"
+          align="center"
+          prop="createTime"
+          width="155px"
+          height="10px"
+          :show-overflow-tooltip="true"
+        >
           <template slot-scope="scope">
             <span>{{ parseTime(scope.row.createTime) }}</span>
           </template>
         </el-table-column>
 
-        <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reportTime" width="155px" height="10px" sortable
-          :show-overflow-tooltip="true">
+        <el-table-column
+          label="鎶ュ憡鏃堕棿"
+          align="center"
+          prop="reportTime"
+          width="155px"
+          height="10px"
+          sortable
+          :show-overflow-tooltip="true"
+        >
           <template slot-scope="scope">
             <span>{{ parseTime(scope.row.reportTime) }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="鎵撳嵃鏃堕棿" align="center" prop="printLastTime" width="155px" height="10px"
-          :show-overflow-tooltip="true">
+
+        <el-table-column
+          label="鎵撳嵃鏃堕棿"
+          align="center"
+          prop="printLastTime"
+          width="155px"
+          height="10px"
+          :show-overflow-tooltip="true"
+        >
           <template slot-scope="scope">
             <span>{{ parseTime(scope.row.printLastTime) }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="澶囨敞" align="center" prop="remark" height="10px" :show-overflow-tooltip="true" />
+        <!-- <el-table-column
+          label="澶囨敞"
+          align="center"
+          prop="remark"
+          height="10px"
+          :show-overflow-tooltip="true"
+        /> -->
 
         <!-- <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding fixed-width" height="10px"
           width="60px">
@@ -129,15 +326,21 @@
 
     <div class="pag">
       <div class="pag1">
-        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
-          :limit.sync="queryParams.pageSize" @pagination="getList" />
+        <pagination
+          v-show="total > 0"
+          :total="total"
+          :page.sync="queryParams.pageNum"
+          :limit.sync="queryParams.pageSize"
+          @pagination="getList"
+        />
       </div>
     </div>
 
     <el-drawer title="鎴戞槸鏍囬" :visible.sync="drawer" :with-header="false">
       <div class="drawer1">
         <div class="drawer2">
-          <span>浣撴浜猴細{{ gation.tjCustomerName }}</span><br />
+          <span>浣撴浜猴細{{ gation.tjCustomerName }}</span
+          ><br />
           <span>鑱旂郴鐢佃瘽锛歿{ gation.tjCustomerPhone }}</span>
         </div>
         <span class="drawer6">鍩烘湰淇℃伅</span>
@@ -154,23 +357,46 @@
             <span>浣撴鍙凤細{{ gation.tjNumber }}</span>
             <span>鎶ュ憡鏃堕棿锛歿{ gation.createTime }}</span>
             <span>浣撴鏃堕棿锛歿{ gation.finishTime }}</span>
-            <el-button type="primary" plain size="mini" @click="viewReport1">鏈�杩戜竴娆′綋妫�鎶ュ憡</el-button>
+            <el-button type="primary" plain size="mini" @click="viewReport1"
+              >鏈�杩戜竴娆′綋妫�鎶ュ憡</el-button
+            >
           </div>
         </div>
         <span class="drawer6">璋冩煡闂嵎</span>
         <div>
-          <el-form ref="form" :model="form" label-width="80px" style="margin-top: 20px">
+          <el-form
+            ref="form"
+            :model="form"
+            label-width="80px"
+            style="margin-top: 20px"
+          >
             <el-form-item label="璋冩煡缁撴灉:">
               <el-select v-model="value" placeholder="璇烽�夋嫨璋冩煡缁撴灉">
-                <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+                <el-option
+                  v-for="item in options"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="琛�鍘�:" style="width: 300px" prop="pressure">
-              <el-input v-model="form.pressure" placeholder="璇疯緭鍏ヨ鍘�"></el-input>
+              <el-input
+                v-model="form.pressure"
+                placeholder="璇疯緭鍏ヨ鍘�"
+              ></el-input>
             </el-form-item>
-            <el-form-item label="浣庡帇:" placeholder="璇疯緭鍏ヤ綆鍘�" style="width: 300px" prop="lowPressure">
-              <el-input v-model="form.lowPressure" placeholder="璇疯緭鍏ヤ綆鍘�"></el-input>
+            <el-form-item
+              label="浣庡帇:"
+              placeholder="璇疯緭鍏ヤ綆鍘�"
+              style="width: 300px"
+              prop="lowPressure"
+            >
+              <el-input
+                v-model="form.lowPressure"
+                placeholder="璇疯緭鍏ヤ綆鍘�"
+              ></el-input>
             </el-form-item>
             <div style="margin-left: 20px">
               <el-form-item label="1.鏄惁鍚哥儫">
@@ -211,28 +437,54 @@
       </div>
     </el-drawer>
 
-    <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>
 
-    <div style="
+    <div
+      style="
         position: absolute;
         bottom: 100px;
         left: 500px;
         width: 700px;
         display: none;
-      ">
+      "
+    >
       <div id="printBill">
-        <barcode :value="barcode" :height="40" :width="2" :margin="0">鏉″舰鐮佸姞杞藉け璐�</barcode>
-        <div style="font-size: 13px; color: #000000" v-for="(item, index) in DataList1" :key="index">
+        <barcode :value="barcode" :height="40" :width="2" :margin="0"
+          >鏉″舰鐮佸姞杞藉け璐�</barcode
+        >
+        <div
+          style="font-size: 13px; color: #000000"
+          v-for="(item, index) in DataList1"
+          :key="index"
+        >
           <div style="width: 48%; margin-top: 10px">
             濮撳悕锛歿{ item.tjCustomerName }}
           </div>
@@ -261,17 +513,27 @@
         </div>
       </div>
     </div>
-    <el-dialog class="dia" title="PDF 棰勮" :visible.sync="dialogVisibles" :close-on-click-modal="false">
+    <el-dialog
+      class="dia"
+      title="PDF 棰勮"
+      :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>
     <!--:before-close="handleClose"  -->
     <el-dialog title="鎻愮ず" :visible.sync="dialogVisiblese" width="30%">
-      <el-radio v-model="radios" label="1">椋熷搧浠庝笟浜哄憳鍋ュ悍妫�鏌ヨ〃</el-radio>
-      <el-radio v-model="radios" label="2">鍏叡鍦烘墍浠庝笟浜哄憳妫�鏌ヨ〃</el-radio>
+      <el-radio v-model="radios" label="1">浠庝笟浜哄憳妫�鏌ヨ〃</el-radio>
+      <el-radio v-model="radios" label="2">鍏叡鍦烘墍妫�鏌ヨ〃</el-radio>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+        <el-button @click="dialogVisiblese = false">鍙� 娑�</el-button>
         <el-button type="primary" @click="timjiao">纭� 瀹�</el-button>
       </span>
     </el-dialog>
@@ -279,34 +541,40 @@
 </template>
 
 <script>
-import print from "print-js";
 import { getInfo } from "@/api/login";
+import { isPdfOrJimu } from "@/api/doctor/checkAll";
 import {
-  isPdfOrJimu
-} from "@/api/doctor/checkAll";
-import {
-  listOrder,
-  getNumber,
   getPdf,
+  getPdfpre,
   getprint,
   hasReport,
   hasPrintCode,
   getOrderListOO,
-  getNewDateList
+  getNewDateList,
+  getChexiao,
+  xiugaidayinzhuangtai,
 } from "@/api/hosp/order";
 import moment from "moment";
 import ViewPdf from "@/components/ViewPdf";
-import { SubmitCompany, getCompany, queryCompany } from "@/api/team/tuanti";
+import {
+  SubmitCompany,
+  getCompany,
+  queryCompany,
+  addbatch,
+} from "@/api/team/tuanti";
 import { chownSync } from "fs";
 export default {
+  dicts: ["dict_team"],
   components: {
     ViewPdf,
   },
   name: "Order",
   data() {
     return {
-      radios: '1',
+      radios: "1",
       dialogVisiblese: false,
+      isLoading: false,
+      isChexiao: false,
       createTimeList: "",
       // printObj: {
       //   id: "box",             //鎵撳嵃鐨勫尯鍩�
@@ -334,6 +602,16 @@
       report: "",
       gation: {},
       drawer: false,
+      optionsOne: [
+        {
+          value: "1",
+          label: "宸叉墦鍗�",
+        },
+        {
+          value: "0",
+          label: "鏈墦鍗�",
+        },
+      ],
       options: [
         {
           value: "閫夐」1",
@@ -371,6 +649,7 @@
       discount: 100,
       DataList: [],
       DataList1: [],
+      CheckBox: {},
       // 鎵撳嵃澶辫触
       failList: [],
       // 鎵撳嵃鎴愬姛
@@ -409,6 +688,7 @@
       open: false,
       // 鏃ユ湡鑼冨洿
       datetimerange: [],
+      seleList: [],
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -425,6 +705,10 @@
         djendTime: undefined,
         name: undefined,
         tjNum: undefined,
+        dyzt: "0",
+        compId: null,
+        dw: null,
+        tjCompName: "",
       },
       startTime: "",
       // 琛ㄥ崟鍙傛暟
@@ -468,8 +752,12 @@
   },
   created() {
     // this.getNowTime();
-
     this.Company();
+    // if (this.queryParams.dyzt === "0") {
+    //   this.createTimeList = [];
+    // } else {
+    //   this.getdate();
+    // }
     this.getdate();
   },
   mounted() {
@@ -479,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"),
@@ -518,23 +811,9 @@
         this.add0(mm)
       );
     },
-    /** 鐐瑰嚮鏄剧ず浣撴鎶ュ憡鎶ヨ〃*/
-    // viewReport() {
-    //   const tjNumber = this.report;
-    //   const viewNum = "792997692059705344";
-    //   const params = { viewNum, tjNumber };
-    //   hasReportEnd(tjNumber).then((res) => {
-    //     if (res == 1) {
-    //       this.$tab.openPage('浣撴鎶ュ憡', '/report/viewReport', params);
-    //     } else {
-    //       this.$message.error("璇ョ敤鎴蜂綋妫�鏆傛湭瀹屾垚锛屾棤娉曟墦鍗颁綋妫�鎶ュ憡锛�");
-    //     }
-    //   });
-    // },
 
     jiankangReport() {
       this.dialogVisiblese = true;
-
     },
     timjiao() {
       if (this.radios == "1") {
@@ -546,13 +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];
+      this.isLoading = true;
+
       isPdfOrJimu(tjNumber).then((response) => {
         if (response.data.flag == "0") {
           const flag = true;
-          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,
@@ -563,25 +850,41 @@
               setTimeout(() => {
                 loading.close();
               }, 3000);
-              // this.$message.msgSuccess("鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�");
               this.$message({
                 message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�",
                 type: "warning",
               });
             } else {
-              console.log(response)
               this.dialogVisible = true;
-
               this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl
             }
           });
         } else {
-          let url = response.data.url
+          let url = response.data.url;
           const params = { url };
-          this.$tab.openPage("鍋ュ悍璇佹鏌ヨ〃", "/report/zongjianjiankangzheng", params);
+          this.$tab.openPage(
+            "鍋ュ悍璇佹鏌ヨ〃",
+            "/report/zongjianjiankangzheng",
+            params
+          );
         }
-      })
-
+        this.isLoading = false;
+      });
+    },
+    // 鎾ら攢鎵撳嵃
+    chexiao() {
+      const tjNUms = this.seleList.map((item) => item.tjNumber);
+      this.isChexiao = true;
+      getChexiao(tjNUms).then((res) => {
+        console.log(res, 6666);
+        if (res.code === 200) {
+          this.$modal.msgSuccess("鎾ら攢鎴愬姛锛�");
+          this.getList();
+        } else {
+          this.$modal.msgError("鎾ら攢澶辫触锛�");
+        }
+        this.isChexiao = false;
+      });
     },
     //鎵撳嵃灏忕エ
     printHandle() {
@@ -598,113 +901,55 @@
       }, 100);
     },
 
-    // 浣撴鎶ュ憡
-    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鏂囦欢璇诲彇鍑簎rl
-            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,
-            });
+    base64ToBlob({ b64data = "", contentType = "", sliceSize = 512 } = {}) {
+      return new Promise((resolve, reject) => {
+        // 浣跨敤 atob() 鏂规硶灏嗘暟鎹В鐮�
+        let byteCharacters = atob(b64data);
+        let byteArrays = [];
+        for (
+          let offset = 0;
+          offset < byteCharacters.length;
+          offset += sliceSize
+        ) {
+          let slice = byteCharacters.slice(offset, offset + sliceSize);
+          let byteNumbers = [];
+          for (let i = 0; i < slice.length; i++) {
+            byteNumbers.push(slice.charCodeAt(i));
           }
-          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鏂囦欢璇诲彇鍑簎rl
-                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 瀵硅薄
-              }
-            });
-          }
+          // 8 浣嶆棤绗﹀彿鏁存暟鍊肩殑绫诲瀷鍖栨暟缁勩�傚唴瀹瑰皢鍒濆鍖栦负 0銆�
+          // 濡傛灉鏃犳硶鍒嗛厤璇锋眰鏁扮洰鐨勫瓧鑺傦紝鍒欏皢寮曞彂寮傚父銆�
+          byteArrays.push(new Uint8Array(byteNumbers));
         }
-      }
+        let result = new Blob(byteArrays, {
+          type: contentType,
+        });
+        result = Object.assign(result, {
+          // jartto: 杩欓噷涓�瀹氳澶勭悊涓�涓� URL.createObjectURL
+          preview: URL.createObjectURL(result),
+          // name: `鍥剧墖绀轰緥.png`,
+        });
+        resolve(result);
+      });
+    },
+
+    /** 鐐瑰嚮鏄剧ず浣撴鎶ュ憡鎶ヨ〃*/
+    viewReport() {
+      let data = this.report.join(",");
+
+      addbatch(data).then((res) => {
+        let base64 = res.file;
+        this.base64ToBlob({
+          b64data: base64,
+          contentType: "application/pdf",
+        }).then((res) => {
+          this.dialogVisible = true;
+          try {
+            this.url = res.preview;
+          } catch (error) {
+            this.url = window.webkitURL.createObjectURL(res.preview);
+          }
+        });
+      });
     },
 
     doPrint(val) {
@@ -715,7 +960,7 @@
     },
 
     joggle(failList) {
-      getprint(failList).then((res) => { });
+      getprint(failList).then((res) => {});
     },
 
     // 鏈�杩戜竴娆′綋妫�鎶ュ憡
@@ -757,6 +1002,11 @@
         });
       });
     },
+    // 閫夋鏁版嵁
+    searchSelect(val) {
+      this.CheckBox = val;
+      console.log(this.CheckBox, 9999);
+    },
 
     // onSubmit() {
     //   console.log("submit!");
@@ -766,20 +1016,35 @@
     },
     /** 鏌ヨ浣撴璁板綍鍒楄〃 */
     getList() {
+      console.log(this.CheckBox, 2323);
+
+      // this.queryParams.checkStatus = this.checkStatus;
+
+      this.queryParams.compId = this.CheckBox.drugManufacturerId;
+      this.queryParams.dw = this.CheckBox.cnName;
+
       if (this.createTimeList) {
         this.queryParams.djbeginTime = this.createTimeList[0];
         this.queryParams.djendTime = this.createTimeList[1];
-      }else if(this.createTimeList == null){
+      } else if (this.createTimeList == null) {
         this.queryParams.djbeginTime = null;
-        this.queryParams.djendTime =null;
+        this.queryParams.djendTime = null;
       }
 
       this.loading = true;
       getInfo().then((response) => {
         this.userIds = response.user.userId;
       });
+      // 鑾峰彇鍗曚綅淇℃伅闆嗗悎
+      getCompany(this.queryParams).then((response) => {
+        this.CompanyList = response.data;
+        console.log(this.CompanyList, 555);
+
+        this.loading = false;
+      });
       getOrderListOO(this.queryParams).then((response) => {
         this.orderList = response.data.list;
+
         // if (this.orderList) {
         //   this.orderList.forEach((item, index) => {
         //     item.newID =
@@ -849,15 +1114,48 @@
       this.queryParams.pageNum = 1;
       this.getList();
     },
+    handleDyztChange(value) {
+      if (value === "0") {
+        // 纭涓�涓� "鏈墦鍗�" 鐨� value 鏄笉鏄� '0'
+        this.createTimeList = [];
+      } else {
+        // 宸叉墦鍗� -> 璁剧疆榛樿鐧昏鏃堕棿
+        this.getdate();
+      }
+      this.handleQuery();
+    },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
-      this.createTimeList = []
+      this.queryParams = {
+        pageNum: 1,
+        pageSize: 10,
+        orderByColumn: "createTime",
+        isAsc: "desc",
+        tjType: undefined,
+        tjNumber: undefined,
+        firmId: undefined,
+        createTime: undefined,
+        finishTime: undefined,
+        reportTime: undefined,
+        djbeginTime: undefined,
+        djendTime: undefined,
+        name: undefined,
+        tjNum: undefined,
+        dyzt: "0",
+        compId: null,
+        dw: null,
+        tjCompName: "",
+      };
+      this.createTimeList = [];
       this.resetForm("queryForm");
       this.handleQuery();
     },
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
       this.ids = selection.map((item) => item.orderId);
+      this.seleList = selection;
+      console.log(this.seleList, 222333);
+
       this.DataList1 = this.$refs.multipleTable.selection;
       this.DataList1.forEach((item) => {
         this.barcode = item.tjNumber;

--
Gitblit v1.8.0