SOURCE

function regionSort(d1, d2) {
    var index1 = d1['顺序'] || 0;
    var index2 = d2['顺序'] || 0;
    return index1 - index2;
}

function wclSortDesc(d1, d2) {

    var day_wcl_1 = d1['day_wcl'];
    var day_wcl_2 = d2['day_wcl'];

    day_wcl_1 = day_wcl_1 == '-' ? -Infinity : Number(day_wcl_1);
    day_wcl_2 = day_wcl_2 == '-' ? -Infinity : Number(day_wcl_2);

    return day_wcl_2 - day_wcl_1;
}

function wclSortAsc(d1, d2) {

    var day_wcl_1 = d1['day_wcl'];
    var day_wcl_2 = d2['day_wcl'];

    day_wcl_1 = day_wcl_1 == '-' ? -Infinity : Number(day_wcl_1);
    day_wcl_2 = day_wcl_2 == '-' ? -Infinity : Number(day_wcl_2);

    return day_wcl_1 - day_wcl_2;
}

function processData(columnStr, dataStr, paramStr) {
    var datas = JSON.parse(dataStr);
    var queryParams = JSON.parse(paramStr);
    var params = JSON.stringify(queryParams['params']);
    params = JSON.parse(params);
    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;
    }

    var dateType = 'D';
    var dateTypeValue = 'day';
    for (var i = 0; i < params.length; i++) {
        var param = params[i];
        if ("dateType" == param['name']) {
            dateType = param['value'];
        }
    }

    switch (dateType) {
        case 'M':
            dateTypeValue = 'month';
            break;
        case 'Y':
            dateTypeValue = 'year';
            break;
        default:
            break;
    }

    for (var i = 0; i < datas.length; i++) {
        var d = datas[i];

        // 认购达成
        var rgdzj_month = d['rgdzj_month'];
        var rgdzj_year = d['rgdzj_year'];

        // 签约达成
        var qyzj_month = d['qyzj_month'];
        var qyzj_year = d['qyzj_year'];

        // 认购套数
        var rgts_month = d['rgts_month'];
        var rgts_year = d['rgts_year'];

        // 签约套数
        var qyts_month = d['qyts_month'];
        var qyts_year = d['qyts_year'];

        // 指标完成率
        var month_wcl = d['month_wcl'];
        var year_wcl = d['year_wcl'];

        switch (dateType) {
            case 'Y':
                d['rgdzj_day'] = rgdzj_year;
                d['qyzj_day'] = qyzj_year;
                d['rgts_day'] = rgts_year;
                d['qyts_day'] = qyts_year;
                d['day_wcl'] = year_wcl;
                break;
            case 'M':
                d['rgdzj_day'] = rgdzj_month;
                d['qyzj_day'] = qyzj_month;
                d['rgts_day'] = rgts_month;
                d['qyts_day'] = qyts_month;
                d['day_wcl'] = month_wcl;
                break;
            default:
                break;
        }
    }

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

    if (order != undefined) {
        var column = order['column'];
        if (column == "`" + dateTypeValue + "_wcl`" && order['direction'] == 'asc') {
            datas.sort(wclSortAsc);
        }

        if (column == "`" + dateTypeValue + "_wcl`" && order['direction'] == 'desc') {
            datas.sort(wclSortDesc);
        }
    }

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

                    
>
console