From 0b7bc50347ee1af032eb5e64c82e55fd43f1a93d Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 14 十一月 2025 11:49:54 +0800
Subject: [PATCH] *
---
src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html | 433 ++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 327 insertions(+), 106 deletions(-)
diff --git a/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html b/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
index 00ce1ce..4138c62 100644
--- a/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
+++ b/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
@@ -104,7 +104,7 @@
<div class="search-item">
<span class="search-label">缁勮揣鍗曞彿:</span>
<el-input
- v-model="searchForm.uuid"
+ v-model="searchForm.itemName"
placeholder="璇疯緭鍏ョ粍璐у崟鍙�"
clearable
style="width: 150px;"
@@ -121,16 +121,6 @@
@keyup.enter.native="handleSearch"
></el-input>
</div>
-<!-- <div class="search-item">-->
-<!-- <span class="search-label">璁㈠崟缂栧彿:</span>-->
-<!-- <el-input-->
-<!-- v-model="searchForm.orderNo"-->
-<!-- placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"-->
-<!-- clearable-->
-<!-- style="width: 150px;"-->
-<!-- @keyup.enter.native="handleSearch"-->
-<!-- ></el-input>-->
-<!-- </div>-->
<div class="search-item">
<span class="search-label">鐘舵��:</span>
<el-select
@@ -140,19 +130,15 @@
style="width: 150px;"
>
<el-option label="鍏ㄩ儴" value=""></el-option>
- <el-option label="寰呭鐞�" value="1"></el-option>
- <el-option label="浣滀笟涓�" value="2"></el-option>
- <el-option label="宸插彇娑�" value="3"></el-option>
- <el-option label="宸插畬鎴�" value="4"></el-option>
- <el-option label="鍑嗗鍙栨秷" value="5"></el-option>
- <el-option label="宸插畬鎴�" value="6"></el-option>
- <el-option label="涓婃姤瀹屾垚" value="7"></el-option>
- <el-option label="寰呭垽鏌ヨ涓�" value="9"></el-option>
- <el-option label="灏辩华" value="10"></el-option>
- <el-option label="鐢熸垚瀹為檯缁勮揣鍗曚腑銆傝绛夊緟..." value="11"></el-option>
- <el-option label="鐢熸垚瀹為檯缁勮揣鍗曟垚鍔�" value="12"></el-option>
- <el-option label="鐢熸垚瀹為檯缁勮揣鍗曞け璐�" value="13"></el-option>
- <el-option label="寮傚父" value="99"></el-option>
+ <el-option label="寰呭鐞�" value="10"></el-option>
+ <el-option label="妫�楠屼腑" value="11"></el-option>
+ <el-option label="鍑哄簱涓�" value="12"></el-option>
+ <el-option label="瀛樺湪涓嶅悎鏍�" value="13"></el-option>
+ <el-option label="寰呬笂鎶�" value="15"></el-option>
+ <el-option label="涓婃姤瀹屾垚" value="16"></el-option>
+ <el-option label="涓婃姤澶辫触" value="17"></el-option>
+ <el-option label="寮傚父" value="98"></el-option>
+ <el-option label="搴熷純" value="99"></el-option>
</el-select>
</div>
<div class="search-actions">
@@ -172,12 +158,12 @@
style="width: 100%"
v-loading="loading"
@sort-change="handleSortChange">
- <el-table-column prop="uuid" label="缁勮揣鍗曞彿" width="120" align="center" sortable="custom"></el-table-column>
- <el-table-column prop="orderNo" label="璁㈠崟缂栧彿" min-width="140" align="center"></el-table-column>
+ <el-table-column prop="itemName" label="缁勮揣鍗曞彿" width="240" align="center" sortable="custom"></el-table-column>
<el-table-column prop="cstmrName" label="瀹㈡埛鍚嶇О" min-width="120" align="center"></el-table-column>
+ <el-table-column prop="orderCount" label="缁勮揣鍗曟暟" width="80" align="center"></el-table-column>
<el-table-column prop="settle" label="鐘舵��" min-width="100" align="center" :formatter="formatStatus"></el-table-column>
-<!-- <el-table-column prop="totalFee" label="鍚堣閲戦" min-width="100" align="center" :formatter="formatCurrency"></el-table-column>-->
-<!-- <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="140" align="center" sortable="custom"></el-table-column>-->
+ <el-table-column prop="createTime" label="鏃ユ湡" min-width="100" align="center" :formatter="formatDateColumn"></el-table-column>
+ <el-table-column prop="updateTime" label="鏇存柊鏃ユ湡" min-width="100" align="center" :formatter="formatDateColumn"></el-table-column>
<el-table-column label="鎿嶄綔" width="150" align="center" fixed="right">
<template slot-scope="scope">
<div class="operation-cell">
@@ -214,12 +200,10 @@
class="detail-dialog"
@close="closeDetailDialog">
<div v-if="currentRow">
- <h3>缁勮揣鍗曚富琛� (缁勮揣鍗曞彿: {{ currentRow.uuid }})</h3>
+ <h3>缁勮揣鍗曚富琛� (缁勮揣鍗曞彿: {{ currentRow.itemName }})</h3>
<el-descriptions :column="2" border>
- <el-descriptions-item label="璁㈠崟缂栧彿">{{ currentRow.orderNo }}</el-descriptions-item>
<el-descriptions-item label="瀹㈡埛鍚嶇О">{{ currentRow.cstmrName }}</el-descriptions-item>
- <el-descriptions-item label="鐘舵��">{{ currentRow.settle$ }}</el-descriptions-item>
- <el-descriptions-item label="鍚堣閲戦">{{ formatCurrency(currentRow) }}</el-descriptions-item>
+ <el-descriptions-item label="鐘舵��">{{ formatStatus(currentRow)}}</el-descriptions-item>
<el-descriptions-item label="鍒涘缓鏃堕棿">{{ formatDate(currentRow.createTime) }}</el-descriptions-item>
<el-descriptions-item label="澶囨敞">{{ currentRow.memo || '鏃�' }}</el-descriptions-item>
</el-descriptions>
@@ -230,11 +214,32 @@
:data="tableDataB"
style="width: 100%"
v-loading="detailLoading">
- <el-table-column prop="productName" label="浜у搧鍚嶇О" min-width="120" align="center"></el-table-column>
- <el-table-column prop="quantity" label="鏁伴噺" min-width="80" align="center"></el-table-column>
- <el-table-column prop="price" label="鍗曚环" min-width="100" align="center" :formatter="formatCurrency"></el-table-column>
- <el-table-column prop="totalPrice" label="閲戦" min-width="100" align="center" :formatter="formatCurrency"></el-table-column>
- <!-- 鍙牴鎹疄闄呴渶姹傛坊鍔犳洿澶氬瓙琛ㄥ垪 -->
+ <el-table-column prop="matnr" label="瑙勬牸" min-width="120" align="center"></el-table-column>
+ <el-table-column prop="batch" label="绠卞彿" min-width="80" align="center"></el-table-column>
+ <el-table-column prop="model" label="鍗峰彿" min-width="100" align="center" ></el-table-column>
+ <el-table-column prop="origin" label="浣嶇疆" min-width="100" align="center"></el-table-column>
+ <el-table-column prop="danger" label="寰呭垽" min-width="100" align="center"></el-table-column>
+ <el-table-column prop="memo" label="澶囨敞" min-width="100" align="center"></el-table-column>
+ <el-table-column prop="status" label="鐘舵��" min-width="100" align="center" :formatter="formatStatusB"></el-table-column>
+ <!-- 鏂板鎿嶄綔鍒楋紝鏍规嵁status鍊兼帶鍒舵樉绀� -->
+ <el-table-column label="鏄惁涓婃姤" width="120" align="center" fixed="right">
+ <template slot-scope="scope">
+ <div class="operation-cell">
+ <el-button v-if="scope.row.status === 2"
+ type="primary"
+ size="mini"
+ @click="handleModifyN(scope.row)">
+ 鍚�
+ </el-button>
+ <el-button v-if="scope.row.status === 1"
+ type="primary"
+ size="mini"
+ @click="handleModifyY(scope.row)">
+ 鏄�
+ </el-button>
+ </div>
+ </template>
+ </el-table-column>
</el-table>
<!-- 瀛愯〃鍒嗛〉 -->
@@ -256,7 +261,8 @@
class="confirm-report-btn"
@click="showConfirmDialog"
:loading="reportLoading">
- 纭涓婃姤
+ <!-- 鐩存帴鍦ㄦā鏉夸腑鍒ゆ柇 -->
+ {{ settleA === 17 ? '鍐嶆涓婃姤' : '纭涓婃姤' }}
</el-button>
<el-button @click="closeDetailDialog">鍏抽棴</el-button>
</div>
@@ -269,7 +275,7 @@
data: {
// 鎼滅储琛ㄥ崟
searchForm: {
- uuid: '',
+ item_name: '',
cstmr_name: '',
settle: '',
order_no: ''
@@ -290,6 +296,7 @@
currentRow: null,
// 瀛愯〃鍒嗛〉
detailCurrentPage: 1,
+ settleA: 1,
detailPageSize: 5,
detailTotal: 0,
// 鍔犺浇鐘舵��
@@ -307,7 +314,7 @@
// 姣�5绉掕嚜鍔ㄥ埛鏂版暟鎹�
setInterval(() => {
this.getTableDataA();
- }, 5000);
+ }, 10000);
},
// 鑾峰彇涓昏〃A鏁版嵁 - 浣跨敤鏂扮殑API
@@ -332,10 +339,10 @@
if (that.searchForm[key] !== '') {
if (key === 'orderNo'){
params['order_no'] = that.searchForm[key];
+ } else if (key === 'itemName'){
+ params['item_name'] = that.searchForm[key];
} else if (key === 'cstmrName'){
params['cstmr_name'] = that.searchForm[key];
- } else if (key === 'settle$'){
- params['settle'] = that.searchForm[key];
} else {
params[key] = that.searchForm[key];
}
@@ -343,8 +350,7 @@
});
$.ajax({
- // url: baseUrl + "/order/pakout/order/cargo/grouping/auth/v1",
- url: baseUrl + "/order/head/page/auth",
+ url: baseUrl + "/order/pakout/order/cargo/grouping/auth/v1",
headers: {
'token': localStorage.getItem('token')
},
@@ -373,33 +379,144 @@
},
// 鑾峰彇瀛愯〃B鏁版嵁锛堟牴鎹疄闄呬笟鍔¤皟鏁达級
- getTableDataB(uuid) {
+ getTableDataB(itemName) {
let that = this;
that.detailLoading = true;
+ // 鏋勫缓璇锋眰鍙傛暟
+ let params = {
+ item_name: itemName,
+ curr: that.detailCurrentPage,
+ limit: that.detailPageSize
+ };
+
// 妯℃嫙API璋冪敤 - 鏍规嵁瀹為檯涓氬姟璋冩暣API鍦板潃
$.ajax({
- url: baseUrl + "/api/order/detail/list",
+ url: baseUrl + "/order/pakout/orderDetl/cargo/grouping/auth",
headers: {
'token': localStorage.getItem('token')
},
- data: {
- uuid: uuid,
- page: that.detailCurrentPage,
- size: that.detailPageSize
- },
+ data: params,
dataType: 'json',
contentType: 'application/json;charset=UTF-8',
- method: 'post',
+ method: 'get',
success: function (res) {
- that.tableDataB = res.data || [];
- that.detailTotal = res.total || 0;
+ if (res.code === 200 || res.success) {
+ that.tableDataB = res.data.records || [];
+ that.detailTotal = res.data.total || 0;
+ } else {
+ that.$message.error(res.message || '鑾峰彇鏁版嵁澶辫触');
+ that.tableDataB = [];
+ that.detailTotal = 0;
+ }
that.detailLoading = false;
},
error: function() {
that.detailLoading = false;
// 瀹為檯椤圭洰涓簲浣跨敤鐪熷疄API锛岃繖閲屼娇鐢ㄦā鎷熸暟鎹�
- that.mockTableBData(uuid);
+ that.mockTableBData(itemName);
+ }
+ });
+ },
+
+ // 澶勭悊淇敼鎸夐挳鐐瑰嚮浜嬩欢
+ handleModifyY(row) {
+ if (!this.currentRow) {
+ this.$message.error('娌℃湁閫夋嫨涓昏〃鏁版嵁');
+ return;
+ }
+
+ const groupOrderNo = this.currentRow.itemName; // 缁勮揣鍗曞彿
+ const batch = row.batch; // 绠卞彿
+ const status = 2; // 绠卞彿
+
+ this.$confirm(
+ `纭畾灏嗙粍璐у崟鍙凤細 <strong style="color: #409EFF;">${groupOrderNo}</strong> 涓殑绠卞彿锛� <strong style="color: #409EFF;">${batch}</strong> 娣诲姞鍒颁笂鎶ュ垪鍚楋紵`,
+ '纭淇敼',
+ {
+ confirmButtonText: '纭淇敼',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning',
+ dangerouslyUseHTMLString: true
+ }
+ ).then(() => {
+ this.submitModify(groupOrderNo, batch, status);
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堜慨鏀�'
+ });
+ });
+ },
+
+ // 澶勭悊淇敼鎸夐挳鐐瑰嚮浜嬩欢
+ handleModifyN(row) {
+ if (!this.currentRow) {
+ this.$message.error('娌℃湁閫夋嫨涓昏〃鏁版嵁');
+ return;
+ }
+
+ const groupOrderNo = this.currentRow.itemName; // 缁勮揣鍗曞彿
+ const batch = row.batch; // 绠卞彿
+ const status = 1; // 绠卞彿
+
+ this.$confirm(
+ `纭畾灏嗙粍璐у崟鍙凤細 <strong style="color: #409EFF;">${groupOrderNo}</strong> 銆佺鍙凤細 <strong style="color: #409EFF;">${batch}</strong> 娣诲姞鍒颁笂鎶ュ垪鍚楋紵`,
+ '纭淇敼',
+ {
+ confirmButtonText: '纭淇敼',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning',
+ dangerouslyUseHTMLString: true
+ }
+ ).then(() => {
+ this.submitModify(groupOrderNo, batch, status);
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堜慨鏀�'
+ });
+ });
+ },
+
+ // 鎻愪氦淇敼鍒板悗鍙�
+ submitModify(groupOrderNo, batch, status) {
+ // 鏄剧ず鍔犺浇鐘舵��
+ const loadingInstance = this.$loading({
+ lock: true,
+ text: '鎻愪氦淇敼涓�...',
+ spinner: 'el-icon-loading',
+ background: 'rgba(0, 0, 0, 0.7)'
+ });
+
+ $.ajax({
+ url: baseUrl + "/order/pakout/orderDetl/batch/report/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: top.reObject({
+ item_name: groupOrderNo, // 缁勮揣鍗曞彿
+ batch: batch, // 绠卞彿
+ status: status // 绠卞彿
+ }),
+ method: 'POST',
+ success: (res) => {
+ loadingInstance.close();
+
+ if (res.code === 200 || res.success) {
+ this.$message({
+ message: `淇敼鎴愬姛锛佺粍璐у崟鍙�: ${groupOrderNo}, 绠卞彿: ${batch}`,
+ type: 'success',
+ duration: 3000
+ });
+
+ this.getTableDataB(groupOrderNo);
+ } else {
+ this.$message.error(res.message || '淇敼澶辫触');
+ }
+ },
+ error: (error) => {
+ loadingInstance.close();
+ console.error('淇敼澶辫触:', error);
+ this.$message.error('淇敼澶辫触锛岃妫�鏌ョ綉缁滆繛鎺�');
}
});
},
@@ -417,14 +534,13 @@
this.getTableDataA();
},
- // 鏄剧ず浜屾纭瀵硅瘽妗�
showConfirmDialog() {
if (!this.currentRow) {
this.$message.error('娌℃湁閫夋嫨瑕佷笂鎶ョ殑鏁版嵁');
return;
}
- const groupOrderNo = this.currentRow.uuid;
+ const groupOrderNo = this.currentRow.itemName;
this.$confirm(
`鏄惁纭寮�濮嬩笂鎶ョ粍璐у崟鍙� <strong style="color: #F56C6C; font-size: 16px;">${groupOrderNo}</strong>?<br/><br/>灏嗙敓鎴愬疄闄呯粍璐у崟锛屽崟涓�缁勮揣鍗曞彿鍙兘鎿嶄綔涓�娆�!!!`,
@@ -461,22 +577,17 @@
// 璋冪敤鍚庡彴API涓婃姤鏁版嵁
$.ajax({
- url: baseUrl + "/api/report/confirm",
- headers: {
- 'token': localStorage.getItem('token')
+ url: baseUrl + "/order/pakout/actual/shipment/order/report/auth",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ itemName: groupOrderNo // 浼犻�掔粍璐у崟鍙�
},
- data: JSON.stringify({
- uuid: groupOrderNo // 浼犻�掔粍璐у崟鍙�
- }),
- dataType: 'json',
- contentType: 'application/json;charset=UTF-8',
- method: 'post',
+ method: 'POST',
success: (res) => {
this.reportLoading = false;
if (typeof done === 'function') {
done();
}
-
if (res.code === 200 || res.success) {
this.$message({
message: `缁勮揣鍗曞彿 ${groupOrderNo} 涓婃姤鎴愬姛`,
@@ -514,7 +625,7 @@
// 閲嶇疆鎼滅储鏉′欢
handleReset() {
this.searchForm = {
- uuid: '',
+ item_name: '',
cstmr_name: '',
settle: '',
order_no: ''
@@ -530,7 +641,8 @@
this.currentRow = row;
this.detailDialogVisible = true;
this.detailCurrentPage = 1;
- this.getTableDataB(row.uuid);
+ this.settleA = row.settle;
+ this.getTableDataB(row.itemName);
},
// 鍏抽棴璇︽儏寮圭獥
@@ -559,7 +671,7 @@
this.detailPageSize = val;
this.detailCurrentPage = 1;
if (this.currentRow) {
- this.getTableDataB(this.currentRow.uuid);
+ this.getTableDataB(this.currentRow.itemName);
}
},
@@ -567,24 +679,47 @@
handleDetailCurrentChange(val) {
this.detailCurrentPage = val;
if (this.currentRow) {
- this.getTableDataB(this.currentRow.uuid);
+ this.getTableDataB(this.currentRow.itemName);
}
},
// 鏍煎紡鍖栫姸鎬佹樉绀�
formatStatus(row) {
- if (row.settle === 1) {
- return '姝e父';
- } else if (row.settle === 0) {
- return '绂佺敤';
- } else if (row.settle === 0) {
- return '绂佺敤';
- } else if (row.settle === 0) {
- return '绂佺敤';
- } else if (row.settle === 0) {
- return '绂佺敤';
+ if (row.settle === 10) {
+ return '寰呭鐞�';
+ } else if (row.settle === 11) {
+ return '妫�楠屼腑';
+ } else if (row.settle === 12) {
+ return '鍑哄簱涓�';
+ } else if (row.settle === 13) {
+ return '瀛樺湪涓嶅悎鏍�';
+ } else if (row.settle === 15) {
+ return '寰呬笂鎶�';
+ } else if (row.settle === 16) {
+ return '涓婃姤瀹屾垚';
+ } else if (row.settle === 17) {
+ return '涓婃姤澶辫触';
+ } else if (row.settle === 98) {
+ return '寮傚父';
+ } else if (row.settle === 99) {
+ return '搴熷純';
} else {
return row.settle || '鏈煡';
+ }
+ },
+
+ // 鏍煎紡鍖栫姸鎬佹樉绀�
+ formatStatusB(row) {
+ if (row.status === 0) {
+ return '寮傚父';
+ } else if (row.status === 1) {
+ return '涓嶄笂鎶�';
+ } else if (row.status === 2) {
+ return '寰呬笂鎶�';
+ } else if (row.status === 3) {
+ return '宸蹭笂鎶�';
+ } else {
+ return row.status || '鏈煡';
}
},
@@ -596,47 +731,133 @@
return '楼0.00';
},
- // 鏍煎紡鍖栨棩鏈熸樉绀�
- formatDate(dateStr) {
- if (!dateStr) return '';
- // 绠�鍗曠殑鏃ユ湡鏍煎紡鍖栵紝鍙互鏍规嵁瀹為檯鏍煎紡璋冩暣
- return dateStr;
- },
-
// 妯℃嫙涓昏〃鏁版嵁 - 瀹為檯椤圭洰涓簲鍒犻櫎
mockTableAData() {
this.tableDataA = [
{
- uuid: 'ZH1001',
+ itemName: 'zh20251110',
orderNo: 'ORDER2024001',
- cstmrName: '绀轰緥瀹㈡埛A',
- settle: 1,
+ cstmrName: 'zh20251110',
+ settle: 10,
totalFee: 1500.00,
- createTime: '2024-01-15 10:30:00',
- memo: '娴嬭瘯鏁版嵁'
- },
- {
- uuid: 'ZH1002',
- orderNo: 'ORDER2024002',
- cstmrName: '绀轰緥瀹㈡埛B',
- settle: 1,
- totalFee: 2300.50,
- createTime: '2024-01-16 14:20:00',
+ createTime: '2025-11-10T09:50:16.343+0000',
memo: '娴嬭瘯鏁版嵁'
}
];
- this.total = 2;
+ this.total = 1;
this.loading = false;
},
// 妯℃嫙瀛愯〃鏁版嵁 - 瀹為檯椤圭洰涓簲鍒犻櫎
- mockTableBData(uuid) {
+ mockTableBData(itemName) {
this.tableDataB = [
- { productName: `浜у搧A-${uuid}`, quantity: 2, price: 500.00, totalPrice: 1000.00 },
- { productName: `浜у搧B-${uuid}`, quantity: 1, price: 300.50, totalPrice: 300.50 }
+ {
+ matnr: '6渭m脳436mm',
+ batch: 'L241034114',
+ model: '24092501D01A6',
+ origin: '1',
+ danger: '1',
+ memo: '',
+ status: 1 // 鐘舵�佷负1锛屼細鏄剧ず淇敼鎸夐挳
+ }
];
- this.detailTotal = 2;
+ this.detailTotal = 1;
this.detailLoading = false;
+ },
+
+ // 涓鸿〃鏍煎垪娣诲姞鏍煎紡鍖栨柟娉�
+ formatDateColumn(row, column, cellValue) {
+ return this.formatDate(cellValue);
+ },
+
+
+
+ // // 鏍煎紡鍖栨棩鏈熸樉绀�
+ // formatDate(dateStr) {
+ // if (!dateStr) return '';
+ // // 绠�鍗曠殑鏃ユ湡鏍煎紡鍖栵紝鍙互鏍规嵁瀹為檯鏍煎紡璋冩暣
+ // return dateStr;
+ // },
+
+ // 鍦╒ue瀹炰緥鐨刴ethods涓坊鍔犳垨淇敼formatDate鏂规硶
+ formatDate(dateStr) {
+ if (!dateStr) return '';
+
+ try {
+ // 鍒涘缓Date瀵硅薄
+ const date = new Date(dateStr);
+
+ // 妫�鏌ユ棩鏈熸槸鍚︽湁鏁�
+ if (isNaN(date.getTime())) {
+ return dateStr; // 濡傛灉瑙f瀽澶辫触锛岃繑鍥炲師瀛楃涓�
+ }
+
+ // 鑾峰彇鍚勪釜鏃堕棿缁勪欢
+ const year = date.getFullYear();
+ const month = String(date.getMonth() + 1).padStart(2, '0');
+ const day = String(date.getDate()).padStart(2, '0');
+ const hours = String(date.getHours()).padStart(2, '0');
+ const minutes = String(date.getMinutes()).padStart(2, '0');
+ const seconds = String(date.getSeconds()).padStart(2, '0');
+
+ // 杩斿洖鏍煎紡鍖栧悗鐨勫瓧绗︿覆锛歒YYY-MM-DD HH:mm:ss
+ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
+ } catch (error) {
+ console.error('鏃ユ湡鏍煎紡鍖栭敊璇�:', error);
+ return dateStr; // 濡傛灉鍑洪敊锛岃繑鍥炲師瀛楃涓�
+ }
+ },
+
+//鏈湴鏃跺尯鐨勬椂闂�
+ formatDate2(dateStr) {
+ if (!dateStr) return '';
+
+ try {
+ const date = new Date(dateStr);
+
+ if (isNaN(date.getTime())) {
+ return dateStr;
+ }
+
+ // 浣跨敤鏈湴鏃跺尯
+ const year = date.getFullYear();
+ const month = String(date.getMonth() + 1).padStart(2, '0');
+ const day = String(date.getDate()).padStart(2, '0');
+ const hours = String(date.getHours()).padStart(2, '0');
+ const minutes = String(date.getMinutes()).padStart(2, '0');
+ const seconds = String(date.getSeconds()).padStart(2, '0');
+
+ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
+ } catch (error) {
+ console.error('鏃ユ湡鏍煎紡鍖栭敊璇�:', error);
+ return dateStr;
+ }
+ },
+ //淇濇寔UTC鏃堕棿浣嗚浆鎹负鏇存槗璇荤殑鏍煎紡
+ formatDate3(dateStr) {
+ if (!dateStr) return '';
+
+ try {
+ // 鐩存帴瑙f瀽瀛楃涓诧紝涓嶈浆鎹㈡椂鍖�
+ const date = new Date(dateStr);
+
+ if (isNaN(date.getTime())) {
+ return dateStr;
+ }
+
+ // 浣跨敤UTC鏃堕棿缁勪欢
+ const year = date.getUTCFullYear();
+ const month = String(date.getUTCMonth() + 1).padStart(2, '0');
+ const day = String(date.getUTCDate()).padStart(2, '0');
+ const hours = String(date.getUTCHours()).padStart(2, '0');
+ const minutes = String(date.getUTCMinutes()).padStart(2, '0');
+ const seconds = String(date.getUTCSeconds()).padStart(2, '0');
+
+ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
+ } catch (error) {
+ console.error('鏃ユ湡鏍煎紡鍖栭敊璇�:', error);
+ return dateStr;
+ }
}
}
});
--
Gitblit v1.9.1