MCPcopy
hub / github.com/gongjunhao/seckill / processTask

Function processTask

src/js/background.js:26–100  ·  view source on GitHub ↗

* 每隔500ms去检查任务,异步处理任务

(standerTime)

Source from the content-addressed store, hash-verified

24 * 每隔500ms去检查任务,异步处理任务
25 */
26function processTask(standerTime) {
27 console.log("后端开启轮休任务!");
28 var timer = setInterval(function () {
29 standerTime += 500;
30 chrome.storage.local.get({"tasks": new Array()}, function(value) {
31 tasks = value.tasks;
32 if(tasks != undefined && tasks.length > 0) {
33 for(var i=0; i<tasks.length; i++) {
34
35 if(tasks[i].status == 0) {
36 if((new Date(tasks[i].killTime) - standerTime) >= tickTime && (new Date(tasks[i].killTime) - standerTime) <= (tickTime+600)){
37 console.log(formatDateTime(new Date(tasks[i].killTime).getTime()));
38 var task = tasks[i];
39 //秒杀开始提醒(检查是否打开相关标签页)没有提示打开
40 chrome.tabs.query({url: task.url}, function(results) {
41 if (results.length == 0) {
42 chrome.notifications.create("openLinkNotify-"+task.id, {
43 type: "basic",
44 iconUrl: "image/link.png",
45 title: "秒杀助手提醒",
46 message: task.name + "\n任务将在2分钟后开始,抢购页面尚未打开,是否前往相关页面!",
47 buttons: [{ title: "打开抢购页面" }, { title: "忽略" }]
48 });
49 } else {
50 var noActive = true;
51 for(var j=0; j<results.length; j++){
52 if(results[j].active){
53 noActive = false;
54 }
55 }
56 if(noActive){ //已经打开但是未激活
57 chrome.notifications.create("activeTabNotify-"+task.id, {
58 type: "basic",
59 iconUrl: "image/bell.png",
60 title: "秒杀助手提醒",
61 message: task.name + "\n将在2分钟后开始,请检查登录及商品规格选择验证码等!",
62 buttons: [{ title: "切换Tab抢购页面" }, { title: "忽略" }]
63 });
64 } else { //已经打开且激活
65 var opt = { type: "basic", title: "秒杀助手提醒", message: task.name + "\n将在2分钟后开始,请检查登录及商品规格选择验证码等!", iconUrl: "image/bell.png"};
66 chrome.notifications.create(dialogId+++"", opt);
67 }
68 }
69 });
70 }
71 if((new Date(tasks[i].killTime) - standerTime) >= 0 && (new Date(tasks[i].killTime) - standerTime) <= 600){
72 //异步执行点击事件
73 var task = tasks[i];
74 var tabId = null;
75 chrome.tabs.query({url: task.url}, function(results) {
76 if (results.length > 0) {
77 for(var j=0; j<results.length; j++){
78 if(results[j].active){
79 tabId = results[j].id;
80 }
81 }
82 if(tabId == null) {
83 tabId = results[0].id;

Callers 1

background.jsFile · 0.85

Calls 1

formatDateTimeFunction · 0.70

Tested by

no test coverage detected