prepare($sql); $stmh->bindValue(1, $num, PDO::PARAM_STR); $stmh->execute(); $count = $stmh->rowCount(); if ($count < 1) { print "검색결과가 없습니다.
"; } else { $row = $stmh->fetch(PDO::FETCH_ASSOC); include "_row.php"; // output_extra 테이블에서 데이터 불러오기 require_once $_SERVER['DOCUMENT_ROOT'] . '/output/load_output_extraTable.php'; } } catch (PDOException $Exception) { print "오류: " . $Exception->getMessage(); } // JSON 문자열을 PHP 배열로 디코딩합니다. //철재스라트발주서 읽기 $eList = json_decode($estimateSlatList, true); // 행의 수는 배열의 크기와 동일하므로, count() 함수를 사용하여 구합니다. $surang = count($eList); // COD 출고증 certificate of delivery $COD = isset($COD) ? json_decode($COD, true) : []; // print_r($COD); // JSON 데이터를 JavaScript 변수로 변환 echo ""; // echo '
';
// print_r($eList);
// echo '
'; // 행의 수는 배열의 크기와 동일하므로, count() 함수를 사용하여 구합니다. $surang = count($eList); // 행의 수를 출력하거나 활용할 수 있습니다. // echo "행의 수: " . $surang . "
"; $THscreenSu = $surang + 2 ; // 디코딩된 데이터가 배열인지 확인합니다. if (!is_array($eList)) { echo "데이터가 정상적이지 않습니다. 확인바랍니다."; exit; } else { foreach ($eList as $item) { $prodcode = $item['col4']; $items1 = ['KQTS01']; $items2 = ['KTE01']; // $prodcode가 $items1 배열에 있는 경우 if (in_array($prodcode, $items1)) { $prodname = '국민방화투시형스틸셔터'; } // $prodcode가 $items2 배열에 있는 경우 elseif (in_array($prodcode, $items2)) { $prodname = '국민방화 스틸 셔터'; } else { $prodname = 'Unknown'; // $prodcode가 어느 배열에도 없는 경우 } } } $indateStr = date("m/d", strtotime($indate)); $todayStr = date("m/d"); $rowCounter = 1; // 아이템 행 카운터 초기값 1 ?>
()
 

경동기업
  출   고   증

전화 : 031-983-5130 | 팩스 : 02-6911-6315 | 이메일 : kd5130@naver.com
로트번호
결 재 작성 검토 승인
판매/ 출하 생산관리
상 품 명 제품명 인정번호
신 청 업 체 신 청 내 용 납 품 정 보
발주일 현 장 명
발주처 납기요청일 인수담당자
발주 담당자 출고일 인수자연락처
담당자 연락처 셔터총수량 (개소) 배 송 방 법
배송지 주소
* 별도 추가사항
['item_code' => '감기샤프트-114.3*2T,L:3,000', 'quantity' => 0], '4인치_4500' => ['item_code' => '감기샤프트-114.3*2T,L:4,500', 'quantity' => 0], '4인치_6000' => ['item_code' => '감기샤프트-114.3*2T,L:6,000', 'quantity' => 0], '5인치_6000' => ['item_code' => '감기샤프트-139.8*2.9T,L:6,000', 'quantity' => 0], '5인치_7000' => ['item_code' => '감기샤프트-139.8*2.9T,L:7,000', 'quantity' => 0], '5인치_8200' => ['item_code' => '감기샤프트-139.8*2.9T,L:8,200', 'quantity' => 0], '6인치_3000' => ['item_code' => '감기샤프트-165.2*2.9T,L:3,000', 'quantity' => 0], '6인치_6000' => ['item_code' => '감기샤프트-165.2*2.9T,L:6,000', 'quantity' => 0], '6인치_7000' => ['item_code' => '감기샤프트-165.2*2.9T,L:7,000', 'quantity' => 0], '6인치_8000' => ['item_code' => '감기샤프트-165.2*2.9T,L:8,000', 'quantity' => 0], '8인치_8200' => ['item_code' => '감기샤프트-216.3*3.2T,L:8,200', 'quantity' => 0], ]; // 부속자재 데이터에 품목 번호와 수량을 함께 저장 $subs_data = [ '각파이프-3000' => ['item_code' => '각파이프-50*30*1.4T,L:3,000', 'quantity' => 0], '각파이프-6000' => ['item_code' => '각파이프-50*30*1.4T,L:6,000', 'quantity' => 0], '조인트바-300' => ['item_code' => '조인트바-25*4.5T,L:300', 'quantity' => 0], '앵글-2500' => ['item_code' => '앵글-50*50*4T,L:2,500', 'quantity' => 0], ]; // 받침용앵글 데이터 초기화 $angle_data = [ '받침용앵글-380' => ['item_code' => '받침용앵글-50*50*3T,L:380', 'quantity' => 0], '받침용앵글-530' => ['item_code' => '받침용앵글-50*50*4T,L:530', 'quantity' => 0], '받침용앵글-600' => ['item_code' => '받침용앵글-50*50*4T,L:600', 'quantity' => 0], '받침용앵글-690' => ['item_code' => '받침용앵글-50*50*4T,L:690', 'quantity' => 0], ]; // 받침용앵글 수량 누적 계산 foreach ($bracketData as $bracket) { if (isset($bracket['size'], $bracket['quantity'])) { // `size`에서 앞 숫자 추출 preg_match('/^\d+/', $bracket['size'], $matches); $size = $matches[0] ?? null; // 크기에 따라 데이터 누적 if ($size && isset($angle_data["받침용앵글-$size"])) { $angle_data["받침용앵글-$size"]['quantity'] += intval($bracket['quantity']); } } } // 데이터를 누적하여 합산 (스크린과 철재스라트의 col번호 다름 주의) foreach ($eList as $item) { $shaft_data['4인치_3000']['quantity'] += intval($item['col61']); $shaft_data['4인치_4500']['quantity'] += intval($item['col62']); $shaft_data['4인치_6000']['quantity'] += intval($item['col63']); $shaft_data['5인치_6000']['quantity'] += intval($item['col64']); $shaft_data['5인치_7000']['quantity'] += intval($item['col65']); $shaft_data['5인치_8200']['quantity'] += intval($item['col66']); $shaft_data['6인치_3000']['quantity'] += intval($item['col67']); $shaft_data['6인치_6000']['quantity'] += intval($item['col68']); $shaft_data['6인치_7000']['quantity'] += intval($item['col69']); $shaft_data['6인치_8000']['quantity'] += intval($item['col70']); $shaft_data['8인치_8200']['quantity'] += intval($item['col71']); // 부속자재 누적 $subs_data['각파이프-3000']['quantity'] += intval($item['col74']); $subs_data['각파이프-6000']['quantity'] += intval($item['col75']); $subs_data['조인트바-300']['quantity'] += intval($item['col76']); $subs_data['앵글-2500']['quantity'] += intval($item['col77']); } // print_r($subs_data); // 받침용앵글 규격 $bracketAngle = $item['col23']; // HTML 구조 시작 echo '
'; // 감기샤프트 부분 echo '
'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // 감기샤프트 데이터 출력 foreach ($shaft_data as $label => $data) { if ($data['quantity'] > 0) { echo ''; echo ''; echo ''; echo ''; echo ''; } } echo ''; echo '
감기샤프트
규격수량입고 LOT NO.
' . str_replace('_', ' ', $label) . '' . $data['quantity'] . '
'; echo '
'; // 감기샤프트 부분 끝 // 부속자재 부분 echo '
'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // 각파이프 데이터 출력 $pipe_rowspan = 0; if ($subs_data['각파이프-3000']['quantity'] > 0) { $pipe_rowspan++; } if ($subs_data['각파이프-6000']['quantity'] > 0) { $pipe_rowspan++; } if ($pipe_rowspan > 0) { echo ''; echo ''; if ($subs_data['각파이프-3000']['quantity'] > 0) { echo ''; echo ''; echo ''; echo ''; } if ($subs_data['각파이프-6000']['quantity'] > 0) { echo ''; echo ''; echo ''; echo ''; } } // 앵글 if ($subs_data['앵글-2500']['quantity'] > 0) { echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; } // 받침용앵글 데이터 출력 foreach ($angle_data as $label => $data) { if ($data['quantity'] > 0) { echo ''; echo ''; echo ''; echo ''; echo ''; } } echo ''; echo '
부속자재
규격길이수량입고 LOT NO.
각파이프3000' . $subs_data['각파이프-3000']['quantity'] . '
6000' . $subs_data['각파이프-6000']['quantity'] . '
앵글
(40*40*3T)
2500' . $subs_data['앵글-2500']['quantity'] . '
' . $data['item_code'] . '' . $data['quantity'] . ''; echo '
'; echo ' '; echo '
'; echo ' '; echo '
'; echo '
'; echo '
'; echo '
'; // 부속자재 부분 끝 echo '
'; // row 끝 } $rowCounter++; } // end of partscheck 체크박스 ?>
2. 모터
'; // 1) 모터 부분 echo '
'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $motor_labels = ['150KG', '300KG', '400KG', '500KG', '600KG', '800KG', '1000KG']; $innercounter = 0; for ($i = 0; $i < count($columns); $i++) { if ($columns[$i] !== null && $columns[$i] !== 0) { echo ''; echo ''; echo ''; // 모터 코드 생성 $code = '전동개폐기-' . $motor_labels[$i] . $volt . '(' . $wireless . ')'; // 규격 생성 // motor-lot 필드에 data-index 추가 echo ''; echo ''; $innercounter ++; } } echo ''; echo '
모터종류(KG) ,전원: ' . $volt . '(' . $wireless . ')
용량수량 입고 LOT NO.
' . $motor_labels[$i] . '' . $columns[$i] . '
'; echo '
'; // 모터 부분 끝 // 2) 브라켓트 부분 echo '
'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // 브라켓과 앵글 데이터를 배열에 저장 $bracketData = array_values($bracketSpec['bracketSizes']); // 키를 숫자 인덱스로 변환 $angleData = array_values($bracketAngleSpec['bracketAngleSizes']); // 키를 숫자 인덱스로 변환 // 두 배열의 최대 길이를 구함 $maxRows = max(count($bracketData), count($angleData)); // 브라켓 부분에서도 같은 인덱스를 사용하여 data-index 속성을 추가 $innercounter = 0; for ($i = 0; $i < $maxRows; $i++) { echo ''; if (isset($bracketData[$i])) { echo ''; echo ''; $size = $bracketData[$i]['size']; // '380*200' $sizeParts = explode('*', $size); // '380'과 '200'으로 분리 $code = '베어링부-' . $sizeParts[0] . 'B'; // '380B'로 변환 echo ''; $innercounter++ ; } else { echo ''; echo ''; echo ''; } echo ''; } echo ''; echo '
브라켓트
크기수량 입고 LOT NO.
' . $bracketData[$i]['size'] . '' . $bracketData[$i]['quantity'] . '
---
'; echo '
'; // 브라켓트 부분 끝 // 3) 연동제어기 부분 echo '
'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $control_labels = ['매립형', '노출형', '뒷박스']; for ($i = 0; $i < count($other_columns); $i++) { if (intval(trim($other_columns[$i])) !== 0 && $other_columns[$i] !== '0') { if ($control_labels[$i]=== '뒷박스') { // $code = '연동제어기-' . $control_labels[$i]; $code = 'EGI1.15T-1219*2438'; } else { $code = '연동제어기-' . $control_labels[$i] . '(' . $wireless . ')'; } echo ''; echo ''; echo ''; echo ''; echo ''; } } echo ''; echo '
연동제어기
품명수량 입고 LOT NO.
' . $control_labels[$i] . '' . $other_columns[$i] . '
'; echo '
'; // 연동제어기 부분 끝 echo '
'; // row 끝 } $rowCounter++; } // end of motor 체크박스 ?>


' ; ?>