292 lines
14 KiB
PHP
292 lines
14 KiB
PHP
<?php
|
|
|
|
class Omsetperpayment extends MY_Controller
|
|
{
|
|
|
|
function getdatas(){
|
|
$prm = $this->sys_input;
|
|
//print_r($prm);
|
|
$this->db_onedev = $this->load->database("onedev", true);
|
|
if($prm['type'] == 'month'){
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CASH'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_cash = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'DEBIT'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_debit = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CREDIT'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_credit = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'TRANSFER'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_transfer = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(T_OrderHeaderTotal,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_omset = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(SUM(total),2) as total
|
|
FROM (
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CASH'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CREDIT'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'DEBIT'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'TRANSFER'
|
|
WHERE
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y' ) x";
|
|
$data_pay = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$data_piutang = round(($data_omset - $data_pay),2) ;
|
|
|
|
}
|
|
if($prm['type'] == 'day'){
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CASH'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
//echo $sql;
|
|
$data_cash = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'DEBIT'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_debit = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CREDIT'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_credit = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'TRANSFER'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_transfer = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(IFNULL(SUM(IFNULL(T_OrderHeaderTotal,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'";
|
|
$data_omset = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$sql = "SELECT ROUND(SUM(total),2) as total
|
|
FROM (
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CASH'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'CREDIT'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'DEBIT'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y'
|
|
UNION
|
|
SELECT ROUND(IFNULL(SUM(IFNULL(F_PaymentDetailAmount,0)),0)/1000000,2) as total
|
|
FROM t_orderheader
|
|
JOIN t_orderheaderaddon ON T_OrderHeaderAddOnT_OrderHeaderID = T_OrderHeaderID AND
|
|
ISNULL(T_OrderHeaderAddOnLabNumberOrigin)
|
|
JOIN f_payment ON F_PaymentT_OrderHeaderID = T_OrderHeaderID AND F_PaymentIsActive = 'Y'
|
|
JOIN f_paymentdetail ON F_PaymentDetailF_PaymentID = F_PaymentID AND
|
|
F_PaymentDetailIsActive = 'Y'
|
|
JOIN m_paymenttype ON F_PaymentDetailM_PaymentTypeID = M_PaymentTypeID AND
|
|
M_PaymentTypeCode = 'TRANSFER'
|
|
WHERE
|
|
DAY(T_OrderHeaderDate) = DAY(NOW()) AND
|
|
MONTH(T_OrderHeaderDate) = MONTH(NOW()) AND
|
|
YEAR(T_OrderHeaderDate) = YEAR(NOW()) AND
|
|
T_OrderHeaderIsActive = 'Y' ) x";
|
|
$data_pay = $this->db_onedev->query($sql)->row()->total;
|
|
|
|
$data_piutang = round(($data_omset - $data_pay),2) ;
|
|
}
|
|
|
|
echo json_encode(array('status'=>'OK','cash'=>$data_cash,'debit'=>$data_debit,'credit'=>$data_credit,'data_transfer'=>$data_transfer,'data_piutang'=>$data_piutang));
|
|
exit;
|
|
}
|
|
|
|
}
|
|
?>
|