From 9b2c74ee4f08fad01c2a16bc6e36df073bfa1dd5 Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期五, 24 四月 2026 09:12:13 +0800
Subject: [PATCH] 推送

---
 src/views/business/transfer/index.vue |  160 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 97 insertions(+), 63 deletions(-)

diff --git a/src/views/business/transfer/index.vue b/src/views/business/transfer/index.vue
index 39faefb..f36d0c5 100644
--- a/src/views/business/transfer/index.vue
+++ b/src/views/business/transfer/index.vue
@@ -148,18 +148,25 @@
     >
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="搴忓彿" type="index" width="60" align="center" />
-      <el-table-column
-        label="杞繍鍗曞彿"
-        align="center"
-        prop="reportId"
-        width="140"
-      />
+
       <el-table-column
         label="妗堜緥缂栧彿"
         align="center"
         prop="caseNo"
         width="140"
       />
+      <el-table-column
+        label="杞繍鐘舵��"
+        align="center"
+        prop="transitStatus"
+        width="100"
+      >
+        <template slot-scope="scope">
+          <el-tag :type="getStatusTagType(scope.row.transitStatus)">
+            {{ getStatusText(scope.row.transitStatus) }}
+          </el-tag>
+        </template>
+      </el-table-column>
       <el-table-column label="鎮h�呬俊鎭�" align="center" width="260">
         <template slot-scope="scope">
           <div class="donor-info">
@@ -199,18 +206,7 @@
         prop="contactPerson"
         width="100"
       />
-      <el-table-column
-        label="杞繍鐘舵��"
-        align="center"
-        prop="transitStatus"
-        width="100"
-      >
-        <template slot-scope="scope">
-          <el-tag :type="getStatusTagType(scope.row.transitStatus)">
-            {{ getStatusText(scope.row.transitStatus) }}
-          </el-tag>
-        </template>
-      </el-table-column>
+
       <el-table-column
         label="鍒涘缓鏃堕棿"
         align="center"
@@ -310,7 +306,10 @@
               />
             </el-form-item>
             <el-form-item>
-              <el-button type="primary" icon="el-icon-search" @click="searchCaseList"
+              <el-button
+                type="primary"
+                icon="el-icon-search"
+                @click="searchCaseList"
                 >鎼滅储</el-button
               >
               <el-button icon="el-icon-refresh" @click="resetCaseSearch"
@@ -328,8 +327,18 @@
             highlight-current-row
             style="width: 100%"
           >
-            <el-table-column label="妗堜緥缂栧彿" prop="caseNo" width="150" align="center" />
-            <el-table-column label="鎮h�呭鍚�" prop="name" width="120" align="center" />
+            <el-table-column
+              label="妗堜緥缂栧彿"
+              prop="caseNo"
+              width="150"
+              align="center"
+            />
+            <el-table-column
+              label="鎮h�呭鍚�"
+              prop="name"
+              width="120"
+              align="center"
+            />
             <el-table-column label="鎬у埆" width="80" align="center">
               <template slot-scope="scope">
                 <dict-tag
@@ -338,7 +347,12 @@
                 />
               </template>
             </el-table-column>
-            <el-table-column label="骞撮緞" prop="age" width="80" align="center" />
+            <el-table-column
+              label="骞撮緞"
+              prop="age"
+              width="80"
+              align="center"
+            />
             <el-table-column label="琛�鍨�" width="80" align="center">
               <template slot-scope="scope">
                 <dict-tag
@@ -347,15 +361,24 @@
                 />
               </template>
             </el-table-column>
-            <el-table-column label="鐤剧梾璇婃柇" prop="diagnosisname" min-width="200" show-overflow-tooltip />
-            <el-table-column label="娌荤枟鍖婚櫌" prop="treatmenthospitalname" width="150" />
+            <el-table-column
+              label="鐤剧梾璇婃柇"
+              prop="diagnosisname"
+              min-width="200"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              label="娌荤枟鍖婚櫌"
+              prop="treatmenthospitalname"
+              width="150"
+            />
             <el-table-column label="鏄惁宸茶浆杩�" width="100" align="center">
               <template slot-scope="scope">
                 <el-tag
                   :type="hasTransport(scope.row) ? 'danger' : 'success'"
                   size="small"
                 >
-                  {{ hasTransport(scope.row) ? '宸茶浆杩�' : '鍙浆杩�' }}
+                  {{ hasTransport(scope.row) ? "宸茶浆杩�" : "鍙浆杩�" }}
                 </el-tag>
               </template>
             </el-table-column>
@@ -407,11 +430,7 @@
       append-to-body
     >
       <div class="action-confirm">
-        <p>
-          纭畾瑕亄{ actionText }}杞繍鍗� "{{
-            currentTransport.reportId || currentTransport.id
-          }}" 鍚楋紵
-        </p>
+        <p>纭畾瑕亄{ actionText }}杞繍鍗� "{{ currentTransport.id }}" 鍚楋紵</p>
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button @click="actionOpen = false">鍙� 娑�</el-button>
@@ -426,7 +445,7 @@
   transportList,
   transportAdd,
   transportEdit,
-  transportDelete,
+  transportDel,
   transportInfo,
   donateList
 } from "@/api/businessApi/index";
@@ -439,7 +458,6 @@
   dicts: ["sys_user_sex", "sys_BloodType"],
   data() {
     return {
-
       // 閬僵灞�
       loading: false,
       // 閫変腑鏁扮粍
@@ -498,16 +516,16 @@
         pageNum: 1,
         pageSize: 10,
         caseNo: undefined,
-        patName: undefined,
+        patName: undefined
         // 鍙煡璇㈠凡鍚屾剰涓旈渶瑕佽浆杩愮殑妗堜緥
         // reportStatus: "3", // 宸插悓鎰�
-        isTransport: "2"   // 闇�瑕佽浆杩�
+        // isTransport: "2" // 闇�瑕佽浆杩�
       }
     };
   },
   created() {
-    this.getList();
-     this.checkAutoCreate();
+    // this.getList();
+    this.checkAutoCreate();
   },
   methods: {
     /** 鏌ヨ杞繍鍗曞垪琛� */
@@ -544,28 +562,33 @@
         this.loading = false;
       }
     },
-  checkAutoCreate() {
-    const query = this.$route.query;
-    if (query.autoCreate === 'true') {
-      // 鑷姩鎵撳紑妗堜緥閫夋嫨寮规
-      this.selectCaseOpen = true;
-      this.resetCaseSearch();
-
-      // 濡傛灉鏈夌壒瀹氱殑妗堜緥缂栧彿锛屽彲浠ラ鍏堟悳绱�
-      if (query.caseNo) {
-        this.caseQueryParams.caseNo = query.caseNo;
-        this.searchCaseList();
+    checkAutoCreate() {
+      const query = this.$route.query;
+      // 涓婃姤璺宠浆杩囨潵杩涜澶勭悊
+      if (query.autoCreate === "true") {
+        // 濡傛灉鏈夌壒瀹氱殑妗堜緥缂栧彿锛屽彲浠ラ鍏堟悳绱�
+        if (query.caseNo) {
+          // this.selectCaseOpen = true;
+          this.resetCaseSearch(1);
+          this.caseQueryParams.caseNo = query.caseNo;
+          this.searchCaseList(1);
+        } else {
+          this.queryParams.patName = query.patName;
+        }
       }
-    }
-  },
+      this.getList();
+    },
     /** 鎼滅储鍙敤妗堜緥 */
-    async searchCaseList() {
+    async searchCaseList(type) {
       this.caseLoading = true;
       try {
         const response = await donateList(this.caseQueryParams);
         if (response.code === 200) {
           this.availableCaseList = response.rows || response.data || [];
           this.caseTotal = response.total || 0;
+          if (type == 1 && response.data[0]) {
+            this.selectCase(response.data[0]);
+          }
         } else {
           this.$modal.msgError(response.msg || "鑾峰彇妗堜緥鍒楄〃澶辫触");
         }
@@ -578,7 +601,7 @@
     },
 
     /** 閲嶇疆妗堜緥鎼滅储 */
-    resetCaseSearch() {
+    resetCaseSearch(type) {
       this.caseQueryParams = {
         pageNum: 1,
         pageSize: 10,
@@ -587,15 +610,22 @@
         // reportStatus: "3",
         isTransport: "2"
       };
-      this.searchCaseList();
+      if (!type) {
+        this.searchCaseList();
+      } else {
+        // 璺ㄩ〉闈㈡柊澧炲彇娑堥檺鍒�
+        this.caseQueryParams.isTransport = null;
+      }
     },
 
     /** 鍒ゆ柇妗堜緥鏄惁宸叉湁杞繍鍗� */
     hasTransport(caseData) {
       // 妫�鏌ユ渚嬫槸鍚︽湁杞繍淇℃伅
-      if (caseData.serviceTransport &&
-          Array.isArray(caseData.serviceTransport) &&
-          caseData.serviceTransport.length > 0) {
+      if (
+        caseData.serviceTransport &&
+        Array.isArray(caseData.serviceTransport) &&
+        caseData.serviceTransport.length > 0
+      ) {
         return true;
       }
       return false;
@@ -613,27 +643,31 @@
 
       // 鎵撳紑杞繍鍗曠紪杈戦〉闈紝骞朵紶鍏ラ�変腑鐨勬渚�
       this.currentTransport = this.convertCaseToTransport(caseData);
+      console.log(this.currentTransport, "currentTransport");
+
       this.isEditing = false;
       this.editOpen = true;
     },
 
     /** 灏嗘渚嬩俊鎭浆鎹负杞繍鍗曟牸寮� */
     convertCaseToTransport(caseData) {
+      console.log(caseData, "2");
+
       return {
         caseNo: caseData.caseNo,
         patName: caseData.name,
         sex: caseData.sex,
         age: caseData.age,
         diagnosisname: caseData.diagnosisname,
+        reportId: caseData.id,
         treatmentHospitalName: caseData.treatmenthospitalname,
         treatmentDeptName: caseData.treatmentdeptname,
         // 鍏朵粬瀛楁鍙互鏍规嵁闇�瑕佷粠妗堜緥涓幏鍙�
-        transportStartPlace: caseData.treatmenthospitalname || '',
-        contactPerson: caseData.coordinatorName || '',
+        transportStartPlace: caseData.treatmenthospitalname || "",
+        contactPerson: caseData.coordinatorName || "",
         transitStatus: 1, // 榛樿寰呰浆杩�
         // 娓呯┖鍏朵粬瀛楁
         id: undefined,
-        reportId: undefined,
         transportStartTime: undefined,
         doctor: undefined,
         doctorPhone: undefined,
@@ -685,7 +719,7 @@
 
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.reportId || item.id);
+      this.ids = selection.map(item => item.id);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
     },
@@ -713,7 +747,7 @@
     /** 璇︽儏鎸夐挳鎿嶄綔 */
     handleDetail(row) {
       this.currentTransport = row;
-      this.detailTitle = `杞繍鍗曡鎯� - ${row.reportId || row.id}`;
+      this.detailTitle = `杞繍鍗曡鎯� - ${row.id}`;
       this.detailOpen = true;
     },
 
@@ -766,7 +800,7 @@
     async confirmAction() {
       try {
         let requestData = {
-          id: this.currentTransport.id || this.currentTransport.reportId
+          id: this.currentTransport.id
         };
 
         if (this.actionText === "寮�濮�") {
@@ -799,7 +833,7 @@
           '鏄惁纭鍒犻櫎杞繍鍗曠紪鍙蜂负"' + ids + '"鐨勬暟鎹」锛�'
         );
 
-        const response = await transportDelete(ids);
+        const response = await transportDel(ids);
 
         if (response.code === 200) {
           this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
@@ -903,7 +937,7 @@
 .donor-info {
   text-align: center;
   display: flex;
-  justify-content: center
+  justify-content: center;
 }
 
 .donor-name {

--
Gitblit v1.9.3