# Activity Thread 사용자 가이드

## 개요

Activity Thread 페이지는 개별 작업 스레드의 상세 정보를 확인하고, 작업을 처리할 수 있는 화면입니다. 이 페이지에서는 작업 내용 확인, 출력 데이터 입력, 작업 상태 변경 등 작업 처리에 필요한 모든 기능을 제공합니다.

## 화면 구성

Activity Thread 페이지는 크게 다음과 같은 요소로 구성됩니다:

1. **작업 정보 리본**: 작업 스레드의 기본 정보(이름, 설명, 상태, 담당자, 마감일 등)를 표시합니다.
2. **작업 내용 영역**: 작업 유형에 따라 다양한 형태의 내용이 표시됩니다.
3. **작업 이력 타임라인**: 작업의 진행 이력과 상태 변경 내역을 시간순으로 표시합니다.
4. **작업 버튼 영역**: 작업을 저장하거나, 제출하거나, 재시작할 수 있는 버튼이 제공됩니다.

## 주요 기능

### 작업 상태 관리

작업 스레드는 다음과 같은 상태를 가질 수 있습니다:

- **Unassigned**: 담당자 할당 대기 중인 작업
- **Assigned**: 담당자가 할당되었으나 아직 시작되지 않은 작업
- **Started**: 담당자가 작업을 시작한 상태
- **Delegated**: 다른 담당자에게 위임된 작업
- **Rejected**: 반려된 작업
- **Ended**: 정상적으로 완료된 작업
- **Aborted**: 중단된 작업

작업의 현재 상태에 따라 수행 가능한 작업이 달라집니다.

### 작업 내용 표시

작업 인스턴스의 UI 유형에 따라 다양한 형태의 내용이 표시됩니다:

#### 1. 템플릿 기반 (uiType: 'template')

HTML 템플릿을 기반으로 한 정적인 형태의 내용을 표시합니다. 템플릿 내에서 사용자 입력 요소를 포함할 수 있습니다.

#### 2. 자동 생성 폼 (uiType: 'generated')

활동 모델을 기반으로 자동으로 생성된 입력/출력 폼이 표시됩니다. 다음과 같은 두 섹션으로 구분됩니다:

- **Input**: 작업 시작 시 입력된 데이터 필드(읽기 전용)
- **Output**: 작업 결과로 생성될 출력 데이터 필드(편집 가능)

#### 3. 보드 뷰어 (uiType: 'board')

보드 형태의 시각적 인터페이스를 통해 작업 내용을 표시합니다. 보드는 다양한 위젯과 컴포넌트를 포함할 수 있으며, 입력값과 출력값이 보드 내에 통합되어 표시됩니다.

#### 4. 사용자 정의 요소 (uiType: 'custom-element')

사용자 정의 웹 컴포넌트를 사용하여 완전히 맞춤화된 인터페이스를 제공합니다. 정의된 태그 이름에 따라 해당 컴포넌트가 로드되어 표시됩니다.

### 작업 처리 기능

페이지 상단의 버튼을 통해 다음과 같은 작업을 수행할 수 있습니다:

1. **저장(Save)**: 현재까지 입력한 출력 데이터를 저장합니다. 작업 상태는 변경되지 않습니다. (상태: Unassigned, Assigned, Started)
2. **제출(Submit)**: 작업을 완료하고 승인을 요청합니다. 작업 상태가 'Ended'로 변경됩니다. (상태: Unassigned, Assigned, Started)
3. **재시작(Restart)**: 반려된 작업을 다시 시작합니다. 작업 상태가 'Started'로 변경됩니다. (상태: Rejected)
4. **닫기(Close)**: 작업 페이지를 닫고 이전 화면으로 돌아갑니다.

### 작업 이력 확인

작업 이력 타임라인을 통해 작업의 진행 이력을 확인할 수 있습니다. 이력에는 다음과 같은 정보가 포함됩니다:

- 상태 변경 내역 및 시간
- 작업 처리자 정보
- 변경 이유(사유)
- 승인/반려 정보

## 추가 기능

### 입력 및 출력 데이터 관리

작업 인스턴스에서 정의된 모델에 따라 입력 및 출력 데이터가 관리됩니다. 입력 데이터는 작업 시작 시 이미 설정된 값으로 읽기 전용이며, 출력 데이터는 작업 수행 결과로 편집 가능합니다.

### 승인 라인 확인

작업에 설정된 승인 라인을 확인할 수 있습니다. 승인 라인은 작업 인스턴스 생성 시 설정되며, 다음과 같은 정보를 포함합니다:

- 승인자 유형(사용자, 역할, 부서 등)
- 승인자 정보(이름, 설명 등)
- 승인 순서

### 마감일 확인

작업의 마감일을 확인할 수 있습니다. 마감일이 가까워지거나 지난 경우, 시각적으로 표시되어 주의를 환기시킵니다.

### 작업 라운드 확인

작업이 반려되어 재시작된 경우, 현재 작업의 라운드 정보를 확인할 수 있습니다. 라운드 정보를 통해 해당 작업이 몇 번째 시도인지 파악할 수 있습니다.
