diff --git a/module/execution/js/kanban.ui.js b/module/execution/js/kanban.ui.js
index ff44fc8ee0..3b193630e6 100644
--- a/module/execution/js/kanban.ui.js
+++ b/module/execution/js/kanban.ui.js
@@ -186,8 +186,8 @@ window.renderAvatar = function(item)
}
else
{
- if(assignLink != '') return '' + item.uavatar + '';
- return '
' + item.uavatar + '
';
+ if(assignLink != '') return '' + item.avatarList[0] + '';
+ return '' + item.avatarList[0] + '
';
}
}
diff --git a/module/kanban/model.php b/module/kanban/model.php
index 2406b9908c..d1bbea3190 100755
--- a/module/kanban/model.php
+++ b/module/kanban/model.php
@@ -1328,7 +1328,7 @@ class kanbanModel extends model
* @access public
* @return array
*/
- public function getCardGroupByExecution($executionID, $browseType = 'all', $orderBy = 'id_asc', $searchValue = '')
+ public function getCardGroupByExecution(int $executionID, string $browseType = 'all', string $orderBy = 'id_asc', string $searchValue = ''): array
{
$cards = $this->dao->select('t1.*, t2.type as columnType, t2.group')
->from(TABLE_KANBANCELL)->alias('t1')
@@ -1351,7 +1351,7 @@ class kanbanModel extends model
{
foreach($cells as $cell)
{
- $cardOrder = 1;
+ $order = 0;
$cardIdList = array_filter(explode(',', $cell->cards));
foreach($cardIdList as $cardID)
{
@@ -1361,46 +1361,11 @@ class kanbanModel extends model
if(empty($object)) continue;
- $cardData['id'] = $object->id;
- $cardData['name'] = $object->id;
- $cardData['order'] = $cardOrder++;
- $cardData['pri'] = $object->pri ? $object->pri : '';
- $cardData['estimate'] = $cell->type == 'bug' ? '' : $object->estimate;
- $cardData['assignedTo'] = $object->assignedTo;
- $cardData['deadline'] = $cell->type == 'story' ? '' : $object->deadline;
- $cardData['severity'] = $cell->type == 'bug' ? $object->severity : '';
- $cardData['acl'] = 'open';
- $cardData['lane'] = $laneID;
- $cardData['column'] = $cell->column;
- $cardData['openedDate'] = $object->openedDate;
- $cardData['closedDate'] = $object->closedDate;
- $cardData['lastEditedDate'] = $object->lastEditedDate;
- $cardData['status'] = $object->status;
- $cardData['cardType'] = $cell->type;
- $cardData['uavatar'] = '';
- $cardData['assignedToRealName'] = '';
+ $cardData = $this->kanbanTao->initCardItem($object, $cell, $order, $avatarPairs, $users);
+ $cardData['acl'] = 'open';
+ $order ++;
- if($object->assignedTo)
- {
- $userAvatar = zget($avatarPairs, $object->assignedTo, '');
- $userAvatar = $userAvatar ? "
" : strtoupper(mb_substr($object->assignedTo, 0, 1, 'utf-8'));
- $cardData['uavatar'] = $userAvatar;
- $cardData['assignedToRealName'] = zget($users, $object->assignedTo, '');
- }
-
- if($cell->type == 'task')
- {
- if($searchValue != '' and strpos($object->name, $searchValue) === false) continue;
- $cardData['title'] = $object->name;
- $cardData['left'] = $object->left;
- $cardData['estStarted'] = $object->estStarted;
- $cardData['mode'] = $object->mode;
- }
- else
- {
- if($searchValue != '' and strpos($object->title, $searchValue) === false) continue;
- $cardData['title'] = $object->title;
- }
+ if($searchValue != '' and strpos($cardData['title'], $searchValue) === false) continue;
$cardGroup[$cell->group][$laneID][$cell->column][] = $cardData;
}
}
diff --git a/module/kanban/tao.php b/module/kanban/tao.php
index 6763e0369e..1cd0a54ebf 100644
--- a/module/kanban/tao.php
+++ b/module/kanban/tao.php
@@ -526,21 +526,25 @@ class kanbanTao extends kanbanModel
$item['id'] = $card->id;
$item['name'] = $card->id;
$item['pri'] = $card->pri;
- $item['begin'] = $card->begin;
- $item['end'] = $card->end;
- $item['group'] = $card->group;
- $item['region'] = $card->region;
$item['color'] = $card->color;
- $item['progress'] = $card->progress;
$item['assignedTo'] = $card->assignedTo;
- $item['fromID'] = $card->fromID;
- $item['fromType'] = $card->fromType;
+ $item['progress'] = !empty($card->progress) ? $card->progress : 0;
+ $item['group'] = !empty($card->group) ? $card->group : '';
+ $item['region'] = !empty($card->region) ? $card->region : '';
+ $item['begin'] = !empty($card->begin) ? $card->begin : '';
+ $item['end'] = !empty($card->end) ? $card->end : '';
+ $item['fromID'] = !empty($card->fromID) ? $card->fromID : 0;
+ $item['fromType'] = !empty($card->fromType) ? $card->fromType : '';
$item['desc'] = !empty($card->desc) ? $card->desc : '';
$item['delay'] = !empty($card->delay) ? $card->delay : 0;
$item['status'] = !empty($card->status) ? $card->status : '';
$item['objectStatus'] = !empty($card->objectStatus) ? $card->objectStatus : '';
$item['deleted'] = !empty($card->deleted) ? $card->deleted : 0;
$item['date'] = !empty($card->date) ? $card->date : '';
+ $item['estimate'] = !empty($card->estimate) ? $card->estimate : '';
+ $item['deadline'] = !empty($card->deadline) ? $card->deadline : '';
+ $item['severity'] = !empty($card->severity) ? $card->severity : '';
+ $item['cardType'] = $cell->type;
$item['avatarList'] = array();
$item['realnames'] = '';
$item['order'] = $order;
@@ -559,6 +563,13 @@ class kanbanTao extends kanbanModel
}
}
+ if($cell->type == 'task')
+ {
+ $item['left'] = $card->left;
+ $item['estStarted'] = $card->estStarted;
+ $item['mode'] = $card->mode;
+ }
+
return $item;
}
}
diff --git a/module/kanban/test/model/getcardgroupbyexecution.php b/module/kanban/test/model/getcardgroupbyexecution.php
index 8df5d1ffe7..4c4a470780 100755
--- a/module/kanban/test/model/getcardgroupbyexecution.php
+++ b/module/kanban/test/model/getcardgroupbyexecution.php
@@ -4,38 +4,46 @@ include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/kanban.class.php';
su('admin');
+zdTable('project')->config('kanbanexecution')->gen(5);
+zdTable('kanbanregion')->config('rdkanbanregion')->gen(5);
+zdTable('kanbangroup')->config('rdkanbangroup')->gen(20);
+zdTable('kanbancolumn')->gen(20);
+zdTable('kanbanlane')->config('rdkanbanlane')->gen(10);
+zdTable('kanbancell')->config('rdkanbancell')->gen(20);
+zdTable('task')->config('rdkanbantask')->gen(20);
+
/**
title=测试 kanbanModel->getCardGroupByExecution();
+timeout=0
cid=1
-pid=1
-测试查询execution161的卡片 >> 5
-测试查询execution161的task卡片 >> 1
-测试查询execution161的bug卡片 >> 3
-测试查询execution161的story卡片 >> 1
-测试查询execution162的卡片 >> 5
-测试查询execution162的task卡片 >> 1
-测试查询execution162的bug卡片 >> 3
-测试查询execution162的story卡片 >> 1
-测试查询execution163的卡片 >> 4
-测试查询execution164的卡片 >> 4
-测试查询execution165的卡片 >> 0
+- 测试查询execution1的卡片数量 @2
+- 测试查询execution1的task卡片数量 @2
+- 测试查询execution1的bug卡片数量 @0
+- 测试查询execution1的story卡片数量 @0
+- 测试查询execution2的卡片数量 @2
+- 测试查询execution2的task卡片数量 @2
+- 测试查询execution2的bug卡片数量 @0
+- 测试查询execution2的story卡片数量 @0
+- 测试查询execution3的卡片数量 @2
+- 测试查询execution4的卡片数量 @2
+- 测试查询execution5的卡片数量 @2
*/
-$executionIDList = array('161', '162', '163', '164', '165');
+$executionIDList = array(1, 2, 3, 4, 5);
$browseTypeList = array('task', 'bug', 'story');
$kanban = new kanbanTest();
-r($kanban->getCardGroupByExecutionTest($executionIDList[0])) && p() && e('5'); // 测试查询execution161的卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[0])) && p() && e('1'); // 测试查询execution161的task卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[1])) && p() && e('3'); // 测试查询execution161的bug卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[2])) && p() && e('1'); // 测试查询execution161的story卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[1])) && p() && e('5'); // 测试查询execution162的卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[0])) && p() && e('1'); // 测试查询execution162的task卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[1])) && p() && e('3'); // 测试查询execution162的bug卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[2])) && p() && e('1'); // 测试查询execution162的story卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[2])) && p() && e('4'); // 测试查询execution163的卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[3])) && p() && e('4'); // 测试查询execution164的卡片
-r($kanban->getCardGroupByExecutionTest($executionIDList[4])) && p() && e('0'); // 测试查询execution165的卡片
\ No newline at end of file
+r($kanban->getCardGroupByExecutionTest($executionIDList[0])) && p() && e('2'); // 测试查询execution1的卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[0])) && p() && e('2'); // 测试查询execution1的task卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[1])) && p() && e('0'); // 测试查询execution1的bug卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[0], $browseTypeList[2])) && p() && e('0'); // 测试查询execution1的story卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[1])) && p() && e('2'); // 测试查询execution2的卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[0])) && p() && e('2'); // 测试查询execution2的task卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[1])) && p() && e('0'); // 测试查询execution2的bug卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[1], $browseTypeList[2])) && p() && e('0'); // 测试查询execution2的story卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[2])) && p() && e('2'); // 测试查询execution3的卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[3])) && p() && e('2'); // 测试查询execution4的卡片数量
+r($kanban->getCardGroupByExecutionTest($executionIDList[4])) && p() && e('2'); // 测试查询execution5的卡片数量
\ No newline at end of file