prepare($sql); $stmt->execute(); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); // echo "
"; // print_r($result); // echo ""; // 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 "
"; // print_r($result_arr); // echo ""; } } // exit; // $result_master[] = $result; } } echo "
"; print_r($result_arr); echo "";