diff --git a/module/bug/model.php b/module/bug/model.php index 25828859d3..d5c33888a5 100644 --- a/module/bug/model.php +++ b/module/bug/model.php @@ -104,7 +104,7 @@ class bugModel extends model $bug = fixer::input('post') ->cleanInt('product,module,severity,project,story,task') ->specialChars('title,steps,keyword') - ->remove('comment,fiels,labels') + ->remove('comment,files,labels') ->setDefault('project,module,project,story,task,duplicateBug', 0) ->setDefault('openedBuild', '') ->add('lastEditedBy', $this->app->user->account) diff --git a/module/task/model.php b/module/task/model.php index de8f183cd8..434b08a2a4 100644 --- a/module/task/model.php +++ b/module/task/model.php @@ -74,7 +74,7 @@ class taskModel extends model ->setIF($this->post->story != false and $this->post->story != $oldTask->story, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story)) ->setIF($this->post->status == 'done', 'left', 0) ->setIF($this->post->consumed > 0 and $this->post->left > 0 and $this->post->status == 'wait', 'status', 'doing') - ->remove('comment,fiels,labels') + ->remove('comment,files,labels') ->get(); $task->statusCustom = strpos(self::CUSTOM_STATUS_ORDER, $task->status) + 1; diff --git a/module/testcase/control.php b/module/testcase/control.php index 6872be294a..243559cb6d 100644 --- a/module/testcase/control.php +++ b/module/testcase/control.php @@ -183,7 +183,7 @@ class testcase extends control $this->display(); } - /* 编辑一个Bug。*/ + /* 编辑一个case。*/ public function edit($caseID) { $this->loadModel('story'); @@ -193,11 +193,14 @@ class testcase extends control { $changes = $this->testcase->update($caseID); if(dao::isError()) die(js::error(dao::getError())); - if($this->post->comment != '' or !empty($changes)) + $files = $this->loadModel('file')->saveUpload('testcase', $caseID); + if($this->post->comment != '' or !empty($changes) or !empty($files)) { $this->loadModel('action'); $action = !empty($changes) ? 'Edited' : 'Commented'; - $actionID = $this->action->create('case', $caseID, $action, $this->post->comment); + $fileAction = ''; + if(!empty($files)) $fileAction = $this->lang->addFiles . join(',', $files) . "\n"; + $actionID = $this->action->create('case', $caseID, $action, $fileAction . $this->post->comment); $this->action->logHistory($actionID, $changes); } die(js::locate($this->createLink('testcase', 'view', "caseID=$caseID"), 'parent')); diff --git a/module/testcase/lang/zh-cn.php b/module/testcase/lang/zh-cn.php index 92c6b1b215..35bfe62ef6 100644 --- a/module/testcase/lang/zh-cn.php +++ b/module/testcase/lang/zh-cn.php @@ -41,6 +41,7 @@ $lang->testcase->version = '用例版本'; $lang->testcase->result = '测试结果'; $lang->testcase->real = '实际情况'; $lang->testcase->keywords = '关键词'; +$lang->testcase->files = '附件'; $lang->testcase->howRun = '执行方式'; $lang->testcase->scriptedBy = '由谁编写'; $lang->testcase->scriptedDate = '编写日期'; diff --git a/module/testcase/model.php b/module/testcase/model.php index b2ed009c15..38a568ab65 100644 --- a/module/testcase/model.php +++ b/module/testcase/model.php @@ -45,7 +45,7 @@ class testcaseModel extends model ->add('status', 'normal') ->add('version', 1) ->setIF($this->post->story != false, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story)) - ->remove('steps,expects') + ->remove('steps,expects,files,labels') ->setDefault('story', 0) ->specialChars('title') ->join('stage', ',') @@ -54,6 +54,7 @@ class testcaseModel extends model if(!$this->dao->isError()) { $caseID = $this->dao->lastInsertID(); + $this->loadModel('file')->saveUpload('testcase', $caseID); foreach($this->post->steps as $stepID => $stepDesc) { if(empty($stepDesc)) continue; @@ -93,7 +94,7 @@ class testcaseModel extends model if($case->linkCase) $case->linkCaseTitles = $this->dao->select('id,title')->from(TABLE_CASE)->where('id')->in($case->linkCase)->fetchPairs(); if($version == 0) $version = $case->version; $case->steps = $this->dao->select('*')->from(TABLE_CASESTEP)->where('`case`')->eq($caseID)->andWhere('version')->eq($version)->fetchAll(); - $case->files = $this->loadModel('file')->getByObject('case', $caseID); + $case->files = $this->loadModel('file')->getByObject('testcase', $caseID); return $case; } @@ -140,7 +141,7 @@ class testcaseModel extends model ->setDefault('story', 0) ->specialChars('title') ->join('stage', ',') - ->remove('comment,steps,expects') + ->remove('comment,steps,expects,files,labels') ->get(); $this->dao->update(TABLE_CASE)->data($case)->autoCheck()->batchCheck($this->config->testcase->edit->requiredFields, 'notempty')->where('id')->eq((int)$caseID)->exec(); if(!$this->dao->isError()) diff --git a/module/testcase/view/create.html.php b/module/testcase/view/create.html.php index c3a9ff011f..36a8064d0f 100644 --- a/module/testcase/view/create.html.php +++ b/module/testcase/view/create.html.php @@ -24,7 +24,7 @@ ?>