SOURCE

function regionSort(d1, d2) {

    var sffqsyrate_1 = d1['sffqsyrate'];
    var sffqsyrate_2 = d2['sffqsyrate'];

    sffqsyrate_1 = sffqsyrate_1 == '-' ? -Infinity : Number(sffqsyrate_1);
    sffqsyrate_2 = sffqsyrate_2 == '-' ? -Infinity : Number(sffqsyrate_2);

    return sffqsyrate_2 - sffqsyrate_1;
}

function sffqsyrateSortAsc(d1, d2) {

    var sffqsyrate_1 = d1['sffqsyrate'];
    var sffqsyrate_2 = d2['sffqsyrate'];

    sffqsyrate_1 = sffqsyrate_1 == '-' ? -Infinity : Number(sffqsyrate_1);
    sffqsyrate_2 = sffqsyrate_2 == '-' ? -Infinity : Number(sffqsyrate_2);

    return sffqsyrate_1 - sffqsyrate_2;
}

function xqhkrateSortDesc(d1, d2) {

    var xqhkrate_1 = d1['xqhkrate'];
    var xqhkrate_2 = d2['xqhkrate'];

    xqhkrate_1 = xqhkrate_1 == '-' ? -Infinity : Number(xqhkrate_1);
    xqhkrate_2 = xqhkrate_2 == '-' ? -Infinity : Number(xqhkrate_2);

    return xqhkrate_2 - xqhkrate_1;
}

function xqhkrateSortAsc(d1, d2) {

    var xqhkrate_1 = d1['xqhkrate'];
    var xqhkrate_2 = d2['xqhkrate'];

    xqhkrate_1 = xqhkrate_1 == '-' ? -Infinity : Number(xqhkrate_1);
    xqhkrate_2 = xqhkrate_2 == '-' ? -Infinity : Number(xqhkrate_2);

    return xqhkrate_1 - xqhkrate_2;
}

function tdrateSortDesc(d1, d2) {

    var tdrate_1 = d1['tdrate'];
    var tdrate_2 = d2['tdrate'];

    tdrate_1 = tdrate_1 == '-' ? -Infinity : Number(tdrate_1);
    tdrate_2 = tdrate_2 == '-' ? -Infinity : Number(tdrate_2);

    return tdrate_2 - tdrate_1;
}

function tdrateSortAsc(d1, d2) {

    var tdrate_1 = d1['tdrate'];
    var tdrate_2 = d2['tdrate'];

    tdrate_1 = tdrate_1 == '-' ? -Infinity : Number(tdrate_1);
    tdrate_2 = tdrate_2 == '-' ? -Infinity : Number(tdrate_2);

    return tdrate_1 - tdrate_2;
}

function tfrateSortDesc(d1, d2) {

    var tfrate_1 = d1['tfrate'];
    var tfrate_2 = d2['tfrate'];

    tfrate_1 = tfrate_1 == '-' ? -Infinity : Number(tfrate_1);
    tfrate_2 = tfrate_2 == '-' ? -Infinity : Number(tfrate_2);

    return tfrate_2 - tfrate_1;
}

function tfrateSortAsc(d1, d2) {

    var tfrate_1 = d1['tfrate'];
    var tfrate_2 = d2['tfrate'];

    tfrate_1 = tfrate_1 == '-' ? -Infinity : Number(tfrate_1);
    tfrate_2 = tfrate_2 == '-' ? -Infinity : Number(tfrate_2);

    return tfrate_1 - tfrate_2;
}

function processData(columnStr, dataStr, paramStr) {
    var datas = JSON.parse(dataStr);
    var queryParams = JSON.parse(paramStr);
    var orders = JSON.stringify(queryParams['orders']);

    var order;
    if (orders != undefined) {
        orders = JSON.parse(orders);
        order = orders.length > 0 ? JSON.parse(JSON.stringify(orders[0])) : undefined;
    }

    if (order === undefined || (order['direction'] != 'asc' && order['direction'] != 'desc')) {
        datas.sort(regionSort);
    }

    if (order != undefined) {
        var column = order['column'];
        if (column == "`sffqsyrate`" && order['direction'] == 'asc') {
            datas.sort(sffqsyrateSortAsc);
        }

        if (column == "`sffqsyrate`" && order['direction'] == 'desc') {
            datas.sort(regionSort);
        }

        if (column == "`xqhkrate`" && order['direction'] == 'asc') {
            datas.sort(xqhkrateSortAsc);
        }

        if (column == "`xqhkrate`" && order['direction'] == 'desc') {
            datas.sort(xqhkrateSortDesc);
        }

        if (column == "`tdrate`" && order['direction'] == 'asc') {
            datas.sort(tdrateSortAsc);
        }

        if (column == "`tdrate`" && order['direction'] == 'desc') {
            datas.sort(tdrateSortDesc);
        }

        if (column == "`tfrate`" && order['direction'] == 'asc') {
            datas.sort(tfrateSortAsc);
        }

        if (column == "`tfrate`" && order['direction'] == 'desc') {
            datas.sort(tfrateSortDesc);
        }
    }

    return JSON.stringify(datas);
}
console 命令行工具 X clear

                    
>
console