* Finish task #5267.

This commit is contained in:
Yagami
2019-02-27 09:23:03 +08:00
parent 1bcf0a3b53
commit 79b3576354
6 changed files with 41 additions and 5 deletions
+1 -1
View File
@@ -43,7 +43,7 @@
if(common::hasPriv('entry', 'delete'))
{
$deleteURL = $this->createLink('entry', 'delete', "entryID=$id&confirm=yes");
echo html::a("javascript:ajaxDelete(\"$deleteURL\",\"entryList\",confirmDelete)", '<i class="icon-close"></i>', '', "title='{$lang->entry->delete}' class='btn'");
echo html::a("javascript:ajaxDelete(\"$deleteURL\",\"entryList\",confirmDelete)", '<i class="icon-trash"></i>', '', "title='{$lang->entry->delete}' class='btn'");
}
?>
</td>
+23
View File
@@ -979,6 +979,29 @@ class testcase extends control
die(js::locate(inLink('view', "caseID=$caseID"), 'parent'));
}
/**
* Confirm libcase changed.
*
* @param int $caseID
* @param int $libcaseID
* @param int $version
* @access public
* @return void
*/
public function confirmLibcaseChange($caseID, $libcaseID, $version)
{
$case = $this->testcase->getById($caseID);
$this->dao->update(TABLE_CASE)->set('version')->eq($version)->where('id')->eq($caseID)->exec();
$steps = $this->dao->select('*')->from(TABLE_CASESTEP)->where('`case`')->eq($libcaseID)->andWhere('version')->eq($version)->fetchAll();
foreach($steps as $step)
{
unset($step->id);
$step->case = $caseID;
$this->dao->insert(TABLE_CASESTEP)->data($step)->exec();
}
die(js::locate(inLink('view', "caseID=$caseID"), 'parent'));
}
/**
* Confirm story changes.
*
+3
View File
@@ -64,6 +64,9 @@ $lang->testcase->stepNumberAB = 'S';
$lang->testcase->createBug = 'Convert to Bug';
$lang->testcase->fromModule = 'Source Module';
$lang->testcase->fromCase = 'Source Case';
$lang->testcase->sync = 'Sync Case';
$lang->testcase->fromTesttask = 'From Testtask';
$lang->testcase->fromCaselib = 'From Caselib';
$lang->case = $lang->testcase; // For dao checking using. Because 'case' is a php keywords, so the module name is testcase, table name is still case.
$lang->testcase->stepID = 'ID';
+4 -1
View File
@@ -54,7 +54,7 @@ $lang->testcase->expect = '预期';
$lang->testcase->allProduct = "所有{$lang->productCommon}";
$lang->testcase->fromBug = '来源Bug';
$lang->testcase->toBug = '生成Bug';
$lang->testcase->changed = '用例变更';
$lang->testcase->changed = '原用例更新';
$lang->testcase->bugs = '产生Bug数';
$lang->testcase->bugsAB = 'B';
$lang->testcase->results = '执行结果数';
@@ -64,6 +64,9 @@ $lang->testcase->stepNumberAB = 'S';
$lang->testcase->createBug = '转Bug';
$lang->testcase->fromModule = '来源模块';
$lang->testcase->fromCase = '来源用例';
$lang->testcase->sync = '同步';
$lang->testcase->fromTesttask = '测试单用例';
$lang->testcase->fromCaselib = '用例库用例';
$lang->case = $lang->testcase; // 用于DAO检查时使用。因为case是系统关键字,所以无法定义该模块为case,只能使用testcase,但表还是使用的case。
$lang->testcase->stepID = '编号';
+2 -1
View File
@@ -395,7 +395,8 @@ class testcaseModel extends model
$case->storyStatus = $story->status;
$case->latestStoryVersion = $story->version;
}
if($case->fromBug) $case->fromBugTitle = $this->dao->findById($case->fromBug)->from(TABLE_BUG)->fields('title')->fetch('title');
if($case->fromBug) $case->fromBugTitle = $this->dao->findById($case->fromBug)->from(TABLE_BUG)->fields('title')->fetch('title');
if($case->fromCaseID) $case->libCaseVersion = $this->dao->findById($case->fromCaseID)->from(TABLE_CASE)->fetch('version');
$case->toBugs = array();
$toBugs = $this->dao->select('id, title')->from(TABLE_BUG)->where('`case`')->eq($caseID)->fetchAll();
+8 -2
View File
@@ -218,8 +218,14 @@
echo $lang->testcase->statusList[$case->status];
if($case->version > $case->currentVersion and $from == 'testtask')
{
echo "(<span class='warning'>{$lang->testcase->changed}</span> ";
echo html::a($this->createLink('testcase', 'confirmchange', "caseID=$case->id"), $lang->confirm, 'hiddenwin', "class='btn btn-mini btn-info'");
echo "(<span class='warning' title={$lang->testcase->fromTesttask}>{$lang->testcase->changed}</span> ";
echo html::a($this->createLink('testcase', 'confirmchange', "caseID=$case->id"), $lang->testcase->sync, 'hiddenwin', "class='btn btn-mini btn-info' title={$lang->testcase->fromTesttask}");
echo ")";
}
if(isset($case->libCaseVersion) and $case->libCaseVersion > $case->version and $from != 'testtask')
{
echo "(<span class='warning' title={$lang->testcase->fromCaselib}>{$lang->testcase->changed}</span> ";
echo html::a($this->createLink('testcase', 'confirmLibcaseChange', "caseID=$case->id&libcaseID=$case->fromCaseID&version=$case->libCaseVersion"), $lang->testcase->sync, 'hiddenwin', "class='btn btn-mini btn-info' title={$lang->testcase->fromCaselib}");
echo ")";
}
?>