From cb25acc46bf41863e068b6f968f1592b7a14d1c9 Mon Sep 17 00:00:00 2001 From: helongyang <647556386@qq.com> Date: 星期六, 13 九月 2025 08:12:14 +0800 Subject: [PATCH] 功能更新优化 --- 代码管理/WMS/WIDESEA_WMSClient/src/extension/stock/stockView.js | 139 ++++++++++++++++++++++++---------------------- 1 files changed, 73 insertions(+), 66 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockView.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockView.js" index 1b2540a..5a7c805 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockView.js" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockView.js" @@ -1,4 +1,3 @@ - //姝s鏂囦欢鏄敤鏉ヨ嚜瀹氫箟鎵╁睍涓氬姟浠g爜锛屽彲浠ユ墿灞曚竴浜涜嚜瀹氫箟椤甸潰鎴栬�呴噸鏂伴厤缃敓鎴愮殑浠g爜 import { el } from "element-plus/es/locales.mjs"; @@ -20,22 +19,19 @@ //涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄� onInit() { - // let InOrder = this.buttons.find(x => x.value == 'StockOutbound'); - // if (InOrder) { - // InOrder.onClick = function () { - // let rows = this.$refs.table.getSelected(); - // if (rows.length == 0) return this.$error("璇烽�夋嫨鏁版嵁!"); - // if (rows.length > 1) return this.$error("璇烽�夋嫨鍗曟潯鏁版嵁!"); - // var keys = rows.map(x => { return x.stockId }); - // this.http - // .post("api/Task/Outbound?id="+keys[0], null, "鏁版嵁澶勭悊涓�") - // .then((x) => { - // if (!x.status) return this.$message.error(x.message); - // this.$message.success("鎿嶄綔鎴愬姛"); - // this.refresh(); - // }); - // } - // } + let SelectTake = this.buttons.find(x => x.value == 'SelectStockTake'); + if (SelectTake) { + SelectTake.onClick = function () { + let stockViews = this.$refs.table.getSelected(); + this.http + .post("api/Task/TakeOutbound",stockViews, "鏁版嵁澶勭悊涓�") + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.$message.success("鎿嶄綔鎴愬姛"); + this.refresh(); + }); + } + } this.columns.forEach(column => { if (column.field == 'materielCode') { column.formatter = (row) => { @@ -57,36 +53,58 @@ return str = list[0] == "" ? "鏃�" : str; } } - if (column.field == 'materielInfo') { - const today = new Date() - column.formatter = (row) => { - if (row.details.length > 0) { - const today = new Date(); - const closestDate = row.details - .map(x => { - const date = new Date(x.effectiveDate); - const diffInDays = Math.ceil((date - today) / (1000 * 60 * 60 * 24)); // 鏀逛负璁$畻鍓╀綑澶╂暟 - return { date, diffInDays }; - }) - .reduce((closest, current) => (current.diffInDays < closest.diffInDays ? current : closest)) - .date; + if (column.field == 'materielInfo') { + const today = new Date() + column.formatter = (row) => { + if (row.details.length > 0) { + const today = new Date(); + const closestDate = row.details + .map(x => { + const date = new Date(x.effectiveDate); + const diffInDays = Math.ceil((date - today) / (1000 * 60 * 60 * 24)); // 鏀逛负璁$畻鍓╀綑澶╂暟 + return { date, diffInDays }; + }) + .reduce((closest, current) => (current.diffInDays < closest.diffInDays ? current : closest)) + .date; - const daysRemaining = Math.ceil((closestDate - today) / (1000 * 60 * 60 * 24)); - - row.expiryDays = daysRemaining; - - if (daysRemaining <= 0) { - return '<span style="color:rgb(30, 27, 27)">鏃犱繚璐ㄦ湡</span>'; + const daysRemaining = Math.ceil((closestDate - today) / (1000 * 60 * 60 * 24)); + + row.expiryDays = daysRemaining; + + if (daysRemaining <= 0) { + return '<span style="color:rgb(30, 27, 27)">鏃犱繚璐ㄦ湡</span>'; + } else { + return '<span style="color: #F56C6C">' + daysRemaining + "澶�" + '</span>'; + } } else { - return '<span style="color: #F56C6C">' + daysRemaining + "澶�" + '</span>'; + row.expiryDays = null; + return '<span style="color:rgb(24, 18, 18)">鏃犱繚璐ㄦ湡</span>'; } - } else { - row.expiryDays = null; - return '<span style="color:rgb(24, 18, 18)">鏃犱繚璐ㄦ湡</span>'; - } - } + } + } - + if (column.field == 'inventoryage') { + const today = new Date() + column.formatter = (row) => { + if (row.details.length > 0) { + const closestDate = row.details + .map(x => { + const date = new Date(x.createDate); + const ageInDays = Math.ceil((today - date) / (1000 * 60 * 60 * 24)); + return { date, ageInDays }; + }) + .reduce((closest, current) => (current.ageInDays < closest.ageInDays ? current : closest)) + .date; + + const inventoryAge = Math.ceil((today - closestDate) / (1000 * 60 * 60 * 24)); + + row.inventoryAge = inventoryAge; + + return `${inventoryAge} 澶ー; + } + // 濡傛灉娌℃湁鏄庣粏锛岃繑鍥炵┖鎴栨彁绀轰俊鎭� + return '-'; + } } if (column.field == 'sumStock') { column.formatter = (row) => { @@ -96,9 +114,9 @@ .map(x => { sum += (x.stockQuantity) }) - return '<span style="color: #F56C6C">' + sum.toFixed(3) + row.details[0].unit + '</span>'; + return '<span style="color: rgb(24, 18, 18)">' + sum.toFixed(3) + row.details[0].unit + '</span>'; } else { - return '<span style="color: #F56C6C">' + "1涓�" + '</span>'; + return '<span style="color: rgb(24, 18, 18)">' + "1涓�" + '</span>'; } } @@ -106,28 +124,17 @@ }) this.columns.forEach((column) => { column.cellStyle = (row) => { - // 鍙鐞嗘湁淇濊川鏈熸暟鎹殑鎯呭喌 - if (row.expiryDays !== null && row.expiryDays !== undefined) { - if (row.expiryDays <= 0) { - return { background: 'red' }; // 绾㈣壊鑳屾櫙锛堝凡杩囨湡锛� - } else if (row.expiryDays <= 30) { - return { background: 'yellow' }; // 榛勮壊鑳屾櫙锛堜复鏈燂級 + if (row.expirationlabel !== undefined && row.expirationlabel !== null) { + if (row.expirationlabel === 2) { + return { background: 'yellow' }; + } else if (row.expirationlabel === 3) { + return { background: '#ffc0cb' }; } - } - return {}; // 榛樿鏃犺儗鏅壊 - }; + } + return {}; + }; + }); - - - - //濡傛灉鏍规嵁琛岀殑鏌愪釜鍊艰缃暣琛岄鑹� - //璁剧疆鏁磋鑳屾櫙棰滆壊 - // x.cellStyle = (row, rowIndex, columnIndex) => { - // if (row.ProductCode == '10044464880643') { - // return { background: '#ddecfd' }; - // } - // }; - }); }, onInited() { //妗嗘灦鍒濆鍖栭厤缃悗 @@ -175,4 +182,4 @@ } } }; -export default extension; +export default extension; \ No newline at end of file -- Gitblit v1.9.3