| | |
| | | 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 |
| | | 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(Math.abs((today - date) / (1000 * 60 * 60 * 24))); |
| | | return { date, diffInDays }; |
| | | 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 daysSinceClosest = Math.ceil(Math.abs((today - closestDate) / (1000 * 60 * 60 * 24))); |
| | | return '<span style="color: #F56C6C">' + daysSinceClosest + "天" + '</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">' + "æ ä¿è´¨æ" + '</span>'; |
| | | return '<span style="color: #F56C6C">' + daysRemaining + "天" + '</span>'; |
| | | } |
| | | } else { |
| | | row.expiryDays = null; |
| | | return '<span style="color:rgb(24, 18, 18)">æ ä¿è´¨æ</span>'; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | if (column.field == 'sumStock') { |
| | | column.formatter = (row) => { |
| | |
| | | } |
| | | } |
| | | }) |
| | | this.columns.forEach((x) => { |
| | | if (x.field == 'materielInfo') { |
| | | x.cellStyle = (row, rowIndex, columnIndex) => { |
| | | if (row.palletCode == 'BCS20250225001') { |
| | | return { background: '#E6A23C' }; |
| | | } |
| | | }; |
| | | 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' }; // é»è²èæ¯ï¼ä¸´æï¼ |
| | | } |
| | | } |
| | | return {}; // é»è®¤æ èæ¯è² |
| | | }; |
| | | |
| | | |
| | | |
| | | |
| | | //å¦ææ ¹æ®è¡çæä¸ªå¼è®¾ç½®æ´è¡é¢è² |
| | | //设置æ´è¡èæ¯é¢è² |