Skip to content

Commit 82278d1

Browse files
committed
修复20210122定时无法取消bug
1 parent fd679b5 commit 82278d1

File tree

2 files changed

+49
-40
lines changed

2 files changed

+49
-40
lines changed

web/handlers/task.py

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -274,33 +274,41 @@ def get(self, taskid):
274274

275275
@tornado.web.authenticated
276276
def post(self, taskid):
277+
log = u'设置成功'
277278
try:
278279
envs = self.request.body_arguments
279280
for env in envs.keys():
280281
if (envs[env][0] == u'true' or envs[env][0] == u'false'):
281282
envs[env] = True if envs[env][0] == u'true' else False
282283
else:
283284
envs[env] = u'{0}'.format(envs[env][0])
284-
c = cal()
285-
if ('time' in envs):
286-
if (len(envs['time'].split(':')) < 3):
287-
envs['time'] = envs['time'] + ':00'
288-
289-
tmp = c.calNextTs(envs)
290-
if (tmp['r'] == 'True'):
291-
self.db.task.mod(taskid,
292-
disabled = False,
293-
newontime = json.dumps(envs),
294-
next = tmp['ts'])
285+
286+
if (envs['sw']):
287+
c = cal()
288+
if ('time' in envs):
289+
if (len(envs['time'].split(':')) < 3):
290+
envs['time'] = envs['time'] + ':00'
291+
tmp = c.calNextTs(envs)
292+
if (tmp['r'] == 'True'):
293+
self.db.task.mod(taskid,
294+
disabled = False,
295+
newontime = json.dumps(envs),
296+
next = tmp['ts'])
297+
298+
log = u'设置成功,下次执行时间:{0}'.format(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(tmp['ts'])))
299+
else:
300+
raise Exception(tmp)
295301
else:
296-
raise Exception(tmp)
297-
302+
tmp = json.loads(self.db.task.get(taskid, fields=('newontime'))['newontime'])
303+
tmp['sw'] = False
304+
self.db.task.mod(taskid, newontime = json.dumps(tmp))
305+
298306
except Exception:
299307
traceback.print_exc()
300308
self.render('utils_run_result.html', log=traceback.format_exc(), title=u'设置失败', flg='danger')
301309
return
302310

303-
self.render('utils_run_result.html', log=u'设置成功,下次执行时间:{0}'.format(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(tmp['ts']))), title=u'设置成功', flg='success')
311+
self.render('utils_run_result.html', log=log, title=u'设置成功', flg='success')
304312
return
305313

306314
class TaskGroupHandler(TaskNewHandler):

web/tpl/task_setTime.html

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -55,37 +55,38 @@ <h2 class="text-center">设置定时</h2>
5555
</script>
5656
<script>
5757
$('#send').on('click', function() {
58-
if ($('#ontime_flg')[0].checked == false){
59-
$('#run-result').html("<h1 class=\"alert alert-danger text-center\">请打开开关</h1><div><pre>如果要设置,请打开开关</pre></div>").show();
60-
return false;
61-
}
62-
6358
sendData = {}
6459
data = {}
65-
sendData['mode'] = $('#ontime_method')[0].value;
66-
sendData['sw'] = true;
67-
if (sendData['mode'] == 'ontime'){
68-
sendData['date'] = $('#ontime_run_date')[0].value;
69-
sendData['time'] = $('#ontime_val')[0].value;
70-
sendData['tz1'] = parseInt($('#randtimezone1')[0].value);
71-
sendData['tz2'] = parseInt($('#randtimezone2')[0].value);
72-
if ($('#randtimezonesw')[0].checked == true){
73-
if (sendData['tz1'] > sendData['tz2']){
74-
$('#run-result').html("<h1 class=\"alert alert-danger text-center\">随机值错误</h1><div><pre>开启随机时tz1 不能小于 tz2</pre></div>").show();
75-
return false;
60+
61+
if ($('#ontime_flg')[0].checked == true){
62+
sendData['mode'] = $('#ontime_method')[0].value;
63+
sendData['sw'] = true;
64+
if (sendData['mode'] == 'ontime'){
65+
sendData['date'] = $('#ontime_run_date')[0].value;
66+
sendData['time'] = $('#ontime_val')[0].value;
67+
sendData['tz1'] = parseInt($('#randtimezone1')[0].value);
68+
sendData['tz2'] = parseInt($('#randtimezone2')[0].value);
69+
if ($('#randtimezonesw')[0].checked == true){
70+
if (sendData['tz1'] > sendData['tz2']){
71+
$('#run-result').html("<h1 class=\"alert alert-danger text-center\">随机值错误</h1><div><pre>开启随机时tz1 不能小于 tz2</pre></div>").show();
72+
return false;
73+
}
74+
sendData['randsw'] = true;
75+
}else{
76+
sendData['randsw'] = false;
7677
}
77-
sendData['randsw'] = true;
78-
}else{
79-
sendData['randsw'] = false;
80-
}
8178

82-
} else if (sendData['mode'] == 'cron'){
83-
sendData['cron_val'] = $('#cron_val')[0].value;
84-
sendData['cron_sec'] = $('#cron_sec')[0].value;
85-
} else{
86-
$('#run-result').html("<h1 class=\"alert alert-danger text-center\">模式错误</h1><div><pre>模式错误</pre></div>").show();
87-
return false;
79+
} else if (sendData['mode'] == 'cron'){
80+
sendData['cron_val'] = $('#cron_val')[0].value;
81+
sendData['cron_sec'] = $('#cron_sec')[0].value;
82+
} else{
83+
$('#run-result').html("<h1 class=\"alert alert-danger text-center\">模式错误</h1><div><pre>模式错误</pre></div>").show();
84+
return false;
85+
}
86+
} else {
87+
sendData['sw'] = false;
8888
}
89+
8990
var $this = $(this);
9091
$.ajax("/task/{{task.id}}/settime", {
9192
type: 'POST',

0 commit comments

Comments
 (0)