zoukankan      html  css  js  c++  java
  • 处理oracle数据方式

    
                var renderDB = function(list) {
                    let {connectinfo, waitevent, sessioninfo} = list;
                    // 数据重组
                    let newArr = [];
                    for (let key in connectinfo) {
                        for (let j in sessioninfo) {
                            if (sessioninfo[j].instance_name == connectinfo[key].instance_name) {
                                connectinfo[key].sessioncount = sessioninfo[j].sessioncount;
                                connectinfo[key].SESSIONTHRESHOLD = sessioninfo[j].SESSIONTHRESHOLD;
                                connectinfo[key].sessioninfo_status = sessioninfo[j].AVAILABILITY_STATUS
                            }
                        }
    
                        let arr = [];
                        for (let i = 0; i < waitevent.length; i++) {
                            if (waitevent[i].instance_name == connectinfo[key].instance_name) {
                                let obj = {
                                    events: waitevent[i].events,
                                    cnt: waitevent[i].cnt,
                                    status: waitevent[i].AVAILABILITY_STATUS
                                };
                                arr.push(obj);
                            }
                        }
                        connectinfo[key].waitevent = arr;
                        newArr.push(connectinfo[key]);
                    }
    
                    // red部分提取 yellow部分提取
                    let errorArr = [];
                    let warnArr = [];
                    let succArr = [];
                    for (let kk in newArr) {
                        let isRed = false;
                        let isYellow = false;
    
                        if (newArr[kk].sessioninfo_status == 'red') {
                            isRed = true;
                        }
    
                        if (newArr[kk].dbstatus == 'died') {
                            isRed = true;
                        }
    
                        for (let i = 0; i < newArr[kk].waitevent.length; i++) {
                            if (newArr[kk].waitevent[i].status == 'red') {
                                isRed = true;
                            } else {
                                if (newArr[kk].waitevent[i].status == 'yellow') {
                                    isYellow = true;
                                }
                            }
                        }
    
                        if (isRed) {
                            newArr[kk].status = 'error';
                            errorArr.push(newArr[kk]);
                            //newArr.splice(kk, 1);
                        } else if (isYellow) {
                            newArr[kk].status = 'warn';
                            warnArr.push(newArr[kk]);
                            //newArr.splice(kk, 1);
                        } else {
                            succArr.push(newArr[kk]);
                                  }
          
    
    
     
    
    
    
                    }
    
                    let newArrs = errorArr.concat(warnArr,succArr);
                    console.log(newArrs);
    
                    renderHTML(newArrs);
                };
    
  • 相关阅读:
    Python进阶06 循环对象
    Python进阶05 循环设计
    Python进阶 函数的参数对应
    Python进阶01 词典
    Python基础 反过头来看看
    Python基础08 面向对象的基本概念
    利用zepto.js实现移动页面图片全屏滑动
    数组弃重方法
    fcc筆記
    文字颜色渐变效果
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13348727.html
Copyright © 2011-2022 走看看