const system_alarm_data = [] const arr_alarm = [] const pageSize = 12 alarm_number = 0 last_time = 0 let addedAlarmdsMap = new Map(); function systemAlarm(alarmd_data) { data_alarm = alarm_process(alarmd_data) data_length = data_alarm.length const totalPage = Math.ceil(data_length / pageSize) renderPage(totalPage,data_alarm) last_time = alarm_time } function translate_time(time) { const timestamp = time; const date = new Date(timestamp); 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'); const readableDate = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; return readableDate } function renderPage(totalPage,data_alarm) { const dataList = document.getElementById('system_alarm'); const pageNumber = 1 dataList.innerHTML = ''; alarm_data_length = data_alarm.length const startIndex = (pageNumber - 1) * pageSize; const endIndex = Math.min(startIndex + pageSize, alarm_data_length); for (let i = startIndex; i < endIndex; i++) { ch = data_alarm[i].ch data_number = system_alarm_data.length const listItem = document.createElement('tr'); dataList.appendChild(listItem); //自动生成告警信息编号 const alarm_numbers = document.createElement('td'); alarm_numbers.textContent = data_alarm[i].id dataList.appendChild(alarm_numbers); //自动生成告警通道 const alarm_number_td = document.createElement('td'); alarm_number_td.textContent = "CH"+ch dataList.appendChild(alarm_number_td); //自动生成告警时间 const alarm_time_td = document.createElement('td'); alarm_time = translate_time(data_alarm[i].time) alarm_time_td.textContent = alarm_time dataList.appendChild(alarm_time_td); //自动生成告警内容 c_u = data_alarm[i].c_upper v_u = data_alarm[i].v_upper v_l = data_alarm[i].v_lower p_u = data_alarm[i].p_upper w_u = data_alarm[i].w_upper const alarm_title_td = document.createElement('td'); if( c_u == 1) { alarm_title_td.textContent = "通道CH"+ ch +"电流已超上限" } if( v_u == 1) { alarm_title_td.textContent = "通道CH"+ ch +"电压已超上限" } if( v_l == 1) { alarm_title_td.textContent = "通道CH"+ ch +"电压已超下限" } if(p_u == 1) { alarm_title_td.textContent = "通道CH"+ ch +"功率已超上限" } if(w_u == 1) { alarm_title_td.textContent = "通道CH"+ ch +"耗电量已超上限" } alarm_title_td.style.width = '200px' dataList.appendChild(alarm_title_td); } renderPagination(totalPage); } function renderPagination(totalPage) { const page3_pagination = document.getElementById('page3_pagination') page3_pagination.innerHTML = ''; for (let i = 1; i <= totalPage; i++) { const button = document.createElement('button'); button.textContent = i; button.addEventListener('click', () => renderPage(i)); page3_pagination.appendChild(button); } }