diff --git a/frontend/src/pages/pirocheck/assignment/Assignment.js b/frontend/src/pages/pirocheck/assignment/Assignment.js
index 27786c7..f4ec879 100644
--- a/frontend/src/pages/pirocheck/assignment/Assignment.js
+++ b/frontend/src/pages/pirocheck/assignment/Assignment.js
@@ -19,9 +19,23 @@ const IS_MOCK = false;
// 제출 상태 아이콘 (부원용)
function StatusIcon({ status }) {
- if (status === 'SUBMITTED') return
;
- if (status === 'LATE') return
;
- return
;
+ if (status === 'PENDING') {
+ return 채점 중;
+ }
+
+ if (status === 'SUCCESS') {
+ return
;
+ }
+
+ if (status === 'INSUFFICIENT_MINOR' || status === 'INSUFFICIENT_MAJOR') {
+ return
;
+ }
+
+ if (status === 'FAILURE') {
+ return
;
+ }
+
+ return 채점 중;
}
// 세션별 과제 묶기
@@ -147,15 +161,20 @@ function Assignment() {
const [modalItem, setModalItem] = useState(undefined); // undefined=닫힘, null=생성, object=수정
const fetchAll = async () => {
- const results = await Promise.all(
- ['1', '2', '3', '4', '5'].map(w =>
- authFetch(`/api/assignments/me/${w}`)
- .then(r => r.json())
- .catch(() => ({ week: w, assignments: [] }))
- )
- );
- setWeeks(results);
- };
+ const results = await Promise.all(
+ ['1', '2', '3', '4', '5'].map(w =>
+ authFetch(`/api/assignments/me/${w}`)
+ .then(r => r.json())
+ .then(json => {
+ console.log('week', w, json);
+ return json;
+ })
+ .catch(() => ({ week: w, assignments: [] }))
+ )
+ );
+
+ setWeeks(results);
+};
// 수정 시 로컬 state만 업데이트 (순서 유지)
const handleEditSave = (updatedItem) => {
diff --git a/frontend/src/pages/pirocheck/assignment/Assignment.module.css b/frontend/src/pages/pirocheck/assignment/Assignment.module.css
index 8621bcf..1560495 100644
--- a/frontend/src/pages/pirocheck/assignment/Assignment.module.css
+++ b/frontend/src/pages/pirocheck/assignment/Assignment.module.css
@@ -157,6 +157,13 @@
flex-shrink: 0;
}
+.pendingText {
+ color: var(--main);
+ font-size: 0.9rem;
+ font-weight: 600;
+ white-space: nowrap;
+}
+
.divider {
border: none;
border-top: 1px solid #555;
diff --git a/frontend/src/pages/pirocheck/students/StudentDetail.js b/frontend/src/pages/pirocheck/students/StudentDetail.js
index c6b2685..4177236 100644
--- a/frontend/src/pages/pirocheck/students/StudentDetail.js
+++ b/frontend/src/pages/pirocheck/students/StudentDetail.js
@@ -10,8 +10,14 @@ import Toggle2 from '../../../assets/images/icon_togle2.svg';
const IS_MOCK = false;
const dayLabel = { TUESDAY: 'TUE', THURSDAY: 'THU', SATURDAY: 'SAT' };
-const statusOptions = ['PENDING', 'SUCCESS', 'INSUFFICIENT', 'FAILURE'];
-const statusLabel = { PENDING: '채점 중', SUCCESS: '성공', INSUFFICIENT: '미달', FAILURE: '실패' };
+const statusOptions = ['PENDING', 'SUCCESS', 'INSUFFICIENT_MINOR', 'INSUFFICIENT_MAJOR', 'FAILURE'];
+const statusLabel = {
+ PENDING: '채점 중',
+ SUCCESS: '성공',
+ INSUFFICIENT_MINOR: '경미한 미달',
+ INSUFFICIENT_MAJOR: '심각한 미달',
+ FAILURE: '실패',
+};
function WeekBlock({ weekData, onChange }) {
const [isOpen, setIsOpen] = useState(false);