diff --git a/class/core/crontab_api.py b/class/core/crontab_api.py index d05f1a402..767ef2e92 100755 --- a/class/core/crontab_api.py +++ b/class/core/crontab_api.py @@ -73,6 +73,24 @@ class crontab_api: _ret['page'] = public.getPage(_page) return public.getJson(_ret) + # 设置计划任务状态 + def setCronStatusApi(self): + mid = request.form.get('id', '') + cronInfo = public.M('crontab').where( + 'id=?', (mid,)).field(self.field).find() + status = 1 + if cronInfo['status'] == status: + status = 0 + self.removeForCrond(cronInfo['echo']) + else: + cronInfo['status'] = 1 + self.syncToCrond(cronInfo) + + public.M('crontab').where('id=?', (mid,)).setField('status', status) + public.writeLog( + '计划任务', '修改计划任务[' + cronInfo['name'] + ']状态为[' + str(status) + ']') + return public.returnJson(True, '设置成功') + # 获取指定任务数据 def getCrondFindApi(self): sid = request.form.get('id', '') diff --git a/route/static/app/crontab.js b/route/static/app/crontab.js index 26c8b8d32..78e7fe4e2 100755 --- a/route/static/app/crontab.js +++ b/route/static/app/crontab.js @@ -50,7 +50,9 @@ function getCronData(){ }else{ for(var i=0;i正常' + :'停用'; cbody += "\ \ @@ -74,6 +76,23 @@ function getCronData(){ },'json'); } +// 设置计划任务状态 +function setTaskStatus(id,status){ + var confirm = layer.confirm(status == '0'?'计划任务暂停后将无法继续运行,您真的要停用这个计划任务吗?':'该计划任务已停用,是否要启用这个计划任务', {title:'提示',icon:3,closeBtn:2},function(index) { + if (index > 0) { + var loadT = layer.msg('正在设置状态,请稍后...',{icon:16,time:0,shade: [0.3, '#000']}); + $.post('/crontab/set_cron_status',{id:id},function(rdata){ + layer.closeAll(); + layer.close(confirm); + layer.msg(rdata.data,{icon:rdata.status?1:2}); + if(rdata.status) { + getCronData(); + } + },'json'); + } + }); +} + //执行任务脚本 function startTask(id){ layer.msg('正在处理,请稍候...',{icon:16,time:0,shade: [0.3, '#000']});