From 1191962c486ce66e98fbbdabd01e294b7a0e0602 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 25 八月 2026 16:50:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津_建诚恒商贸' into dev_天津_建诚恒商贸
---
src/views/equipmentManagement/upkeep/index.vue | 2
src/views/equipmentManagement/spareParts/index.vue | 2
src/views/collaborativeApproval/rulesRegulationsManagement/index.vue | 6 +
src/views/personnelManagement/employeeRecord/index.vue | 16 ++--
src/views/equipmentManagement/repair/Modal/RepairModal.vue | 9 +
src/utils/ruoyi.js | 41 ++++++++++
src/views/equipmentManagement/inspectionManagement/index.vue | 2
src/views/collaborativeApproval/sealManagement/index.vue | 6 +
src/views/procurementManagement/procurementLedger/index.vue | 8 +-
src/views/personnelManagement/employeeRecord/components/JobInfoSection.vue | 2
src/views/productionManagement/productionTraceability/index.vue | 14 +-
src/views/inventoryManagement/stockManagement/Record.vue | 4
src/views/collaborativeApproval/knowledgeBase/index.vue | 91 ++++++++++++----------
src/views/inventoryManagement/stockReport/index.vue | 15 +++
14 files changed, 145 insertions(+), 73 deletions(-)
diff --git a/src/utils/ruoyi.js b/src/utils/ruoyi.js
index 0d72c1a..21d3e65 100644
--- a/src/utils/ruoyi.js
+++ b/src/utils/ruoyi.js
@@ -4,6 +4,47 @@
*/
// 鏃ユ湡鏍煎紡鍖�
+export function parseDate(time, pattern) {
+ if (arguments.length === 0 || !time) {
+ return null
+ }
+ const format = pattern || '{y}-{m}-{d}'
+ let date
+ if (typeof time === 'object') {
+ date = time
+ } else {
+ if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
+ time = parseInt(time)
+ } else if (typeof time === 'string') {
+ time = time.replace(new RegExp(/-/gm), '/').replace('T', ' ').replace(new RegExp(/\.[\d]{3}/gm), '')
+ }
+ if ((typeof time === 'number') && (time.toString().length === 10)) {
+ time = time * 1000
+ }
+ date = new Date(time)
+ }
+ const formatObj = {
+ y: date.getFullYear(),
+ m: date.getMonth() + 1,
+ d: date.getDate(),
+ h: date.getHours(),
+ i: date.getMinutes(),
+ s: date.getSeconds(),
+ a: date.getDay()
+ }
+ const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
+ let value = formatObj[key]
+ // Note: getDay() returns 0 on Sunday
+ if (key === 'a') { return ['鏃�', '涓�', '浜�', '涓�', '鍥�', '浜�', '鍏�'][value] }
+ if (result.length > 0 && value < 10) {
+ value = '0' + value
+ }
+ return value || 0
+ })
+ return time_str
+}
+
+// 鏃ユ湡鏍煎紡鍖�
export function parseTime(time, pattern) {
if (arguments.length === 0 || !time) {
return null
diff --git a/src/views/collaborativeApproval/knowledgeBase/index.vue b/src/views/collaborativeApproval/knowledgeBase/index.vue
index 05a1d1c..7cd9cb3 100644
--- a/src/views/collaborativeApproval/knowledgeBase/index.vue
+++ b/src/views/collaborativeApproval/knowledgeBase/index.vue
@@ -127,11 +127,11 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="浣跨敤娆℃暟" prop="usageCount">
- <el-input-number v-model="form.usageCount" :min="0" style="width: 100%" />
- </el-form-item>
- </el-col>
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="浣跨敤娆℃暟" prop="usageCount">-->
+<!-- <el-input-number v-model="form.usageCount" :min="0" style="width: 100%" />-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
</el-row>
</el-form>
</FormDialog>
@@ -163,14 +163,14 @@
{{ getEfficiencyLabel(currentKnowledge.efficiency) }}
</el-tag>
</el-descriptions-item>
- <el-descriptions-item label="浣跨敤娆℃暟">
- <el-tag type="info">{{ currentKnowledge.usageCount }} 娆�</el-tag>
- </el-descriptions-item>
+<!-- <el-descriptions-item label="浣跨敤娆℃暟">-->
+<!-- <el-tag type="info">{{ currentKnowledge.usageCount }} 娆�</el-tag>-->
+<!-- </el-descriptions-item>-->
<el-descriptions-item label="鍒涘缓浜�">
{{ currentKnowledge.creator }}
</el-descriptions-item>
<el-descriptions-item label="鍒涘缓鏃堕棿">
- {{ currentKnowledge.createTime }}
+ {{dayjs(currentKnowledge.createTime).format("YYYY-MM-DD")}}
</el-descriptions-item>
</el-descriptions>
@@ -202,19 +202,19 @@
<h4>浣跨敤缁熻</h4>
<div class="usage-stats">
<el-row :gutter="20">
- <el-col :span="8">
- <div class="stat-item">
- <div class="stat-number">{{ currentKnowledge.usageCount }}</div>
- <div class="stat-label">浣跨敤娆℃暟</div>
- </div>
- </el-col>
- <el-col :span="8">
+<!-- <el-col :span="8">-->
+<!-- <div class="stat-item">-->
+<!-- <div class="stat-number">{{ currentKnowledge.usageCount }}</div>-->
+<!-- <div class="stat-label">浣跨敤娆℃暟</div>-->
+<!-- </div>-->
+<!-- </el-col>-->
+ <el-col :span="12">
<div class="stat-item">
<div class="stat-number">{{ getEfficiencyScore(currentKnowledge.efficiency) }}%</div>
<div class="stat-label">鏁堢巼鎻愬崌</div>
</div>
</el-col>
- <el-col :span="8">
+ <el-col :span="12">
<div class="stat-item">
<div class="stat-number">{{ getTimeSaved(currentKnowledge.efficiency) }}</div>
<div class="stat-label">骞冲潎鑺傜渷鏃堕棿</div>
@@ -296,7 +296,7 @@
<span v-else style="color: #909399">-</span>
</template>
</el-table-column>
- <el-table-column prop="createTime" label="涓婁紶鏃堕棿" width="180" />
+ <el-table-column prop="createTime" label="涓婁紶鏃堕棿" width="120" :formatter="formatDate" />
<el-table-column label="鎿嶄綔" width="150" align="center">
<template #default="{ row }">
<el-button
@@ -386,6 +386,11 @@
import useUserStore from '@/store/modules/user';
import { userListNoPageByTenantId } from '@/api/system/user.js';
import { getToken } from "@/utils/auth";
+import dayjs from "dayjs";
+import { parseDate } from "@/utils/ruoyi";
+
+// 鏃ユ湡鍥炴樉鏍煎紡鍖栵紙YYYY-MM-DD锛�
+const formatDate = (row, column, cellValue) => parseDate(cellValue) || '-';
// 琛ㄥ崟楠岃瘉瑙勫垯
const rules = {
@@ -528,24 +533,24 @@
return typeMap[params] || "info";
}
},
- {
- label: "鏂囦欢鏁伴噺",
- prop: "fileCount",
- width: 100,
- align: "center"
- },
- {
- label: "鍒囩墖鏁伴噺",
- prop: "totalChunkCount",
- width: 100,
- align: "center"
- },
- {
- label: "浣跨敤娆℃暟",
- prop: "usageCount",
- width: 100,
- align: "center"
- },
+ // {
+ // label: "鏂囦欢鏁伴噺",
+ // prop: "fileCount",
+ // width: 100,
+ // align: "center"
+ // },
+ // {
+ // label: "鍒囩墖鏁伴噺",
+ // prop: "totalChunkCount",
+ // width: 100,
+ // align: "center"
+ // },
+ // {
+ // label: "浣跨敤娆℃暟",
+ // prop: "usageCount",
+ // width: 100,
+ // align: "center"
+ // },
{
label: "鍒涘缓浜�",
prop: "creator",
@@ -578,13 +583,13 @@
openFilesDialog(row);
}
},
- {
- name: "闂瓟",
- type: "text",
- clickFun: (row) => {
- openChatDialog(row);
- }
- },
+ // {
+ // name: "闂瓟",
+ // type: "text",
+ // clickFun: (row) => {
+ // openChatDialog(row);
+ // }
+ // },
{
name: "璇︽儏",
type: "text",
diff --git a/src/views/collaborativeApproval/rulesRegulationsManagement/index.vue b/src/views/collaborativeApproval/rulesRegulationsManagement/index.vue
index 128b7ed..0d03b33 100644
--- a/src/views/collaborativeApproval/rulesRegulationsManagement/index.vue
+++ b/src/views/collaborativeApproval/rulesRegulationsManagement/index.vue
@@ -144,7 +144,7 @@
<el-descriptions-item label="鍒嗙被">{{ getCategoryText(currentRegulationDetail.category) }}</el-descriptions-item>
<el-descriptions-item label="鐗堟湰">{{ currentRegulationDetail.version }}</el-descriptions-item>
<el-descriptions-item label="鍙戝竷浜�">{{ currentRegulationDetail.createUserName }}</el-descriptions-item>
- <el-descriptions-item label="鍙戝竷鏃堕棿">{{ currentRegulationDetail.createTime }}</el-descriptions-item>
+ <el-descriptions-item label="鍙戝竷鏃堕棿">{{ formatDate(currentRegulationDetail.createTime) }}</el-descriptions-item>
</el-descriptions>
<div class="mt-20">
<h4>鍒跺害鍐呭</h4>
@@ -235,6 +235,10 @@
addRuleFile,
} from "@/api/collaborativeApproval/rulesRegulationsManagementFile.js";
import PIMTable from "@/components/PIMTable/PIMTable.vue";
+ import { parseDate } from "@/utils/ruoyi";
+
+ // 鏃ユ湡鍥炴樉鏍煎紡鍖栵紙YYYY-MM-DD锛�
+ const formatDate = value => parseDate(value) || "-";
// 鍝嶅簲寮忔暟鎹�
const operationType = ref("add");
diff --git a/src/views/collaborativeApproval/sealManagement/index.vue b/src/views/collaborativeApproval/sealManagement/index.vue
index 7be9ef9..5ebe27c 100644
--- a/src/views/collaborativeApproval/sealManagement/index.vue
+++ b/src/views/collaborativeApproval/sealManagement/index.vue
@@ -118,7 +118,7 @@
<el-descriptions-item label="鐢宠浜�">{{ currentSealDetail.createUserName }}</el-descriptions-item>
<el-descriptions-item label="鎵�灞為儴闂�">{{ currentSealDetail.department }}</el-descriptions-item>
<el-descriptions-item label="鐢ㄥ嵃绫诲瀷">{{ getSealTypeText(currentSealDetail.sealType) }}</el-descriptions-item>
- <el-descriptions-item label="鐢宠鏃堕棿">{{ currentSealDetail.createTime }}</el-descriptions-item>
+ <el-descriptions-item label="鐢宠鏃堕棿">{{ formatDate(currentSealDetail.createTime) }}</el-descriptions-item>
<el-descriptions-item label="鐘舵��">
<el-tag :type="getStatusType(currentSealDetail.status)">
{{ getStatusText(currentSealDetail.status) }}
@@ -163,6 +163,10 @@
import AttachmentUploadFile from '@/components/AttachmentUpload/file/index.vue'
import FilePreview from '@/components/filePreview/index.vue'
import download from '@/plugins/download.js'
+import { parseDate } from '@/utils/ruoyi'
+
+// 鏃ユ湡鍥炴樉鏍煎紡鍖栵紙YYYY-MM-DD锛�
+const formatDate = value => parseDate(value) || '-'
// 鍝嶅簲寮忔暟鎹�
// 鐢ㄥ嵃鐢宠鐩稿叧
diff --git a/src/views/equipmentManagement/inspectionManagement/index.vue b/src/views/equipmentManagement/inspectionManagement/index.vue
index da8ac99..e254d0d 100644
--- a/src/views/equipmentManagement/inspectionManagement/index.vue
+++ b/src/views/equipmentManagement/inspectionManagement/index.vue
@@ -224,7 +224,7 @@
{ prop: "registrant", label: "鐧昏浜�", minWidth: 120 },
{
prop: "createTime", label: "鐧昏鏃ユ湡", minWidth: 180,
- formatData: cell => { if (!cell) return "-"; try { return dayjs(cell).format("YYYY-MM-DD HH:mm:ss"); } catch { return cell; } },
+ formatData: cell => { if (!cell) return "-"; try { return dayjs(cell).format("YYYY-MM-DD"); } catch { return cell; } },
},
{ prop: "abnormalDescription", label: "寮傚父鎻忚堪", minWidth: 150 },
]);
diff --git a/src/views/equipmentManagement/repair/Modal/RepairModal.vue b/src/views/equipmentManagement/repair/Modal/RepairModal.vue
index b2de7d0..7390832 100644
--- a/src/views/equipmentManagement/repair/Modal/RepairModal.vue
+++ b/src/views/equipmentManagement/repair/Modal/RepairModal.vue
@@ -90,8 +90,13 @@
</el-col>
<el-col :span="12">
<el-form-item label="楠屾敹鏃堕棿">
- <el-input v-model="form.acceptanceTime"
- disabled />
+ <el-date-picker
+ v-model="form.acceptanceTime"
+ type="date"
+ value-format="YYYY-MM-DD"
+ :disabled="true"
+ ></el-date-picker>
+
</el-form-item>
</el-col>
<el-col :span="24">
diff --git a/src/views/equipmentManagement/spareParts/index.vue b/src/views/equipmentManagement/spareParts/index.vue
index 131e1d5..b663187 100644
--- a/src/views/equipmentManagement/spareParts/index.vue
+++ b/src/views/equipmentManagement/spareParts/index.vue
@@ -243,7 +243,7 @@
{ label: "澶囦欢鍚嶇О", prop: "sparePartsName" },
{ label: "棰嗙敤鏁伴噺", prop: "quantity" },
{ label: "鎿嶄綔浜�", prop: "operator" },
- { label: "鏃堕棿", prop: "createTime" },
+ { label: "鏃堕棿", prop: "createTime",dataType:"date" },
]);
const handleTabChange = async (name) => {
diff --git a/src/views/equipmentManagement/upkeep/index.vue b/src/views/equipmentManagement/upkeep/index.vue
index 166ad24..61fe1a6 100644
--- a/src/views/equipmentManagement/upkeep/index.vue
+++ b/src/views/equipmentManagement/upkeep/index.vue
@@ -422,7 +422,7 @@
label: "鐧昏鏃ユ湡",
minWidth: 100,
formatData: cell =>
- cell ? dayjs(cell).format("YYYY-MM-DD HH:mm:ss") : "-",
+ cell ? dayjs(cell).format("YYYY-MM-DD") : "-",
},
{
fixed: "right",
diff --git a/src/views/inventoryManagement/stockManagement/Record.vue b/src/views/inventoryManagement/stockManagement/Record.vue
index b45dd00..8add895 100644
--- a/src/views/inventoryManagement/stockManagement/Record.vue
+++ b/src/views/inventoryManagement/stockManagement/Record.vue
@@ -99,9 +99,9 @@
<el-table-column label="涓嶅悎鏍煎喕缁撴暟閲�"
prop="unQualifiedLockedQuantity"
show-overflow-tooltip />
- <el-table-column label="搴撳瓨棰勮鏁伴噺"
+ <!-- <el-table-column label="搴撳瓨棰勮鏁伴噺"
prop="warnNum"
- show-overflow-tooltip />
+ show-overflow-tooltip /> -->
<el-table-column label="澶囨敞"
prop="remark"
show-overflow-tooltip />
diff --git a/src/views/inventoryManagement/stockReport/index.vue b/src/views/inventoryManagement/stockReport/index.vue
index 26bc8a0..615e943 100644
--- a/src/views/inventoryManagement/stockReport/index.vue
+++ b/src/views/inventoryManagement/stockReport/index.vue
@@ -152,7 +152,11 @@
prop="createTime"
width="200"
show-overflow-tooltip
- v-if="searchForm.reportType !== 'inout'" />
+ v-if="searchForm.reportType !== 'inout'" >
+ <template #default="scope">
+ {{ getDate(scope.row.createTime) }}
+ </template>
+ </el-table-column>
<el-table-column label="鍏ュ簱鎵规"
prop="inboundBatches"
width="180"
@@ -216,6 +220,7 @@
import { ref, reactive, onMounted, nextTick, getCurrentInstance } from "vue";
import { ElMessage } from "element-plus";
import * as echarts from "echarts";
+ import dayjs from "dayjs";
import pagination from "@/components/PIMTable/Pagination.vue";
import {
getStockInventoryInAndOutReportList,
@@ -261,6 +266,14 @@
);
};
+ const getDate = val =>{
+ console.log(val)
+ if(!val){
+ return "--"
+ }
+ return dayjs(val).isValid() ? dayjs(val).format('YYYY鈥慚M鈥慏D') : '--'
+ }
+
// 鑾峰彇鏉ユ簮绫诲瀷閫夐」
const fetchStockRecordTypeOptions = () => {
findAllQualifiedStockInRecordTypeOptions().then(res => {
diff --git a/src/views/personnelManagement/employeeRecord/components/JobInfoSection.vue b/src/views/personnelManagement/employeeRecord/components/JobInfoSection.vue
index be33436..b07c258 100644
--- a/src/views/personnelManagement/employeeRecord/components/JobInfoSection.vue
+++ b/src/views/personnelManagement/employeeRecord/components/JobInfoSection.vue
@@ -10,7 +10,7 @@
<!-- 绗竴琛岋細鍚堝悓寮�濮� / 鍚堝悓缁撴潫 / 璇曠敤鏈� / 杞 -->
<el-row :gutter="24">
<el-col :span="6">
- <el-form-item label="鍏ヨ亴鏃ユ湡" prop="contractStartTime">
+ <el-form-item label="鍚堝悓寮�濮嬫棩鏈�" prop="contractStartTime">
<el-date-picker
v-model="form.contractStartTime"
type="date"
diff --git a/src/views/personnelManagement/employeeRecord/index.vue b/src/views/personnelManagement/employeeRecord/index.vue
index b5a7af7..5372de0 100644
--- a/src/views/personnelManagement/employeeRecord/index.vue
+++ b/src/views/personnelManagement/employeeRecord/index.vue
@@ -176,17 +176,17 @@
width: 120,
},
{
- label: "鍏ヨ亴鏃ユ湡",
+ label: "鍚堝悓寮�濮嬫棩鏈�",
prop: "contractStartTime",
width: 120,
},
- {
- label: "杞鏃ユ湡",
- prop: "positiveDate",
- width: 120,
- dataType: "slot",
- slot: "positiveDate",
- },
+ // {
+ // label: "杞鏃ユ湡",
+ // prop: "positiveDate",
+ // width: 120,
+ // dataType: "slot",
+ // slot: "positiveDate",
+ // },
{
label: "骞撮緞",
prop: "age",
diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index 7324217..bbe8ef3 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -147,10 +147,10 @@
prop="purchaseContractNumber"
width="160"
show-overflow-tooltip />
- <el-table-column label="閿�鍞悎鍚屽彿"
- prop="salesContractNo"
- width="160"
- show-overflow-tooltip />
+<!-- <el-table-column label="閿�鍞悎鍚屽彿"-->
+<!-- prop="salesContractNo"-->
+<!-- width="160"-->
+<!-- show-overflow-tooltip />-->
<el-table-column label="渚涘簲鍟嗗悕绉�"
prop="supplierName"
width="160"
diff --git a/src/views/productionManagement/productionTraceability/index.vue b/src/views/productionManagement/productionTraceability/index.vue
index 53ff013..39db220 100644
--- a/src/views/productionManagement/productionTraceability/index.vue
+++ b/src/views/productionManagement/productionTraceability/index.vue
@@ -56,7 +56,7 @@
</el-tag>
</el-descriptions-item>
<el-descriptions-item label="瀹㈡埛鍚嶇О">{{ rowData.productionOrderDto?.customerName || '-' }}</el-descriptions-item>
- <el-descriptions-item label="寮�濮嬫棩鏈�">{{ parseTime(rowData.productionOrderDto?.startTime) || '-' }}</el-descriptions-item>
+ <el-descriptions-item label="寮�濮嬫棩鏈�">{{ parseDate(rowData.productionOrderDto?.startTime) || '-' }}</el-descriptions-item>
<el-descriptions-item label="瀹屾垚杩涘害">
<el-progress :percentage="rowData.productionOrderDto?.completionStatus>=100?100:rowData.productionOrderDto?.completionStatus"
:color="customColors(rowData.productionOrderDto?.completionStatus)"
@@ -144,8 +144,8 @@
<el-descriptions-item label="鐢熶骇宸ュ崟鍙�">{{ detailData.workOrder.workOrderNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="璁″垝鏁伴噺">{{ detailData.workOrder.planQuantity || 0 }}</el-descriptions-item>
<el-descriptions-item label="瀹屾垚鏁伴噺">{{ detailData.workOrder.completeQuantity || 0 }}</el-descriptions-item>
- <el-descriptions-item label="瀹為檯寮�濮嬫椂闂�">{{ parseTime(detailData.workOrder.actualStartTime) || '-' }}</el-descriptions-item>
- <el-descriptions-item label="瀹為檯缁撴潫鏃堕棿">{{ parseTime(detailData.workOrder.actualEndTime) || '-' }}</el-descriptions-item>
+ <el-descriptions-item label="瀹為檯寮�濮嬫椂闂�">{{ parseDate(detailData.workOrder.actualStartTime) || '-' }}</el-descriptions-item>
+ <el-descriptions-item label="瀹為檯缁撴潫鏃堕棿">{{ parseDate(detailData.workOrder.actualEndTime) || '-' }}</el-descriptions-item>
<!-- <el-descriptions-item label="瀹屾垚杩涘害">
<el-progress :percentage="detailData.workOrder.completionStatus >= 100 ? 100 : (detailData.workOrder.completionStatus || 0)"
:color="customColors(detailData.workOrder.completionStatus)"
@@ -169,7 +169,7 @@
<el-table-column label="鍒涘缓鏃堕棿"
align="center">
<template #default="{ row }">
- {{ parseTime(row.createTime) }}
+ {{ parseDate(row.createTime) }}
</template>
</el-table-column>
<el-table-column label="宸ユ椂锛坔锛�"
@@ -242,10 +242,10 @@
:key="record.id"
class="quality-record-block">
<div class="detail-section">
- <h3 class="section-title">妫�娴嬭褰� {{ index + 1 }} - {{ parseTime(record.createTime) }}</h3>
+ <h3 class="section-title">妫�娴嬭褰� {{ index + 1 }} - {{ parseDate(record.createTime) }}</h3>
<el-descriptions :column="3"
border>
- <el-descriptions-item label="妫�娴嬫棩鏈�">{{ parseTime(record.createTime) || '-' }}</el-descriptions-item>
+ <el-descriptions-item label="妫�娴嬫棩鏈�">{{ parseDate(record.createTime) || '-' }}</el-descriptions-item>
<el-descriptions-item label="鎶ュ伐鍗曞彿">{{ record.reportNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="妫�楠屽憳">{{ record.userName || '-' }}</el-descriptions-item>
<el-descriptions-item label="浜у搧鍚嶇О">{{ record.productName || '-' }}</el-descriptions-item>
@@ -299,7 +299,7 @@
import { ref, reactive, onMounted, computed } from "vue";
import { useRoute, useRouter } from "vue-router";
import { ElMessage } from "element-plus";
- import { parseTime } from "@/utils/ruoyi";
+ import { parseDate } from "@/utils/ruoyi";
import InputModal from "@/views/productionManagement/productionReporting/Input.vue";
import {
getOrderDetail,
--
Gitblit v1.9.3