SOURCE

console 命令行工具 X clear

                    
>
console
var list = [{"item_id":100001,"data_type":-1,"action":6,"amt":-36566,"ut":1814},{"item_id":100001,"data_type":-1,"action":22,"amt":-154366,"ut":2247},{"item_id":100001,"data_type":-1,"action":24,"amt":-67794,"ut":566},{"item_id":100001,"data_type":-1,"action":27,"amt":-1080,"ut":7},{"item_id":100001,"data_type":-1,"action":46,"amt":-622,"ut":20},{"item_id":100001,"data_type":-1,"action":47,"amt":-13,"ut":0},{"item_id":100001,"data_type":-1,"action":48,"amt":-1,"ut":0},{"item_id":100001,"data_type":-1,"action":50,"amt":-14,"ut":0},{"item_id":100001,"data_type":-1,"action":51,"amt":-447,"ut":8},{"item_id":100001,"data_type":-1,"action":53,"amt":-2,"ut":0},{"item_id":100001,"data_type":-1,"action":55,"amt":-3,"ut":0},{"item_id":100001,"data_type":-1,"action":56,"amt":-18296,"ut":609},{"item_id":100001,"data_type":-1,"action":57,"amt":-703,"ut":23},{"item_id":100001,"data_type":-1,"action":58,"amt":-5,"ut":0},{"item_id":100001,"data_type":-1,"action":60,"amt":-587,"ut":19},{"item_id":100001,"data_type":-1,"action":61,"amt":-14474,"ut":289},{"item_id":100001,"data_type":-1,"action":62,"amt":-71,"ut":1},{"item_id":100001,"data_type":-1,"action":65,"amt":-210,"ut":4},{"item_id":100001,"data_type":-1,"action":200,"amt":-248140,"ut":4434},{"item_id":100001,"data_type":1,"action":0,"amt":21038,"ut":42},{"item_id":100001,"data_type":1,"action":10,"amt":437953,"ut":234},{"item_id":100001,"data_type":1,"action":12,"amt":27079,"ut":36},{"item_id":100001,"data_type":1,"action":19,"amt":104,"ut":1},{"item_id":100001,"data_type":1,"action":28,"amt":16,"ut":0},{"item_id":100001,"data_type":1,"action":29,"amt":9,"ut":0},{"item_id":100001,"data_type":1,"action":31,"amt":23,"ut":0},{"item_id":100001,"data_type":1,"action":44,"amt":953,"ut":2},{"item_id":100001,"data_type":1,"action":201,"amt":54000,"ut":5},{"item_id":100002,"data_type":-1,"action":4,"amt":-802,"ut":20},{"item_id":100002,"data_type":-1,"action":5,"amt":-2335,"ut":155},{"item_id":100002,"data_type":-1,"action":9,"amt":-86230,"ut":242},{"item_id":100002,"data_type":-1,"action":15,"amt":-104,"ut":9},{"item_id":100002,"data_type":-1,"action":25,"amt":-553,"ut":5},{"item_id":100002,"data_type":-1,"action":26,"amt":-76,"ut":0},{"item_id":100002,"data_type":-1,"action":33,"amt":-704,"ut":23},{"item_id":100002,"data_type":-1,"action":38,"amt":-5718,"ut":1},{"item_id":100002,"data_type":-1,"action":45,"amt":0,"ut":0},{"item_id":100002,"data_type":1,"action":0,"amt":1262,"ut":42},{"item_id":100002,"data_type":1,"action":8,"amt":51643,"ut":145},{"item_id":100002,"data_type":1,"action":12,"amt":2108,"ut":36},{"item_id":100002,"data_type":1,"action":201,"amt":45162,"ut":26}];

var list2 = [{"item_id":101,"amt":9644,"ut":160},{"item_id":102,"amt":15130,"ut":50},{"item_id":103,"amt":9649,"ut":7},{"item_id":104,"amt":1850,"ut":0},{"item_id":105,"amt":498,"ut":0},{"item_id":201,"amt":0,"ut":0},{"item_id":202,"amt":4000,"ut":13},{"item_id":203,"amt":1398,"ut":1},{"item_id":204,"amt":175,"ut":0},{"item_id":205,"amt":925,"ut":0},{"item_id":301,"amt":0,"ut":0},{"item_id":302,"amt":0,"ut":0},{"item_id":303,"amt":3,"ut":0},{"item_id":304,"amt":267,"ut":5},{"item_id":305,"amt":0,"ut":0},{"item_id":306,"amt":184,"ut":0},{"item_id":307,"amt":0,"ut":0},{"item_id":308,"amt":0,"ut":0},{"item_id":309,"amt":584,"ut":0},{"item_id":310,"amt":41917,"ut":1}];

 var gold = _.filter(list, function (item) { return item.item_id == 100001 && item.data_type < 0 && item.action != 202 });
var diamond = _.filter(list, function (item) { return item.item_id == 100002 && item.data_type < 0 && item.action != 38 && item.action != 202 && item.action != 9 });

_.forEach(gold, function(item){
  item.amt /133;
});

_.forEach(diamond, function(item){
  item.amt /11;
});

var buyVipGetGolds = { 201: 0, 202: 2000, 203: 6000, 204: 12000, 205: 25000 };

var mergeCareers = { 34: 203, 35: 203, 36: 203, 37: 203, 46: 203, 47: 203, 48: 203, 49: 203, 50: 203, 51: 204, 52: 204, 53: 204, 54: 204, 55: 204, 56: 203, 57: 203, 58: 203, 59: 203, 60: 203, 61: 204, 62: 204, 63: 204, 64: 204, 65: 204 };

var store = _(list2)
					.groupBy(function(item){
            return 300+Math.floor(item.item_id/100);
          })
          .map((item, id) => ({
              d: id,
              amt: _.sumBy(item, 'amt'),
              ut: _.sumBy(item, 'ut')
          }))
					.value();

var getGolds = _(list2)
							.sumBy(function(item){
                if (_.has(buyVipGetGolds, item.item_id)){
                  return buyVipGetGolds[item.item_id.toString()];
                }else return 0;
              });

var careers = _(list)
							.groupBy(function(item){
                if (_.has(mergeCareers, item.action)){
                  return mergeCareers[item.action];
                }
              })
							.map((item, id) => ({
              	action: _.toInteger(id),
                amt: _.sumBy(item, 'amt'),
                ut: _.sumBy(item, 'ut')
            	}))
							.reject({"action":0})
							.value();

gold = _.reject(gold, function(item){
  return _.has(mergeCareers, item.action);
})

diamond = _.reject(diamond, function(item){
  return _.has(mergeCareers, item.action);
})

$("#output").html(JSON.stringify(_.concat(gold, diamond, careers)))
<div id="output"></div>

本项目引用的自定义外部资源