* [task#146638,done,2h,0h] Finish workflowgroup 1.5 menu.

This commit is contained in:
wangyuting
2025-07-15 16:59:35 +08:00
parent e7d993374f
commit 4c82fdd33d
4 changed files with 13 additions and 4 deletions
+1 -1
View File
@@ -787,7 +787,7 @@ $config->db->sqliteBlacklist = array('sqlite_queue', 'cron');
$config->hasDropmenuApps = array('program', 'project', 'product', 'execution', 'qa', 'admin', 'bi', 'feedback', 'demandpool');
$config->hasBranchMenuModules = array('product', 'story', 'release', 'bug', 'testcase', 'testtask', 'branch', 'tree');
$config->excludeBranchMenu = array('product-dashboard', 'product-view');
$config->excludeDropmenuList = array('program-browse', 'program-productview', 'program-kanban', 'product-all', 'product-index', 'product-kanban', 'project-kanban', 'execution-all', 'execution-executionkanban', 'project-browse', 'project-template', 'project-createtemplate', 'project-batchedit', 'product-batchedit', 'admin-index', 'product-create', 'project-create', 'execution-create', 'program-create', 'execution-batchedit', 'metric-preview', 'metric-browse', 'metric-view', 'metriclib-browse', 'qa-index', 'caselib-create', 'feedback-batchedit', 'feedback-batchclose', 'feedback-showimport', 'dimension-browse', 'dataview-browse', 'dataview-create', 'dataview-query', 'ticket-batchedit', 'ticket-batchfinish', 'ticket-batchactivate', 'file-download', 'workflowgroup-product', 'workflowgroup-project', 'workflow-browseflow', 'workflowdatasource-browse', 'workflowrule-browse', 'approvalflow-browse', 'approvalflow-role', 'approvalflow-design', 'approvalflow-view' , 'workflowgroup-design', 'workflowgroup-deliverable');
$config->excludeDropmenuList = array('program-browse', 'program-productview', 'program-kanban', 'product-all', 'product-index', 'product-kanban', 'project-kanban', 'execution-all', 'execution-executionkanban', 'project-browse', 'project-template', 'project-createtemplate', 'project-batchedit', 'product-batchedit', 'admin-index', 'product-create', 'project-create', 'execution-create', 'program-create', 'execution-batchedit', 'metric-preview', 'metric-browse', 'metric-view', 'metriclib-browse', 'qa-index', 'caselib-create', 'feedback-batchedit', 'feedback-batchclose', 'feedback-showimport', 'dimension-browse', 'dataview-browse', 'dataview-create', 'dataview-query', 'ticket-batchedit', 'ticket-batchfinish', 'ticket-batchactivate', 'file-download', 'workflow-browseflow', 'workflowdatasource-browse', 'workflowrule-browse', 'approvalflow-browse', 'approvalflow-role', 'approvalflow-design', 'approvalflow-view');
$config->hasSwitcherModules = array('design');
$config->hasSwitcherMethods = array('project-bug', 'project-testcase', 'execution-bug', 'execution-testcase', 'testtask-cases', 'testtask-view', 'testtask-report', 'testtask-groupcase', 'testtask-linkcase');
$config->excludeSwitcherList = array();
+2 -1
View File
@@ -3,4 +3,5 @@
#pick-pop-admin-menu .dropmenu-item + .dropmenu-item {margin-top: 4px}
#pick-pop-admin-menu .dropmenu-item.active {background-color: unset;}
#pick-pop-admin-menu .dropmenu-item:hover {color: rgba(var(--color-primary-500-rgb),var(--tw-text-opacity)); background-color: rgba(var(--color-primary-50-rgb),var(--tw-bg-opacity));}
.dropmenu-item .item-content .label {flex-shrink: 0;}
.dropmenu-item .item-content .label {flex-shrink: 0;}
.svg-icon {height: 24px; width: 24px; text-align: center;}
+1 -2
View File
@@ -481,12 +481,11 @@ class admin extends control
foreach($this->lang->admin->menuList as $menuKey => $menuGroup)
{
if($this->config->vision == 'lite' && !in_array($menuKey, $this->config->admin->liteMenuList)) continue;
if(!empty($menuGroup['group']) && $menuGroup['group'] == 'flow') continue;
$data[] = array(
'id' => $menuKey,
'name' => $menuKey,
'content' => array('html' => "<div class='flex items-center my-0.5'><img class='mr-2' src='static/svg/admin-{$menuKey}.svg'/> {$menuGroup['name']}</div>"),
'content' => array('html' => "<div class='flex items-center my-0.5'>" . (!empty($menuGroup['icon']) ? "<i class='icon icon-{$menuGroup['icon']} svg-icon mr-2 rounded-lg content-center bg-{$menuGroup['bg']} text-white'></i>" : "<img class='mr-2' src='static/svg/admin-{$menuKey}.svg'/>") . " {$menuGroup['name']}</div>"),
'text' => $menuGroup['name'],
'titleClass' => 'hidden',
'type' => 'item',
+9
View File
@@ -123,6 +123,8 @@ class adminModel extends model
$methodName = $this->app->rawMethod;
$firstParam = $this->app->rawParams ? reset($this->app->rawParams) : '';
if($moduleName == 'workflowgroup' && ($methodName == 'project' || $methodName == 'product')) return;
foreach($this->lang->admin->menuList->{$menuKey}['subMenu'] as $subMenuKey => $subMenu)
{
$subModule = '';
@@ -132,6 +134,8 @@ class adminModel extends model
if($firstParam == $subMenuKey) $subModule = 'custom';
}
if(isset($subMenu['link']) && strpos($subMenu['link'], '%s') !== false) $subMenu['link'] = sprintf($subMenu['link'], $firstParam);
if(!empty($subModule)) $subMenu['subModule'] = $subModule;
if(isset($this->lang->admin->menuList->{$menuKey}['tabMenu'][$subMenuKey]))
{
@@ -384,6 +388,11 @@ class adminModel extends model
{
if(in_array($firstParam, $this->config->admin->menuModuleGroup[$menuKey]["custom|$methodName"])) return $menuKey;
}
else if($moduleName == 'workflowgroup' && $firstParam)
{
$workflowgroup = $this->loadModel('workflowgroup')->fetchByID($firstParam);
return $workflowgroup->type == 'project' ? 'projectflow' : 'productflow';
}
else
{
return $menuKey;