diff --git a/frontend/src/pages/PurchaseRequestPage.jsx b/frontend/src/pages/PurchaseRequestPage.jsx index abe4269..11b3fbf 100644 --- a/frontend/src/pages/PurchaseRequestPage.jsx +++ b/frontend/src/pages/PurchaseRequestPage.jsx @@ -155,97 +155,73 @@ const PurchaseRequestPage = ({ onNavigate, fileId, jobNo, selectedProject }) =>
| No | -카테고리 | -자재 설명 | -크기 | - {category === 'BOLT' ?길이 | :스케줄 | } -재질 | -수량 | -사용자요구 | -|||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {idx + 1} | -- - {material.category} - - | -{material.description} | -{material.size || '-'} | -{material.schedule || '-'} | -{material.material_grade || '-'} | -
- {material.category === 'PIPE' ? (
-
+ {/* 업로드 당시 분류된 정보를 그대로 표시 */}
+ {requestMaterials.length === 0 ? (
+ 자재 정보가 없습니다
+ ) : (
+
+ {/* 카테고리별로 그룹화하여 표시 */}
+ {(() => {
+ // 카테고리별로 자재 그룹화
+ const groupedByCategory = requestMaterials.reduce((acc, material) => {
+ const category = material.category || material.classified_category || 'UNKNOWN';
+ if (!acc[category]) acc[category] = [];
+ acc[category].push(material);
+ return acc;
+ }, {});
+
+ return Object.entries(groupedByCategory).map(([category, materials]) => (
+
+
- ));
- })()}
+ {Math.round(material.quantity || material.requested_quantity || 0)} {material.unit || material.requested_unit || '개'}
+
+ + {category} ({materials.length}개) ++
|
+ {material.user_requirement || '-'} | +