From fc62e83f73b4b8ff4714f995da4eafbb7f525d1a Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 18 八月 2026 23:30:10 +0800
Subject: [PATCH] feat(table): 统一表格日期字段展示格式为YYYY-MM-DD

---
 src/views/inventoryManagement/dispatchLog/Record.vue |   47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 46 insertions(+), 1 deletions(-)

diff --git a/src/views/inventoryManagement/dispatchLog/Record.vue b/src/views/inventoryManagement/dispatchLog/Record.vue
index 2d7411d..fe05536 100644
--- a/src/views/inventoryManagement/dispatchLog/Record.vue
+++ b/src/views/inventoryManagement/dispatchLog/Record.vue
@@ -76,6 +76,8 @@
     <div class="actions">
       <el-button type="primary"
                  @click="handleBatchApprove">瀹℃壒</el-button>
+      <el-button :disabled="!canReverseApprove"
+                 @click="handleReverseApprove">鍙嶅</el-button>
       <el-button @click="handleOut">瀵煎嚭</el-button>
       <el-button type="danger"
                  plain
@@ -106,7 +108,11 @@
                          show-overflow-tooltip />
         <el-table-column label="鍑哄簱鏃ユ湡"
                          prop="createTime"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip >
+          <template #default="scope">
+            {{ scope.row.createTime ? scope.row.createTime.split(' ')[0] : '-' }}
+          </template>
+        </el-table-column>
         <el-table-column label="浜у搧澶х被"
                          prop="productName"
                          show-overflow-tooltip />
@@ -163,6 +169,7 @@
     getStockOutPage,
     delPendingStockOut,
     batchApproveStockOutRecords,
+    batchUnapproveStockOutRecords,
   } from "@/api/inventoryManagement/stockOut.js";
   import {
     findAllQualifiedStockOutRecordTypeOptions,
@@ -306,6 +313,44 @@
     selectedRows.value = selection.filter(item => item.id);
     console.log("selection", selectedRows.value);
   };
+
+  const isRejectedApproval = status => {
+    return status === 2 || status === "2" || status === "rejected" || status === "REJECTED";
+  };
+
+  const canReverseApprove = computed(() => {
+    return (
+      selectedRows.value.length > 0 &&
+      selectedRows.value.every(row => isRejectedApproval(row.approvalStatus))
+    );
+  });
+
+  const handleReverseApprove = () => {
+    if (!canReverseApprove.value) {
+      proxy.$modal.msgWarning("璇烽�夋嫨椹冲洖鐘舵�佺殑鏁版嵁");
+      return;
+    }
+    const ids = selectedRows.value.map(item => item.id);
+    ElMessageBox.confirm("鍙嶅鍚庤褰曞皢鎭㈠涓哄緟瀹℃壒鐘舵�侊紝鏄惁纭鍙嶅锛�", "鍙嶅", {
+      confirmButtonText: "纭",
+      cancelButtonText: "鍙栨秷",
+      type: "warning",
+    })
+      .then(() => {
+        batchUnapproveStockOutRecords({ ids })
+          .then(() => {
+            proxy.$modal.msgSuccess("鍙嶅鎴愬姛");
+            getList();
+          })
+          .catch(() => {
+            proxy.$modal.msgError("鍙嶅澶辫触");
+          });
+      })
+      .catch(() => {
+        proxy.$modal.msg("宸插彇娑�");
+      });
+  };
+
   const expandedRowKeys = ref([]);
 
   const handleBatchApprove = () => {

--
Gitblit v1.9.3