-
부적합 내용
+
상세 내용
-
- ${(issue.final_description || issue.description || '중복작업 신고용').split(' ')[0] || '부적합'}
-
-
- ${(issue.final_description || issue.description || '중복작업 신고용').split(' ').slice(1).join(' ') || '상세 내용 없음'}
+
+ ${getIssueDetail(issue)}
diff --git a/frontend/issues-inbox.html b/frontend/issues-inbox.html
index 423854e..87fb7e2 100644
--- a/frontend/issues-inbox.html
+++ b/frontend/issues-inbox.html
@@ -377,9 +377,15 @@
-
+
+
+
+
+
+
+ placeholder="부적합에 대한 상세한 설명을 입력하세요...">
@@ -1192,7 +1198,10 @@
// 현재 값들로 폼 초기화
document.getElementById('reviewCategory').value = issue.category;
- document.getElementById('reviewDescription').value = issue.description;
+ // 기존 description을 title과 description으로 분리 (첫 번째 줄을 title로 사용)
+ const lines = issue.description.split('\n');
+ document.getElementById('reviewTitle').value = lines[0] || '';
+ document.getElementById('reviewDescription').value = lines.slice(1).join('\n') || issue.description;
document.getElementById('reviewModal').classList.remove('hidden');
}
@@ -1209,13 +1218,17 @@
const projectId = document.getElementById('reviewProjectId').value;
const category = document.getElementById('reviewCategory').value;
+ const title = document.getElementById('reviewTitle').value.trim();
const description = document.getElementById('reviewDescription').value.trim();
- if (!description) {
- alert('설명을 입력해주세요.');
+ if (!title) {
+ alert('부적합명을 입력해주세요.');
return;
}
+ // 부적합명과 상세 내용을 합쳐서 저장 (첫 번째 줄에 제목, 나머지는 상세 내용)
+ const combinedDescription = title + (description ? '\n' + description : '');
+
try {
const response = await fetch(`/api/inbox/${currentIssueId}/review`, {
method: 'POST',
@@ -1226,7 +1239,7 @@
body: JSON.stringify({
project_id: projectId ? parseInt(projectId) : null,
category: category,
- description: description
+ description: combinedDescription
})
});
diff --git a/frontend/issues-management.html b/frontend/issues-management.html
index af8ae33..d35dcbe 100644
--- a/frontend/issues-management.html
+++ b/frontend/issues-management.html
@@ -692,18 +692,35 @@
}
}
+ // 부적합명 추출 (첫 번째 줄)
+ function getIssueTitle(issue) {
+ const description = issue.final_description || issue.description || '';
+ const lines = description.split('\n');
+ return lines[0] || '부적합명 없음';
+ }
+
+ // 상세 내용 추출 (두 번째 줄부터)
+ function getIssueDetail(issue) {
+ const description = issue.final_description || issue.description || '';
+ const lines = description.split('\n');
+ return lines.slice(1).join('\n') || '상세 내용 없음';
+ }
+
// 진행 중 카드 생성
function createInProgressRow(issue, project) {
return `
-
-
-
No.${issue.project_sequence_no || '-'}
-
+
+
+
+
No.${issue.project_sequence_no || '-'}
+
+
+
${project ? project.project_name : '프로젝트 미지정'}
-
${project ? project.project_name : '프로젝트 미지정'}
+
${getIssueTitle(issue)}