From 0fdc7a65f8dab433cbc65baa956031f25e5d4583 Mon Sep 17 00:00:00 2001
From: lkk <364857242@qq.com>
Date: 星期四, 12 十二月 2024 18:24:26 +0800
Subject: [PATCH] 初审

---
 src/views/doctor/examination/index.vue |  356 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 300 insertions(+), 56 deletions(-)

diff --git a/src/views/doctor/examination/index.vue b/src/views/doctor/examination/index.vue
index 104e652..26b3bee 100644
--- a/src/views/doctor/examination/index.vue
+++ b/src/views/doctor/examination/index.vue
@@ -9,10 +9,12 @@
     >
       <el-form-item label="浣撴鍙�" prop="tjNumber">
         <el-input
+          ref="inputName"
           v-model="queryParams.tjNumber"
           placeholder="璇疯緭鍏ヤ綋妫�鍙�"
           clearable
           @keyup.enter.native="handleQuery"
+          @blur="hb"
           style="width: 170px"
         />
       </el-form-item>
@@ -47,6 +49,7 @@
           icon="el-icon-search"
           size="mini"
           @click="handleQuery"
+          style="margin-right: 15px"
           >鏌ヨ</el-button
         >
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
@@ -64,18 +67,19 @@
     </el-radio-group>
 
     <div style="width: 100%; margin-left: 10px; display: flex">
-      <div style="width: 40%; margin-right: 20px">
+      <div style="width: 40.5%; margin-right: 20px">
         <el-table
           id="ta"
           v-loading="loading"
           ref="tb"
           :data="exaList"
           border
-          height="520px"
-          @selection-change="handleSelectionChange"
+          height="520"
           :row-class-name="tableRowClassName"
+          highlight-current-row
+          @current-change="handleCurrentChange"
         >
-          <el-table-column type="selection" width="40" align="center" />
+          <!-- <el-table-column type="selection" width="40" align="center" /> -->
           <el-table-column
             label="浣撴鍙�"
             align="center"
@@ -92,19 +96,25 @@
             label="鎬у埆"
             align="center"
             prop="cusSex"
-            width="60px"
+            width="50px"
           >
             <template slot-scope="scope">
-              <!-- {{scope.row.customer.cusSex}} -->
-              {{ scope.row.cusSex === 0 ? "鐢�" : "濂�" }}
-              <!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.cusSex " /> -->
+              <span v-if="scope.row.cusSex == '0'">鐢�</span>
+              <span v-if="scope.row.cusSex == '1'">濂�</span>
+              <span v-if="scope.row.cusSex == '2'">鏈煡</span>
+              <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span>
             </template>
+            <!-- <template slot-scope="scope"> -->
+            <!-- {{scope.row.customer.cusSex}} -->
+            <!-- {{ scope.row.cusSex === 0 ? "鐢�" : "濂�" }} -->
+            <!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.cusSex " /> -->
+            <!-- </template> -->
           </el-table-column>
           <el-table-column
             label="鎵嬫満鍙�"
             align="center"
             prop="cusPhone"
-            width="120px"
+            width="100px"
           />
           <el-table-column
             label="鐧昏鏃堕棿"
@@ -117,7 +127,7 @@
             label="瀹℃牳鐘舵��"
             align="center"
             prop="confirmStatus"
-            width="110px"
+            width="80px"
           >
             <template slot-scope="scope">
               <span
@@ -138,106 +148,116 @@
               >
             </template>
           </el-table-column>
-          <el-table-column label="鎿嶄綔" align="center">
+          <!--   v-hasPermi="['reservation:reservation:edit']" -->
+          <!-- <el-table-column label="鎿嶄綔" align="center" width="120px">
             <template slot-scope="scope">
               <el-button
                 size="mini"
                 type="text"
-                v-hasPermi="['reservation:reservation:edit']"
+                @click="tongbu(scope.row)"
                 v-show="
-                  scope.row.confirmStatus == '299' ||
-                  scope.row.confirmStatus == 288
+                  (xianshi == 'Y' || xianshi == 'y') &&
+                  (scope.row.confirmStatus == '299' ||
+                    scope.row.confirmStatus == 288)
                 "
+                >鍚屾</el-button
+              >
+              <el-button
+                :disabled="dis"
+                size="mini"
+                type="text"
                 @click="tongguo(scope.row)"
+                v-show="
+                  (xianshi == 'Y' || xianshi == 'y') &&
+                  (scope.row.confirmStatus == '299' ||
+                    scope.row.confirmStatus == 288)
+                "
                 >閫氳繃</el-button
               >
+
               <el-button
                 size="mini"
                 type="text"
-                v-hasPermi="['reservation:reservation:edit']"
                 v-show="
-                  scope.row.confirmStatus == '301' ||
-                  scope.row.confirmStatus == 288
+                  (xianshi == 'Y' || xianshi == 'y') &&
+                  (scope.row.confirmStatus == '301' ||
+                    scope.row.confirmStatus == 288)
                 "
                 @click="bohui(scope.row)"
                 >椹冲洖</el-button
               >
-              <el-button
-                size="mini"
-                type="text"
-                v-hasPermi="['reservation:reservation:edit']"
-                v-show="
-                  scope.row.confirmStatus == '299' ||
-                  scope.row.confirmStatus == 288
-                "
-                @click="tongbu(scope.row)"
-                >鍚屾</el-button
-              >
             </template>
-          </el-table-column>
+          </el-table-column> -->
         </el-table>
       </div>
       <div style="width: 50%">
         <el-table
           v-loading="loading"
           border
-          height="520px"
+          :row-class-name="tableRowClassName"
+          height="520"
           ref="tab1"
           :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"
             :show-overflow-tooltip="true"
           />
           <el-table-column
             label="椤圭洰"
             align="center"
             prop="proName"
-            width="140"
+            width="150"
+            :show-overflow-tooltip="true"
           />
           <el-table-column
             label="鐘舵��"
             align="center"
             prop="type"
             :show-overflow-tooltip="true"
-            width="60"
+            width="100"
           >
             <template slot-scope="scope">
-              <span v-if="scope.row.type == '0'">鏈</span>
-              <span v-if="scope.row.type == '1'">宸叉</span>
+              <span v-if="scope.row.type == '0'" style="color: red"
+                >鏈畬鎴�</span
+              >
+              <span v-if="scope.row.type == '1'">宸插畬鎴�</span>
               <span v-if="scope.row.type == '2'">寮冩</span>
               <span v-if="scope.row.type == '3'">寤舵湡</span>
             </template>
           </el-table-column>
 
-          <el-table-column
+          <!-- <el-table-column
             label="鏀惰垂鏂瑰紡"
             align="center"
             prop="sffs"
             :show-overflow-tooltip="true"
             width="80"
-          />
-          <el-table-column
+          /> -->
+          <!-- <el-table-column
             label="鏄惁鏀惰垂"
             align="center"
             prop="isPay"
             :show-overflow-tooltip="true"
-          />
+          /> -->
           <!-- <el-table-column
             label="绛惧埌鏃堕棿"
             align="center"
             prop="qdcreateTime"
             width="160"
           /> -->
-          <el-table-column
+          <!-- <el-table-column
             label="妫�鏌ュ尰鐢�"
             align="center"
             prop="doctorName"
             width="100"
-          />
+          /> -->
           <el-table-column
             label="妫�鏌ユ椂闂�"
             align="center"
@@ -250,39 +270,144 @@
             prop="bcdoctorName"
             width="120"
           /> -->
-          <el-table-column
+          <!-- <el-table-column
             label="鏈�鍚庝慨鏀规椂闂�"
             align="center"
             prop="zhupdateTime"
             width="160"
-          />
+          /> -->
+          <el-table-column label="鎿嶄綔" align="center" width="120px">
+            <template slot-scope="scope">
+              <el-button
+                size="mini"
+                type="text"
+                :disabled="scope.row.type === 1"
+                @click="qijian(scope.row)"
+                >寮冩</el-button
+              >
+              <el-button size="mini" type="text"  @click="queryResult(scope.row)"
+                >缁撴灉鏌ヨ</el-button
+              >
+              <!--  @click="chaxun(scope.row) " -->
+            </template>
+          </el-table-column>
         </el-table>
       </div>
     </div>
-    <div style="margin-right: 67%">
-      <!-- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :pager-count="5" :current-page.sync="currentPage1" :current-page="page"
+
+    <!-- <el-drawer title="鎴戞槸鏍囬" :visible.sync="drawer" :with-header="false">
+      <div class="rightbox">
+          <div class="right">
+            <template>
+              <div v-for="(item, index) in xiangmuList" :key="index">
+                <div
+                  style="
+                    text-align: center;
+                    background-color: #FDE2E2;
+                    margin-top: 10px;
+                  "
+                >
+                  {{ item.proName || "" }}
+                </div>
+                <el-table
+                  :stripe="true"
+                  :row-style="red"
+                  :data="item.sone"
+                  border
+                  style="width: 100%"
+                  :header-cell-style="{ background: 'Transparent' }"
+                  
+                >
+                  <el-table-column type="expand">
+                    <template slot-scope="props">
+                      <div
+                        v-if="props.row.advices && props.row.advices.length > 0"
+                      >
+                        <div
+                          v-for="(jianyi, index1) in props.row.advices"
+                          :key="index1"
+                          style="padding: 0 10px; margin-bottom: 10px"
+                        >
+                          <div>鏍囬锛歿{ jianyi.bt || "" }}</div>
+                          <div>鍐呭锛歿{ jianyi.nr || "" }}</div>
+                        </div>
+                      </div>
+                    </template>
+                  </el-table-column>
+
+                  <el-table-column align="center" label="妫�娴嬮」鐩�" width="335">
+                    <template slot-scope="scope">
+                      <div>{{ scope.row.proName }}</div>
+                    </template>
+                  </el-table-column>
+                  <el-table-column
+                    align="center"
+                    prop="proResult"
+                    label="妫�娴嬬粨鏋�"
+                    width="85"
+                  >
+                  </el-table-column>
+
+                  <el-table-column
+                    align="center"
+                    prop="stanId"
+                    label=" 鍙傝�冭寖鍥�"
+                    width="117"
+                  >
+                  </el-table-column>
+
+                  <el-table-column
+                    align="center"
+                    prop="proAdvice"
+                    label="鍗曚綅"
+                    width="78"
+                  >
+                  </el-table-column>
+                </el-table>
+              </div>
+            </template>
+          </div>
+        </div>
+    </el-drawer> -->
+
+    <div class="pag">
+      <div class="pag1">
+        <!-- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :pager-count="5" :current-page.sync="currentPage1" :current-page="page"
                 :page-sizes="pageSize" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="total">
             </el-pagination> -->
-      <pagination
-        v-show="total > 0"
-        :total="total"
-        :page.sync="queryParams.page"
-        :limit.sync="queryParams.pageSize"
-        @pagination="getList"
-      />
+        <pagination
+          v-show="total > 0"
+          :total="total"
+          :pager-count="5"
+          :page.sync="queryParams.page"
+          :limit.sync="queryParams.pageSize"
+          @pagination="getList"
+        />
+      </div>
     </div>
   </div>
 </template>
 
 <script>
-import { getCsList, confirmOrder, cSWebGetPro } from "@/api/doctor/examination";
+import { getConfigKey } from "@/api/system/config";
+import {
+  getCsList,
+  confirmOrder,
+  cSWebGetPro,
+  dataSynchronization,
+} from "@/api/doctor/examination";
+import { getNewDateList } from "@/api/hosp/order";
+import moment from "moment";
+
 export default {
   dicts: ["dict_tj_status"],
   data() {
     return {
+      dis: false,
       createTimeList: "",
       total: 0,
       loading: true,
+      drawer: false,
       // 鏌ヨ鍙傛暟
       queryParams: {
         page: 1,
@@ -298,7 +423,9 @@
       checkStatus: "0",
       exaList: [],
       // 琛ㄥ崟鍙傛暟
+      xianshi: "",
       form: {},
+      clearTimeSet: null,
       tjNumbers: "",
       multipleSelection: "",
       tjnum: "",
@@ -340,10 +467,35 @@
     };
   },
   created() {
-    this.getList();
+    this.getdate();
+
     // this.getNowTime();
   },
+
+  mounted() {
+    this.$nextTick(() => {
+      this.$refs.inputName.focus();
+    });
+  },
   methods: {
+    red() {
+      return {
+        color: "red",
+      };
+    },
+    getdate() {
+      getConfigKey("tj_confirm").then((res) => {
+        this.xianshi = res.msg;
+        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"),
+        ];
+        this.getList();
+      });
+    },
     // / 澶勭悊榛樿閫変腑褰撳墠鏃ユ湡
     getNowTime() {
       var curDate = new Date().getTime();
@@ -382,8 +534,14 @@
     getList() {
       this.loading = true;
       this.queryParams.checkStatus = this.checkStatus;
-      this.queryParams.beginTime = this.createTimeList[0];
-      this.queryParams.endTime = this.createTimeList[1];
+      if (this.createTimeList) {
+        this.queryParams.beginTime = this.createTimeList[0];
+        this.queryParams.endTime = this.createTimeList[1];
+      } else if (this.createTimeList == null) {
+        this.queryParams.beginTime = null;
+        this.queryParams.endTime = null;
+      }
+
       getCsList(this.queryParams).then((res) => {
         if (res.code == 200) {
           this.loading = false;
@@ -425,6 +583,13 @@
         }
       });
     },
+
+    hb() {
+      // console.log(this.queryParams.tjNumber);
+      if (this.queryParams.tjNumber != null) {
+        this.handleQuery();
+      }
+    },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
       this.queryParams.page = 1;
@@ -432,6 +597,7 @@
     },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
+      this.createTimeList = [];
       this.resetForm("queryForm");
       this.handleQuery();
       this.loading = true;
@@ -452,6 +618,14 @@
         let tjNumber = this.tjnum;
         cSWebGetPro(tjNumber).then((res) => {
           this.xiangmuList = res.data;
+          this.xiangmuList.forEach((item) => {
+            // console.log(item);
+            // if (item.type == 0) {
+            //   this.dis = true;
+            // } else {
+            //   this.dis = false;
+            // }
+          });
         });
       });
     },
@@ -461,6 +635,21 @@
           return "warning-row";
         }
       }
+    },
+    handleCurrentChange(val) {
+      this.currentRow = val;
+      let tjNumber = val.tjNumber;
+      cSWebGetPro(tjNumber).then((res) => {
+        this.xiangmuList = res.data;
+        this.xiangmuList.forEach((item) => {
+          // console.log(item);
+          // if (item.type == 0) {
+          //   this.dis = true;
+          // } else {
+          //   this.dis = false;
+          // }
+        });
+      });
     },
     // 閫氳繃鎸夐挳
     tongguo(row) {
@@ -478,12 +667,54 @@
           if (res.code == 200) {
             // this.$forceUpdate();
             this.getList();
+            this.xiangmuList = [];
             this.$modal.msgSuccess("鎻愪氦鎴愬姛锛�");
           }
         });
       });
     },
-    tongbu() {},
+    qijian(row) {},
+    chaxun() {},
+    handleRowClick(row, column, event) {
+      console.log(row); // 
+    },
+    queryResult(row) {
+      // 灏嗗綋鍓嶈鐨勬暟鎹瓨鍌ㄥ埌 currentRow
+      this.currentRow = row;
+      console.log(this.currentRow,999555);
+      
+      // 鎵撳紑鎶藉眽
+      this.drawer = true;
+    },
+    setTime() {
+      //璁剧疆瀹氭椂鍣�
+      this.clearTimeSet = setInterval(() => {
+        this.$modal.closeLoading();
+      }, 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;
+            this.$modal.closeLoading();
+            this.$modal.msgSuccess("鍚屾鎴愬姛锛�");
+          }
+        })
+        .catch((error) => {
+          this.handleCurrentChange(row);
+          clearInterval(this.clearTimeSet);
+          this.clearTimeSet = null;
+          this.$modal.closeLoading();
+        });
+    },
     // 椹冲洖鎸夐挳
     bohui(row) {
       this.tjNumbers = row.tjNumber;
@@ -516,4 +747,17 @@
 .el-table .warning-row {
   background: #e5f3ff !important;
 }
+::v-deep .el-table__body tr.current-row > td {
+  background: #edf2fa !important;
+}
+
+.pag {
+  width: 100%;
+  display: flex;
+  justify-content: center;
+}
+
+.pag1 {
+  width: 30%;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.8.0