diff --git a/wms/account-receivable-contract.xlsx b/wms/account-receivable-contract.xlsx
index f95f90d1..637c6d7c 100644
Binary files a/wms/account-receivable-contract.xlsx and b/wms/account-receivable-contract.xlsx differ
diff --git a/wms/account-receivable-excel.php b/wms/account-receivable-excel.php
index c48360ed..72c73f5a 100644
--- a/wms/account-receivable-excel.php
+++ b/wms/account-receivable-excel.php
@@ -12,37 +12,42 @@ $array_data = array();
$Bill = json_decode(file_get_contents("php://input"), true);
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
-// file_put_contents('account-receivable.txt', json_encode($Bill));
+
if ($type == 'newContract') {
+ $excel_array = array();
$colomnHeader = [
- '合約號', '單據日期', '客戶編號', '客戶名稱', '客戶地址', '部門代碼', '部門名稱', '營業員工號', '營業員名稱', '部門主管工號', '部門主管名稱',
- '合約總金額', '設備金額', '安裝金額', '目前應收金額', '已開發票金額', '已收金額', '催收金額', '催收次數', '作番總數 ', '作番狀態',
- '訂金名稱', '訂金金額', '訂金應收金額', '訂金已開發票金額', '訂金已收金額', '訂金催收金額', '訂金催收次數',
- '二次款名稱', '二次款金額', '二次款應收金額', '二次款已開發票金額', '二次款已收金額', '二次款催收金額', '二次款催收次數',
- '貨抵工地款名稱', '貨抵工地款金額', '貨抵工地款應收金額', '貨抵工地款已開發票金額', '貨抵工地款已收金額', '貨抵工地款催收金額', '貨抵工地款催收次數',
- '安裝款名稱', '安裝款金額', '安裝款應收金額', '安裝款已開發票金額', '安裝款已收金額', '安裝款催收金額', '安裝款催收次數',
- '試車款名稱', '試車款金額', '試車款應收金額', '試車款已開發票金額', '試車款已收金額', '試車款催收金額', '試車款催收次數',
- '官檢驗收款名稱', '官檢驗收款金額', '官檢驗收款應收金額', '官檢驗收款已開發票金額', '官檢驗收款已收金額', '官檢驗收款催收金額', '官檢驗收款催收次數',
- '移交款名稱', '移交款金額', '移交款應收金額', '移交款已開發票金額', '移交款已收金額', '移交款催收金額', '移交款催收次數',
- '尾款名稱', '尾款金額', '尾款應收金額', '尾款已開發票金額', '尾款已收金額', '尾款催收金額', '尾款催收次數'
+ '合約號', '客戶名稱', '營業員', '合約金額', '台數', '作番狀態', '催收金額', '催收次數', '訂金催收金額', '訂金催收次數', '二次款催收金額', '二次款催收次數',
+ '貨抵工地款催收金額', '貨抵工地款催收次數',
+ '安裝款催收金額', '安裝款催收次數',
+ '試車款催收金額', '試車款催收次數',
+ '官檢驗收催收金額', '官檢驗收催收次數',
+ '交車款催收金額', '交車款催收次數',
+ '尾款催收金額', '尾款催收次數'
];
+ foreach ($Bill as $key => $value) {
+ $excel_array[$key] = [
+ $value[0], $value[3], $value[8], $value[11], $value[19], $value[20], $value[17], $value[18], $value[26], $value[27], $value[33], $value[34],
+ $value[40], $value[41],
+ $value[47], $value[48],
+ $value[54], $value[55],
+ $value[61], $value[62],
+ $value[68], $value[69],
+ $value[75], $value[76]
+ ];
+ }
+
+ file_put_contents('account-receivable.txt', json_encode($excel_array, JSON_UNESCAPED_UNICODE));
$sheet->fromArray($colomnHeader, NULL, 'A1');
$rowIndex = 2;
- foreach ($Bill as $item) {
+ foreach ($excel_array as $item) {
$sheet->fromArray($item, NULL, 'A' . $rowIndex);
$column = [
- 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
- 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', 'AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV', 'AW', 'AX', 'AY', 'AZ',
- 'BA', 'BB', 'BC', 'BD', 'BE', 'BF', 'BG', 'BH', 'BI', 'BJ', 'BK', 'BL', 'BM', 'BN', 'BO', 'BP', 'BQ', 'BR', 'BK', 'BS', 'BT', 'BU', 'BV', 'BW', 'BX', 'BY', 'BZ',
- 'CA', 'CB', 'CC', 'CD', 'CE', 'CF', 'CG', 'CH', 'CI', 'CJ', 'CK', 'CL', 'CM', 'CN', 'CO', 'CP', 'CQ', 'CR', 'CS', 'CT', 'CU', 'CV', 'CW', 'CX', 'CY', 'CZ',
- 'DA', 'DB', 'DC', 'DD', 'DE', 'DF', 'DG', 'DH', 'DI', 'DJ', 'DK', 'DL', 'DM', 'DN', 'DO', 'DP', 'DQ', 'DR', 'DS', 'DT', 'DU', 'DV', 'DW', 'DX', 'DY', 'DZ',
- 'EA', 'EB', 'EC', 'ED', 'EE', 'EF', 'EG', 'EH', 'EI', 'EJ', 'EK', 'EL', 'EM', 'EN', 'EO', 'EP', 'EQ', 'ER', 'ES', 'ET', 'EU', 'EV', 'EW', 'EX', 'EY', 'EZ',
-
+ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X'
];
foreach ($column as $col) {
- if ($col == 'U') {
- $sheet->getColumnDimension('U')->setWidth(35);
- $sheet->getStyle('U')->getAlignment()->setWrapText(true);
+ if ($col == 'F') {
+ $sheet->getColumnDimension('F')->setWidth(35);
+ $sheet->getStyle('F')->getAlignment()->setWrapText(true);
} else {
$sheet->getColumnDimension($col)->setAutoSize(true);
}
diff --git a/wms/account-receivable-new-index.php b/wms/account-receivable-new-index.php
index 309a5607..615366e2 100644
--- a/wms/account-receivable-new-index.php
+++ b/wms/account-receivable-new-index.php
@@ -392,9 +392,8 @@ foreach ($PayStage_array as $key => &$value) {
$payvalue['stage'] = '貨抵工地款';
if ($wip_array[$payvalue['facilityno']]['real_arrival_date'] !== null && strtotime($wip_array[$payvalue['facilityno']]['real_arrival_date']) > 975686400 && !empty($wip_array[$payvalue['facilityno']]['real_arrival_date'])) {
$estimate_time = strtotime($wip_array[$payvalue['facilityno']]['real_arrival_date']);
- $signtime = $estimate_time ;
+ $signtime = $estimate_time;
$payvalue['PlanPayDate'] = date('Y-m-d', $signtime);
-
} else {
$payvalue['PlanPayDate'] = 'NULL';
}
@@ -611,6 +610,18 @@ foreach ($query_invoice as $invoice) {
}
}
+//未在T8的收款資料
+$sql_wms = "SELECT * FROM account_received WHERE type='M' AND BillNo IN $str_numbers";
+$query_wms = mysqli_query($link, $sql_wms);
+foreach($query_wms as $wms){
+ if (isset($arrayData[$wms['BillNo']]) && isset($arrayData[$wms['BillNo']]['invoice_budget'])) {
+ $arrayData[$wms['BillNo']]['invoice_budget'] += $wms['invoice_budget'];
+ }
+ if (isset($arrayData[$wms['BillNo']]) && isset($arrayData[$wms['BillNo']]['received_budget'])) {
+ $arrayData[$wms['BillNo']]['received_budget'] += $wms['received_budget'];
+ }
+}
+
// 核銷資訊
$sql_received = "SELECT
CheckDetail.OrderBillNo,
@@ -748,8 +759,6 @@ $excel_contract_array = array();
$excel_contract_boga_array = array();
$excel_contract_noboga_array = array();
-// 0 作番號; 1 合約號; 2 合約單據日期; 3 客戶編號; 4 客戶名稱; 5 客戶地址; 6 部門ID; 7 部門名稱; 8 營業員工號; 9 營業員名稱; 10 部門主管工號; 11 部門主管名稱;
-// 12 作番總金額; 13 A40001 金額; 14 A40008 金額; 15 目前應收金額; 16 已開發票金額; 17 已收金額; 18 催收金額; 19 催收次數; 20 作番狀態
$excel_facility_array = array();
foreach ($arrayData as $key => $value) {
@@ -1060,21 +1069,54 @@ foreach ($arrayData as $key => $value) {
}
}
}
-}
-foreach($arrayData as $key => $value){
- echo $key."
";
- foreach($value as $k => $v){
- echo $k."
";
- print_r($v);
- echo "
";
+ // 0 作番號; 1 合約號; 2 合約單據日期; 3 客戶編號; 4 客戶名稱; 5 客戶地址; 6 部門ID; 7 部門名稱; 8 營業員工號; 9 營業員名稱; 10 部門主管工號; 11 部門主管名稱;
+ // 12 作番總金額; 13 A40001 金額; 14 A40008 金額; 15 目前應收金額; 16 已開發票金額; 17 已收金額; 18 催收金額; 19 催收次數; 20 作番狀態
+ if (isset($value['facility']) && is_iterable($value['facility'])) {
+ foreach ($value['facility'] as $fkey => $fvalue) {
+ $excel_facility_array[$fkey] = [$fkey, $key, $value['BillDate']];
+ $excel_facility_array[$key][2] = (isset($value['CustomerId']) && !is_null($value['CustomerId'])) ? $value['CustomerId'] : '';
+ $excel_facility_array[$key][3] = (isset($value['CustomerName']) && !is_null($value['CustomerName'])) ? $value['CustomerName'] : '';
+ $excel_facility_array[$key][4] = (isset($value['CustomerAddress']) && !is_null($value['CustomerAddress'])) ? $value['CustomerAddress'] : '';
+ $excel_facility_array[$key][5] = (isset($value['DeptId']) && !is_null($value['DeptId'])) ? $value['DeptId'] : '';
+ $excel_facility_array[$key][6] = (isset($value['DeptName']) && !is_null($value['DeptName'])) ? $value['DeptName'] : '';
+ $excel_facility_array[$key][7] = (isset($value['PersonId']) && !is_null($value['PersonId'])) ? $value['PersonId'] : '';
+ $excel_facility_array[$key][8] = (isset($value['PersonName']) && !is_null($value['PersonName'])) ? $value['PersonName'] : '';
+ $excel_facility_array[$key][9] = (isset($value['ManagerId']) && !is_null($value['ManagerId'])) ? $value['ManagerId'] : '';
+ }
}
- exit();
}
+// $excel_contract_noboga_array[$key] = array_fill(0, 76, '');
+// $excel_contract_noboga_array[$key][0] = (isset($value['BillNo']) && !is_null($value['BillNo'])) ? $value['BillNo'] : '';
+// $excel_contract_noboga_array[$key][1] = (isset($value['BillDate']) && !is_null($value['BillDate'])) ? $value['BillDate'] : '';
+// $excel_contract_noboga_array[$key][2] = (isset($value['CustomerId']) && !is_null($value['CustomerId'])) ? $value['CustomerId'] : '';
+// $excel_contract_noboga_array[$key][3] = (isset($value['CustomerName']) && !is_null($value['CustomerName'])) ? $value['CustomerName'] : '';
+// $excel_contract_noboga_array[$key][4] = (isset($value['CustomerAddress']) && !is_null($value['CustomerAddress'])) ? $value['CustomerAddress'] : '';
+// $excel_contract_noboga_array[$key][5] = (isset($value['DeptId']) && !is_null($value['DeptId'])) ? $value['DeptId'] : '';
+// $excel_contract_noboga_array[$key][6] = (isset($value['DeptName']) && !is_null($value['DeptName'])) ? $value['DeptName'] : '';
+// $excel_contract_noboga_array[$key][7] = (isset($value['PersonId']) && !is_null($value['PersonId'])) ? $value['PersonId'] : '';
+// $excel_contract_noboga_array[$key][8] = (isset($value['PersonName']) && !is_null($value['PersonName'])) ? $value['PersonName'] : '';
+// $excel_contract_noboga_array[$key][9] = (isset($value['ManagerId']) && !is_null($value['ManagerId'])) ? $value['ManagerId'] : '';
+// $excel_contract_noboga_array[$key][10] = (isset($value['ManagerName']) && !is
+// foreach ($arrayData as $key => $value) {
+// echo $key . "
";
+// foreach ($value as $k => $v) {
+// if ($k == 'facility') {
+// foreach ($v as $fkey => $fvalue) {
+// echo $fkey . "
";
+// print_r($fvalue);
+// echo "
";
+// }
+// }
+// // echo $k . "
";
+// // print_r($v);
+// // echo "
";
+// }
+// exit();
+// }
$total_data = json_encode($excel_contract_array);
$boga_data = json_encode($excel_contract_boga_array);
$noboga_data = json_encode($excel_contract_noboga_array);
-
?>