You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.3 KiB
94 lines
3.3 KiB
<?php
|
|
include "./header.php";
|
|
// Load Composer's autoloader
|
|
// require_once 'C:\xampp\htdocs\wms\excel\vendor\autoload.php';
|
|
require_once dirname(__DIR__) . '/common/composer/vendor/autoload.php';
|
|
|
|
// use PhpOffice\PhpSpreadsheet\IOFactory;
|
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
|
use PhpOffice\PhpSpreadsheet\Writer\Xlsx as xls;
|
|
//use PhpOffice\PhpSpreadsheet\Reader\Xls;
|
|
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
|
|
// use PhpOffice\PhpSpreadsheet\Writer\Pdf\Mpdf;
|
|
|
|
$rib_id = $_GET['ribid'];
|
|
$sql = "SELECT * FROM rib WHERE rib_id=$rib_id";
|
|
$rib = mysqli_query($link, $sql);
|
|
$rib = mysqli_fetch_assoc($rib);
|
|
$today = "列印日期:" . date('Y-m-d');
|
|
|
|
//取得部門代碼
|
|
$sql_department = "SELECT DeptId,DeptName FROM comDepartment WHERE DeptId!='0001'";
|
|
$deptype = $conn->query($sql_department);
|
|
foreach ($deptype as $department) {
|
|
if ($department['DeptId'] == $rib['DeptId']) {
|
|
$dept = $department['DeptName'];
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//取得暫存的表身資料
|
|
$ribsub_query = "SELECT * FROM rib_sub WHERE rib_id = $rib_id";
|
|
$ribsub_data = mysqli_query($link, $ribsub_query);
|
|
$FeeNotes = "";
|
|
$totalVoucher = 0;
|
|
$count = 0;
|
|
while ($ribsub = mysqli_fetch_assoc($ribsub_data)) {
|
|
$count += 1;
|
|
$FeeNotes .= "\n" . $count . ". ";
|
|
if (isset($ribsub['ProjectId']) && (isset($ribsub['CU_MaterialId']))) {
|
|
$FeeNotes .= "合約號:" . $ribsub['ProjectId'] . "\n 作番號:" . $ribsub['CU_MaterialId'] . "\n ";
|
|
} elseif (isset($ribsub['ProjectId']) && (!isset($ribsub['CU_MaterialId']))) {
|
|
$FeeNotes .= "合約號:" . $ribsub['ProjectId'] . "\n ";
|
|
} elseif (!isset($ribsub['ProjectId']) && (isset($ribsub['CU_MaterialId']))) {
|
|
$FeeNotes .= "作番號:" . $ribsub['CU_MaterialId'] . "\n ";
|
|
}
|
|
$FeeNotes .= "費用說明:" . $ribsub['FeeNoteShow'] . "\n";
|
|
$totalVoucher += $ribsub['VoucherCount'];
|
|
}
|
|
|
|
//產生費用報銷單excel
|
|
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
|
|
$spreadsheet = $reader->load("reimburse-sample.xlsx");
|
|
$sheet = $spreadsheet->getActiveSheet();
|
|
$sheet->setCellValue('H3', $rib['BillNo']);
|
|
$sheet->setCellValue('H5', $rib['BillDate']);
|
|
$sheet->setCellValue('H6', $dept);
|
|
$sheet->setCellValue('G2', $today);
|
|
if ($rib['WriteOffType'] == 1) {
|
|
$sheet->setCellValue('H8', '■ 廠商 □ 員工');
|
|
} elseif ($rib['WriteOffType'] == 2) {
|
|
$sheet->setCellValue('H8', '■ 員工 □ 廠商');
|
|
}
|
|
|
|
if ($rib['pay_type'] == 0) {
|
|
$sheet->setCellValue('H9', ' ■ 現金
|
|
□ 銀行轉帳
|
|
□ 沖帳及金額
|
|
( )
|
|
預付款申請單號
|
|
NO.');
|
|
} elseif ($rib['pay_type'] == 1) {
|
|
$sheet->setCellValue('H9', '□ 現金
|
|
■ 銀行轉帳
|
|
□ 沖帳及金額
|
|
( )
|
|
預付款申請單號
|
|
NO.');
|
|
}
|
|
$WriteOffAmount = $rib['WriteOffAmount'];
|
|
|
|
|
|
$sheet->setCellValue('H10', $WriteOffAmount);
|
|
$sheet->setCellValue('H11', $totalVoucher);
|
|
$sheet->setCellValue('G13', $FeeNotes);
|
|
|
|
$writer = new Xls($spreadsheet);
|
|
$file_path = dirname(__DIR__) . '/wms/WriteOff.xlsx';
|
|
$writer->save('WriteOff.xlsx');
|
|
// $file_path = 'C:/xampp/htdocs/wms/WriteOff.xlsx';
|
|
// $spreadsheet= IOFactory::load('WriteOff.xlsx');
|
|
// $pdfWriter = new Mpdf($spreadsheet);
|
|
// $pdfWriter->save('WriteOff2.pdf');
|
|
echo $file_path;
|
|
|