From c80bc467a41daa6cbae4e5515a300a8ca98cfeaa Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期二, 21 七月 2026 15:44:01 +0800
Subject: [PATCH] 维护

---
 unpackage/dist/dev/mp-weixin/pagesSub/case/transfer.js |  283 +++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 168 insertions(+), 115 deletions(-)

diff --git a/unpackage/dist/dev/mp-weixin/pagesSub/case/transfer.js b/unpackage/dist/dev/mp-weixin/pagesSub/case/transfer.js
index a1a9382..31bea82 100644
--- a/unpackage/dist/dev/mp-weixin/pagesSub/case/transfer.js
+++ b/unpackage/dist/dev/mp-weixin/pagesSub/case/transfer.js
@@ -33,6 +33,7 @@
     const currentTransport = common_vendor.ref({});
     const modalTitle = common_vendor.ref("");
     const modalAction = common_vendor.ref("");
+    const modalTargetStatus = common_vendor.ref(null);
     const transportTypes = [
       { label: "鍏ㄩ儴", value: "" },
       { label: "寰呰浆杩�", value: 1 },
@@ -80,13 +81,14 @@
         driver: apiData.driver,
         // 鍏朵粬瀛楁
         transportStartPlace: apiData.transportStartPlace,
-        remark: apiData.remark
+        remark: apiData.remark,
+        annexfilesList: apiData.annexfilesList || []
       };
     };
     const filteredTransports = common_vendor.computed(() => {
       let result = transports.value;
       if (currentType.value !== "") {
-        result = result.filter((item) => item.transitStatus === currentType.value);
+        result = result.filter((item) => item.transitStatus == currentType.value);
       }
       return result;
     });
@@ -115,16 +117,6 @@
       };
       return map[status] || "寰呰浆杩�";
     };
-    const getGenderText = (gender) => {
-      if (!gender)
-        return "寰呰浆杩�";
-      if (!dict.value.sys_user_sex)
-        return gender;
-      const genderItem = dict.value.sys_user_sex.find(
-        (item) => item.dictValue === gender
-      );
-      return genderItem ? genderItem.dictLabel : gender;
-    };
     const formatTime = (timeStr) => {
       if (!timeStr)
         return "鏈缃�";
@@ -149,6 +141,103 @@
         loadTransports(true);
       }
     };
+    const handleStartTransport = (item) => {
+      currentTransport.value = { ...item };
+      modalTitle.value = "寮�濮嬭浆杩�";
+      modalAction.value = "寮�濮�";
+      modalTargetStatus.value = 2;
+      showActionModal.value = true;
+    };
+    const handleCompleteTransport = (item) => {
+      currentTransport.value = { ...item };
+      modalTitle.value = "瀹屾垚杞繍";
+      modalAction.value = "瀹屾垚";
+      modalTargetStatus.value = 3;
+      showActionModal.value = true;
+    };
+    const handleCancelTransport = (item) => {
+      currentTransport.value = { ...item };
+      modalTitle.value = "鍙栨秷杞繍";
+      modalAction.value = "鍙栨秷";
+      modalTargetStatus.value = 4;
+      showActionModal.value = true;
+    };
+    const handleRecoverTransport = (item) => {
+      currentTransport.value = { ...item };
+      modalTitle.value = "鎭㈠杞繍";
+      modalAction.value = "鎭㈠";
+      modalTargetStatus.value = 2;
+      showActionModal.value = true;
+    };
+    const cancelAction = () => {
+      showActionModal.value = false;
+    };
+    const confirmAction = async () => {
+      try {
+        const requestData = {
+          ...currentTransport.value,
+          transitStatus: modalTargetStatus.value
+        };
+        if (requestData.annexfilesList && requestData.annexfilesList.length > 0) {
+          requestData.annexfilesList.forEach((item) => {
+            item.id = null;
+          });
+        }
+        const res = await common_vendor.index.$uapi.post("/project/transport/edit", requestData);
+        if (res && res.code == 200) {
+          common_vendor.index.showToast({
+            title: `${modalAction.value}杞繍鎴愬姛`,
+            icon: "success"
+          });
+          if (modalTargetStatus.value == 3) {
+            try {
+              const caseRes = await common_vendor.index.$uapi.get(
+                `/project/donatebaseinforeport/getInfo/${requestData.reportId}`
+              );
+              if (caseRes && caseRes.data) {
+                const caseData = caseRes.data;
+                caseData.isDonate = 1;
+                const editRes = await common_vendor.index.$uapi.post(
+                  "/project/donatebaseinforeport/edit",
+                  caseData
+                );
+                if (editRes && editRes.code == 200) {
+                  common_vendor.index.showToast({
+                    title: "瀵瑰簲涓婃姤妗堜緥宸茶繘鍏ユ寮忔渚嬫祦绋�",
+                    icon: "success"
+                  });
+                }
+              }
+            } catch (caseError) {
+              common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:478", "鏇存柊妗堜緥鐘舵�佸け璐�:", caseError);
+              common_vendor.index.showToast({
+                title: "妗堜緥鐘舵�佹洿鏂板け璐ワ紝璇疯仈绯荤鐞嗗憳",
+                icon: "none"
+              });
+            }
+          }
+          const index = transports.value.findIndex(
+            (item) => item.id == currentTransport.value.id
+          );
+          if (index !== -1) {
+            transports.value[index].transitStatus = modalTargetStatus.value;
+          }
+          await loadStats();
+          showActionModal.value = false;
+        } else {
+          common_vendor.index.showToast({
+            title: (res == null ? void 0 : res.msg) || `${modalAction.value}杞繍澶辫触`,
+            icon: "none"
+          });
+        }
+      } catch (error) {
+        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:507", `${modalAction.value}杞繍澶辫触:`, error);
+        common_vendor.index.showToast({
+          title: "鎿嶄綔澶辫触锛岃绋嶅悗閲嶈瘯",
+          icon: "none"
+        });
+      }
+    };
     const viewDetail = (item) => {
       viewDetails(item);
     };
@@ -157,53 +246,12 @@
         url: `/pagesSub/case/transferinfo?id=${item.id}`
       });
     };
-    const editTransport = (item) => {
-      common_vendor.index.navigateTo({
-        url: `/pagesSub/case/transferinfo?id=${item.id}&edit=true`
-      });
-    };
-    const startTransport = (item) => {
-      currentTransport.value = item;
-      modalTitle.value = "寮�濮嬭浆杩�";
-      modalAction.value = "寮�濮�";
-      showActionModal.value = true;
-    };
-    const completeTransport = (item) => {
-      currentTransport.value = item;
-      modalTitle.value = "瀹屾垚杞繍";
-      modalAction.value = "瀹屾垚";
-      showActionModal.value = true;
-    };
-    const confirmAction = async () => {
-      try {
-        if (modalAction.value === "寮�濮�") {
-          await updateTransportStatus(2, "寮�濮嬭浆杩�");
-        } else if (modalAction.value === "瀹屾垚") {
-          await updateTransportStatus(3, "瀹屾垚杞繍");
-        }
-        common_vendor.index.showToast({
-          title: `${modalAction.value}鎴愬姛`,
-          icon: "success"
-        });
-      } catch (error) {
-        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:421", `${modalAction.value}澶辫触:`, error);
-        common_vendor.index.showToast({
-          title: `${modalAction.value}澶辫触锛岃閲嶈瘯`,
-          icon: "none"
-        });
-      } finally {
-        showActionModal.value = false;
-      }
-    };
-    const cancelAction = () => {
-      showActionModal.value = false;
-    };
     const loadInitialData = async () => {
       initLoading.value = true;
       try {
         await Promise.all([loadTransports(true), loadStats()]);
       } catch (error) {
-        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:442", "鍒濆鍖栨暟鎹け璐�:", error);
+        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:547", "鍒濆鍖栨暟鎹け璐�:", error);
       } finally {
         initLoading.value = false;
       }
@@ -246,10 +294,10 @@
           params.startDate = startDate.value;
           params.endDate = endDate.value;
         }
-        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:497", "璇锋眰鍙傛暟:", params);
+        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:602", "璇锋眰鍙傛暟:", params);
         const res = await common_vendor.index.$uapi.post("/project/transport/list", params);
-        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:501", "鎺ュ彛杩斿洖鏁版嵁:", res);
-        if (res && res.code === 200) {
+        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:606", "鎺ュ彛杩斿洖鏁版嵁:", res);
+        if (res && res.code == 200) {
           let data = [];
           if (res.rows && Array.isArray(res.rows)) {
             data = res.rows;
@@ -258,11 +306,11 @@
           } else if (Array.isArray(res)) {
             data = res;
           } else {
-            common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:514", "鎺ュ彛杩斿洖鏍煎紡涓嶆纭�:", res);
+            common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:619", "鎺ュ彛杩斿洖鏍煎紡涓嶆纭�:", res);
             throw new Error("鎺ュ彛杩斿洖鏍煎紡涓嶆纭�");
           }
           const mappedData = data.map((item) => mapApiDataToTransportItem(item));
-          if (reset || pageNum.value === 1) {
+          if (reset || pageNum.value == 1) {
             transports.value = mappedData;
           } else {
             transports.value = [...transports.value, ...mappedData];
@@ -275,7 +323,7 @@
           throw new Error((res == null ? void 0 : res.msg) || "鍔犺浇澶辫触");
         }
       } catch (error) {
-        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:537", "鍔犺浇杞繍鍗曞垪琛ㄥけ璐�:", error);
+        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:642", "鍔犺浇杞繍鍗曞垪琛ㄥけ璐�:", error);
         common_vendor.index.showToast({
           title: "缃戠粶璇锋眰澶辫触",
           icon: "none"
@@ -286,50 +334,42 @@
       }
     };
     const loadStats = async () => {
+      var _a, _b;
       try {
-        const res = await common_vendor.index.$uapi.post("/api/totalServiceTransportState");
-        if (res.data) {
+        const res = await common_vendor.index.$uapi.post(
+          "/project/transport/totalServiceTransportState"
+        );
+        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:659", 222);
+        common_vendor.index.__f__("log", "at pagesSub/case/transfer.vue:660", res, "11");
+        if (res.data && Array.isArray(res.data)) {
+          const totalTransports = res.data.reduce((sum, item) => sum + item.count, 0) || 0;
+          const pendingTransports = ((_a = res.data.find((item) => item.transit_status == 1)) == null ? void 0 : _a.count) || 0;
+          const completedTransports = ((_b = res.data.find((item) => item.transit_status == 3)) == null ? void 0 : _b.count) || 0;
           stats.value = {
-            totalTransports: res.data.reduce((sum, item) => sum + item.count, 0) || 0,
-            pendingTransports: res.data[0].count || 0,
-            completedTransports: res.data[3].count || 0
+            totalTransports,
+            pendingTransports,
+            completedTransports
           };
-        }
-      } catch (error) {
-        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:561", "鍔犺浇缁熻澶辫触:", error);
-      }
-    };
-    const updateTransportStatus = async (newStatus, actionName) => {
-      try {
-        const updateData = {
-          id: currentTransport.value.id,
-          transitStatus: newStatus
-        };
-        const res = await common_vendor.index.$uapi.post("/project/transport/edit", updateData);
-        if (res && res.code === 200) {
-          const index = transports.value.findIndex(
-            (item) => item.id === currentTransport.value.id
-          );
-          if (index !== -1) {
-            transports.value[index].transitStatus = newStatus;
-          }
-          await loadStats();
-          common_vendor.index.setStorageSync("transportStatusUpdate", {
-            orderId: currentTransport.value.id,
-            status: newStatus
-          });
-          return true;
         } else {
-          throw new Error((res == null ? void 0 : res.msg) || `${actionName}澶辫触`);
+          stats.value = {
+            totalTransports: 0,
+            pendingTransports: 0,
+            completedTransports: 0
+          };
+          common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:683", "缁熻鏁版嵁鏍煎紡寮傚父:", res.data);
         }
       } catch (error) {
-        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:598", `${actionName}澶辫触:`, error);
-        throw error;
+        common_vendor.index.__f__("error", "at pagesSub/case/transfer.vue:686", "鍔犺浇缁熻澶辫触:", error);
+        stats.value = {
+          totalTransports: 0,
+          pendingTransports: 0,
+          completedTransports: 0
+        };
       }
     };
     const handleStatusUpdate = (update) => {
       const index = transports.value.findIndex(
-        (item) => item.id === update.orderId
+        (item) => item.id == update.orderId
       );
       if (index !== -1) {
         transports.value[index].transitStatus = update.status;
@@ -360,7 +400,7 @@
           return common_vendor.e({
             a: common_vendor.t(item.caseNo || item.reportId),
             b: common_vendor.t(item.patName),
-            c: common_vendor.t(getGenderText(item.sex)),
+            c: common_vendor.t(item.sex == 1 ? "鐢�" : "濂�"),
             d: common_vendor.t(item.age),
             e: common_vendor.t(getStatusText(item.transitStatus)),
             f: common_vendor.n(getStatusClass(item.transitStatus)),
@@ -370,21 +410,25 @@
             j: common_vendor.t(item.contactPerson || "鏈寚瀹�"),
             k: common_vendor.t(formatTime(item.createTime)),
             l: common_vendor.t(getStatusText(item.transitStatus)),
-            m: item.transitStatus === 1
-          }, item.transitStatus === 1 ? {
-            n: common_vendor.o(($event) => startTransport(item), index)
+            m: item.transitStatus == 1
+          }, item.transitStatus == 1 ? {
+            n: common_vendor.o(($event) => handleStartTransport(item), index)
           } : {}, {
-            o: item.transitStatus === 2
-          }, item.transitStatus === 2 ? {
-            p: common_vendor.o(($event) => completeTransport(item), index)
+            o: item.transitStatus == 2
+          }, item.transitStatus == 2 ? {
+            p: common_vendor.o(($event) => handleCompleteTransport(item), index)
           } : {}, {
-            q: item.transitStatus != 3
-          }, item.transitStatus != 3 ? {
-            r: common_vendor.o(($event) => editTransport(item), index)
+            q: item.transitStatus == 2
+          }, item.transitStatus == 2 ? {
+            r: common_vendor.o(($event) => handleCancelTransport(item), index)
           } : {}, {
-            s: common_vendor.o(($event) => viewDetails(item), index),
-            t: index,
-            v: common_vendor.o(($event) => viewDetail(item), index)
+            s: item.transitStatus == 4
+          }, item.transitStatus == 4 ? {
+            t: common_vendor.o(($event) => handleRecoverTransport(item), index)
+          } : {}, {
+            v: common_vendor.o(($event) => viewDetails(item), index),
+            w: index,
+            x: common_vendor.o(($event) => viewDetail(item), index)
           });
         }),
         n: loadingMore.value
@@ -395,29 +439,38 @@
       } : {}, {
         p: !hasMore.value && filteredTransports.value.length > 0
       }, !hasMore.value && filteredTransports.value.length > 0 ? {} : {}, {
-        q: !loading.value && filteredTransports.value.length === 0
-      }, !loading.value && filteredTransports.value.length === 0 ? {
+        q: !loading.value && filteredTransports.value.length == 0
+      }, !loading.value && filteredTransports.value.length == 0 ? {
         r: common_assets._imports_0$3
       } : {}, {
         s: refreshing.value,
         t: common_vendor.o(onRefresh),
         v: common_vendor.o(onLoadMore),
         w: showActionModal.value
-      }, showActionModal.value ? {
+      }, showActionModal.value ? common_vendor.e({
         x: common_vendor.t(modalTitle.value),
         y: common_vendor.t(modalAction.value),
         z: common_vendor.t(currentTransport.value.caseNo),
-        A: common_vendor.o(cancelAction),
-        B: common_vendor.o(confirmAction)
+        A: currentTransport.value.patName
+      }, currentTransport.value.patName ? {
+        B: common_vendor.t(currentTransport.value.patName),
+        C: common_vendor.t(getStatusText(currentTransport.value.transitStatus))
       } : {}, {
-        C: initLoading.value
+        D: common_vendor.o(cancelAction),
+        E: common_vendor.t(modalAction.value),
+        F: common_vendor.o(confirmAction),
+        G: common_vendor.o(() => {
+        }),
+        H: common_vendor.o(cancelAction)
+      }) : {}, {
+        I: initLoading.value
       }, initLoading.value ? {
-        D: common_vendor.p({
+        J: common_vendor.p({
           loading: true,
           text: "鏁版嵁鍔犺浇涓�..."
         })
       } : {}, {
-        E: common_vendor.gei(_ctx, "")
+        K: common_vendor.gei(_ctx, "")
       });
     };
   }

--
Gitblit v1.9.3