144 lines
4.9 KiB
PHP
144 lines
4.9 KiB
PHP
<?php
|
|
class Api_piutang_nas extends MY_Controller
|
|
{
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
}
|
|
public function sales_bill($sdate, $edate)
|
|
{
|
|
$sdate = "$sdate 00:00:00";
|
|
$edate = "$edate 23:59:59";
|
|
$sql = "SELECT
|
|
M_BranchCode ,
|
|
M_BranchName,
|
|
F_BillDueDateDay,
|
|
F_BillDueDate ,
|
|
F_BillNo,
|
|
F_BillCreated,
|
|
T_OrderHeaderID as orderid ,
|
|
T_OrderHeaderDate as tglOrder,
|
|
M_MouID,
|
|
M_CompanyID,
|
|
fn_get_name( T_OrderHeaderM_PatientID ) AS M_PatientName,
|
|
T_OrderHeaderLabNumber as Nolab,
|
|
T_OrderHeaderLabNumberExt as NolabEx,
|
|
M_CompanyNatCode as NasCode,
|
|
M_CompanyName as Pelanggan,
|
|
M_MouName as Mou,
|
|
T_OrderHeaderTotal AS Sales,
|
|
MAX(F_PaymentDate) AS F_PaymentDate,
|
|
MAX(F_PaymentNumber) AS F_PaymentNumber,
|
|
SUM(IFNULL(F_PaymentTotal, 0)) AS TotalBayar
|
|
|
|
FROM f_bill
|
|
JOIN f_bill_detail ON F_BillDetailF_BillID = F_BillID and F_BillDetailIsActive = 'Y'
|
|
JOIN t_orderheader ON F_BillDetailT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN m_company
|
|
ON T_OrderHeaderM_CompanyID = M_CompanyID
|
|
AND M_CompanyIsActive = 'Y'
|
|
LEFT JOIN f_payment
|
|
ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
AND F_PaymentIsActive = 'Y'
|
|
JOIN m_mou
|
|
ON T_OrderHeaderM_MouID = M_MouID
|
|
JOIN m_branch ON M_BranchIsDefault = 'Y'
|
|
WHERE T_OrderHeaderIsActive = 'Y' and F_BillIsActive = 'Y'
|
|
AND T_OrderHeaderDate BETWEEN ? AND ?
|
|
AND M_CompanyNatCode is not null
|
|
GROUP BY
|
|
T_OrderHeaderID ,F_PaymentID
|
|
order by T_OrderHeaderID ";
|
|
$qry = $this->db->query($sql, [$sdate, $edate]);
|
|
if (!$qry) {
|
|
echo json_encode(["status" => "ERR", "message" => $this->db->error()]);
|
|
exit;
|
|
}
|
|
$rows = $qry->result_array();
|
|
$data = json_encode($rows);
|
|
$svc_bill = "http://192.168.250.30/one-api/tools/r_api_piutang_nas/sales_bill";
|
|
$zdata = gzcompress($data);
|
|
$resp = $this->post($svc_bill, $zdata);
|
|
print_r($resp);
|
|
}
|
|
public function sales($sdate, $edate)
|
|
{
|
|
$sdate = "$sdate 00:00:00";
|
|
$edate = "$edate 23:59:59";
|
|
$sql = "SELECT
|
|
M_BranchCode ,
|
|
M_BranchName,
|
|
T_OrderHeaderID as orderid ,
|
|
T_OrderHeaderDate as tglOrder,
|
|
M_MouID,
|
|
M_CompanyID,
|
|
fn_get_name( T_OrderHeaderM_PatientID ) AS M_PatientName,
|
|
T_OrderHeaderLabNumber as Nolab,
|
|
T_OrderHeaderLabNumberExt as NolabEx,
|
|
M_CompanyNatCode as NasCode,
|
|
M_CompanyName as Pelanggan,
|
|
M_MouName as Mou,
|
|
T_OrderHeaderTotal AS Sales,
|
|
MAX(F_PaymentDate) AS F_PaymentDate,
|
|
MAX(F_PaymentNumber) AS F_PaymentNumber,
|
|
SUM(IFNULL(F_PaymentTotal, 0)) AS TotalBayar
|
|
|
|
FROM t_orderheader
|
|
JOIN m_company
|
|
ON T_OrderHeaderM_CompanyID = M_CompanyID
|
|
AND M_CompanyIsActive = 'Y'
|
|
LEFT JOIN f_payment
|
|
ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
AND F_PaymentIsActive = 'Y'
|
|
JOIN m_mou
|
|
ON T_OrderHeaderM_MouID = M_MouID
|
|
JOIN m_branch ON M_BranchIsDefault = 'Y'
|
|
|
|
WHERE T_OrderHeaderIsActive = 'Y'
|
|
AND T_OrderHeaderDate BETWEEN ? AND ?
|
|
AND M_CompanyNatCode is not null
|
|
|
|
GROUP BY
|
|
T_OrderHeaderID
|
|
order by T_OrderHeaderID";
|
|
$qry = $this->db->query($sql, [$sdate, $edate]);
|
|
if (!$qry) {
|
|
echo json_encode(["status" => "ERR", "message" => $this->db->error()]);
|
|
exit;
|
|
}
|
|
$rows = $qry->result_array();
|
|
$data = json_encode($rows);
|
|
$svc_bill = "http://192.168.250.30/one-api/tools/r_api_piutang_nas/sales";
|
|
echo "svc : $svc_bill\n";
|
|
$zdata = gzcompress($data);
|
|
$resp = $this->post($svc_bill, $zdata);
|
|
print_r($resp);
|
|
}
|
|
|
|
|
|
public function post($url, $data)
|
|
{
|
|
$ch = curl_init($url);
|
|
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
|
|
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
|
|
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
|
|
curl_setopt($ch, CURLOPT_HTTPHEADER, [
|
|
"Content-Type: application/text",
|
|
"Content-Length: " . strlen($data),
|
|
]);
|
|
$result = curl_exec($ch);
|
|
if (curl_error($ch) != "") {
|
|
echo json_encode([
|
|
"status" => "ERR",
|
|
"message" => "Http Error : " . curl_error($ch),
|
|
]);
|
|
curl_close($ch);
|
|
exit();
|
|
}
|
|
curl_close($ch);
|
|
return $result;
|
|
}
|
|
}
|