Merge branch release/21.7.7 of zentao/zentaopms (#12448)

This commit is contained in:
刘刚
2025-11-20 16:38:18 +08:00
committed by Gitfox
2 changed files with 42 additions and 28 deletions
+15 -1
View File
@@ -5003,6 +5003,18 @@ class executionModel extends model
$this->loadModel('task');
$this->app->loadConfig('project');
$flowActionConditions = array();
if($this->config->edition != 'open')
{
$this->loadModel('flow');
$flowActions = $this->loadModel('workflowaction')->getList('task');
foreach($flowActions as $flowAction)
{
if(!empty($flowAction->conditions)) $flowActionConditions[$flowAction->action] = $flowAction->conditions;
}
}
foreach($tasks as $task)
{
if(!$canModify) continue;
@@ -5024,7 +5036,9 @@ class executionModel extends model
if(!common::hasDBPriv($task, 'task', $rawAction)) continue;
$clickable = $this->task->isClickable($task, $rawAction);
$action = array('name' => $action);
if($clickable && !empty($flowActionConditions[$rawAction])) $clickable = $this->flow->checkConditions($flowActionConditions[$rawAction], $task);
$action = array('name' => $action);
if(!$clickable) $action['disabled'] = true;
$task->actions[] = $action;
}
+27 -27
View File
@@ -1,5 +1,26 @@
#!/usr/bin/env php
<?php
/**
title=测试 executionModel->appendTasks();
timeout=0
cid=1
- 判断执行数量 @4
- 判断第一个执行的名称
- 第1条的execution属性 @1
- 第1条的status属性 @pause
- 查看获取到的第三个执行的ID和状态
- 第3条的rawID属性 @10
- 第3条的status属性 @changed
- 查看获取非需求变更任务的操作按钮
- 第0条的name属性 @startTask
- 第0条的disabled属性 @~~
- 查看获取需求变更任务的操作按钮
- 第0条的name属性 @startTask
- 第0条的disabled属性 @~~
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/execution.unittest.class.php';
@@ -26,38 +47,17 @@ $story->status->range('active');
$story->version->range('1{6},2{2},3{2}');
$story->gen(10);
zenData('workflowaction')->gen(0);
su('admin');
/**
title=测试 executionModel->appendTasks();
timeout=0
cid=16263
- 判断执行数量 @4
- 判断第一个执行的名称
- 第1条的execution属性 @1
- 第1条的status属性 @wait
- 查看获取到的第三个执行的开始日期和结束日期
- 第3条的rawID属性 @1
- 第3条的progress属性 @100
- 查看获取非需求变更任务的操作按钮
- 第0条的name属性 @startTask
- 第0条的disabled属性 @1
- 查看获取需求变更任务的操作按钮
- 第0条的name属性 @confirmStoryChange
- 第0条的disabled属性 @~~
*/
global $app;
$app->user->admin = true;
$executionTester = new executionTest();
$executions = $executionTester->appendTasksTest();
r(count($executions)) && p() && e('4'); // 判断执行数量
r($executions) && p('1:execution,status') && e('1,wait'); // 判断第一个执行的名称
r($executions) && p('3:rawID,progress') && e('1,100'); // 查看获取到的第三个执行的开始日期和结束日期
r($executions[2]->actions) && p('0:name,disabled') && e('startTask,1'); // 查看获取非需求变更任务的操作按钮
r($executions[0]->actions) && p('0:name,disabled') && e('confirmStoryChange,~~'); // 查看获取需求变更任务的操作按钮
r(count($executions)) && p() && e('4'); // 判断执行数量
r($executions) && p('1:execution,status') && e('1,pause'); // 判断第一个执行的名称
r($executions) && p('3:rawID,status') && e('10,changed'); // 查看获取到的第三个执行的ID和状态
r($executions[2]->actions) && p('0:name,disabled') && e('startTask,~~'); // 查看获取非需求变更任务的操作按钮
r($executions[0]->actions) && p('0:name,disabled') && e('startTask,~~'); // 查看获取需求变更任务的操作按钮