diff --git a/module/task/control.php b/module/task/control.php index 58f27535a9..c085fe474d 100755 --- a/module/task/control.php +++ b/module/task/control.php @@ -325,6 +325,7 @@ class task extends control if(defined('RUN_MODE') && RUN_MODE == 'api') return $this->send(array('status' => 'fail', 'code' => 404, 'message' => '404 Not found')); return $this->send(array('result' => 'fail', 'message' => $this->lang->notFound, 'load' => $this->createLink('execution', 'all'))); } + if(!$this->loadModel('common')->checkPrivByObject('execution', $task->execution)) return print(js::error($this->lang->execution->accessDenied) . js::locate($this->createLink('execution', 'all'))); /* 为视图设置常用的公共变量和设置菜单为任务所属执行. Set common variables to view and set menu to the execution of the task. */ $this->taskZen->commonAction($taskID); diff --git a/module/task/js/edit.ui.js b/module/task/js/edit.ui.js index ecf383cfa2..b26760be51 100644 --- a/module/task/js/edit.ui.js +++ b/module/task/js/edit.ui.js @@ -194,8 +194,15 @@ $('#teamTable .team-saveBtn').on('click.team', '.btn', function() if(totalLeft == 0 && (taskStatus == 'doing' || taskStatus == 'pause')) { - zui.Modal.alert(totalLeftError); - return false; + if(confirm(confirmRecord)) + { + const statusPicker = $('input[name="status"]').closest('.picker').zui('picker'); + statusPicker.$.setValue('done'); + } + else + { + return false; + } } $('#estimate').val(totalEstimate); diff --git a/module/task/ui/edit.html.php b/module/task/ui/edit.html.php index 29b6e9f296..c29adc650e 100644 --- a/module/task/ui/edit.html.php +++ b/module/task/ui/edit.html.php @@ -27,6 +27,7 @@ jsVar('page', 'edit'); jsVar('confirmChangeExecution', $lang->task->confirmChangeExecution); jsVar('teamMemberError', $lang->task->error->teamMember); jsVar('totalLeftError', sprintf($this->lang->task->error->leftEmptyAB, $this->lang->task->statusList[$task->status])); +jsVar('confirmRecord', $lang->task->confirmRecord); jsVar('estimateNotEmpty', sprintf($lang->error->gt, $lang->task->estimate, '0')); jsVar('leftNotEmpty', sprintf($lang->error->gt, $lang->task->left, '0')); jsVar('requiredFields', $config->task->edit->requiredFields);