From 4a4bd313e7cbc397373a583c43690faa9a9f3854 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Thu, 9 Jul 2026 07:50:41 +0800 Subject: [PATCH] refactor: match pipeline_core card layout style --- wwwroot/index.ui | 182 ++++++++++++++++++++++++----------------------- 1 file changed, 92 insertions(+), 90 deletions(-) diff --git a/wwwroot/index.ui b/wwwroot/index.ui index 1c16b76..d4b14d4 100644 --- a/wwwroot/index.ui +++ b/wwwroot/index.ui @@ -1,101 +1,103 @@ { "widgettype": "VBox", - "options": {"width": "100%", "height": "100%", "padding": "20px", "gap": "20px"}, + "options": {"width": "100%", "height": "100%", "padding": "0"}, "subwidgets": [ { - "widgettype": "Text", - "options": {"text": "SDLC Pipeline", "cfontsize": 28, "color": "#E0E0E0", "fontWeight": "bold"} - }, - { - "widgettype": "Text", - "options": {"text": "软件开发生命周期管理", "cfontsize": 14, "color": "#888888"} - }, - { - "widgettype": "ResponsableBox", - "options": {"gap": "16px", "minWidth": "220px"}, + "widgettype": "HBox", + "options": {"width": "100%", "alignItems": "center", "padding": "24px 24px 12px 24px", "cheight": 6}, "subwidgets": [ - { - "widgettype": "VBox", - "options": {"backgroundColor": "#1E1E2E", "padding": "20px", "borderRadius": "8px", "cursor": "pointer", "cwidth": 25, "gap": "12px", "border": "1px solid #2A2A3E"}, - "binds": [ - { - "wid": "self", - "event": "click", - "actiontype": "urlwidget", - "target": "app.sdlc_content", - "options": {"url": "{{entire_url('pipeline_sdlc/sd_project_list/index.ui')}}"} - } - ], - "subwidgets": [ - {"widgettype": "Text", "options": {"text": "📁", "cfontsize": 32}}, - {"widgettype": "Text", "options": {"text": "项目管理", "cfontsize": 18, "color": "#FFFFFF", "fontWeight": "bold"}}, - {"widgettype": "Text", "options": {"text": "Project Management", "cfontsize": 12, "color": "#4A90D9"}}, - {"widgettype": "Text", "options": {"text": "管理所有软件项目的创建、配置和状态跟踪", "cfontsize": 13, "color": "#888888"}} - ] - }, - { - "widgettype": "VBox", - "options": {"backgroundColor": "#1E1E2E", "padding": "20px", "borderRadius": "8px", "cursor": "pointer", "cwidth": 25, "gap": "12px", "border": "1px solid #2A2A3E"}, - "binds": [ - { - "wid": "self", - "event": "click", - "actiontype": "urlwidget", - "target": "app.sdlc_content", - "options": {"url": "{{entire_url('pipeline_sdlc/sd_iteration/index.ui')}}"} - } - ], - "subwidgets": [ - {"widgettype": "Text", "options": {"text": "🔄", "cfontsize": 32}}, - {"widgettype": "Text", "options": {"text": "迭代看板", "cfontsize": 18, "color": "#FFFFFF", "fontWeight": "bold"}}, - {"widgettype": "Text", "options": {"text": "Iteration Board", "cfontsize": 12, "color": "#4A90D9"}}, - {"widgettype": "Text", "options": {"text": "可视化迭代进度,管理Sprint和任务分配", "cfontsize": 13, "color": "#888888"}} - ] - }, - { - "widgettype": "VBox", - "options": {"backgroundColor": "#1E1E2E", "padding": "20px", "borderRadius": "8px", "cursor": "pointer", "cwidth": 25, "gap": "12px", "border": "1px solid #2A2A3E"}, - "binds": [ - { - "wid": "self", - "event": "click", - "actiontype": "urlwidget", - "target": "app.sdlc_content", - "options": {"url": "{{entire_url('pipeline_sdlc/sd_bug_list/index.ui')}}"} - } - ], - "subwidgets": [ - {"widgettype": "Text", "options": {"text": "🐛", "cfontsize": 32}}, - {"widgettype": "Text", "options": {"text": "Bug管理", "cfontsize": 18, "color": "#FFFFFF", "fontWeight": "bold"}}, - {"widgettype": "Text", "options": {"text": "Bug Management", "cfontsize": 12, "color": "#4A90D9"}}, - {"widgettype": "Text", "options": {"text": "跟踪和管理项目缺陷,分配修复任务", "cfontsize": 13, "color": "#888888"}} - ] - }, - { - "widgettype": "VBox", - "options": {"backgroundColor": "#1E1E2E", "padding": "20px", "borderRadius": "8px", "cursor": "pointer", "cwidth": 25, "gap": "12px", "border": "1px solid #2A2A3E"}, - "binds": [ - { - "wid": "self", - "event": "click", - "actiontype": "urlwidget", - "target": "app.sdlc_content", - "options": {"url": "{{entire_url('pipeline_sdlc/sd_deploy_env_list/index.ui')}}"} - } - ], - "subwidgets": [ - {"widgettype": "Text", "options": {"text": "🚀", "cfontsize": 32}}, - {"widgettype": "Text", "options": {"text": "部署环境", "cfontsize": 18, "color": "#FFFFFF", "fontWeight": "bold"}}, - {"widgettype": "Text", "options": {"text": "Deploy Environments", "cfontsize": 12, "color": "#4A90D9"}}, - {"widgettype": "Text", "options": {"text": "配置和管理开发、测试、生产部署环境", "cfontsize": 13, "color": "#888888"}} - ] - } + {"widgettype": "Title2", "options": {"text": "开发产线"}}, + {"widgettype": "Filler"}, + {"widgettype": "Text", "options": {"text": "项目管理、迭代跟踪、测试与部署", "cfontsize": 1.2}} ] }, { - "widgettype": "VBox", - "id": "app.sdlc_content", - "options": {"width": "100%", "flex": "1", "minHeight": "200px"} + "widgettype": "HBox", + "options": {"width": "100%", "padding": "12px 24px 12px 24px", "cheight": 18}, + "subwidgets": [ + { + "widgettype": "ResponsableBox", + "options": {"gap": "24px", "minWidth": "260px"}, + "subwidgets": [ + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_projects/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#EFF6FF", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "项目管理", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "创建与管理软件项目", "cfontsize": 1.2}} + ] + }, + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_iterations/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#F0FDF4", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "迭代管理", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "规划Sprint与迭代周期", "cfontsize": 1.2}} + ] + }, + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_test_plans/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#F5F3FF", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "测试计划", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "制定与跟踪测试计划", "cfontsize": 1.2}} + ] + }, + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_test_cases/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#FFF7ED", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "测试用例", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "编写与管理测试用例", "cfontsize": 1.2}} + ] + }, + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_bugs/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#FEF2F2", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "Bug管理", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "跟踪与修复项目缺陷", "cfontsize": 1.2}} + ] + }, + { + "widgettype": "VBox", + "options": {"css": "card", "cwidth": 23, "cheight": 12, "padding": "24px", "cursor": "pointer", "bgcolor": "#fff"}, + "binds": [{"wid": "self", "event": "click", "actiontype": "urlwidget", "target": "app.pipeline_sdlc_content", "options": {"url": "{{entire_url('sd_deploy_envs/')}}"}, "mode": "replace"}], + "subwidgets": [ + {"widgettype": "VBox", "options": {"width": "44px", "height": "44px", "bgcolor": "#F0FDFA", "borderRadius": "12px", "alignItems": "center", "justifyContent": "center", "marginBottom": "12px"}, "subwidgets": [ + {"widgettype": "Svg", "options": {"svg": "", "width": "24px", "height": "24px"}} + ]}, + {"widgettype": "Title3", "options": {"text": "部署环境", "marginBottom": "4px"}}, + {"widgettype": "Text", "options": {"text": "配置开发测试生产环境", "cfontsize": 1.2}} + ] + } + ] + } + ]}, + { + "widgettype": "VScrollPanel", + "id": "pipeline_sdlc_content", + "options": {"css": "filler", "width": "100%", "height": "100%"} } ] }