<?php
require_once($_SERVER['DOCUMENT_ROOT'] . "/session.php");  
// SUS 304 스테인리스 강의 비중은 일반적으로 약 7.93 g/cm³입니다.
// EGI(Electro Galvanized Iron) 1.2T의 비중은 일반적으로 7.85 g/cm³로 간주됩니다.
$title_message = '절곡 작업일지'; 
$tablename = 'output'; 
$item ='절곡 작업일지';   
include $_SERVER['DOCUMENT_ROOT'] . '/load_header.php';   
// 품질담당자 및 관리자인 경우 권한 부여
$QCadmin = false ;
if($user_name=='이세희' || $user_name=='개발자' || $user_name=='함신옥'  || $user_name=='이경호'  || $user_name=='노완호' )
	$QCadmin = true ;
?>
<title> <?=$title_message?> </title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>	

<?php
// JavaScript에서 전달된 변수들 받기
$num = isset($_REQUEST['num']) ? $_REQUEST['num'] : '';  
$lotNum = isset($_REQUEST['lotNum']) ? $_REQUEST['lotNum'] : '';  
$outdate = isset($_REQUEST['outdate']) ? $_REQUEST['outdate'] : '';  // 출고일

function calWeight($calItem, $calWidth, $calHeight) {
    // 비중 설정 (g/cm³ 단위)
	preg_match('/\d+(\.\d+)?/', $calItem, $matches);
	$number = isset($matches[0]) ? $matches[0] : null;		
    $density = 0;
    if (strpos($calItem, 'SUS') !== false) {
        $density = 7.93; // SUS 304 비중
    } elseif (strpos($calItem, 'EGI') !== false) {
        $density = 7.85; // EGI 비중
    } else {
        return "지원되지 않는 소재입니다.";
    }

    // 두께도 곱한다. 면적 계산 (mm^2 -> cm^2 변환: 1cm^2 = 100mm^2)
    $area_cm2 = ($number * $calWidth * $calHeight) / 1000; // mm² 단위로 변환

    // 무게 계산 (g 단위) -> kg로 변환
    $weight_g = $area_cm2 * $density; // g 단위
    $weight_kg = $weight_g / 1000; // kg 단위로 변환

    // 누적 계산을 위한 static 변수
    static $SUS_total = 0;
    static $EGI_total = 0;

    // 누적 합계 처리
    if (strpos($calItem, 'SUS') !== false) {
        $SUS_total += $weight_kg;
    } elseif (strpos($calItem, 'EGI') !== false) {
        $EGI_total += $weight_kg;
    }

    // 소수점 둘째 자리까지 포맷팅
    return [
        'current_weight' => number_format($weight_kg, 2),
        'SUS_total' => number_format($SUS_total, 2),
        'EGI_total' => number_format($EGI_total, 2)
    ];
}

function getSLengthCode($length, $category) {
    switch ($category) {
        case '연기차단재50':
            switch ($length) {
                case '3000':
                    return '53';
                case '4000':
                    return '54';
                default:
                    return null; // 해당하는 값이 없을 경우
            }
        case '연기차단재80':
            switch ($length) {
                case '3000':
                    return '83';
                case '4000':
                    return '84';
                default:
                    return null; // 해당하는 값이 없을 경우
            }
        case '기타':
            switch ($length) {
                case '1219':
                    return '12';
                case '2438':
                    return '24';
                case '3000':
                    return '30';
                case '3500':
                    return '35';
                case '4000':
                    return '40';
                case '4150':
                    return '41';
                case '4200':
                    return '42';
                case '4300':
                    return '43';
                default:
                    return null; // 해당하는 값이 없을 경우
            }
        default:
            return null; // 카테고리가 없는 경우
    }
}

// 출고일이 존재할 경우에만 다음날 계산
if ($outdate) {
    // 출고일을 DateTime 객체로 변환
    $date = new DateTime($outdate);
    
    // 1일 더하기
    $date->modify('+1 day');
    
    // 형식화된 날짜 (예: Y-m-d 형식)로 출력
    $outdateplusone = $date->format('Y-m-d');
} else {
    // 출고일이 없을 경우 기본값
    $outdateplusone = '';
}

$orderdate = isset($_REQUEST['orderdate']) ? $_REQUEST['orderdate'] : '';  // 발주일
$prodCode = isset($_REQUEST['prodCode']) ? $_REQUEST['prodCode'] : '';     // prodCode 받기
$warrantyNum = isset($_REQUEST['warrantyNum']) ? $_REQUEST['warrantyNum'] : ''; // warrantyNum 받기

// 추가된 변수 받기
$delivery = isset($_REQUEST['delivery']) ? $_REQUEST['delivery'] : ''; // 배송 옵션 받기
$outworkplace = isset($_REQUEST['outworkplace']) ? $_REQUEST['outworkplace'] : ''; // 출고 작업장 받기
$outputplace = isset($_REQUEST['outputplace']) ? $_REQUEST['outputplace'] : ''; // 배송 주소지

require_once($_SERVER['DOCUMENT_ROOT'] . "/lib/mydb.php");
//require_once($_SERVER['DOCUMENT_ROOT'] . "/estimate/fetch_unitprice.php");
$pdo = db_connect();
try {
    $sql = "select * from {$DB}.{$tablename} where num = ? ";
    $stmh = $pdo->prepare($sql);
    $stmh->bindValue(1, $num, PDO::PARAM_STR);
    $stmh->execute();
    $count = $stmh->rowCount();
    if ($count < 1) { 
        print "검색결과가 없습니다.<br>";
    } else {
        $row = $stmh->fetch(PDO::FETCH_ASSOC);
        include "_row.php";		
		// output_extra 테이블에서 데이터 불러오기
		require_once $_SERVER['DOCUMENT_ROOT'] . '/output/load_output_extraTable.php';	        
		
	// $prodCode 값에 따라 $prodItem 값 설정
	if ($prodCode === "KSE01" || $prodCode === "KSS01") {
		$prodItem = "철재";
	} else {
		$prodItem = "철재";
	}		
    }
} catch (PDOException $Exception) {
    print "오류: " . $Exception->getMessage();
}

// JSON 문자열을 PHP 배열로 디코딩합니다.
//스크린발주서 읽기
$eList = json_decode($eList_slat, true);

// 행의 수는 배열의 크기와 동일하므로, count() 함수를 사용하여 구합니다.
$surang = count($eList);


// 데이터베이스에서 recordbending 컬럼 값을 가져온 후 디코딩
$recordbending = isset($recordbending) ? json_decode($recordbending, true) : [];

// print_r($recordbending);

// JSON 데이터를 JavaScript 변수로 변환
echo "<script>";
echo "var recordbendingData = " . json_encode($recordbending) . ";";
echo "</script>";

// 행의 수를 출력하거나 활용할 수 있습니다.
// echo "행의 수: " . $surang . "<br>";

$THscreenSu = $surang  + 2 ;

// 디코딩된 데이터가 배열인지 확인합니다.
if (!is_array($eList)) {
    echo "데이터가 정상적이지 않습니다. 확인바랍니다.";
    exit;
}
else {
	foreach ($eList as $item) {
		$prodcode = $item['col4'];
		$GuiderailType = $item['col6'];
		$FinishMat = $item['col7'];
		$prodname = '';
	}
}

$indateStr = date("m/d", strtotime($indate));
$todayStr = date("m/d");
?>

<?php include $_SERVER['DOCUMENT_ROOT'] . '/output/mymodal.php'; ?>

<div class="container mt-2">
    <div class="d-flex align-items-center justify-content-end mt-1 m-2">
        <button class="btn btn-danger btn-sm me-1 ms-1 viewPlateBtn" > <i class="bi bi-textarea"></i>  절곡바라시 보기 </button>
        <button class="btn btn-dark btn-sm me-1 ms-1 saveData" > <i class="bi bi-floppy2-fill"></i> 서버 저장 </button>
        <button class="btn btn-dark btn-sm me-1 ms-1" onclick="generatePDF()"> PDF 저장 </button>
		<!-- <button class="btn btn-dark btn-sm me-1" onclick="sendmail();"> <i class="bi bi-envelope-arrow-up"></i> 전송 </button> -->
        <button class="btn btn-secondary btn-sm me-1 ms-1" onclick="self.close();"> <i class="bi bi-x-lg"></i> 닫기 </button>&nbsp;
    </div>
</div>

<form id="board_form" name="board_form" method="post" enctype="multipart/form-data"  onkeydown="return captureReturnKey(event)"  >	

<input type="hidden" id="mode" name="mode" value="<?= isset($mode) ? $mode : '' ?>">
<input type="hidden" id="num" name="num" value="<?= isset($num) ? $num : '' ?>">
<input type="hidden" id="user_name" name="user_name" value="<?= isset($user_name) ? $user_name : '' ?>">
<input type="hidden" id="update_log" name="update_log" value="<?= isset($update_log) ? $update_log : NULL ?>">
<input type="hidden" id="tablename" name="tablename" value="<?= isset($tablename) ? $tablename : '' ?>">
<input type="hidden" id="item_name" name="item_name" value="<?= isset($item_name) ? $item_name : '' ?>">
<input type="hidden" id="recordbending" name="recordbending">

<div id="content-to-print">	
<br>
<div class="container mt-3">
   
<div class="row m-1">   
<div class="d-flex align-items-center justify-content-center">
<table class="table table-bordered" style="border-collapse: collapse;">
	<thead>
		<tr>
			<th colspan="2" class="text-center align-middle lightgray" style="width:33%;">신  청  업  체</th>
			<th colspan="2" class="text-center align-middle lightgray" style="width:33%;">신  청  내  용</th>
		</tr>        
		<tr>
			<th class="text-center align-middle lightgray">발주일</th>
			<th class="text-center"><?=specialDate($orderdate)?></th>
			<th class="text-center align-middle lightgray">현  장  명</th>
			<th class="text-center text-primary fw-bold"><?=$outworkplace?> </th>	
		</tr>
		<tr>
			<th class="text-center align-middle lightgray">업체명</th>
			<th class="text-center"><?=$secondord?></th>
			<th class="text-center align-middle lightgray">출고일자</th>
			<th colspan="1" class="text-center text-secondary fw-bold"><?=$outdate?>  </th>
		</tr>
		<tr>
			<th class="text-center align-middle lightgray">담당자</th>
			<th class="text-center"><?=$orderman?></th>
			<th class="text-center align-middle yellowBold">제품 LOT NO</th>
			<th class="text-center fw-bold text-primary"><?=$lotNum?></th>
		</tr>
		<tr>
			<th class="text-center align-middle lightgray">연락처</th>
			<th class="text-center text-dark fw-bold"><?=$_SESSION['hp']?> </th>                
			<th class="text-center align-middle lightgray">생산담당자</th>
			<th class="text-center"> <?=$orderman?> </th>
		</tr>	
            <tr>
                <th class="text-center align-middle lightgray" >제품명 </th>
                <th class="text-center align-middle text-danger fw-bold"> <?=$prodCode?> &nbsp; &nbsp; <?=$prodItem?> </th>
                <th class="text-center align-middle lightgray" >마감유형 </th>
                <th colspan="2" class="text-center align-middle text-danger fw-bold "> <?=$FinishMat?> </th>                
            </tr> 		
        </thead>
    </table>
</div>
</div>		
<div class="row m-1">
<div class="d-flex align-items-center justify-content-center">
    <table class="table" style="border-collapse: collapse;">
        <thead>
            <tr>                
                <th rowspan="1" class="text-center align-middle" style="width:70%;">
					<div class="row">
					<div class="col-sm-2">
						<img src="../img/kdlogo.png" alt="경동기업" class="me-1" style="width:60%; height:auto;">                    						
					</div>
					<div class="col-sm-10">
						<div class="d-flex align-items-center justify-content-start align-middle m-1">												
							<span class="text-dark ms-2 me-3 fs-3" > 발주서 </span>						
							<button class="btn btn-primary btn-sm me-1 ms-1 orderBtn" > <i class="bi bi-view-list"></i> 보기 </button>
						</div>
					</div>							
					</div>    
                </th>                            
        </thead>
    </table>
</div>
</div>
	
<div class="row m-1">
<div class="d-flex align-items-center justify-content-center">
    <table class="table" style="border-collapse: collapse;">
        <thead>
            <tr>                
                <th rowspan="1" class="text-center align-middle" style="width:70%;">
					<div class="row">
					<div class="col-sm-2">
						<img src="../img/kdlogo.png" alt="경동기업" class="me-1" style="width:60%; height:auto;">                    						
					</div>
					<div class="col-sm-10">
						<div class="d-flex align-items-center justify-content-start align-middle m-1">												
							<span class="text-dark ms-2 me-3 fs-3" > 발주서 </span>						
							<button class="btn btn-primary btn-sm me-1 ms-1 orderBtn" > <i class="bi bi-view-list"></i> 보기 </button>
						</div>
					</div>							
					</div>    
                </th>                            
        </thead>
    </table>
</div>
</div>

</form>
</div> <!-- end of container -->
<div class="container mb-5 mt-2">
	<div class="d-flex align-items-center justify-content-center mb-5">
	</div>
</div>

<!-- 페이지로딩 -->
<script>
$(document).ready(function(){	
    var loader = document.getElementById('loadingOverlay');
	if(loader)
		loader.style.display = 'none';
});
	
$(document).on('click', '.orderBtn', function() {
    event.preventDefault();
	var tablename = '<?php echo $tablename; ?>';
	var num = $('#num').val();
	
	var url = "/output/write_form.php?mode=view&num=" + num + "&tablename=" + tablename;          
	customPopup(url, '절곡 바라시 보기', 1900, 900); 		
});

// 부트스트랩 툴팁 
$(document).ready(function() {
  var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
  var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
    return new bootstrap.Tooltip(tooltipTriggerEl);
  });    	  
});

</script>
</body>
</html>