Skip to content

Instantly share code, notes, and snippets.

@mactive
Created August 24, 2015 10:49
Show Gist options
  • Save mactive/6820549d079a29d63177 to your computer and use it in GitHub Desktop.
Save mactive/6820549d079a29d63177 to your computer and use it in GitHub Desktop.
Promise Sequences
cityList = [
{key: "610100", label:"西安", daLabel:"西安市",region:"华南"},
{key: "130100", label:"石家庄", daLabel:"石家庄市",region:"华南"},
{key: "350200", label:"厦门", daLabel:"厦门市",region:"华南"},
{key: "410100", label:"郑州", daLabel:"郑州市",region:"华南"},
{key: "440600", label:"佛山", daLabel:"佛山市",region:"华南"},
{key: "350100", label:"福州", daLabel:"福州市",region:"华南"},
{key: "440100", label:"广州", daLabel:"广州市",region:"华南"},
{key: "230100", label:"哈尔滨", daLabel:"哈尔滨市",region:"华南"},
{key: "110100", label:"北京", daLabel:"北京市",region:"华南"},
{key: "120100", label:"天津", daLabel:"天津市",region:"华南"},
{key: "440300", label:"深圳", daLabel:"深圳市",region:"华南"},
{key: "340100", label:"合肥", daLabel:"合肥市",region:"华东"},
{key: "210100", label:"沈阳", daLabel:"沈阳市",region:"华东"},
{key: "310100", label:"上海", daLabel:"上海市",region:"华东"},
{key: "330100", label:"杭州", daLabel:"杭州市",region:"华东"},
{key: "320500", label:"苏州", daLabel:"苏州市",region:"华东"},
{key: "320200", label:"无锡", daLabel:"无锡市",region:"华东"},
{key: "210200", label:"大连", daLabel:"大连市",region:"华东"},
{key: "330200", label:"宁波", daLabel:"宁波市",region:"华东"},
{key: "330300", label:"温州", daLabel:"温州市",region:"华东"},
{key: "370100", label:"济南", daLabel:"济南市",region:"华东"},
{key: "441900", label:"东莞", daLabel:"东莞市",region:"华东"},
{key: "510100", label:"成都", daLabel:"成都市",region:"西南"},
{key: "500100", label:"重庆", daLabel:"重庆市",region:"西南"},
{key: "150100", label:"呼和浩特", daLabel:"呼和浩特市",region:"西南"},
{key: "530100", label:"昆明", daLabel:"昆明市",region:"西南"},
{key: "450100", label:"南宁", daLabel:"南宁市",region:"西南"},
{key: "420100", label:"武汉", daLabel:"武汉市",region:"西南"},
{key: "430100", label:"长沙", daLabel:"长沙市",region:"西南"},
{key: "150200", label:"包头", daLabel:"包头市",region:"西南"},
{key: "220100", label:"长春", daLabel:"长春市",region:"西南"}
]
module.exports = cityList
mongoose = require("mongoose")
fs = require("fs")
csv = require('csv-parser')
moment = require("moment")
http = require("http")
#internal package
cityList = require("./cityList")
Promise = require('promise')
websites = ["all","58.com", "ganji.com", "taoche.com", "che168.com", "baixing.com"]
getCitySendRate = (website,cityDaName,region)->
url = "http://da.kanche.com/da/promotion_center/vehicle_with_sharjob/promote?begin=2015-07-25&end=2015-08-24"
url += "&cityLevel=one&contracted=true&timeLevel=day"
url += "&city="+ encodeURIComponent(cityDaName) + "&website="+website
p = new Promise((resolve,reject)->
http.get(url,(res)->
data = ''
res.on('data', (chunk)->
data += chunk
# console.log data.length
)
res.on('end',()->
array = JSON.parse(data)
# 汇总
summary =
city:cityDaName
shareSuccessCount : 0
shareCount : 0
array.forEach((item)->
sendSuccessRate = item.shareSuccessCount/item.shareCount
# console.log item.city, item.time, sendSuccessRate.toFixed(2)
summary.shareSuccessCount += item.shareSuccessCount
summary.shareCount += item.shareCount
)
sendSuccessRate = summary.shareSuccessCount/summary.shareCount
result_text = region+","+summary.city+","+sendSuccessRate.toFixed(2)
# console.log result_text 都是这里搞的鬼
resolve result_text
)
)
)
result = {
"华南":0
"华东":0
"西南":0
}
pList = []
cityList.map((item)->
console.log 'item',item.label
temp = getCitySendRate('all',item.daLabel,item.region)
pList.push(temp)
)
Promise.all(
pList
).then((resolve)->
console.log 'allDone'
console.log resolve
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment