Merge branch release/21.7.5 of zentao/zentaopms (#11186)
This commit is contained in:
@@ -235,6 +235,7 @@ class programplanModel extends model
|
||||
$workingDays = $this->loadModel('holiday')->getActualWorkingDays($begin, $end);
|
||||
foreach($tasksGroup as $group => $tasks)
|
||||
{
|
||||
if(!$group) $group = '/'; // 未指派
|
||||
$groupID ++;
|
||||
$groupKey = $groupID . $group;
|
||||
$datas['data'][$groupKey] = $this->programplanTao->buildGroupDataForGantt($groupID, $group, $users);
|
||||
|
||||
@@ -741,7 +741,7 @@ class programplanTao extends programplanModel
|
||||
{
|
||||
$this->app->loadLang('task');
|
||||
$groupName = $group;
|
||||
$groupName = $group ? zget($users, $group) : $this->lang->task->noAssigned;
|
||||
$groupName = $group != '/' ? zget($users, $group) : $this->lang->task->noAssigned;
|
||||
|
||||
$dataGroup = new stdclass();
|
||||
$dataGroup->id = $groupID;
|
||||
|
||||
@@ -7,13 +7,13 @@ title=测试 programplanModel->getDataForGanttGroupByAssignedTo();
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 测试获取阶段数据第0条的type属性 @task
|
||||
- 测试获取阶段数据第0条的type属性 @group
|
||||
- 测试获取任务数据
|
||||
- 第1条的id属性 @1-4
|
||||
- 第1条的id属性 @1-1
|
||||
- 第1条的type属性 @task
|
||||
- 测试获取阶段数据(JSON类型返回值)第2条的type属性 @task
|
||||
- 测试获取任务数据(JSON类型返回值)
|
||||
- 第3条的id属性 @1-8
|
||||
- 第3条的id属性 @1-5
|
||||
- 第3条的type属性 @task
|
||||
- 测试自定义参数为空的情况获取任务数据 @1
|
||||
|
||||
@@ -30,8 +30,8 @@ $programplan = new programplanTest();
|
||||
|
||||
$selectCustom = 'date,task';
|
||||
$selectNoneCustom = '';
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, false)) && p('0:type') && e('task'); // 测试获取阶段数据
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, false)) && p('1:id,type') && e('1-4,task'); // 测试获取任务数据
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, false)) && p('0:type') && e('group'); // 测试获取阶段数据
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, false)) && p('1:id,type') && e('1-1,task'); // 测试获取任务数据
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, true)) && p('2:type') && e('task'); // 测试获取阶段数据(JSON类型返回值)
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, true)) && p('3:id,type') && e('1-8,task'); // 测试获取任务数据(JSON类型返回值)
|
||||
r(count($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectNoneCustom, false))) && p() && e('1'); // 测试自定义参数为空的情况获取任务数据
|
||||
r($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectCustom, true)) && p('3:id,type') && e('1-5,task'); // 测试获取任务数据(JSON类型返回值)
|
||||
r(count($programplan->getDataForGanttGroupByAssignedToTest(1, 1, 0, $selectNoneCustom, false))) && p() && e('1'); // 测试自定义参数为空的情况获取任务数据
|
||||
Regular → Executable
+5
-4
@@ -4,6 +4,7 @@
|
||||
/**
|
||||
|
||||
title=测试 loadModel->buildGroupDataForGantt()
|
||||
timeout=0
|
||||
cid=0
|
||||
|
||||
- 检查构建分组Gantt数据。
|
||||
@@ -17,12 +18,12 @@ cid=0
|
||||
- 检查空组构建情况。
|
||||
- 属性id @3
|
||||
- 属性type @group
|
||||
- 属性text @''
|
||||
- 属性text @未指派
|
||||
- 检查自定义组ID。
|
||||
- 属性id @99
|
||||
- 属性type @group
|
||||
- 属性text @产品
|
||||
- 检查无用户列表时。
|
||||
- 检查无用户列表。
|
||||
- 属性id @5
|
||||
- 属性type @group
|
||||
- 属性text @设计
|
||||
@@ -50,7 +51,7 @@ $group = '测试';
|
||||
r((array)$tester->programplan->buildGroupDataForGantt($groupID, $group, $users)) && p('id,type,text') && e("2,group,测试"); //检查另一个分组。
|
||||
|
||||
$groupID = 3;
|
||||
$group = '';
|
||||
$group = '/';
|
||||
r((array)$tester->programplan->buildGroupDataForGantt($groupID, $group, $users)) && p('id,type,text') && e("3,group,未指派"); //检查空组构建情况。
|
||||
|
||||
$groupID = 99;
|
||||
@@ -59,4 +60,4 @@ r((array)$tester->programplan->buildGroupDataForGantt($groupID, $group, $users))
|
||||
|
||||
$groupID = 5;
|
||||
$group = '设计';
|
||||
r((array)$tester->programplan->buildGroupDataForGantt($groupID, $group, $emptyUsers)) && p('id,type,text') && e("5,group,设计"); //检查无用户列表。
|
||||
r((array)$tester->programplan->buildGroupDataForGantt($groupID, $group, $emptyUsers)) && p('id,type,text') && e("5,group,设计"); //检查无用户列表。
|
||||
@@ -28,6 +28,7 @@ class testtaskTao extends testtaskModel
|
||||
->leftJoin(TABLE_BUILD)->alias('t4')->on('t1.build = t4.id')
|
||||
->leftJoin(TABLE_PROJECT)->alias('t5')->on('t1.project = t5.id')
|
||||
->where('t1.deleted')->eq(0)
|
||||
->andWhere('t2.deleted')->eq(0)
|
||||
->beginIF($unit == 'unit')->andWhere('t1.auto')->eq('unit')->fi()
|
||||
->beginIF($unit != 'unit')->andWhere('t1.auto')->ne('unit')->fi()
|
||||
->beginIF(!$this->app->user->admin)->andWhere('t1.execution')->in("0,{$this->app->user->view->sprints}")->fi()
|
||||
|
||||
@@ -10934,7 +10934,12 @@ class upgradeModel extends model
|
||||
while($action = $stmt->fetch())
|
||||
{
|
||||
$productIdList = array_unique(array_filter(explode(',', $action->product)));
|
||||
foreach($productIdList as $productID) $values[] = "({$action->id}, {$productID})";
|
||||
foreach($productIdList as $productID)
|
||||
{
|
||||
if(!is_numeric($productID)) continue;
|
||||
$values[] = "({$action->id}, {$productID})";
|
||||
}
|
||||
|
||||
if(count($values) >= 5000)
|
||||
{
|
||||
$this->dao->exec($sql . implode(',', $values));
|
||||
|
||||
Reference in New Issue
Block a user