From daf292f687a77f84def14ae2c01fafaf6aa3f438 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Wed, 18 Mar 2026 19:31:30 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20[bending]=20LOT=20=EC=B1=84=EB=B2=88=20?= =?UTF-8?q?=EC=BD=94=EB=93=9C=EB=A7=B5=20=EC=B5=9C=EC=8B=A0=ED=99=94=20(?= =?UTF-8?q?=EA=B2=BD=EB=8F=99=EA=B8=B0=EC=97=85=202026-03=20=EA=B8=B0?= =?UTF-8?q?=EC=A4=80)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 종류 코드 신규: W(본체L120), F(SUS마감재L120), H(화이바원단W80) - 길이 코드 신규: 06(610), 17(1750), 20(2000), 45(4500) - 명칭 변경: 본체디딤(S:M), SUS마감재(3)(S:S/U), 화이바원단(W50)(G:I) - 가이드레일(R/S)에서 EGI 종류 코드 제거 - MATERIAL_MAP 신규 조합 추가 --- app/Services/BendingCodeService.php | 37 ++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/app/Services/BendingCodeService.php b/app/Services/BendingCodeService.php index 818f4c04..2299e028 100644 --- a/app/Services/BendingCodeService.php +++ b/app/Services/BendingCodeService.php @@ -22,16 +22,22 @@ class BendingCodeService extends Service // ========================================================================= // 종류 코드 + 사용 가능 제품 + // 경동기업 재공품 LOT 채번 규칙 기준 (2026-03 최신) // ========================================================================= public const SPECS = [ - ['code' => 'M', 'name' => '본체', 'products' => ['R', 'S']], + ['code' => 'M', 'name' => '본체', 'products' => ['R']], + ['code' => 'M', 'name' => '본체디딤', 'products' => ['S']], ['code' => 'T', 'name' => '본체(철재)', 'products' => ['R', 'S']], ['code' => 'C', 'name' => 'C형', 'products' => ['R', 'S']], ['code' => 'D', 'name' => 'D형', 'products' => ['R', 'S']], - ['code' => 'S', 'name' => 'SUS(마감)', 'products' => ['R', 'S', 'B', 'T']], - ['code' => 'U', 'name' => 'SUS(마감)2', 'products' => ['S']], - ['code' => 'E', 'name' => 'EGI(마감)', 'products' => ['R', 'S', 'B', 'T']], - ['code' => 'I', 'name' => '화이바원단', 'products' => ['G']], + ['code' => 'S', 'name' => 'SUS마감재', 'products' => ['R', 'B', 'T']], + ['code' => 'S', 'name' => 'SUS마감재(3)', 'products' => ['S']], + ['code' => 'U', 'name' => 'SUS마감재(3)', 'products' => ['S']], + ['code' => 'W', 'name' => '본체(L120)', 'products' => ['R', 'S']], + ['code' => 'F', 'name' => 'SUS마감재(L120)', 'products' => ['R', 'S']], + ['code' => 'E', 'name' => 'EGI', 'products' => ['B', 'T']], + ['code' => 'I', 'name' => '화이바원단(W50)', 'products' => ['G']], + ['code' => 'H', 'name' => '화이바원단(W80)', 'products' => ['G']], ['code' => 'A', 'name' => '스크린용', 'products' => ['L']], ['code' => 'F', 'name' => '전면부', 'products' => ['C']], ['code' => 'P', 'name' => '점검구', 'products' => ['C']], @@ -41,6 +47,8 @@ class BendingCodeService extends Service // ========================================================================= // 모양&길이 코드 + // 연기차단재(G)는 SMOKE_BARRIER, 그 외는 GENERAL 사용 + // 신규 길이 발생 시 코드 추가 가능 (확장형) // ========================================================================= public const LENGTHS_SMOKE_BARRIER = [ ['code' => '53', 'name' => 'W50 × 3000'], @@ -50,39 +58,52 @@ class BendingCodeService extends Service ]; public const LENGTHS_GENERAL = [ + ['code' => '06', 'name' => '610'], ['code' => '12', 'name' => '1219'], + ['code' => '17', 'name' => '1750'], + ['code' => '20', 'name' => '2000'], ['code' => '24', 'name' => '2438'], ['code' => '30', 'name' => '3000'], ['code' => '35', 'name' => '3500'], ['code' => '40', 'name' => '4000'], ['code' => '41', 'name' => '4150'], - ['code' => '42', 'name' => '4200'], ['code' => '43', 'name' => '4300'], + ['code' => '45', 'name' => '4500'], ]; // ========================================================================= // 제품+종류 → 원자재(재질) 매핑 // ========================================================================= public const MATERIAL_MAP = [ + // 연기차단재 'G:I' => '화이바원단', + 'G:H' => '화이바원단', + // 하단마감재(스크린) 'B:S' => 'SUS 1.2T', 'B:E' => 'EGI 1.55T', + // 하단마감재(철재) 'T:S' => 'SUS 1.2T', 'T:E' => 'EGI 1.55T', + // L-Bar 'L:A' => 'EGI 1.55T', + // 가이드레일(벽면형) 'R:M' => 'EGI 1.55T', 'R:T' => 'EGI 1.55T', 'R:C' => 'EGI 1.55T', 'R:D' => 'EGI 1.55T', 'R:S' => 'SUS 1.2T', - 'R:E' => 'EGI 1.55T', + 'R:W' => 'EGI 1.55T', + 'R:F' => 'SUS 1.2T', + // 가이드레일(측면형) 'S:M' => 'EGI 1.55T', 'S:T' => 'EGI 1.55T', 'S:C' => 'EGI 1.55T', 'S:D' => 'EGI 1.55T', 'S:S' => 'SUS 1.2T', 'S:U' => 'SUS 1.2T', - 'S:E' => 'EGI 1.55T', + 'S:W' => 'EGI 1.55T', + 'S:F' => 'SUS 1.2T', + // 케이스 'C:F' => 'EGI 1.55T', 'C:P' => 'EGI 1.55T', 'C:L' => 'EGI 1.55T',