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.
 
 
 
 
 
 

98 lines
4.0 KiB

<?php
require_once('../conn.php');
$sql = "SELECT
BillNo, -- 合約號
OAmount, -- 合約未稅金額
OAmountWithTax -- 含稅金額
FROM salSalesOrder WHERE 1=1";
$stmt = $connT8->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
// echo "<pre>";
// print_r($result);
// echo "</pre>";
// exit();
$result_detail = [];
$result_master = [];
$result_arr = [];
foreach ($result as $key => $result) {
$no = $result['BillNo'];
$result_master['BillNo'] = $no;
$firstChar = substr($no, 0, 1);
if ($firstChar == 'M' && $key <= 50) {
// 查詢客戶名稱 是否為戰略客戶
$sql = "SELECT BizPartnerName FROM comBusinessPartner WHERE BizPartnerId = '$no' ";
$stmt = $connT8->prepare($sql);
$stmt->execute();
$customer_name = $stmt->fetch(PDO::FETCH_ASSOC);
// 查詢作番號,與每台電梯在合約的價格、站比
$sql = "SELECT * FROM salSalesOrderDetail WHERE BillNo = '$no' AND ItemType = 0";
$stmt = $connT8->prepare($sql);
$stmt->execute();
$elevator_facilityno = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($elevator_facilityno as $elevator) {
$facilityno = $elevator['MaterialId'];
$sql = "SELECT
BillNo,
MaterialId,
OAmountWithTax, -- 含稅金額
SPrice --未稅
FROM salSalesOrderDetail WHERE BillNo = '$no' AND CU_MaterialId = '$facilityno' AND ItemType = '1' ";
$stmt = $connT8->prepare($sql);
$stmt->execute();
$elevator_amount = $stmt->fetchAll(PDO::FETCH_ASSOC);
// 單台電梯價格
$elevator_price = 0;
foreach ($elevator_amount as $amount) {
$elevator_price = $elevator_price + intval($amount['SPrice']);
}
//電梯在合約內所佔的比例
$elevator_prince_proportion = intval($result['OAmount']) / $elevator_price;
// exit;
$sql = "SELECT
BillNo, -- 合約號
PayStage, -- 收款階段
PlanPercentage, -- 收款比例
PlanPayAmt -- 收款金額
FROM salOrderStagePay WHERE BillNo = '$no'";
$stmt = $connT8->prepare($sql);
$stmt->execute();
$Detail = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (!empty($Detail)) {
foreach ($Detail as $key => $detail) {
$elevator_inContract_payPrice = $elevator_prince_proportion * $detail['PlanPercentage'];
$Detail[$key]['facilityno'] = $facilityno;
$detail['PlanPercentage'] = (float)$detail['PlanPercentage'];
$Detail[$key]['PlanPercentage'] = $detail['PlanPercentage']; // 比例轉小數第二位
$Detail[$key]['contract_price_total'] = intval($detail['PlanPayAmt']); // 比例金額轉整數
$Detail[$key]['elevator_inContract_payPrice'] = round($elevator_inContract_payPrice * intval($detail['PlanPayAmt']), 2);
}
if (mb_substr($Detail[0]['PayStage'], 0, 2) == '寶佳') {
$result_master['customer_status'] = 'strategy_customer';
} else if (!empty($customer_name) && mb_substr($customer_name['BizPartnerName'], 0, 1) == '【') {
$result_master['customer_status'] = 'strategy_customer';
} else {
$result_master['customer_status'] = 'general_customer';
}
$result_master['total_price'] = intval($result['OAmount']);
$result_master['elevotor_pay_detail'] = $Detail;
$result_arr[] = $result_master;
// echo "<pre>";
// print_r($result_arr);
// echo "</pre>";
}
}
// exit;
// $result_master[] = $result;
}
}
echo "<pre>";
print_r($result_arr);
echo "</pre>";