'가이드레일(벽면형)', 'S' => '가이드레일(측면형)', 'G' => '연기차단재', 'B' => '하단마감재(스크린)', 'T' => '하단마감재(철재)', 'L' => 'L - Bar', 'C' => '케이스' ]; // 종류명을 매핑하는 배열 $specNames = [ 'I' => '화이바원단', 'S' => 'SUS(마감)', 'U' => 'SUS(마감)2', 'E' => 'EGI(마감)', 'A' => '스크린용', 'D' => 'D형', 'C' => 'C형', 'M' => '본체', 'T' => '본체(철재)', 'B' => '후면코너부', 'L' => '린텔부', 'P' => '점검구', 'F' => '전면부' ]; // 모양&길이를 매핑하는 배열 $slengthNames = [ '53' => 'W50 × 3000', '54' => 'W50 × 4000', '83' => 'W80 × 3000', '84' => 'W80 × 4000', '12' => '1219', // 1219 기장 철판이 없어서 2438 적용 '24' => '2438', '30' => '3000', '35' => '3500', '40' => '4000', '41' => '4150', '42' => '4200', '43' => '4300' ]; echo "찾는 형태: " . $lot_type . '
' ; // 'SS-24' 값을 'S', 'S', '24'로 분리하여 검색 조건에 적용 $prod_value = substr($item_name, 0, 1); // 첫 번째 'S'는 prod $spec_value = substr($item_name, 1, 1); // 두 번째 'S'는 spec $slength_value = substr($item_name, 3); // '24'는 slength // echo $prod_value . ' ' . $spec_value . ' ' . $slength_value ; if ($lot_type === 'product') { // 생산품 로트번호 조회 코드 echo '
생산품 : ' . $item_name . '
'; } elseif ($lot_type === 'material') { // 원자재 로트번호 조회 코드 switch ($spec_value) { case 'S': if ($prod_value == 'B') $rawitemname = "SUS1.55T"; else $rawitemname = "SUS1.2T"; break; case 'X' or 'M' : $rawitemname = "EGI1.55T"; break; case 'H' : $rawitemname = "EGI1.15T"; break; case 'Y' : $rawitemname = "SUS1.2T"; break; } echo "원자재 " . $rawitemname . " 로트 "; } if (empty($item_name)) { echo '
품목명이 없습니다.
'; exit; } if ($lot_type === 'product') { try { $sql = "SELECT * FROM {$DB}.lot WHERE prod = :prod_value AND spec = :spec_value AND slength = :slength_value AND (is_deleted IS NULL OR is_deleted = '0') ORDER BY reg_date DESC LIMIT 12"; // SQL 쿼리 실행 시 바인딩할 값 설정 $stmt = $pdo->prepare($sql); $stmt->bindValue(':prod_value', $prod_value); $stmt->bindValue(':spec_value', $spec_value); $stmt->bindValue(':slength_value', $slength_value); $stmt->execute(); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); // 여기서 'stmt' 사용 if (count($rows) > 0) { echo '
'; // 스크롤 컨테이너 시작 echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; foreach ($rows as $row) { $lot_number = htmlspecialchars($row['lot_number']); $surang = number_format((int)$row['surang']); $prod = htmlspecialchars($row['prod']); $spec = htmlspecialchars($row['spec']); $slength = htmlspecialchars($row['slength']); $reg_date = htmlspecialchars($row['reg_date']); $num = htmlspecialchars($row['num']); // 추가: num 값을 가져옵니다. $fabric_lot = htmlspecialchars($row['fabric_lot']); // 품목명, 종류, 모양&길이에 대한 친절한 표시를 준비 $prodDisplay = isset($prodNames[$prod]) ? "{$prod}({$prodNames[$prod]})" : $prod; $specDisplay = isset($specNames[$spec]) ? "{$spec}({$specNames[$spec]})" : $spec; $slengthDisplay = isset($slengthNames[$slength]) ? "{$slength}({$slengthNames[$slength]})" : $slength; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; } echo ''; echo '
생산로트 등록일품목명종류모양&길이원단로트재고사용수량
' . $lot_number . '' . $reg_date . '' . $prodDisplay . '' . $specDisplay . '' . $slengthDisplay . '' . $fabric_lot . '' . $surang . '' . $usesurang . '
'; echo '
'; // 스크롤 컨테이너 종료 } else { echo '
해당 품목명에 대한 로트 번호가 없습니다.
'; } } catch (PDOException $e) { echo '
오류: ' . htmlspecialchars($e->getMessage()) . '
'; } } if ($lot_type === 'material') { switch (substr($item_name, 0, 1)) { case 'H' : $rawitemname = "EGI1.15T"; break; case 'X' : $rawitemname = "EGI1.55T"; break; case 'Y' : $rawitemname = "SUS1.2T"; break; } try { // 로트 번호를 품목명에 따라 조회 $sql = "SELECT num, item_name, lot_no, received_qty, supplier, inspection_date, specification FROM {$DB}.instock WHERE item_name LIKE :item_name AND is_deleted IS NULL AND lotDone IS NULL ORDER BY inspection_date DESC, lot_no ASC "; $stmh = $pdo->prepare($sql); $stmh->bindValue(':item_name', "%$rawitemname%", PDO::PARAM_STR); $stmh->execute(); $rows = $stmh->fetchAll(PDO::FETCH_ASSOC); // echo '
';
		// print_r($rows);
		// echo '
'; $slength = substr($Request_item_name, 3); // '24'는 slength if($slength == '12') $slength = '24'; echo '
검색어 item_name : ' . $item_name . ' ' . $rawitemname . ', 길이 : ' . $slength . '
'; if (count($rows) > 0) { echo '
'; // 스크롤 컨테이너 시작 echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; foreach ($rows as $row) { $lot_no = htmlspecialchars($row['lot_no']); $received_qty = number_format((int)$row['received_qty']); $supplier = htmlspecialchars($row['supplier']); $inspection_date = htmlspecialchars($row['inspection_date']); $num = htmlspecialchars($row['num']); $item_name = htmlspecialchars($row['item_name']); $specification = htmlspecialchars($row['specification']); $parts = explode('*', $specification); $beforeAsterisk = isset($parts[0]) ? $parts[0] : ''; // '*' 기준 앞으로 $afterAsterisk = isset($parts[1]) ? $parts[1] : ''; // '*' 4000, 3500 이런식으로 뒤의 값 추출 if($afterAsterisk =='1219') $afterAsterisk ='2438' ; // 철판 1219 기장은 없음 $slengthDisplay = isset($slengthNames[$slength]) ? "{$slengthNames[$slength]}" : $slength; // echo 'beforeAsterisk : ' . intval($beforeAsterisk) . 'afterAsterisk : ' . intval($afterAsterisk) . ' , slengthDisplay : ' . intval($slengthDisplay) . '
'; if ($item_name == '내화실') { echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // '소진' 버튼 추가 echo ''; echo ''; } else { if (intval($slengthDisplay) === intval($afterAsterisk) || strpos($slengthDisplay, '*') !== false) { // *3000 뒷 3000이 같은 코드만 or 하부베이스 120*120 형태로 불러오기 echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // '소진' 버튼 추가 echo ''; echo ''; } } } echo ''; echo '
로트 번호품명 규격수량(EA)
길이(M)
납품업체검사일로트소진
' . $lot_no . '' . $item_name . '' . $specification . '' . $received_qty . '' . $supplier . '' . $inspection_date . ''; echo ''; echo '
' . $lot_no . ' ' . $item_name . '' . $specification . ' ' . $received_qty . ' ' . $supplier . ' ' . $inspection_date . ''; echo ''; echo '
'; echo '
'; // 스크롤 컨테이너 종료 } else { echo '
해당 품목명에 대한 로트 번호가 없습니다. item_name : ' . $item_name . '
'; } } catch (PDOException $e) { echo '
오류: ' . htmlspecialchars($e->getMessage()) . '
'; } } ?>