From e03e83323c452893d3d5e43fc3e0f2f8f34f47c9 Mon Sep 17 00:00:00 2001
From: qx <1084500556@qq.com>
Date: 星期一, 09 六月 2025 10:36:08 +0800
Subject: [PATCH] qx

---
 src/views/doctor/examination/index.vue |  251 +++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 207 insertions(+), 44 deletions(-)

diff --git a/src/views/doctor/examination/index.vue b/src/views/doctor/examination/index.vue
index 749203c..237219b 100644
--- a/src/views/doctor/examination/index.vue
+++ b/src/views/doctor/examination/index.vue
@@ -52,6 +52,15 @@
           />
         </el-select>
       </el-form-item>
+      <el-form-item label="椤圭洰" prop="tcm">
+        <el-input
+          v-model="queryParams.tcm"
+          placeholder="璇疯緭鍏ヤ綋妫�鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+          style="width: 170px"
+        />
+      </el-form-item>
       <el-form-item label="鐧昏鏃堕棿" prop="createTimeList">
         <el-date-picker
           v-model="createTimeList"
@@ -92,7 +101,7 @@
     </el-radio-group>
 
     <div style="width: 100%; margin-left: 10px; display: flex">
-      <div style="width: 40.5%; margin-right: 20px">
+      <div style="width: 45%">
         <el-table
           id="ta"
           v-loading="loading"
@@ -103,25 +112,26 @@
           :row-class-name="tableRowClassName"
           highlight-current-row
           @current-change="handleCurrentChange"
+          
         >
           <!-- <el-table-column type="selection" width="40" align="center" /> -->
           <el-table-column
             label="浣撴鍙�"
             align="center"
             prop="tjNumber"
-            width="160px"
+            min-width="160"
           />
           <el-table-column
             label="濮撳悕"
             align="center"
             prop="cusName"
-            width="80px"
+            min-width="80"
           />
           <el-table-column
             label="鎬у埆"
             align="center"
             prop="cusSex"
-            width="50px"
+            min-width="50"
           >
             <template slot-scope="scope">
               <span v-if="scope.row.cusSex == '0'">鐢�</span>
@@ -136,23 +146,35 @@
             <!-- </template> -->
           </el-table-column>
           <el-table-column
+            label="骞撮緞"
+            align="center"
+            prop="age"
+            min-width="100"
+          />
+          <el-table-column
             label="鎵嬫満鍙�"
             align="center"
             prop="cusPhone"
-            width="100px"
+            min-width="100"
+          />
+          <el-table-column
+            label="濂楅鍚�"
+            align="center"
+            prop="tcm"
+            min-width="100"
           />
           <el-table-column
             label="鐧昏鏃堕棿"
             align="center"
             prop="tjTime"
-            width="120px"
+            min-width="120"
           />
           <el-table-column
             v-if="checkStatus == '1'"
             label="瀹℃牳鐘舵��"
             align="center"
             prop="confirmStatus"
-            width="80px"
+            min-width="80"
           >
             <template slot-scope="scope">
               <span
@@ -174,17 +196,17 @@
             </template>
           </el-table-column>
           <!--   v-hasPermi="['reservation:reservation:edit']" -->
-          <el-table-column label="鎿嶄綔" align="center" width="120px">
+          <el-table-column label="鎿嶄綔" align="center" min-width="120px">
             <template slot-scope="scope">
               <el-button
                 size="mini"
                 type="text"
                 @click="tongbu(scope.row)"
-                disabled
+                
                 >鍚屾</el-button
               >
               <!-- :disabled="dis" -->
-              <el-button
+              <!-- <el-button
                 disabled
                 size="mini"
                 type="text"
@@ -198,7 +220,7 @@
                 disabled
                 @click="bohui(scope.row)"
                 >椹冲洖</el-button
-              >
+              > -->
             </template>
             <!--    v-show="
                   (xianshi == 'Y' || xianshi == 'y') &&
@@ -208,7 +230,7 @@
           </el-table-column>
         </el-table>
       </div>
-      <div style="width: 40%">
+      <div style="width: 45%; margin-left: 5%">
         <el-table
           v-loading="loading"
           border
@@ -218,20 +240,21 @@
           :data="xiangmuList"
           highlight-current-row
           @row-click="handleRowClick"
+          
         >
           <!-- <el-table-column type="selection" width="40" align="center" /> -->
           <el-table-column
             label="绉戝"
             align="center"
             prop="deptName"
-            width="100"
+            min-width="100"
             :show-overflow-tooltip="true"
           />
           <el-table-column
             label="椤圭洰"
             align="center"
             prop="proName"
-            width="150"
+            min-width="150"
             :show-overflow-tooltip="true"
           />
           <el-table-column
@@ -239,7 +262,7 @@
             align="center"
             prop="type"
             :show-overflow-tooltip="true"
-            width="100"
+            min-width="100"
           >
             <template slot-scope="scope">
               <span
@@ -283,7 +306,7 @@
             label="妫�鏌ユ椂闂�"
             align="center"
             prop="bcupdateTime"
-            width="160"
+            min-width="160"
           />
           <!-- <el-table-column
             label="淇濆瓨鍖荤敓"
@@ -297,22 +320,31 @@
             prop="zhupdateTime"
             width="160"
           /> -->
-          <el-table-column label="鎿嶄綔" align="center" width="120px">
+          <el-table-column label="鎿嶄綔" align="center" min-width="120px">
             <template slot-scope="scope">
               <el-button
                 size="mini"
                 type="text"
                 :disabled="scope.row.type === 1"
+                :loading="scope.row.isLoading"
                 @click="qijian(scope.row)"
-                >寮冩</el-button
+                >{{ scope.row.type === 0 ? "寮冩" : "鎭㈠" }}</el-button
               >
               <el-button
                 size="mini"
                 type="text"
-                :disabled="scope.row.type === 0"
-                @click="queryResultone(scope.row)"
-                >缁撴灉鏌ヨ</el-button
+                @click="yijian(scope.row)"
+                 v-if="yijiantype == 'N'"
+                >宸叉</el-button
               >
+              <el-button
+                size="mini"
+                type="text"
+                :disabled="scope.row.type === 0 || scope.row.type === 2"
+                @click="queryResultone(scope.row)"
+                >缁撴灉</el-button
+              >
+              <!--  -->
               <!--  @click="chaxun(scope.row) " -->
             </template>
           </el-table-column>
@@ -338,6 +370,11 @@
             <el-table-column label="妫�娴嬬粨鏋�" prop="pro_result">
             </el-table-column>
             <el-table-column label="鍙傝�冭寖鍥�" prop="ckfw"> </el-table-column>
+             <el-table-column label="寮傚父鏍囧織" prop="ycbz">
+               <template slot-scope="scope">
+                {{ scope.row.ycbz == 0 ? "姝e父" : "寮傚父" }}
+               </template>
+            </el-table-column>
           </el-table>
         </div>
 
@@ -383,6 +420,29 @@
         />
       </div>
     </div>
+
+     <el-dialog :visible.sync="open" width="980px" append-to-body>
+      <el-form ref="form" :model="form" label-width="98px" @submit.native.prevent>
+        <el-form-item label="寮冩" prop="isZybUnit">
+          <el-radio-group v-model="form.isZybUnit">
+            <el-radio :label="0">鑷姩寮冩</el-radio>
+            <el-radio :label="1">鍏朵粬</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <!-- filterable -->
+        <el-form-item label="寮冩鍘熷洜" prop="yy" style="margin-left: 20px" v-if="form.isZybUnit == 1">
+          <el-select  v-model="form.yy" placeholder="璇烽�夋嫨寮冩鍘熷洜" clearable style="width: 150px">
+            <el-option v-for="dict in dict.type.qj_type" :key="dict.value" :label="dict.label" :value="dict.label" />
+          </el-select>
+        </el-form-item>
+        <br />
+
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormqijian">纭� 瀹�</el-button>
+        <el-button @click="cancel">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -394,26 +454,31 @@
   cSWebGetPro,
   dataSynchronization,
   qijian,
+  yijian,
   resultList,
   typeOne,
+  huifu,csymxmxzqtyybcjk
 } from "@/api/doctor/examination";
 import { getCompany, queryCompany } from "@/api/team/tuanti";
 import { getNewDateList } from "@/api/hosp/order";
 import moment from "moment";
 
 export default {
-  dicts: ["dict_tj_status"],
+  dicts: ["dict_tj_status", "qj_type"],
   data() {
     return {
       jieguoList: [],
       jyjc: null,
       dis: false,
+      isLoading:false,
+        open: false,
       createTimeList: "",
       currentRow: null,
       total: 0,
       loading: true,
       selectedTjNumber: "",
       drawer: false,
+      yijiantype: null,
       type: null,
       CompanyList: [],
       CheckBox: {},
@@ -427,6 +492,7 @@
         name: null,
         beginTime: null,
         endTime: null,
+        tcm:"",
         tjCompName: "",
       },
       // 缁戝畾鍗曢�夋寜閽�
@@ -490,7 +556,7 @@
   },
   methods: {
     changRed({ row }) {
-      if (row.ycbz != "" && row.ycbz != null && row.ycbz === "1") {
+      if (row.ycbz != "" && row.ycbz != null && row.ycbz === 1) {
         // 鍙橀鑹茬殑鏉′欢
         return {
           color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor
@@ -500,13 +566,17 @@
     getdate() {
       getConfigKey("tj_confirm").then((res) => {
         this.xianshi = res.msg;
-        console.log(this.xianshi, 999);
+        // console.log(this.xianshi, 999);
       });
       getNewDateList().then((res) => {
-        this.createTimeList = [
-          moment(res.data).format("YYYY-MM-DD 00:00:00"),
-          moment(res.data).format("YYYY-MM-DD 23:59:00"),
-        ];
+        // console.log(res,222);
+
+        // this.createTimeList = [
+        //   moment(res.data).format("YYYY-MM-DD 00:00:00"),
+        //   moment(res.data).format("YYYY-MM-DD 23:59:00"),
+        // ];
+        // console.log(this.createTimeList,8855);
+
         this.getList();
       });
     },
@@ -548,7 +618,7 @@
     // 閫夋鏁版嵁
     searchSelect(val) {
       this.CheckBox = val;
-      console.log(this.CheckBox, 9999);
+      // console.log(this.CheckBox, 9999);
     },
     getList() {
       this.loading = true;
@@ -565,7 +635,7 @@
       // 鑾峰彇鍗曚綅淇℃伅闆嗗悎
       getCompany(this.queryParam).then((response) => {
         this.CompanyList = response.data;
-        console.log(this.CompanyList, 555);
+        // console.log(this.CompanyList, 555);
 
         this.loading = false;
       });
@@ -682,6 +752,7 @@
         beginTime: null,
         endTime: null,
         tjCompName: "",
+        tcm:""
       }),
         (this.CheckBox.drugManufacturerId = "");
       this.handleQuery();
@@ -728,17 +799,17 @@
       this.currentRow = val;
       let tjNumber = val.tjNumber;
       this.selectedTjNumber = val.tjNumber;
-      console.log(this.currentRow, 4455);
 
       typeOne(tjNumber).then((res) => {
         this.type = res.data;
-        console.log(res, 3322);
+      });
+
+      getConfigKey("sfyccsyjan").then((res) => {
+        this.yijiantype = res.msg;
       });
 
       cSWebGetPro(tjNumber).then((res) => {
         this.xiangmuList = res.data;
-        console.log(this.xiangmuList, 999);
-
         this.xiangmuList.forEach((item) => {
           // console.log(item);
           // if (item.type == 0) {
@@ -772,27 +843,106 @@
       });
     },
 
+    cancel() {
+      this.open = false
+    },
+
+    submitFormqijian() {
+      if (this.form.isZybUnit == 0) {
+        const tjNUm = this.selectedTjNumber;
+        const proId = this.rowProId;
+        qijian(tjNUm, proId).then((res) => {
+          if (res.code == 200) {
+              this.open = false
+            cSWebGetPro(tjNUm).then((res) => {
+              if (res.code === 200) {
+                // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹�
+                this.xiangmuList = res.data;
+                this.isLoading = false
+              }
+            });
+          }
+        });
+      } else {
+        if (this.form.yy != null) {
+          let data = {
+            tjNum: this.selectedTjNumber,
+            proId: this.rowProId,
+            yy: this.form.yy,
+          }
+          csymxmxzqtyybcjk(data).then((res) => {
+            if (res.code == 200) {
+              cSWebGetPro(this.selectedTjNumber).then((res) => {
+                if (res.code === 200) {
+                    this.open = false
+                  // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹�
+                  this.xiangmuList = res.data;
+                  this.isLoading = false
+                }
+              });
+            }
+          });
+        } else {
+          this.$modal.msgError("璇烽�夋嫨寮冩鍘熷洜");
+        }
+      }
+    },
+
     // 寮冩鎸夐挳
     qijian(row) {
       const tjNUm = this.selectedTjNumber;
       const proId = row.proId;
-
-      qijian(tjNUm, proId).then((res) => {
+      row.isLoading = true;
+      if (row.type == "2") {
+        huifu(tjNUm, proId).then((res) => {
+          if (res.code == 200) {
+            cSWebGetPro(tjNUm).then((res) => {
+              if (res.code === 200) {
+                // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹�
+                this.xiangmuList = res.data;
+                row.isLoading = false
+              }
+            });
+          }
+        });
+      } else {
+         this.open = true
+        this.form = {}
+        // qijian(tjNUm, proId).then((res) => {
+        //   if (res.code == 200) {
+        //     cSWebGetPro(tjNUm).then((res) => {
+        //       if (res.code === 200) {
+        //         // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹�
+        //         this.xiangmuList = res.data;
+        //         this.isLoading = false
+        //       }
+        //     });
+        //   }
+        // });
+      }
+    },
+    yijian(row) {
+      const tjNUm = this.selectedTjNumber;
+      const proId = row.proId;
+      row.isLoading = true;
+      yijian(tjNUm, proId).then((res) => {
         if (res.code == 200) {
+          this.$modal.msgSuccess("宸叉鎴愬姛");
           cSWebGetPro(tjNUm).then((res) => {
             if (res.code === 200) {
-              // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹�
               this.xiangmuList = res.data;
+              row.isLoading = false;
             }
           });
         }
+      }).catch(() => {
+        row.isLoading = false;
       });
     },
-    chaxun() {},
     handleRowClick(row, column, event) {
-      console.log(row, 2323);
+      // console.log(row, 2323);
       this.name = row.proName;
-      console.log(this.name, 99999);
+      // console.log(this.name, 99999);
     },
     queryResultone(row) {
       // 鎵撳紑鎶藉眽
@@ -800,8 +950,6 @@
       const proId = row.proId;
       resultList(tjNum, proId).then((res) => {
         this.jieguoList = res.data;
-        console.log(this.jieguoList, 998877);
-
         this.jyjc = this.jieguoList[0].jyjc;
         const ycbz = this.jieguoList[0].ycbz;
         /* if (ycbz === "" || ycbz === null) {
@@ -830,14 +978,12 @@
       }, 300000);
     },
     tongbu(row) {
-      // this.$refs.tb.toggleRowSelection(row);
       this.$modal.loading("姝e湪鍚屾锛岃绋嶅��...");
       this.setTime();
       let tjNumber = row.tjNumber;
       dataSynchronization(tjNumber)
         .then((res, error) => {
           if (res.code == 200) {
-            // this.$forceUpdate();
             this.handleCurrentChange(row);
             clearInterval(this.clearTimeSet);
             this.clearTimeSet = null;
@@ -934,4 +1080,21 @@
 .check-description.no-result {
   color: #bbb; /* 濡傛灉娌℃湁缁撹锛屾枃瀛椾负娣$伆鑹� */
 }
+
+::v-deep .el-table {
+  width: 100% !important;
+}
+
+::v-deep .el-table__body {
+  width: 100% !important;
+}
+
+::v-deep .el-table__header {
+  width: 100% !important;
+}
+
+/* 濡傛灉闇�瑕侀殣钘忔í鍚戞粴鍔ㄦ潯 */
+::v-deep .el-table__body-wrapper::-webkit-scrollbar-horizontal {
+  display: none;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.8.0