SOURCE

var biaoyangStr =[{"id":1,"company":"两湖街道办","duChaCompany":"县委县政府督查局"},{"id":2,"company":"两湖街道办","duChaCompany":"县委县政府督查局"},{"id":3,"company":"水坡镇","duChaCompany":"县委县政府督查局"},{"id":4,"company":"门楼任乡","duChaCompany":"县委县政府督查局"},{"id":5,"company":"先进制造业开发区","duChaCompany":"县委县政府督查局"},{"id":6,"company":"县委办","duChaCompany":"县委县政府督查局"},{"id":7,"company":"政府办","duChaCompany":"县委县政府督查局"},{"id":8,"company":"检察院","duChaCompany":"县委县政府督查局"},{"id":9,"company":"县社","duChaCompany":"县委县政府督查局"},{"id":10,"company":"纪委","duChaCompany":"县委县政府督查局"},{"id":11,"company":"宣传部","duChaCompany":"县委县政府督查局"},{"id":12,"company":"农业农村局","duChaCompany":"县委县政府督查局"},{"id":13,"company":"农业农村局","duChaCompany":"县委县政府督查局"},{"id":14,"company":"农业农村局","duChaCompany":"县委县政府督查局"},{"id":15,"company":"农业农村局","duChaCompany":"县委县政府督查局"},{"id":16,"company":"水利局","duChaCompany":"县委县政府督查局"},{"id":17,"company":"科工信局","duChaCompany":"县委县政府督查局"},{"id":18,"company":"科工信局","duChaCompany":"县委县政府督查局"},{"id":19,"company":"商务局","duChaCompany":"县委县政府督查局"},{"id":20,"company":"商务局","duChaCompany":"县委县政府督查局"},{"id":21,"company":"市场监管局","duChaCompany":"县委县政府督查局"},{"id":22,"company":"市场监管局","duChaCompany":"县委县政府督查局"},{"id":23,"company":"发改委","duChaCompany":"县委县政府督查局"},{"id":24,"company":"发改委","duChaCompany":"县委县政府督查局"},{"id":25,"company":"重点项目办","duChaCompany":"县委县政府督查局"},{"id":26,"company":"住建局","duChaCompany":"县委县政府督查局"},{"id":27,"company":"自然资源局","duChaCompany":"县委县政府督查局"},{"id":28,"company":"生态环境局","duChaCompany":"县委县政府督查局"},{"id":29,"company":"人社局","duChaCompany":"县委县政府督查局"},{"id":30,"company":"统计局","duChaCompany":"县委县政府督查局"},{"id":31,"company":"统计局","duChaCompany":"县委县政府督查局"},{"id":32,"company":"统计局","duChaCompany":"县委县政府督查局"},{"id":33,"company":"财政局","duChaCompany":"县委县政府督查局"},{"id":34,"company":"税务局","duChaCompany":"县委县政府督查局"},{"id":35,"company":"人行","duChaCompany":"县委县政府督查局"},{"id":36,"company":"教体局","duChaCompany":"县委县政府督查局"},{"id":37,"company":"教体局","duChaCompany":"县委县政府督查局"},{"id":38,"company":"教体局","duChaCompany":"县委县政府督查局"},{"id":39,"company":"教体局","duChaCompany":"县委县政府督查局"},{"id":40,"company":"文广旅局","duChaCompany":"县委县政府督查局"},{"id":41,"company":"卫健委","duChaCompany":"县委县政府督查局"},{"id":42,"company":"市场发展中心","duChaCompany":"县委县政府督查局"},{"id":43,"company":"交通运输局","duChaCompany":"县委县政府督查局"},{"id":44,"company":"交通运输局","duChaCompany":"县委县政府督查局"},{"id":45,"company":"金融工作局","duChaCompany":"县委县政府督查局"},{"id":46,"company":"汽车站","duChaCompany":"县委县政府督查局"},{"id":47,"company":"人民医院","duChaCompany":"县委县政府督查局"},{"id":48,"company":"团委","duChaCompany":"县委县政府督查局"},{"id":49,"company":"尉氏第三高级中学","duChaCompany":"县委县政府督查局"},{"id":50,"company":"尉氏第二高级中学","duChaCompany":"县委县政府督查局"}]



var pipingStr = [{"id":1,"company":"两湖街道办","duChaCompany":"县委县政府督查局"},{"id":2,"company":"两湖街道办","duChaCompany":"市委督查局"},{"id":3,"company":"邢庄乡","duChaCompany":"县委县政府督查局"},{"id":4,"company":"邢庄乡","duChaCompany":"县委县政府督查局"},{"id":5,"company":"深改办","duChaCompany":"县委县政府督查局"},{"id":6,"company":"检察院","duChaCompany":"县委县政府督查局"},{"id":7,"company":"信访局","duChaCompany":"县委县政府督查局"},{"id":8,"company":"巡察办","duChaCompany":"县委县政府督查局"},{"id":9,"company":"审计局","duChaCompany":"县委县政府督查局"},{"id":10,"company":"科工信局","duChaCompany":"县委县政府督查局"},{"id":11,"company":"商务局","duChaCompany":"县委县政府督查局"},{"id":12,"company":"城管局","duChaCompany":"县委县政府督查局"},{"id":13,"company":"生态环境局","duChaCompany":"县委县政府督查局"},{"id":14,"company":"人行","duChaCompany":"县委县政府督查局"},{"id":15,"company":"银监办","duChaCompany":"县委县政府督查局"},{"id":16,"company":"公安局","duChaCompany":"县委县政府督查局"},{"id":17,"company":"邮政公司","duChaCompany":"县委县政府督查局"},{"id":18,"company":"国寿财险","duChaCompany":"县委县政府督查局"},{"id":19,"company":"农发行","duChaCompany":"县委县政府督查局"},{"id":20,"company":"人保公司","duChaCompany":"县委县政府督查局"},{"id":21,"company":"社保局","duChaCompany":"县委县政府督查局"},{"id":22,"company":"太平洋财险","duChaCompany":"县委县政府督查局"}]




ResultData = function (id, company, cityAdmirTimes, areaAdmirTimes, admirMoney,
    cityPipingTimes, areaPipingTimes, pipingMoney) {
    this.id = id;
    this.company = company;
    this.cityAdmirTimes = cityAdmirTimes;
    this.areaAdmirTimes = areaAdmirTimes;
    this.admirMoney = admirMoney;
    this.cityPipingTimes = cityPipingTimes;
    this.areaPipingTimes = cityPipingTimes;
    this.pipingMoney = pipingMoney;
}

var resultDatas = new Array;


//这里开始是处理表彰的
var admirDatas = biaoyangStr;

var cityTimes = 0, areaTimes = 0, itemId = 1, cityMultiple = 1.0, areaMultiple = 0.5;
for (var i = 0; i < admirDatas.length; i++) {
    //这里是确定到底是市局还是县局
    if (admirDatas[i].duChaCompany == "县委县政府督查局"
     || "县委督查局委员会"  == admirDatas[i].duChaCompany ) {
        areaTimes++;
    } else {
        cityTimes++;
    }

    var resultdata = {
        id: itemId,
        company: admirDatas[i].company,
        cityAdmirTimes: cityTimes,
        areaAdmirTimes: areaTimes,
        admirMoney: 0,
        cityPipingTimes: 0,
        areaPipingTimes: 0,
        pipingMoney: 0
    };



    //将第一个item添加到结果数组中
    if (i == 0) {
        resultDatas.push(resultdata);
    } else if (i > 0) {
        if (admirDatas[i].company == admirDatas[i - 1].company) {
            resultDatas[resultDatas.length - 1] = resultdata;
        } else {

            //将奖励次数置空
            if (admirDatas[i].duChaCompany == "县委县政府督查局"
     || "县委督查局委员会"  == admirDatas[i].duChaCompany ) {
                areaTimes = 1;
                cityTimes = 0;
            } else {
                areaTimes = 0;
                cityTimes = 1;
            }
            resultdata.cityAdmirTimes = cityTimes;
            resultdata.areaAdmirTimes = areaTimes;

            //这里是将新的item加上去
            itemId++;
            resultdata.id = itemId;
            resultDatas.push(resultdata);


            //这里计算前一个奖惩了多少钱
            var cityTime = resultDatas[resultDatas.length - 2].cityAdmirTimes;
            var areaTime = resultDatas[resultDatas.length - 2].areaAdmirTimes;

            var admirMoney = cityTime * cityMultiple + areaMultiple * areaTime;
            resultDatas[resultDatas.length - 2].admirMoney = admirMoney;
        }
    }
}

//这里计算最后一个奖惩了多少钱
var cityTime = resultDatas[resultDatas.length - 1].cityAdmirTimes;
var areaTime = resultDatas[resultDatas.length - 1].areaAdmirTimes;

var admirMoney = cityTime * cityMultiple + areaMultiple * areaTime;
resultDatas[resultDatas.length - 1].admirMoney = admirMoney;





///////////////////////////我是华丽的分割线/////////////////////////////////
var criticismDatas = pipingStr;

for (var i = 0; i < resultDatas.length; i++) {
    var itemData = resultDatas[i];
    var cityTimes = 0, areaTimes = 0;
    var currentName = "";
    var haveItem = false;
    for (var j = 0; j < criticismDatas.length; j++) {
        var companyName = criticismDatas[j].company;
        if (criticismDatas[j].company == resultDatas[i].company) {
            haveItem = true;
            if (criticismDatas[j].duChaCompany == "县委县政府督查局"
     || "县委督查局委员会"  == admirDatas[i].duChaCompany ) {
                areaTimes++;
            } else {
                cityTimes++;
            }
        }

        if (j == criticismDatas.length - 1) {
            if (haveItem) {
                resultDatas[i].cityPipingTimes = cityTimes;
                resultDatas[i].areaPipingTimes = areaTimes;
                resultDatas[i].pipingMoney = cityTimes * -1.0 + areaTimes * -0.5;
                haveItem = false;
            } else {

                // itemId++;
                // var resultdata = {
                //     id: itemId,
                //     company: companyName,
                //     cityAdmirTimes: 0,
                //     areaAdmirTimes: 0,
                //     admirMoney: 0,
                //     cityPipingTimes: cityTimes,
                //     areaPipingTimes: areaTimes,
                //     pipingMoney: 0
                // };
                // resultDatas.push(resultdata);
            }

            cityTimes = 0, areaTimes = 0;
        }
    }
}

//定义一个pipingDatas,让它获取到resultdata里面没有的项
var pipingDatas = new Array;
for (var i = 0; i < criticismDatas.length; i++) {
    for (var j = 0; j < resultDatas.length; j++) {
        var isExist = false;
        if (criticismDatas[i].company == resultDatas[j].company) {
            isExist = true;
            break;
        }

        if (j == resultDatas.length - 1 && !isExist) {
            pipingDatas.push(criticismDatas[i]);

        }
    }
}

for (var i = 0; i < pipingDatas.length; i++) {
    for (var j = i; j < resultDatas.length; j++) {
        if (pipingDatas[i].company == resultDatas[j].company) {
            if (pipingDatas[i].duChaCompany == "县委县政府督查局"
     || "县委督查局委员会"  == admirDatas[i].duChaCompany ) {
                resultDatas[j].areaPipingTimes = resultDatas[j].areaPipingTimes + 1;
            } else {
                resultDatas[j].cityPipingTimes = resultDatas[j].cityPipingTimes + 1;
            }

            break;
        }

        if (j == resultDatas.length - 1) {
            var cityTimes = 0, areaTimes = 0;
            if (pipingDatas[i].duChaCompany == "县委县政府督查局"
     || "县委督查局委员会"  == admirDatas[i].duChaCompany ) {
                areaTimes++;
            } else {
                cityTimes++;
            }


            itemId++;
            //这里我也不知道为什么,反正就是要剪一个数
            if(cityTimes>0){
                cityTimes -- 
            }
            if(areaTimes >0){
                areaTimes --
            }

            var resultdata = {
                id: itemId,
                company: pipingDatas[i].company,
                cityAdmirTimes: 0,
                areaAdmirTimes: 0,
                admirMoney: 0,
                cityPipingTimes: cityTimes,
                areaPipingTimes: areaTimes,
                pipingMoney: 0
            };
            resultDatas.push(resultdata);
            areaTimes = 0, citytimes = 0;
        }
    }
}


// for (var i = 0; i < resultDatas.length; i++) {
//     document.write(
//         resultDatas[i].id + " " + resultDatas[i].company + " " +
//         resultDatas[i].cityAdmirTimes + " " + resultDatas[i].areaAdmirTimes + " " +
//         resultDatas[i].admirMoney + " " +
//         resultDatas[i].cityPipingTimes + " " + resultDatas[i].areaPipingTimes + " " +
//         resultDatas[i].pipingMoney + "</br>");
// }

 document.write(
      JSON.stringify( resultDatas ))



console 命令行工具 X clear

                    
>
console