From 088e45c9ee4633e543247ecf8675215e2119ac7d Mon Sep 17 00:00:00 2001
From: lkk <364857242@qq.com>
Date: 星期一, 21 四月 2025 18:11:11 +0800
Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb

---
 src/views/hosp/order/index.vue |  643 +++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 408 insertions(+), 235 deletions(-)

diff --git a/src/views/hosp/order/index.vue b/src/views/hosp/order/index.vue
index c5e9a65..acae123 100644
--- a/src/views/hosp/order/index.vue
+++ b/src/views/hosp/order/index.vue
@@ -156,17 +156,28 @@
         <el-step title="宸插鏍�"></el-step>
         <el-step title="鐢熸垚鎶ュ憡"></el-step>
         <el-step title="鎶ュ憡鏍告敹"></el-step>
-        <el-step title="宸插嚭鎶ュ憡"></el-step>
+        <el-step title="宸叉墦鍗�"></el-step>
       </el-steps>
     </div>
 
     <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
+      <!-- <el-col :span="1.5">
         <el-button
           type="primary"
           icon="el-icon-download"
           size="mini"
           @click="handleExport"
+           :disabled="singles"
+          v-hasPermi="['hosp:order:export']"
+          >瀵煎嚭</el-button
+        >
+      </el-col> -->
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          icon="el-icon-download"
+          size="mini"
+          @click="exportDialogVisible = true"
           v-hasPermi="['hosp:order:export']"
           >瀵煎嚭</el-button
         >
@@ -178,7 +189,7 @@
           size="mini"
           @click="handleRevoke"
           :loading="isLoading"
-          :disabled="single"
+          :disabled="singles"
           >鎾ら攢绛惧埌</el-button
         >
       </el-col>
@@ -243,6 +254,15 @@
           >寮哄埗鎾ら攢</el-button
         >
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          size="mini"
+          @click="ResumeAppointment"
+          :disabled="multiple"
+          >鎭㈠棰勭害</el-button
+        >
+      </el-col>
       <right-toolbar
         :showSearch.sync="showSearch"
         @queryTable="getList"
@@ -254,6 +274,7 @@
         border
         v-loading="loading"
         :data="orderList"
+        ref="tableRef"
         @selection-change="handleSelectionChange"
       >
         <el-table-column
@@ -612,7 +633,7 @@
                         :props="defaultProp"
                         show-checkbox
                         node-key="id"
-                        @check="handlepackage"
+                        @check-change="handlepackage"
                         :default-checked-keys="checkedkeys"
                         :filter-node-method="filterpackage"
                         ref="treas"
@@ -673,7 +694,7 @@
                         :props="defaultProps"
                         show-checkbox
                         node-key="proId"
-                        @check="handleCurrentChecked"
+                        @check-change="handleCurrentChecked"
                         :default-checked-keys="checkedkey"
                         :filter-node-method="filterNode"
                         ref="tree"
@@ -795,13 +816,23 @@
           <el-table
             :data="DataList3"
             border
-            style="width: 100%"
+            style="width: 100%; table-layout: fixed"
             height="560"
             :span-method="objectspanmethod"
           >
-            <el-table-column prop="propinName" label="妫�鏌ラ」鐩�">
+            <el-table-column
+              prop="propinName"
+              label="妫�鏌ラ」鐩�"
+              width="200px"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column prop="proName" label="鏄庣粏椤圭洰" width="200px">
+            <el-table-column
+              prop="proName"
+              label="鏄庣粏椤圭洰"
+              width="200px"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
             <el-table-column prop="sl" label="鏁伴噺" width="56px">
             </el-table-column>
@@ -944,15 +975,6 @@
               <div class="tab8">
                 <el-row :gutter="20" style="width: 100%">
                   <el-col :span="22">
-                    <!-- <div
-                    style="
-                      text-align: center;
-                      margin-bottom: 10px;
-                      margin-top: 10px;
-                    "
-                  >
-                    椤圭洰鍒楄〃
-                  </div> -->
                     <el-input
                       placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
                       v-model="filterage"
@@ -966,7 +988,7 @@
                         :props="defaultProp"
                         show-checkbox
                         node-key="id"
-                        @check="handlepackage"
+                        @check-change="handlepackage"
                         :default-checked-keys="checkedkeys"
                         :filter-node-method="filterpackage"
                         ref="treas"
@@ -975,29 +997,6 @@
                       </el-tree>
                     </div>
                   </el-col>
-                  <!-- <el-col :span="11">
-                  <div
-                    style="
-                      text-align: center;
-                      margin-bottom: 10px;
-                      margin-top: 10px;
-                    "
-                  >
-                    鏄庣粏椤圭洰鍒楄〃
-                  </div>
-                  <div class="tab3">
-                    <el-tree
-                      class="filter-tree"
-                      v-loading="loading"
-                      :data="packagedataList"
-                      node-key="proId"
-                      :props="defaultpackProps"
-                      :render-content="renderContent"
-                    >
-                    </el-tree>
-                  </div>
-                </el-col> -->
-                  <!-- <el-col :span="11"> </el-col> -->
                 </el-row>
               </div>
             </el-tab-pane>
@@ -1005,15 +1004,6 @@
               <div class="tab8">
                 <el-row type="flex" class="row-bg" justify="space-around">
                   <el-col :span="22">
-                    <!-- <div
-                  style="
-                    text-align: center;
-                    margin-bottom: 10px;
-                    margin-top: 10px;
-                  "
-                >
-                  椤圭洰鍒楄〃
-                </div> -->
                     <el-input
                       placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
                       v-model="filterText"
@@ -1027,7 +1017,7 @@
                         :props="defaultProps"
                         show-checkbox
                         node-key="proId"
-                        @check="handleCurrentChecked"
+                        @check-change="handleCurrentChecked"
                         :default-checked-keys="checkedkey"
                         :filter-node-method="filterNode"
                         ref="tree"
@@ -1036,106 +1026,6 @@
                       </el-tree>
                     </div>
                   </el-col>
-                  <!-- <el-col :span="11">
-                <div
-                  style="
-                    text-align: center;
-                    margin-bottom: 10px;
-                    margin-top: 10px;
-                  "
-                >
-                  鏄庣粏椤圭洰鍒楄〃
-                </div>
-                <div class="tab3">
-                  <div class="outside1">
-                    <el-tree
-                      class="filter-tree"
-                      v-loading="loading"
-                      :data="TreedataList"
-                      node-key="proId"
-                      :props="defaultProps"
-                      :filter-node-method="filterNode"
-                      show-checkbox
-                      @check-change="handleCurrentChecked1"
-                      :default-checked-keys="checkedListkey"
-                      :render-content="renderContent"
-                    >
-                    </el-tree>
-                  </div>
-                </div>
-              </el-col> -->
-                  <!-- <el-col :span="11">
-              <div class="grid-content bg-purple">
-                <div
-                  style="
-                    text-align: center;
-                    margin-bottom: 10px;
-                    margin-top: 10px;
-                  "
-                >
-                  宸查�夐」鐩垪琛�
-                </div>
-
-                <el-table
-                  :data="DataList"
-                  border
-                  style="width: 100%"
-                  height="400"
-                  :span-method="objectSpanMethod"
-                >
-                  <el-table-column prop="propinName" label="妫�鏌ラ」鐩�">
-                  </el-table-column>
-                  <el-table-column prop="proPrice" label="鍘熶环" width="56px">
-                  </el-table-column>
-                  <el-table-column
-                    prop="proName"
-                    label="鏄庣粏椤圭洰"
-                    width="260px"
-                  >
-                  </el-table-column>
-
-                  <el-table-column
-                    label="鎿嶄綔"
-                    align="center"
-                    fixed="right"
-                    class-name="small-padding fixed-width"
-                    width="50px"
-                  >
-                    <template slot-scope="scope">
-                      <el-button
-                        size="mini"
-                        type="text"
-                        icon="el-icon-delete"
-                        @click="handleDelete(scope.row)"
-                        title="鍒犻櫎"
-                      ></el-button>
-                    </template>
-                  </el-table-column>
-                </el-table> -->
-                  <!-- <el-collapse v-model="activeName" accordion v-if="list1">
-                  <div>
-                    <el-collapse-item title="璇烽�夋嫨椤圭洰">
-                      <el-table
-                        :data="DataList"
-                        border
-                        style="width: 100%"
-                        height="400"
-                        :span-method="objectSpanMethod"
-                      >
-                        <el-table-column
-                          prop="proName"
-                          label="椤圭洰"
-                          width="180"
-                        >
-                        </el-table-column>
-                        <el-table-column prop="ordPrice" label="鍘熶环">
-                        </el-table-column>
-                      </el-table>
-                    </el-collapse-item>
-                  </div>
-                </el-collapse> -->
-                  <!-- </div>
-            </el-col> -->
                 </el-row>
               </div>
             </el-tab-pane>
@@ -1149,13 +1039,23 @@
           <el-table
             :data="DataList3"
             border
-            style="width: 100%"
+            style="width: 100%; table-layout: fixed"
             height="560"
             :span-method="objectspanmethod"
           >
-            <el-table-column prop="propinName" label="妫�鏌ラ」鐩�">
+            <el-table-column
+              prop="propinName"
+              label="妫�鏌ラ」鐩�"
+              width="200px"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column prop="proName" label="鏄庣粏椤圭洰" width="200px">
+            <el-table-column
+              prop="proName"
+              label="鏄庣粏椤圭洰"
+              width="200px"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
             <el-table-column prop="sl" label="鏁伴噺" width="56px">
             </el-table-column>
@@ -1355,81 +1255,64 @@
       </div> -->
     </el-dialog>
 
-    <!-- 娣诲姞鎴栦慨鏀逛綋妫�璁板綍瀵硅瘽妗� -->
     <el-dialog
       :title="title"
       :visible.sync="open"
-      width="950px"
+      width="1400px"
       append-to-body
       :close-on-click-modal="false"
+      class="custom-dialog"
     >
       <el-tabs v-model="activeName1" type="card">
-        <!-- <el-tab-pane label="璁㈠崟娴佹按" name="first">
-          <el-table :data="numberList" style="width: 100%">
-            <el-table-column prop="proName" label="椤圭洰/鑰楁潗" width="300">
-            </el-table-column>
-            <el-table-column prop="price" label="鍗曚环" width="300">
-            </el-table-column>
-            <el-table-column prop="count" label="鏁伴噺" width="300">
-            </el-table-column>
-          </el-table>
-          <el-table :data="bill" style="width: 100%">
-            <el-table-column prop="copeWith" label="搴斾粯" width="180">
-            </el-table-column>
-            <el-table-column prop="discount" label="鎶樻墸" width="180">
-            </el-table-column>
-            <el-table-column prop="paidIn" label="瀹炰粯" width="180">
-            </el-table-column>
-            <el-table-column prop="payType" label="浠樻鏂瑰紡" width="180">
-              <template slot-scope="scope">
-                <span v-if="scope.row.payType == '0'">鐜伴噾鏀粯</span>
-                <span v-if="scope.row.payType == '1'">鍒峰崱鏀粯</span>
-                <span v-if="scope.row.payType == '2'">鏀粯瀹濇敮浠�</span>
-                <span v-if="scope.row.payType == '3'">寰俊鏀粯</span>
-                <span v-if="scope.row.payType == '4'">浜戦棯浠樻敮浠�</span>
-              </template>
-            </el-table-column>
-            <el-table-column prop="payStasus" label="浠樻鐘舵��" width="180">
-              <template slot-scope="scope">
-                <span v-if="scope.row.payStasus == '0'">鏈粯娆�</span>
-                <span v-if="scope.row.payStasus == '1'">宸蹭粯娆�</span>
-                <span v-if="scope.row.payStasus == '2'">閫�璐�</span>
-                <span v-if="scope.row.payStasus == '3'">棰勪粯娆�</span>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-tab-pane> -->
         <el-tab-pane label="椤圭洰姹囨��" name="second" style="height: 400px">
-          <el-table :data="huizongList" style="width: 100%" max-height="200">
+          <el-table :data="huizongList" style="width: 100%" max-height="350">
             <el-table-column
               align="center"
               type="index"
               label="搴忓彿"
               width="50"
-            >
-            </el-table-column>
-            <el-table-column align="center" prop="parent_pro_name" label="椤圭洰">
-            </el-table-column>
-            <el-table-column align="center" prop="ks" label="绉戝">
-            </el-table-column>
-            <el-table-column align="center" prop="price" label="璐圭敤鍚堣">
-            </el-table-column>
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="parent_pro_name"
+              label="椤圭洰"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="ks"
+              label="绉戝"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="price"
+              label="璐圭敤鍚堣"
+            ></el-table-column>
           </el-table>
           <h3>浠樻璇︽儏</h3>
           <el-table :data="bill" style="width: 100%; margin-top: 10px">
-            <el-table-column align="center" prop="copeWith" label="搴斾粯">
-            </el-table-column>
-            <el-table-column align="center" prop="discount" label="鎶樻墸">
-            </el-table-column>
-            <el-table-column align="center" prop="paidIn" label="瀹炰粯">
-            </el-table-column>
+            <el-table-column
+              align="center"
+              prop="copeWith"
+              label="搴斾粯"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="discount"
+              label="鎶樻墸"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="paidIn"
+              label="瀹炰粯"
+            ></el-table-column>
           </el-table>
         </el-tab-pane>
-        <el-tab-pane label="鏄庣粏椤圭洰" name="third" style="height: 350px">
+        <el-tab-pane label="鏄庣粏椤圭洰" name="third" style="height: 450px">
+          <!-- 绉婚櫎 overflow-y: auto -->
           <el-table
             :data="infoList"
-            style="width: 100%"
-            max-height="330"
+            style="width: 100"
+            max-height="500"
             :span-method="objectSpanMethod1"
           >
             <el-table-column
@@ -1437,25 +1320,38 @@
               type="index"
               label="搴忓彿"
               width="50"
-            >
-            </el-table-column>
-            <el-table-column align="center" prop="parent_pro_name" label="鐖堕」">
-            </el-table-column>
-            <el-table-column align="center" prop="pro_name" label="瀛愰」">
-            </el-table-column>
-            <el-table-column align="center" prop="danjia" label="鍗曚环">
-            </el-table-column>
-            <el-table-column align="center" prop="num" label="鏁伴噺">
-            </el-table-column>
-            <el-table-column align="center" prop="zongjia" label="鎬讳环">
-            </el-table-column>
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="parent_pro_name"
+              label="鐖堕」"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="pro_name"
+              label="瀛愰」"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="danjia"
+              label="鍗曚环"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="num"
+              label="鏁伴噺"
+            ></el-table-column>
+            <el-table-column
+              align="center"
+              prop="zongjia"
+              label="鎬讳环"
+            ></el-table-column>
             <el-table-column
               align="center"
               prop="time"
               label="寮�鍗曟椂闂�"
               width="180"
-            >
-            </el-table-column>
+            ></el-table-column>
           </el-table>
         </el-tab-pane>
       </el-tabs>
@@ -1651,6 +1547,21 @@
         <!-- <el-button @click="cancel">鍙� 娑�</el-button> -->
       </div>
     </el-dialog>
+
+    <el-dialog
+      title="璇烽�夋嫨瀵煎嚭鑼冨洿"
+      :visible.sync="exportDialogVisible"
+      width="30%"
+    >
+      <el-radio-group v-model="exportType">
+        <el-radio :label="'0'">褰撳墠椤垫暟鎹�</el-radio>
+        <el-radio :label="'1'">鍏ㄩ儴鏁版嵁</el-radio>
+      </el-radio-group>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="exportDialogVisible = false">鍙栨秷</el-button>
+        <el-button type="primary" @click="confirmExport">纭畾</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -1662,6 +1573,7 @@
   getOrderList,
   getNewDateList,
   revokeTjOrderByTjNum,
+  huifuyuyuejilu,
   getTransitionInfo,
   getBlproByTjh,
   revokeBlProByBldhAndTjh,
@@ -1677,6 +1589,7 @@
   getaddtTransition,
   getProParentIdDxList,
   getProSonDxList,
+  getaddtTransition1,
 } from "@/api/system/tijian";
 import {
   SubmitCompany,
@@ -1779,9 +1692,11 @@
       dataObj: {},
       // 闈炲崟涓鐢�
       single: true,
+      singles: false,
       activeNames: "first",
       // 闈炲涓鐢�
       multiple: true,
+      tjNUms: [],
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
       userId: "",
@@ -1798,6 +1713,8 @@
       // 鏃ユ湡鑼冨洿
       datetimerange: [],
       marryalls: 0,
+      exportDialogVisible: false, // 鎺у埗寮规
+      exportType: "0", // dqyorqbsj 鐨勫�硷紝榛樿褰撳墠椤�
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -2132,6 +2049,34 @@
       });
     },
 
+    ResumeAppointment() {
+      this.isLoading = true;
+      this.$confirm("鎮ㄧ‘璁よ鎭㈠棰勭害锛�", "纭淇℃伅", {
+        distinguishCancelAndClose: true,
+        confirmButtonText: "纭",
+        cancelButtonText: "鍙栨秷",
+      })
+        .then(() => {
+          huifuyuyuejilu(this.tjNUms).then((res) => {
+            this.$modal.msgSuccess("鎭㈠鎴愬姛");
+            // this.isLoading = false;
+            this.getList();
+          });
+        })
+        .catch((action) => {
+          if (action === "cancel") {
+            this.$message({
+              type: "warning",
+              message: "宸插彇娑�",
+            });
+          }
+        })
+        .finally(() => {
+          // 涓嶈鎿嶄綔鎴愬姛杩樻槸澶辫触锛岄兘浼氭墽琛�
+          this.isLoading = false;
+        });
+    },
+
     handleRevoke() {
       this.isLoading = true;
       this.$confirm("鎮ㄧ‘璁よ鎾ら攢锛�", "纭淇℃伅", {
@@ -2325,6 +2270,7 @@
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
       let tjNUms = selection.map((item) => item.tjNumber);
+      this.tjNUms = selection.map((item) => item.tjNumber);
       selection.forEach((item) => {
         this.orderIds = item.orderId;
         this.tjnumbers = item.tjNumber;
@@ -2340,6 +2286,7 @@
       this.ids = selection.map((item) => item.orderId);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
+      this.singles = selection.length !== 1;
       if (tjNUms.length > 0) {
         shijianzhou(tjNUms).then((res) => {
           this.shijianlist = res.data;
@@ -2497,6 +2444,8 @@
         // this.marryalls = 0;
         // this.Datalists = [];
         this.checkedkeys = [];
+
+        this.DataList3 = [];
         getZhList().then((response) => {
           if (response.data) {
             this.packageList = response.data;
@@ -2505,16 +2454,98 @@
         });
       } else {
         // this.TotalPrice1 = 0;
-        this.checkedkey = [];
+        this.checkedkeys = [];
         // this.DataList = [];
+        this.Datalists = [];
+        this.DataList3 = [];
         this.getDataList();
         // if (this.marryalls != 0) {
         //   this.TotalPrice1 += this.marryalls;
         // }
       }
     },
-
     handlepackage(data, checked, checkedNodes) {
+      if (checked == true) {
+        // this.$refs.treas.setCheckedKeys([data.id]);
+        let datas = {
+          zhId: data.id,
+        };
+
+        getlistByZhId(datas).then((res) => {
+          this.packagedataList = res.data.tjProjectList;
+          for (var i = 0; i < this.packagedataList.length; i++) {
+            let proId = this.packagedataList[i].proId;
+            getProSonDxList(proId).then((res) => {
+              this.TreedataList = res.data.list;
+              this.TreedataList.forEach((item) => {
+                this.Datalists.push(item);
+              });
+
+              // 鍚堝苟 Datalists 鍜� DataList 鍒� DataList3
+              this.DataList3 = this.DataList.concat(this.Datalists);
+
+              // 娓呯┖绱姞鍣�
+              this.marryalls = 0;
+              this.TotalPrice1 = 0;
+
+              // 閲嶆柊璁$畻浠锋牸
+              this.DataList3.forEach((item) => {
+                console.log(item.proPrice);
+                this.TotalPrice1 += item.proPrice * item.sl;
+                this.marryalls += item.proPrice * item.sl;
+              });
+
+              // 涓烘瘡涓」鐩坊鍔� propinName
+              this.Datalists.forEach((item1) => {
+                this.packagedataList.forEach((item3) => {
+                  if (item1.proParentId == item3.proId) {
+                    item1.propinName = item3.proName;
+                  }
+                });
+              });
+            });
+          }
+        });
+      } else if (checked == false) {
+        let datas = {
+          zhId: data.id,
+        };
+
+        this.marryalls = 0;
+
+        // 娓呯┖ Datalists 鍜� DataList3
+        this.Datalists = [];
+        this.DataList3 = [...this.DataList]; // 閲嶆柊璁剧疆 DataList3锛屼粎鍖呭惈鍘熷 DataList
+
+        getlistByZhId(datas).then((res) => {
+          this.packagedataList = res.data.tjProjectList;
+          for (var i = 0; i < this.packagedataList.length; i++) {
+            let proId = this.packagedataList[i].proId;
+            getProSonDxList(proId).then((res) => {
+              this.TreedataList = res.data.list;
+              this.checkedListkey = this.checkedListkey.filter(
+                (id) => id !== proId
+              );
+
+              // 浠� DataList3 涓Щ闄ょ浉鍏崇殑瀛愰」
+              this.DataList3 = this.DataList3.filter(
+                (item) => item.proParentId !== proId
+              );
+
+              // 鏇存柊鎬讳环鏍�
+              this.TotalPrice1 = 0; // 娓呯┖浠锋牸
+              this.DataList3.forEach((item) => {
+                this.TotalPrice1 += item.proPrice;
+              });
+            });
+          }
+        });
+      }
+    },
+
+    /* handlepackage(data, checked, checkedNodes) {
+      console.log(checked, 3333);
+
       if (checked.checkedNodes.length != 0) {
         this.$refs.treas.setCheckedKeys([data.id]);
         let datas = {
@@ -2537,7 +2568,7 @@
                     this.marryalls += item1.proPrice;
                     // this.TotalPrice1 = this.marryalls;
                     this.TotalPrice1 = 0;
-                    console.log(this.DataList3, 9999999999);
+
                     if (this.DataList3.length != 0) {
                       this.DataList3.forEach((item) => {
                         console.log(item.proPrice);
@@ -2557,12 +2588,12 @@
         });
       } else if (checked.checkedNodes.length == 0) {
       }
-    },
+    }, */
 
     renderContent(h, { node, data, store }) {
       return (
         <span class="custom-tree-node">
-          聽 <span>{node.label}</span>
+          <span>{node.label}</span>
           <span>({data.proPrice}鍏�)</span>
         </span>
       );
@@ -2579,6 +2610,12 @@
       this.orderId = row.orderId;
       this.cusId = row.tjCusIdCard;
       this.userId = row.userId;
+      console.log(row, 666);
+      this.$nextTick(() => {
+        this.$refs.tableRef.clearSelection(); // 娓呴櫎鎵�鏈夐�変腑
+        this.$refs.tableRef.toggleRowSelection(row, true); // 閫変腑褰撳墠琛�
+      });
+
       this.customer = {
         cusIdcard: row.tjCusIdCard,
         cusName: row.tjCustomerName,
@@ -2664,9 +2701,10 @@
     },
 
     // 鐐瑰嚮鑾峰彇姣忎釜鏍戣妭鐐�
-    handleCurrentChecked(data, checked, checkedNodes) {
+    /*  handleCurrentChecked(data, checked, checkedNodes) {
       this.dataObj = data;
-      if (checked.checkedNodes.length != 0) {
+      this.checkedObj = checked;
+      if (checked == true) {
         this.$refs.tree.setCheckedKeys([data.proId]);
         let proId = data.proId;
         getProSonDxList(proId).then((res) => {
@@ -2699,11 +2737,91 @@
           //   }
           // }
         });
-      } else if (checked.checkedNodes.length == 0) {
+      } else if (checked == false) {
         let proId = data.proId;
         getProSonDxList(proId).then((res) => {
           this.TreedataList = res.data.list;
           this.checkedListkey = [];
+          this.TreedataList.forEach((item) => {
+            item.disabled = true;
+          });
+          this.DataList3.forEach((item, index) => {
+            if (item.proParentId == this.dataObj.proId) {
+              this.DataList3.splice(index, this.TreedataList.length);
+            }
+          });
+
+          // 鎵嬪姩鏇存柊鎬讳环鏍�
+          this.TotalPrice1 = 0;
+          this.DataList3.forEach((item, index) => {
+            this.TotalPrice1 += item.proPrice * item.sl;
+          });
+        });
+      }
+    }, */
+    handleCurrentChecked(data, checked, checkedNodes) {
+      this.dataObj = data;
+      this.checkedObj = checked;
+
+      if (checked === true) {
+        // this.$refs.tree.setCheckedKeys([data.proId]);
+        let proId = data.proId;
+        getProSonDxList(proId).then((res) => {
+          this.TreedataList = res.data.list;
+
+          this.TreedataList.forEach((item) => {
+            // item.disabled = true;
+            // this.checkedListkey.push(item.proId);
+            if (!this.checkedListkey.includes(item.proId)) {
+              this.checkedListkey.push(item.proId);
+            }
+            this.Datalists.push(item);
+
+            this.DataList3.push(item);
+
+            this.spliceData();
+            this.DataList3.forEach((item1) => {
+              this.TotalPrice1 += item1.proPrice * item1.sl;
+              if (item1.proParentId == data.proId) {
+                item1.propinName = data.proName;
+                item1.propinPrice = this.dataObj.proPrice;
+              }
+            });
+          });
+
+          // 鏇存柊鎬讳环鏍�
+          this.TotalPrice1 = 0;
+          this.DataList3.forEach((item) => {
+            this.TotalPrice1 += item.proPrice * item.sl;
+          });
+        });
+      } else if (checked === false) {
+        // 褰撳彇娑堥�変腑鏃�
+        let proId = data.proId;
+        getProSonDxList(proId).then((res) => {
+          this.TreedataList = res.data.list;
+
+          // 閬嶅巻 TreedataList 骞剁Щ闄ょ浉鍏崇殑瀛愰」 ID
+          this.TreedataList.forEach((item) => {
+            this.checkedListkey = this.checkedListkey.filter(
+              (id) => id !== item.proId
+            );
+          });
+
+          this.Datalists = this.Datalists.filter(
+            (item) => item.proParentId !== proId
+          );
+
+          // 浠� DataList3 涓Щ闄ょ浉鍏崇殑瀛愰」
+          this.DataList3 = this.DataList3.filter(
+            (item) => item.proParentId !== proId
+          );
+
+          // 鏇存柊鎬讳环鏍�
+          this.TotalPrice1 = 0;
+          this.DataList3.forEach((item) => {
+            this.TotalPrice1 += item.proPrice * item.sl;
+          });
         });
       }
     },
@@ -2942,7 +3060,9 @@
         cusId: this.cusIds,
         proIds: this.proIds,
       };
-      getaddtTransition(data).then((response) => {
+      getaddtTransition1(data).then((response) => {
+        console.log(123456789);
+
         if (response.code === 200) {
           // this.DataList3 = [];
           //   this.DataList = [];
@@ -3024,14 +3144,47 @@
           this.Projectssopen = false;
         });
     },
-
-    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
+      this.$confirm("璇烽�夋嫨瀵煎嚭鑼冨洿", "瀵煎嚭鏁版嵁", {
+        distinguishCancelAndClose: true,
+        confirmButtonText: "瀵煎嚭鍏ㄩ儴",
+        cancelButtonText: "浠呭鍑哄綋鍓嶉〉",
+        type: "warning",
+      })
+        .then(() => {
+          // 鐢ㄦ埛鐐瑰嚮浜嗏�滃鍑哄叏閮ㄢ��
+          this.exportData(true);
+        })
+        .catch((action) => {
+          if (action === "cancel") {
+            // 鐢ㄦ埛鐐瑰嚮浜嗏�滀粎瀵煎嚭褰撳墠椤碘��
+            this.exportData(false);
+          }
+        });
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    /*  handleExport() {
+      console.log(this.queryParams);
       this.download(
-        "hosp/order/export",
+        "/hosp/order/exportOrderList",
         {
           ...this.queryParams,
         },
+        `order_${new Date().getTime()}.xlsx`
+      );
+    }, */
+    confirmExport() {
+      this.exportDialogVisible = false;
+    
+
+      const exportParams = {
+        ...this.queryParams,
+        dqyorqbsj: this.exportType, // 娣诲姞杩欎釜瀛楁
+      };
+
+      this.download(
+        "/hosp/order/exportOrderList",
+        exportParams,
         `order_${new Date().getTime()}.xlsx`
       );
     },
@@ -3039,6 +3192,26 @@
 };
 </script>
 <style lang="scss" scoped>
+.custom-dialog {
+  /* 鑷畾涔夊脊鍑烘鐨勬渶灏忛珮搴� */
+  min-height: 600px; /* 浠庨粯璁ら珮搴﹀鍔犲埌 600px锛屽彲浠ユ牴鎹渶瑕佽皟鏁� */
+}
+
+/* 璋冩暣 el-tabs 鐨勫唴瀹瑰尯鍩熼珮搴� */
+::v-deep .el-tabs__content {
+  min-height: 500px; /* 纭繚閫夐」鍗″唴瀹瑰尯鍩熸湁瓒冲楂樺害 */
+}
+
+/* 璋冩暣瀵硅瘽妗嗙殑涓讳綋閮ㄥ垎 */
+::v-deep .el-dialog__body {
+  padding: 20px;
+}
+
+/* 鍙�夛細璋冩暣 footer 鐨勬牱寮� */
+.dialog-footer {
+  padding: 10px 20px;
+  text-align: right;
+}
 .pag {
   width: 100%;
   display: flex;

--
Gitblit v1.8.0