digramId를 사용해 제어 관계 그룹화

This commit is contained in:
hyeonsu
2025-09-09 18:42:01 +09:00
parent 7bcd405a04
commit 5043b11149
11 changed files with 312 additions and 113 deletions

View File

@@ -11,19 +11,19 @@ import { toast } from "sonner";
export default function DataFlowEditPage() {
const params = useParams();
const router = useRouter();
const [relationshipId, setRelationshipId] = useState<string>("");
const [diagramId, setDiagramId] = useState<number>(0);
const [diagramName, setDiagramName] = useState<string>("");
useEffect(() => {
if (params.relationshipId) {
// URL에서 relationship_id 설정
const id = params.relationshipId as string;
setRelationshipId(id);
if (params.diagramId) {
// URL에서 diagram_id 설정
const id = parseInt(params.diagramId as string);
setDiagramId(id);
// relationship_id로 관계도명 조회
// diagram_id로 관계도명 조회
const fetchDiagramName = async () => {
try {
const relationships = await DataFlowAPI.getDiagramRelationshipsByRelationshipId(id);
const relationships = await DataFlowAPI.getDiagramRelationshipsByDiagramId(id);
if (relationships.length > 0) {
setDiagramName(relationships[0].relationship_name);
} else {
@@ -37,13 +37,13 @@ export default function DataFlowEditPage() {
fetchDiagramName();
}
}, [params.relationshipId]);
}, [params.diagramId]);
const handleBackToList = () => {
router.push("/admin/dataflow");
};
if (!relationshipId || !diagramName) {
if (!diagramId || !diagramName) {
return (
<div className="flex h-64 items-center justify-center">
<div className="text-center">
@@ -74,11 +74,7 @@ export default function DataFlowEditPage() {
{/* 데이터플로우 디자이너 */}
<div className="rounded-lg border border-gray-200 bg-white">
<DataFlowDesigner
selectedDiagram={diagramName}
relationshipId={relationshipId}
onBackToList={handleBackToList}
/>
<DataFlowDesigner selectedDiagram={diagramName} diagramId={diagramId} onBackToList={handleBackToList} />
</div>
</div>
);