* Change the load of the story table.

This commit is contained in:
tianshujie
2023-06-21 10:25:33 +08:00
parent ae333463e1
commit 9103001815
5 changed files with 188 additions and 136 deletions
+154
View File
@@ -0,0 +1,154 @@
<?php
declare(strict_types=1);
/**
* The ajaxGetTestStories view file of task module of ZenTaoPMS.
* @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
* @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
* @author Shujie Tian<tianshujie@easycorp.ltd>
* @package task
* @link https://www.zentao.net
*/
namespace zin;
$requiredFields = array();
foreach(explode(',', $config->task->create->requiredFields) as $field)
{
if($field) $requiredFields[$field] = '';
}
$taskTR = array();
$i = 0;
foreach($testStories as $storyID => $storyTitle)
{
$taskTR[] = h::tr
(
h::td
(
select
(
set::id("testStory{$i}"),
set::name("testStory[$i]"),
set::value($storyID),
set::items(array($storyID => $storyTitle)),
),
),
h::td
(
select
(
set::id("testPri{$i}"),
set::name("testPri[$i]"),
set::required(true),
set::value($task->pri),
set::items($lang->task->priList),
),
),
h::td
(
input
(
set::id("testEstStarted{$i}"),
set::name("testEstStarted[$i]"),
set::type('date'),
set::value($task->estStarted),
),
),
h::td
(
input
(
set::id("testDeadline{$i}"),
set::name("testDeadline[$i]"),
set::type('date'),
set::value($task->deadline),
),
),
h::td
(
select
(
set::id("testAssignedTo{$i}"),
set::name("testAssignedTo[$i]"),
set::value($task->assignedTo),
set::items($members),
),
),
h::td
(
input
(
set::id("testEstimate{$i}"),
set::name("testEstimate[$i]"),
),
),
h::td
(
set::class('center'),
btnGroup
(
set::items(array(
array('class' => 'btn btn-link text-gray', 'icon' => 'plus', 'onclick' => 'addItem(this)'),
array('class' => 'btn btn-link text-gray', 'icon' => 'trash', 'onclick' => 'removeItem(this)'),
))
)
)
);
}
formGroup
(
set::label($lang->task->selectTestStory),
set::labelClass('selectStoryLabel'),
h::table
(
set::class('w-full'),
h::thead
(
h::tr
(
h::th($lang->task->storyAB),
h::th
(
$lang->task->pri,
set::width('70px'),
setClass(isset($requiredFields['pri']) ? 'required' : '')
),
h::th
(
$lang->task->estStarted,
set::width('140px'),
setClass(isset($requiredFields['estStarted']) ? 'required' : '')
),
h::th
(
$lang->task->deadline,
set::width('140px'),
setClass(isset($requiredFields['deadline']) ? 'required' : '')
),
h::th
(
$lang->task->assignedTo,
set::width('100px')
),
h::th
(
$lang->task->estimate,
set::width('70px'),
setClass(isset($requiredFields['estimate']) ? 'required' : '')
),
h::th
(
$lang->actions,
set::width('70px')
),
)
),
h::tbody
(
$taskTR
)
),
);
/* ====== Render page ====== */
render();
+1 -132
View File
@@ -18,6 +18,7 @@ namespace zin;
jsVar('toTaskList', !empty($task->id));
jsVar('blockID', $blockID);
jsVar('executionID', $execution->id);
jsVar('taskID', $taskID);
jsVar('ditto', $lang->task->ditto);
jsVar('teamMemberError', $lang->task->error->teamMember);
jsVar('vision', $config->vision);
@@ -122,144 +123,12 @@ $storyPreviewBtn = span
),
);
$taskTR = array();
$i = 0;
foreach($testStories as $storyID => $storyTitle)
{
$taskTR[] = h::tr
(
h::td
(
select
(
set::id("testStory{$i}"),
set::name("testStory[$i]"),
set::value($storyID),
set::items(array($storyID => $storyTitle)),
),
),
h::td
(
select
(
set::id("testPri{$i}"),
set::name("testPri[$i]"),
set::value($task->pri),
set::items($lang->task->priList),
),
),
h::td
(
input
(
set::id("testEstStarted{$i}"),
set::name("testEstStarted[$i]"),
set::type('date'),
set::value($task->estStarted),
),
),
h::td
(
input
(
set::id("testDeadline{$i}"),
set::name("testDeadline[$i]"),
set::type('date'),
set::value($task->deadline),
),
),
h::td
(
select
(
set::id("testAssignedTo{$i}"),
set::name("testAssignedTo[$i]"),
set::value($task->assignedTo),
set::items($members),
),
),
h::td
(
input
(
set::id("testEstimate{$i}"),
set::name("testEstimate[$i]"),
),
),
h::td
(
set::class('center'),
btnGroup
(
set::items(array(
array('icon' => 'plus', 'onclick' => 'addItem(this)'),
array('icon' => 'close', 'onclick' => 'removeItem(this)'),
))
)
)
);
}
$selectStoryRow = '';
if($execution->lifetime != 'ops' and !in_array($execution->attribute, array('request', 'review')))
{
$selectStoryRow = formRow(
set::id('testStoryBox'),
setClass('hidden'),
formGroup
(
set::label($lang->task->selectTestStory),
set::labelClass('selectStoryLabel'),
h::table
(
set::class('w-full'),
h::thead
(
h::tr
(
h::th($lang->task->storyAB),
h::th
(
$lang->task->pri,
set::width('70px'),
setClass(isset($requiredFields['pri']) ? 'required' : '')
),
h::th
(
$lang->task->estStarted,
set::width('140px'),
setClass(isset($requiredFields['estStarted']) ? 'required' : '')
),
h::th
(
$lang->task->deadline,
set::width('140px'),
setClass(isset($requiredFields['deadline']) ? 'required' : '')
),
h::th
(
$lang->task->assignedTo,
set::width('100px')
),
h::th
(
$lang->task->estimate,
set::width('70px'),
setClass(isset($requiredFields['estimate']) ? 'required' : '')
),
h::th
(
$lang->actions,
set::width('70px')
),
)
),
h::tbody
(
$taskTR
)
),
)
);
}