131 lines
6.0 KiB
PHP
131 lines
6.0 KiB
PHP
<?php
|
|
|
|
class SsJpa extends CI_Controller
|
|
{
|
|
function __construct() {
|
|
parent::__construct();
|
|
$this->db = $this->load->database("onedev", true);
|
|
}
|
|
function jpa($date) {
|
|
$sql = "select M_BranchCode from m_branch where M_BranchIsActive = 'Y'
|
|
and M_BranchIsDefault = 'Y'";
|
|
$qry = $this->db->query($sql);
|
|
$branchCode ="";
|
|
if($qry) {
|
|
$rows = $qry->result_array();
|
|
if (count($rows) > 0 ) $branchCode = $rows[0]["M_BranchCode"];
|
|
}
|
|
if ($branchCode == "") {
|
|
echo "Err : Branch Not Defined \n";
|
|
return;
|
|
}
|
|
// Order hari ini
|
|
$sql = "select
|
|
'$branchCode' M_BranchCode,
|
|
T_OrderHeaderID,
|
|
T_OrderHeaderM_patientID M_PatientID,
|
|
date(T_OrderHeaderDate) as OrderDate,
|
|
T_OrderHeaderLabNumber as Noreg,
|
|
T_OrderHeaderSenderM_DoctorID,
|
|
T_OrderHeaderM_CompanyID M_CompanyID,
|
|
T_OrderHeaderSenderM_DoctorAddressID,
|
|
T_OrderHeaderM_MouID,
|
|
T_TestID, T_TestName,
|
|
T_OrderDetailPrice, T_OrderDetailTotal,
|
|
Nat_JPADetailDiscount,Nat_JPAGroupName,
|
|
M_DoctorAddressDescription,
|
|
case
|
|
when Nat_JPADetailDiscount <= Nat_JpaGroupMaxJpaDisc
|
|
then T_OrderDetailTotal*(Nat_JPADetailDiscount/100)
|
|
else
|
|
0
|
|
end as JpaAmount,
|
|
Nat_JpaGroupMaxJpaDisc
|
|
from
|
|
t_orderheader
|
|
join m_doctoraddress on T_OrderHeaderSenderM_DoctorAddressID = M_DoctorAddressID and M_DoctorAddressIsActive = 'Y'
|
|
join m_doctor on M_DoctorAddressM_DoctorID = M_DoctorID and M_DoctorIsMarketingConfirm = 'Y'
|
|
join t_orderdetail ON T_OrderDetailT_OrderHeaderID = T_OrderHeaderID AND T_OrderDetailIsActive = 'Y'
|
|
join t_test ON T_OrderDetailT_TestID = T_TestID and T_TestIsPrice = 'Y' AND T_TestIsActive = 'Y'
|
|
join nat_test oN T_TestNat_TestID = Nat_TestID aND Nat_TestIsActive = 'Y'
|
|
join jpa_test on JPA_TestNat_TestID = Nat_TestID and JPA_TestIsActive = 'Y'
|
|
join nat_jpa on M_DoctorAddressNat_JpaID = Nat_JpaID and Nat_JpaIsActive = 'Y'
|
|
join nat_jpagroup on JPA_TestNat_JpaGroupID = Nat_JPAGroupID and Nat_JPAGroupIsActive = 'Y'
|
|
join nat_jpadetail on Nat_JPADetailNat_JPAID = Nat_JPAID
|
|
and Nat_JPAGroupID = Nat_JPADetailNat_JPAGroupID and Nat_JPADetailIsActive = 'Y'
|
|
where
|
|
DATE(T_OrderHeaderDate) = ?
|
|
order by T_OrderHeaderID" ;
|
|
$qry = $this->db->query($sql, array($date));
|
|
$rows = array();
|
|
if ($qry) {
|
|
$rows = $qry->result_array();
|
|
}
|
|
//order yg di update hari ini
|
|
$sql = "select
|
|
'$branchCode' M_BranchCode,
|
|
T_OrderHeaderID,
|
|
T_OrderHeaderM_patientID M_PatientID,
|
|
date(T_OrderHeaderDate) as OrderDate,
|
|
T_OrderHeaderLabNumber as Noreg,
|
|
T_OrderHeaderSenderM_DoctorID,
|
|
T_OrderHeaderM_CompanyID M_CompanyID,
|
|
T_OrderHeaderSenderM_DoctorAddressID,
|
|
T_OrderHeaderM_MouID,
|
|
T_TestID, T_TestName,
|
|
T_OrderDetailPrice, T_OrderDetailTotal,
|
|
Nat_JPADetailDiscount,Nat_JPAGroupName,
|
|
M_DoctorAddressDescription,
|
|
case
|
|
when Nat_JPADetailDiscount <= Nat_JpaGroupMaxJpaDisc
|
|
then T_OrderDetailTotal*(Nat_JPADetailDiscount/100)
|
|
else
|
|
0
|
|
end as JpaAmount,
|
|
Nat_JpaGroupMaxJpaDisc
|
|
from
|
|
t_orderheader
|
|
join m_doctoraddress on T_OrderHeaderSenderM_DoctorAddressID = M_DoctorAddressID and M_DoctorAddressIsActive = 'Y'
|
|
join m_doctor on M_DoctorAddressM_DoctorID = M_DoctorID and M_DoctorIsMarketingConfirm = 'Y'
|
|
join t_orderdetail ON T_OrderDetailT_OrderHeaderID = T_OrderHeaderID AND T_OrderDetailIsActive = 'Y'
|
|
join t_test ON T_OrderDetailT_TestID = T_TestID and T_TestIsPrice = 'Y' AND T_TestIsActive = 'Y'
|
|
join nat_test oN T_TestNat_TestID = Nat_TestID aND Nat_TestIsActive = 'Y'
|
|
join jpa_test on JPA_TestNat_TestID = Nat_TestID and JPA_TestIsActive = 'Y'
|
|
join nat_jpa on M_DoctorAddressNat_JpaID = Nat_JpaID and Nat_JpaIsActive = 'Y'
|
|
join nat_jpagroup on JPA_TestNat_JpaGroupID = Nat_JPAGroupID and Nat_JPAGroupIsActive = 'Y'
|
|
join nat_jpadetail on Nat_JPADetailNat_JPAID = Nat_JPAID
|
|
and Nat_JPAGroupID = Nat_JPADetailNat_JPAGroupID and Nat_JPADetailIsActive = 'Y'
|
|
where
|
|
DATE(T_OrderHeaderLastUpdated) = ?
|
|
and
|
|
DATE(T_OrderHeaderDate) < ?
|
|
order by T_OrderHeaderID" ;
|
|
$qry2 = $this->db->query($sql, array($date,$date));
|
|
$rows2 = array();
|
|
if ($qry2) {
|
|
$rows2 = $qry2->result_array();
|
|
}
|
|
$rows = array_merge($rows,$rows2);
|
|
if (count($rows) > 0 ) {
|
|
$data = json_encode($rows);
|
|
$result = $this->post("http://bandung.aplikasi.web.id/one-api/tools/ssjpa/jpa", $data);
|
|
print_r($result);
|
|
}
|
|
}
|
|
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_HTTPHEADER, array(
|
|
'Content-Type: application/json',
|
|
'Content-Length: ' . strlen($data))
|
|
);
|
|
$result = curl_exec($ch);
|
|
return $result;
|
|
}
|
|
function expertisi() {
|
|
echo "Expertisi";
|
|
}
|
|
}
|