| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?php
- namespace zin;
- require_once dirname(__DIR__) . DS . 'datalist' . DS . 'v1.php';
- class caseTimeInfo extends wg
- {
- /**
- * @var mixed[]
- */
- protected static $defineProps = array
- (
- 'case' => '?object', // 当前用例。
- 'users' => '?array' // 用户列表。
- );
- protected function getReviewedBy($users, $case)
- {
- $reviewedBy = '';
- foreach(explode(',', $case->reviewedBy) as $account)
- {
- $reviewedBy .= ' ' . zget($users, trim($account));
- }
- $reviewedBy = trim($reviewedBy);
- return $reviewedBy;
- }
- protected function getItems()
- {
- global $lang;
- $case = $this->prop('case', data('case'));
- if(!$case) return array();
- $users = $this->prop('users', data('users'));
- $items = array();
- $items[$lang->testcase->openedBy] = zget($users, $case->openedBy) . $lang->at . $case->openedDate;
- $items[$lang->testcase->reviewedBy] = $this->getReviewedBy($users, $case);
- $items[$lang->testcase->reviewedDate] = !empty($case->reviewedBy) ? $case->reviewedDate : '';
- $items[$lang->testcase->lblLastEdited] = !empty($case->lastEditedBy) ? zget($users, $case->lastEditedBy) . $lang->at . $case->lastEditedDate : '';
- return $items;
- }
- protected function build()
- {
- global $app;
- $isEn = $app->getClientLang() == 'en';
- return new datalist
- (
- set::className('case-time-info'),
- $isEn ? set::labelWidth('86') : null,
- set::items($this->getItems())
- );
- }
- }
|