Merge pull request 'fix(ui): 타임라인 상세 화면 이동 오류 수정 및 실행 중 작업 상세 버튼 추가 (#34)' (#36) from bugfix/ISSUE-34-timeline-detail-navigation into develop
This commit is contained in:
커밋
2333435ccf
@ -8,5 +8,8 @@
|
|||||||
- 자동 재수집 및 재수집 프로세스 전면 개선 (#30)
|
- 자동 재수집 및 재수집 프로세스 전면 개선 (#30)
|
||||||
- 배치 작업 목록 UX 개선: 상태 필터, 카드/테이블 뷰, 정렬, 실행 중 강조 (#33)
|
- 배치 작업 목록 UX 개선: 상태 필터, 카드/테이블 뷰, 정렬, 실행 중 강조 (#33)
|
||||||
|
|
||||||
|
### 수정
|
||||||
|
- 타임라인 상세 화면 이동 오류 수정 및 실행 중 작업 상세 버튼 추가 (#34)
|
||||||
|
|
||||||
### 기타
|
### 기타
|
||||||
- 팀 워크플로우 v1.6.1 동기화
|
- 팀 워크플로우 v1.6.1 동기화
|
||||||
|
|||||||
@ -450,7 +450,7 @@ export default function Executions() {
|
|||||||
</td>
|
</td>
|
||||||
<td className="px-6 py-4 text-right">
|
<td className="px-6 py-4 text-right">
|
||||||
<div className="flex items-center justify-end gap-2">
|
<div className="flex items-center justify-end gap-2">
|
||||||
{isRunning(exec.status) ? (
|
{isRunning(exec.status) && (
|
||||||
<>
|
<>
|
||||||
<button
|
<button
|
||||||
onClick={() =>
|
onClick={() =>
|
||||||
@ -460,7 +460,6 @@ export default function Executions() {
|
|||||||
>
|
>
|
||||||
중지
|
중지
|
||||||
</button>
|
</button>
|
||||||
{/* F1: 강제 종료 버튼 */}
|
|
||||||
<button
|
<button
|
||||||
onClick={() =>
|
onClick={() =>
|
||||||
setAbandonTarget(exec)
|
setAbandonTarget(exec)
|
||||||
@ -470,18 +469,17 @@ export default function Executions() {
|
|||||||
강제 종료
|
강제 종료
|
||||||
</button>
|
</button>
|
||||||
</>
|
</>
|
||||||
) : (
|
|
||||||
<button
|
|
||||||
onClick={() =>
|
|
||||||
navigate(
|
|
||||||
`/executions/${exec.executionId}`,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
className="inline-flex items-center gap-1 px-3 py-1.5 text-xs font-medium text-wing-accent bg-wing-accent/10 rounded-lg hover:bg-wing-accent/15 transition-colors"
|
|
||||||
>
|
|
||||||
상세
|
|
||||||
</button>
|
|
||||||
)}
|
)}
|
||||||
|
<button
|
||||||
|
onClick={() =>
|
||||||
|
navigate(
|
||||||
|
`/executions/${exec.executionId}`,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
className="inline-flex items-center gap-1 px-3 py-1.5 text-xs font-medium text-wing-accent bg-wing-accent/10 rounded-lg hover:bg-wing-accent/15 transition-colors"
|
||||||
|
>
|
||||||
|
상세
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import { useState, useCallback, useRef, useEffect } from 'react';
|
import { useState, useCallback, useRef, useEffect } from 'react';
|
||||||
|
import { Link } from 'react-router-dom';
|
||||||
import { batchApi, type ExecutionInfo, type JobExecutionDto, type PeriodInfo, type ScheduleTimeline } from '../api/batchApi';
|
import { batchApi, type ExecutionInfo, type JobExecutionDto, type PeriodInfo, type ScheduleTimeline } from '../api/batchApi';
|
||||||
import { formatDateTime, calculateDuration } from '../utils/formatters';
|
import { formatDateTime, calculateDuration } from '../utils/formatters';
|
||||||
import { usePoller } from '../hooks/usePoller';
|
import { usePoller } from '../hooks/usePoller';
|
||||||
@ -446,12 +447,12 @@ export default function Timeline() {
|
|||||||
{calculateDuration(exec.startTime, exec.endTime)}
|
{calculateDuration(exec.startTime, exec.endTime)}
|
||||||
</td>
|
</td>
|
||||||
<td className="py-2 px-3 text-right">
|
<td className="py-2 px-3 text-right">
|
||||||
<a
|
<Link
|
||||||
href={`/executions/${exec.executionId}`}
|
to={`/executions/${exec.executionId}`}
|
||||||
className="text-xs text-wing-accent hover:text-wing-accent font-medium"
|
className="text-xs text-wing-accent hover:text-wing-accent font-medium no-underline"
|
||||||
>
|
>
|
||||||
상세
|
상세
|
||||||
</a>
|
</Link>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
))}
|
))}
|
||||||
|
|||||||
@ -14,7 +14,9 @@ public class WebViewController {
|
|||||||
|
|
||||||
@GetMapping({"/", "/jobs", "/executions", "/executions/{id:\\d+}",
|
@GetMapping({"/", "/jobs", "/executions", "/executions/{id:\\d+}",
|
||||||
"/recollects", "/recollects/{id:\\d+}",
|
"/recollects", "/recollects/{id:\\d+}",
|
||||||
"/schedules", "/schedule-timeline", "/monitoring"})
|
"/schedules", "/schedule-timeline", "/monitoring",
|
||||||
|
"/jobs/**", "/executions/**", "/recollects/**",
|
||||||
|
"/schedules/**", "/schedule-timeline/**", "/monitoring/**"})
|
||||||
public String forward() {
|
public String forward() {
|
||||||
return "forward:/index.html";
|
return "forward:/index.html";
|
||||||
}
|
}
|
||||||
|
|||||||
불러오는 중...
Reference in New Issue
Block a user