From 6a0907fce051418977f2d02ac408d890c28ee273 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 18 八月 2026 09:51:34 +0800
Subject: [PATCH] fix: 日期格式化

---
 src/views/safeProduction/lineInspection/index.vue      |   22 +++++++++++++++-------
 src/views/safeProduction/safetyFacility/index.vue      |   28 ++++++++++++++++++----------
 src/views/safeProduction/dangerInvestigation/index.vue |    9 +++++++--
 3 files changed, 40 insertions(+), 19 deletions(-)

diff --git a/src/views/safeProduction/dangerInvestigation/index.vue b/src/views/safeProduction/dangerInvestigation/index.vue
index 1c74d75..1519ab7 100644
--- a/src/views/safeProduction/dangerInvestigation/index.vue
+++ b/src/views/safeProduction/dangerInvestigation/index.vue
@@ -86,7 +86,11 @@
                          prop="createTime"
                          width="180"
                          align="center"
-                         show-overflow-tooltip />
+                         show-overflow-tooltip>
+          <template #default="scope">
+            {{ formatDate(scope.row.createTime) }}
+          </template>
+        </el-table-column>
         <el-table-column label="鏁存敼瀹屾垚鏈熼檺"
                          prop="rectifyTime"
                          width="120"
@@ -326,7 +330,7 @@
           <span class="detail-title">{{ form.createUserName }}</span>
         </el-descriptions-item>
         <el-descriptions-item label="涓婃姤鏃堕棿">
-          <span class="detail-title">{{ form.createTime }}</span>
+          <span class="detail-title">{{ formatDate(form.createTime) }}</span>
         </el-descriptions-item>
         <el-descriptions-item label="鏁存敼璐d换浜�">
           <span class="detail-title">{{ form.rectifyUserName }}</span>
@@ -553,6 +557,7 @@
 
   const userStore = useUserStore();
   const { proxy } = getCurrentInstance();
+  const formatDate = date => (date ? dayjs(date).format("YYYY-MM-DD") : "");
   const tableData = ref([]);
   const selectedRows = ref([]);
   const userList = ref([]);
diff --git a/src/views/safeProduction/lineInspection/index.vue b/src/views/safeProduction/lineInspection/index.vue
index e758125..3d1078b 100644
--- a/src/views/safeProduction/lineInspection/index.vue
+++ b/src/views/safeProduction/lineInspection/index.vue
@@ -343,10 +343,10 @@
           {{ inspectionDetail.lineName || "--" }}
         </el-descriptions-item>
         <el-descriptions-item label="璁″垝宸℃鏃堕棿">
-          {{ inspectionDetail.planTime || "--" }}
+          {{ formatDateOnly(inspectionDetail.planTime) }}
         </el-descriptions-item>
         <el-descriptions-item label="瀹為檯宸℃鏃堕棿">
-          {{ inspectionDetail.actualInspectionTime || "--" }}
+          {{ formatDateOnly(inspectionDetail.actualInspectionTime) }}
         </el-descriptions-item>
         <el-descriptions-item label="宸℃缁撴灉">
           <el-tag :type="getInspectionResultType(inspectionDetail.inspectionResult)" size="small">
@@ -476,7 +476,7 @@
           {{ currentInspection.lineName || "--" }}
         </el-descriptions-item>
         <el-descriptions-item label="璁″垝鏃堕棿">
-          {{ currentInspection.planTime || "--" }}
+          {{ formatDateOnly(currentInspection.planTime) }}
         </el-descriptions-item>
         <el-descriptions-item label="宸℃椤圭洰" :span="2">
           {{ currentInspection.inspectionProject || "--" }}
@@ -1051,6 +1051,7 @@
 import { computed, getCurrentInstance, onMounted, reactive, ref } from "vue";
 import { Delete, Plus, Search } from "@element-plus/icons-vue";
 import { ElMessage, ElMessageBox } from "element-plus";
+import dayjs from "dayjs";
 import PIMTable from "@/components/PIMTable/PIMTable.vue";
 import ImageUpload from "@/components/AttachmentUpload/image/index.vue";
 import { userListNoPage } from "@/api/system/user.js";
@@ -1080,6 +1081,13 @@
 const { hidden_danger_type } = proxy.useDict("hidden_danger_type");
 const userStore = useUserStore();
 const currentUserId = computed(() => Number(userStore.id));
+const formatDateOnly = value => {
+  if (!value) {
+    return "--";
+  }
+  const date = dayjs(value);
+  return date.isValid() ? date.format("YYYY-MM-DD") : "--";
+};
 
 const activeTab = ref("task");
 const tableLoading = ref(false);
@@ -1402,9 +1410,9 @@
   { label: "宸℃鍚嶇О", prop: "inspectionName", minWidth: 135, showOverflowTooltip: true, align: "left" },
   { label: "绾胯矾鍚嶇О", prop: "lineName", minWidth: 130, showOverflowTooltip: true, align: "left" },
   { label: "宸℃椤圭洰", prop: "inspectionProject", minWidth: 150, showOverflowTooltip: true, align: "left" },
-  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", width: 165, showOverflowTooltip: true, align: "center" },
+  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", width: 165, showOverflowTooltip: true, align: "center", formatData: formatDateOnly },
   { label: "宸℃缁撴灉", prop: "inspectionResult", width: 90, dataType: "slot", slot: "inspectionResult", align: "center" },
-  { label: "瀹為檯宸℃鏃堕棿", prop: "actualInspectionTime", width: 165, showOverflowTooltip: true, align: "center" },
+  { label: "瀹為檯宸℃鏃堕棿", prop: "actualInspectionTime", width: 165, showOverflowTooltip: true, align: "center", formatData: formatDateOnly },
   { label: "宸℃浜�", prop: "inspectorName", minWidth: 105, dataType: "slot", slot: "inspectorName", align: "center" },
   { label: "鐘舵��", prop: "status", width: 90, dataType: "slot", slot: "status", align: "center" }
 ];
@@ -1414,9 +1422,9 @@
   { label: "宸℃鍚嶇О", prop: "inspectionName", minWidth: 135, showOverflowTooltip: true, align: "left" },
   { label: "绾胯矾鍚嶇О", prop: "lineName", minWidth: 130, showOverflowTooltip: true, align: "left" },
   { label: "宸℃椤圭洰", prop: "inspectionProject", minWidth: 145, showOverflowTooltip: true, align: "left" },
-  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", width: 165, showOverflowTooltip: true, align: "center" },
+  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", width: 165, showOverflowTooltip: true, align: "center", formatData: formatDateOnly },
   { label: "宸℃缁撴灉", prop: "inspectionResult", width: 90, dataType: "slot", slot: "inspectionResult", align: "center" },
-  { label: "瀹為檯宸℃鏃堕棿", prop: "actualInspectionTime", width: 165, showOverflowTooltip: true, align: "center" },
+  { label: "瀹為檯宸℃鏃堕棿", prop: "actualInspectionTime", width: 165, showOverflowTooltip: true, align: "center", formatData: formatDateOnly },
   { label: "宸℃浜�", prop: "inspectorName", minWidth: 105, dataType: "slot", slot: "inspectorName", align: "center" },
   { label: "鐘舵��", prop: "status", width: 90, dataType: "slot", slot: "status", align: "center" },
   {
diff --git a/src/views/safeProduction/safetyFacility/index.vue b/src/views/safeProduction/safetyFacility/index.vue
index 3f81c80..ce49337 100644
--- a/src/views/safeProduction/safetyFacility/index.vue
+++ b/src/views/safeProduction/safetyFacility/index.vue
@@ -505,7 +505,7 @@
         <el-descriptions-item label="鏄惁鍚敤">{{ taskDetail.isEnabled === 1 ? '鏄�' : '鍚�' }}</el-descriptions-item>
         <el-descriptions-item label="棰戞">{{ frequencyTypeMap[taskDetail.frequencyType] || taskDetail.frequencyType || '-' }}</el-descriptions-item>
         <el-descriptions-item label="鎵ц鏃堕棿">{{ formatFrequencyDetail(taskDetail.frequencyDetail) }}</el-descriptions-item>
-        <el-descriptions-item label="涓嬫鎵ц鏃堕棿">{{ taskDetail.nextExecutionTime || '-' }}</el-descriptions-item>
+        <el-descriptions-item label="涓嬫鎵ц鏃堕棿">{{ formatDateOnly(taskDetail.nextExecutionTime) }}</el-descriptions-item>
         <el-descriptions-item label="宸℃椤圭洰" :span="2">{{ taskDetail.inspectionProject || '-' }}</el-descriptions-item>
         <el-descriptions-item label="澶囨敞" :span="2">{{ taskDetail.remark || '-' }}</el-descriptions-item>
       </el-descriptions>
@@ -641,8 +641,8 @@
         <el-descriptions-item label="宸℃缂栧彿">{{ inspectionDetail.inspectionCode || '-' }}</el-descriptions-item>
         <el-descriptions-item label="璁炬柦鍚嶇О">{{ inspectionDetail.facilityName || '-' }}</el-descriptions-item>
         <el-descriptions-item label="宸℃浜�">{{ inspectionDetail.inspectorName || '-' }}</el-descriptions-item>
-        <el-descriptions-item label="璁″垝宸℃鏃堕棿">{{ inspectionDetail.planTime || '-' }}</el-descriptions-item>
-        <el-descriptions-item label="瀹為檯宸℃鏃堕棿">{{ inspectionDetail.actualTime || '-' }}</el-descriptions-item>
+        <el-descriptions-item label="璁″垝宸℃鏃堕棿">{{ formatDateOnly(inspectionDetail.planTime) }}</el-descriptions-item>
+        <el-descriptions-item label="瀹為檯宸℃鏃堕棿">{{ formatDateOnly(inspectionDetail.actualTime) }}</el-descriptions-item>
         <el-descriptions-item label="鐘舵��">
           <el-tag :type="inspectionStatusType(inspectionDetail.status)">{{ inspectionDetail.status || '-' }}</el-tag>
         </el-descriptions-item>
@@ -810,12 +810,12 @@
         </el-descriptions-item>
         <el-descriptions-item label="鏁存敼璐d换浜�">{{ rectificationDetail.rectifyUserName || getUserName(rectificationDetail.rectifyUserId) || '-' }}</el-descriptions-item>
         <el-descriptions-item label="璁″垝鏁存敼鏃堕棿">{{ rectificationDetail.planTime || '-' }}</el-descriptions-item>
-        <el-descriptions-item label="瀹為檯鏁存敼鏃堕棿">{{ rectificationDetail.actualTime || '-' }}</el-descriptions-item>
+        <el-descriptions-item label="瀹為檯鏁存敼鏃堕棿">{{ formatDateOnly(rectificationDetail.actualTime) }}</el-descriptions-item>
         <el-descriptions-item label="鐘舵��">
           <el-tag :type="rectificationStatusType(rectificationDetail.status)">{{ rectificationDetail.status || '-' }}</el-tag>
         </el-descriptions-item>
         <el-descriptions-item label="楠屾敹浜�">{{ rectificationDetail.verifyUserName || getUserName(rectificationDetail.verifyUserId) || '-' }}</el-descriptions-item>
-        <el-descriptions-item label="楠屾敹鏃堕棿">{{ rectificationDetail.verifyTime || '-' }}</el-descriptions-item>
+        <el-descriptions-item label="楠屾敹鏃堕棿">{{ formatDateOnly(rectificationDetail.verifyTime) }}</el-descriptions-item>
         <el-descriptions-item label="闂鎻忚堪" :span="3">{{ rectificationDetail.problemDesc || '-' }}</el-descriptions-item>
         <el-descriptions-item label="鏁存敼璇存槑" :span="3">{{ rectificationDetail.rectifyDesc || '-' }}</el-descriptions-item>
         <el-descriptions-item label="楠屾敹璇存槑" :span="3">{{ rectificationDetail.verifyDesc || '-' }}</el-descriptions-item>
@@ -845,6 +845,7 @@
 import { Search } from "@element-plus/icons-vue";
 import { onMounted, ref, reactive, toRefs, computed, provide } from "vue";
 import { ElMessage, ElMessageBox } from "element-plus";
+import dayjs from "dayjs";
 import PIMTable from "@/components/PIMTable/PIMTable.vue";
 import ImageUpload from "@/components/AttachmentUpload/image/index.vue";
 import { userListNoPage } from "@/api/system/user.js";
@@ -1109,6 +1110,11 @@
   return map[value || "鏈~鍐�"] || "info";
 };
 const inspectionStatusType = value => value === "寰呭贰妫�" ? "info" : "success";
+const formatDateOnly = value => {
+  if (!value) return "-";
+  const date = dayjs(value);
+  return date.isValid() ? date.format("YYYY-MM-DD") : "-";
+};
 const rectificationLevelType = value => value === "閲嶅ぇ" ? "danger" : "warning";
 const rectificationStatusType = value => {
   const map = { 寰呮暣鏀�: "danger", 鏁存敼涓�: "warning", 宸叉暣鏀�: "success", 宸查獙鏀�: "info" };
@@ -1224,7 +1230,7 @@
     align: "center",
     formatData: value => formatFrequencyDetail(value)
   },
-  { label: "涓嬫鎵ц鏃堕棿", prop: "nextExecutionTime", minWidth: 170, showOverflowTooltip: true, align: "center" },
+  { label: "涓嬫鎵ц鏃堕棿", prop: "nextExecutionTime", minWidth: 170, showOverflowTooltip: true, align: "center", formatData: formatDateOnly },
   {
     dataType: "action", label: "鎿嶄綔", align: "center", fixed: "right", width: 220,
     operation: [
@@ -1247,9 +1253,9 @@
   },
   { label: "璁炬柦鍚嶇О", prop: "facilityName", showOverflowTooltip: true, minWidth: 150, align: "left" },
   { label: "宸℃椤圭洰", prop: "inspectionProject", showOverflowTooltip: true, minWidth: 180, align: "left" },
-  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", minWidth: 170, align: "center" },
+  { label: "璁″垝宸℃鏃堕棿", prop: "planTime", minWidth: 170, align: "center", formatData: formatDateOnly },
   { label: "宸℃浜�", prop: "inspectorName", minWidth: 110, align: "center" },
-  { label: "瀹為檯宸℃鏃堕棿", prop: "actualTime", minWidth: 170, align: "center" },
+  { label: "瀹為檯宸℃鏃堕棿", prop: "actualTime", minWidth: 170, align: "center", formatData: formatDateOnly },
   {
     label: "妫�鏌ョ粨鏋�", prop: "checkResult", minWidth: 100, align: "center", dataType: "tag",
     formatData: params => params || "鏈~鍐�",
@@ -1291,7 +1297,8 @@
   {
     label: "璁″垝宸℃鏃堕棿",
     prop: "planTime",
-    minWidth: 180
+    minWidth: 180,
+    formatData: formatDateOnly
   },
   {
     label: "宸℃浜�",
@@ -1301,7 +1308,8 @@
   {
     label: "瀹為檯宸℃鏃堕棿",
     prop: "actualTime",
-    minWidth: 180
+    minWidth: 180,
+    formatData: formatDateOnly
   },
   {
     label: "妫�鏌ョ粨鏋�", prop: "checkResult", minWidth: 100, dataType: "tag",

--
Gitblit v1.9.3