| | |
| | | if (res.code === 200) { |
| | | tableData.value = res.data.records || [] |
| | | total.value = res.data.total || 0 |
| | | |
| | | |
| | | // 计算预警级别和状态 |
| | | tableData.value = tableData.value.map(item => { |
| | | const currentStock = parseFloat(item.inboundNum0 || item.currentStock || 0) |
| | | const warnNum = parseFloat(item.warnNum || 0) |
| | | const safetyStock = parseFloat(item.safetyStock || warnNum * 1.2) |
| | | |
| | | |
| | | // 计算预警级别 |
| | | if (currentStock <= 0) { |
| | | item.warningLevel = '紧急' |
| | |
| | | item.warningLevel = '' |
| | | item.warningStatus = '正常' |
| | | } |
| | | |
| | | |
| | | // 计算预计缺货时间(基于日均消耗量,这里简化处理) |
| | | if (item.warningStatus === '已预警' && currentStock > 0 && warnNum > 0) { |
| | | const dailyConsumption = warnNum / 30 // 假设30天消耗完最低库存 |
| | |
| | | item.expectedShortageTime = date.toISOString().split('T')[0] |
| | | } |
| | | } |
| | | |
| | | |
| | | item.currentStock = currentStock |
| | | item.safetyStock = safetyStock |
| | | |
| | | |
| | | return item |
| | | }) |
| | | } |
| | |
| | | const getStockClass = (row) => { |
| | | const currentStock = parseFloat(row.currentStock || row.inboundNum0 || 0) |
| | | const warnNum = parseFloat(row.warnNum || 0) |
| | | |
| | | |
| | | if (currentStock <= 0) { |
| | | return 'text-danger' |
| | | } else if (currentStock < warnNum) { |