fix: 测试用例提Bug按钮 + 全局侧边栏阴影统一

1. 测试用例"提 BUG"按钮接入工作台:
   - TestCaseDetailDrawer 传入 onCreateBug callback
   - 点击"提 BUG"关闭测试详情,弹出 BugCreateModal
   - 创建后 Bug 自动关联该测试用例

2. 全局侧边弹窗阴影统一为 shadow-2xl:
   - PlanDetailDrawer: shadow-2xl ✓
   - DevTaskDetailDrawer: shadow-[var(--shadow-lg)] → shadow-2xl
   - TestCaseDetailDrawer: shadow-[var(--shadow-lg)] → shadow-2xl
   - BugDetailDrawer: shadow-[var(--shadow-lg)] → shadow-2xl
   - 所有 Drawer 样式一致,阴影明显

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Script Generator
2026-06-15 17:45:09 +08:00
parent 98251f1c38
commit c7bccd7819
5 changed files with 10 additions and 5 deletions

View File

@@ -17,6 +17,7 @@ import { PlanDetailDrawer } from '@/components/version/PlanDetailDrawer';
import { DevTaskDetailDrawer } from '@/components/dev-task/DevTaskDetailDrawer';
import { TestCaseDetailDrawer } from '@/components/test-case/TestCaseDetailDrawer';
import { BugDetailDrawer } from '@/components/bug/BugDetailDrawer';
import { BugCreateModal } from '@/components/bug/BugCreateModal';
import { DEV_TASK_STATUS_LABEL, DEV_TASK_STATUS_COLOR } from '@/lib/dev-task';
import { TEST_CASE_STATUS_LABEL, TEST_CASE_STATUS_COLOR } from '@/lib/test-case';
import { BUG_STATUS_LABEL, BUG_STATUS_COLOR, BUG_SEVERITY_LABEL, BUG_SEVERITY_COLOR } from '@/lib/bug';
@@ -53,6 +54,7 @@ export default function WorkspacePage() {
const [showCompleted, setShowCompleted] = useState(true);
const [selectedVersionId, setSelectedVersionId] = useState<string | null>(null);
const [drawerItem, setDrawerItem] = useState<WorkItem | null>(null);
const [bugFromTestCaseId, setBugFromTestCaseId] = useState<string | null>(null);
useEffect(() => { fetchOverview(); }, [fetchOverview]);
useEffect(() => { fetchPlans(); }, [fetchPlans]);
@@ -226,11 +228,14 @@ export default function WorkspacePage() {
<DevTaskDetailDrawer taskId={drawerItem.id} allTaskIds={devTasks.map((t) => t.id)} onClose={() => setDrawerItem(null)} />
)}
{drawerItem && drawerItem.type === 'testCase' && (
<TestCaseDetailDrawer testCaseId={drawerItem.id} onClose={() => setDrawerItem(null)} />
<TestCaseDetailDrawer testCaseId={drawerItem.id} onClose={() => setDrawerItem(null)} onCreateBug={(tcId) => { setDrawerItem(null); setBugFromTestCaseId(tcId); }} />
)}
{drawerItem && drawerItem.type === 'bug' && (
<BugDetailDrawer bugId={drawerItem.id} onClose={() => setDrawerItem(null)} />
)}
{bugFromTestCaseId && (
<BugCreateModal testCaseId={bugFromTestCaseId} onClose={() => setBugFromTestCaseId(null)} />
)}
</div>
);
}