Update QR report URLs
This commit is contained in:
@@ -164,15 +164,14 @@ class Close_v2 extends MY_Controller
|
||||
{
|
||||
//# ambil parameter input
|
||||
$prm = $this->sys_input;
|
||||
$puserid = $prm['pUserID'];
|
||||
|
||||
$sql = "CALL sp_fo_send_to_cashier_v2({$puserid})";
|
||||
$query = $this->db_onedev->query($sql);
|
||||
echo $this->db_onedev->last_query();
|
||||
|
||||
if ($query) {
|
||||
$result = array();
|
||||
$this->sys_ok($result);
|
||||
$puserid = $prm['pUserID'];
|
||||
|
||||
$sql = "CALL sp_fo_send_to_cashier_v2({$puserid})";
|
||||
$query = $this->db_onedev->query($sql);
|
||||
|
||||
if ($query) {
|
||||
$result = array();
|
||||
$this->sys_ok($result);
|
||||
} else {
|
||||
$this->sys_error_db("payment save rows", $this->db_onedev);
|
||||
exit;
|
||||
|
||||
@@ -198,13 +198,14 @@ class Rv_patient extends MY_Controller
|
||||
|
||||
$sql_url = "SELECT Print_TransactionID,
|
||||
Print_TransactionType,
|
||||
Print_TransactionCode,
|
||||
Print_TransactionName,
|
||||
Print_TransactionUrl,
|
||||
Print_TransactionUrlWatermark,
|
||||
Print_TransactionParams
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = 'LAB-RESULT-P-01'
|
||||
Print_TransactionCode,
|
||||
Print_TransactionName,
|
||||
Print_TransactionUrl,
|
||||
Print_TransactionUrlWatermark,
|
||||
Print_TransactionUrlEletronic,
|
||||
Print_TransactionParams
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = 'LAB-RESULT-P-01'
|
||||
LIMIT 1";
|
||||
$qry_url = $this->db_smartone->query($sql_url);
|
||||
if (!$qry_url) {
|
||||
@@ -212,7 +213,8 @@ class Rv_patient extends MY_Controller
|
||||
exit;
|
||||
}
|
||||
$rst_url = $qry_url->row_array();
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url_electronic = isset($rst_url['Print_TransactionUrlEletronic']) ? $rst_url['Print_TransactionUrlEletronic'] : '';
|
||||
|
||||
$sql_branch = "SELECT M_BranchID,
|
||||
M_BranchCode,
|
||||
@@ -240,15 +242,28 @@ class Rv_patient extends MY_Controller
|
||||
);
|
||||
|
||||
// Ganti parameter
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$order_id,
|
||||
time()
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
$full_url_electronic = '';
|
||||
if ($template_url_electronic !== '') {
|
||||
$full_url_electronic = $base . ltrim($template_url_electronic, '/');
|
||||
$full_url_electronic = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$order_id,
|
||||
time()
|
||||
],
|
||||
$full_url_electronic
|
||||
);
|
||||
}
|
||||
|
||||
// ambil endpoint URL dari DB
|
||||
$sql_url = "SELECT QR_ReportEndpointID,
|
||||
@@ -293,12 +308,13 @@ class Rv_patient extends MY_Controller
|
||||
$params = [
|
||||
'orderHeaderID' => $order_id,
|
||||
'groupResultID' => $value['T_OrderHeaderGroupResultGroup_ResultID'],
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'createdByUserID' => $userID
|
||||
];
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'QR_PrintOutReportURLElectronic' => $full_url_electronic,
|
||||
'createdByUserID' => $userID
|
||||
];
|
||||
|
||||
$this->generateqrreport->saveQRPrintout($params);
|
||||
}
|
||||
|
||||
@@ -87,14 +87,15 @@ class Rv_patient extends MY_Controller
|
||||
$data = $qry_get->result_array();
|
||||
|
||||
$sql_url = "SELECT Print_TransactionID,
|
||||
Print_TransactionType,
|
||||
Print_TransactionCode,
|
||||
Print_TransactionName,
|
||||
Print_TransactionUrl,
|
||||
Print_TransactionUrlWatermark,
|
||||
Print_TransactionParams
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = 'LAB-RESULT-P-01'";
|
||||
Print_TransactionType,
|
||||
Print_TransactionCode,
|
||||
Print_TransactionName,
|
||||
Print_TransactionUrl,
|
||||
Print_TransactionUrlWatermark,
|
||||
Print_TransactionUrlEletronic,
|
||||
Print_TransactionParams
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = 'LAB-RESULT-P-01'";
|
||||
$qry_url = $this->db_smartone->query($sql_url);
|
||||
if (!$qry_url) {
|
||||
$this->sys_error_db('error print_transaction', $this->db_smartone);
|
||||
@@ -109,13 +110,14 @@ class Rv_patient extends MY_Controller
|
||||
|
||||
$params = [
|
||||
'orderHeaderID' => $order_id,
|
||||
'groupResultID' => $value['T_OrderHeaderGroupResultGroup_ResultID'],
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $rst_url['Print_TransactionUrlWatermark'],
|
||||
'createdByUserID' => $userID
|
||||
];
|
||||
'groupResultID' => $value['T_OrderHeaderGroupResultGroup_ResultID'],
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $rst_url['Print_TransactionUrlWatermark'],
|
||||
'QR_PrintOutReportURLElectronic' => $rst_url['Print_TransactionUrlEletronic'],
|
||||
'createdByUserID' => $userID
|
||||
];
|
||||
|
||||
$this->generateqrreport->saveQRPrintout($params);
|
||||
}
|
||||
|
||||
@@ -1753,10 +1753,10 @@ class Resultentry extends MY_Controller
|
||||
$printCode = $map[$testName];
|
||||
|
||||
// ambil URL print
|
||||
$sql_url = "SELECT Print_TransactionUrlWatermark
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = ?
|
||||
LIMIT 1";
|
||||
$sql_url = "SELECT Print_TransactionUrlWatermark, Print_TransactionUrlEletronic
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = ?
|
||||
LIMIT 1";
|
||||
$qry_url = $this->db_onedev->query($sql_url, [$printCode]);
|
||||
if (!$qry_url) {
|
||||
$this->sys_error_db('error print_transaction', $this->db_onedev);
|
||||
@@ -1764,7 +1764,8 @@ class Resultentry extends MY_Controller
|
||||
}
|
||||
|
||||
$rst_url = $qry_url->row_array();
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url_electronic = isset($rst_url['Print_TransactionUrlEletronic']) ? $rst_url['Print_TransactionUrlEletronic'] : '';
|
||||
// Tambah base_url di depan
|
||||
$full_url = $base . ltrim($template_url, '/');
|
||||
|
||||
@@ -1776,15 +1777,28 @@ class Resultentry extends MY_Controller
|
||||
);
|
||||
|
||||
// Ganti parameter
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$prm['trx']['trx_id'],
|
||||
time()
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
$full_url_electronic = '';
|
||||
if ($template_url_electronic !== '') {
|
||||
$full_url_electronic = $base . ltrim($template_url_electronic, '/');
|
||||
$full_url_electronic = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$prm['trx']['trx_id'],
|
||||
time()
|
||||
],
|
||||
$full_url_electronic
|
||||
);
|
||||
}
|
||||
|
||||
// cek sudah pernah generate belum
|
||||
$sql_check = "SELECT QR_PrintOutID
|
||||
@@ -1809,12 +1823,13 @@ class Resultentry extends MY_Controller
|
||||
$params = [
|
||||
'orderHeaderID' => $prm['trx']['orderid'],
|
||||
'groupResultID' => $value['T_OrderHeaderGroupResultGroup_ResultID'],
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'createdByUserID' => $userid
|
||||
];
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'QR_PrintOutReportURLElectronic' => $full_url_electronic,
|
||||
'createdByUserID' => $userid
|
||||
];
|
||||
|
||||
$this->generateqrreport->saveQRPrintout($params);
|
||||
}
|
||||
|
||||
@@ -5500,7 +5500,7 @@ class Resultentry extends MY_Controller
|
||||
$is_per_test = isset($value['Group_ResultFlagPerTest']) && $value['Group_ResultFlagPerTest'] === 'Y';
|
||||
$target_test_id = $is_per_test ? intval($trx['test_id']) : 0;
|
||||
|
||||
$sql_pt = "SELECT Print_TransactionUrlWatermark
|
||||
$sql_pt = "SELECT Print_TransactionUrlWatermark, Print_TransactionUrlEletronic
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = ?
|
||||
LIMIT 1";
|
||||
@@ -5515,6 +5515,7 @@ class Resultentry extends MY_Controller
|
||||
continue;
|
||||
}
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url_electronic = isset($rst_url['Print_TransactionUrlEletronic']) ? $rst_url['Print_TransactionUrlEletronic'] : '';
|
||||
|
||||
$full_url = $base . ltrim($template_url, '/');
|
||||
$full_url = str_replace('.rptdesign', '_watermark.rptdesign', $full_url);
|
||||
@@ -5527,6 +5528,19 @@ class Resultentry extends MY_Controller
|
||||
),
|
||||
$full_url
|
||||
);
|
||||
$full_url_electronic = '';
|
||||
if ($template_url_electronic !== '') {
|
||||
$full_url_electronic = $base . ltrim($template_url_electronic, '/');
|
||||
$full_url_electronic = str_replace(
|
||||
array('PUsername', 'PT_OrderHeaderID', 'TS'),
|
||||
array(
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$trx['orderid'],
|
||||
time()
|
||||
),
|
||||
$full_url_electronic
|
||||
);
|
||||
}
|
||||
|
||||
$sql_check = "SELECT QR_PrintOutID
|
||||
FROM qr_printout
|
||||
@@ -5554,6 +5568,7 @@ class Resultentry extends MY_Controller
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'QR_PrintOutReportURLElectronic' => $full_url_electronic,
|
||||
'createdByUserID' => $userid
|
||||
);
|
||||
$this->generateqrreport->saveQRPrintout($params);
|
||||
|
||||
@@ -1158,10 +1158,10 @@ class Resultentry extends MY_Controller
|
||||
$printCode = $map[$group_result_name];
|
||||
|
||||
// ambil URL print
|
||||
$sql_url = "SELECT Print_TransactionUrlWatermark
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = ?
|
||||
LIMIT 1";
|
||||
$sql_url = "SELECT Print_TransactionUrlWatermark, Print_TransactionUrlEletronic
|
||||
FROM print_transaction
|
||||
WHERE Print_TransactionCode = ?
|
||||
LIMIT 1";
|
||||
$qry_url = $this->db_onedev->query($sql_url, [$printCode]);
|
||||
if (!$qry_url) {
|
||||
$this->sys_error_db('error print_transaction', $this->db_onedev);
|
||||
@@ -1169,7 +1169,8 @@ class Resultentry extends MY_Controller
|
||||
}
|
||||
|
||||
$rst_url = $qry_url->row_array();
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url = $rst_url['Print_TransactionUrlWatermark'];
|
||||
$template_url_electronic = isset($rst_url['Print_TransactionUrlEletronic']) ? $rst_url['Print_TransactionUrlEletronic'] : '';
|
||||
// Tambah base_url di depan
|
||||
$full_url = $base . ltrim($template_url, '/');
|
||||
|
||||
@@ -1181,15 +1182,28 @@ class Resultentry extends MY_Controller
|
||||
);
|
||||
|
||||
// Ganti parameter
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$full_url = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$prm['trx']['trx_id'],
|
||||
time()
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
],
|
||||
$full_url
|
||||
);
|
||||
$full_url_electronic = '';
|
||||
if ($template_url_electronic !== '') {
|
||||
$full_url_electronic = $base . ltrim($template_url_electronic, '/');
|
||||
$full_url_electronic = str_replace(
|
||||
['PUsername', 'PT_OrderHeaderID', 'TS'],
|
||||
[
|
||||
trim($this->sys_user['M_UserUsername']),
|
||||
$prm['trx']['trx_id'],
|
||||
time()
|
||||
],
|
||||
$full_url_electronic
|
||||
);
|
||||
}
|
||||
|
||||
// cek sudah pernah generate belum
|
||||
$sql_check = "SELECT QR_PrintOutID
|
||||
@@ -1214,12 +1228,13 @@ class Resultentry extends MY_Controller
|
||||
$params = [
|
||||
'orderHeaderID' => $prm['trx']['orderid'],
|
||||
'groupResultID' => $value['T_OrderHeaderGroupResultGroup_ResultID'],
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'createdByUserID' => $userid
|
||||
];
|
||||
'testID' => $value['T_OrderHeaderGroupResultT_TestID'],
|
||||
'groupResultName' => $value['T_OrderHeaderGroupResultGroup_ResultName'],
|
||||
'verifyBaseURL' => $verify_url,
|
||||
'QR_PrintOutReportURL' => $full_url,
|
||||
'QR_PrintOutReportURLElectronic' => $full_url_electronic,
|
||||
'createdByUserID' => $userid
|
||||
];
|
||||
|
||||
$this->generateqrreport->saveQRPrintout($params);
|
||||
}
|
||||
|
||||
@@ -250,6 +250,7 @@ class Generateqrreport
|
||||
'QR_PrintOutUUID' => $uuid,
|
||||
'QR_PrintOutVerifyURL' => $verifyURL, // URL final PDF = yang di-encode ke QR Code
|
||||
'QR_PrintOutReportURL' => $params['QR_PrintOutReportURL'], // URL sumber PDF di PHP server (Golang fetch dari sini)
|
||||
'QR_PrintOutReportURLElectronic' => (string)($params['QR_PrintOutReportURLElectronic'] ?? ''),
|
||||
'QR_PrintOutTempFilePath' => '',
|
||||
'QR_PrintOutUploadStatus' => 'pending',
|
||||
'QR_PrintOutRetryCount' => 0,
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
DROP PROCEDURE IF EXISTS sp_fo_send_to_cashier_v2;
|
||||
|
||||
DELIMITER $$
|
||||
CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_fo_send_to_cashier_v2`(IN `pUserID` int)
|
||||
MODIFIES SQL DATA
|
||||
begin
|
||||
DECLARE exit handler for sqlexception
|
||||
BEGIN
|
||||
ROLLBACK;
|
||||
END;
|
||||
|
||||
DECLARE exit handler for sqlwarning
|
||||
BEGIN
|
||||
ROLLBACK;
|
||||
END;
|
||||
|
||||
start transaction;
|
||||
|
||||
update f_payment set F_PaymentIsPosted = 'X'
|
||||
where F_PaymentM_UserID = pUserID and F_PaymentIsPosted = 'N' and F_PaymentM_UserID = pUserID;
|
||||
|
||||
insert into f_payment_kasir (F_PaymentKasirNumber, F_PaymentKasirDate, F_PaymentKasirUserID)
|
||||
values (fn_numbering('F2C'), now(), pUserID);
|
||||
set @pkID = last_insert_id();
|
||||
|
||||
insert into f_payment_kasir_detail(F_PaymentKasirDetailF_PaymentKasirID, F_PaymentKasirDetailF_PaymentID)
|
||||
select @pkID, F_PaymentID
|
||||
from f_payment where F_PaymentIsPosted = 'X' and F_PaymentM_UserID = pUserID;
|
||||
|
||||
update f_payment set F_PaymentIsPosted = 'S'
|
||||
where F_PaymentM_UserID = pUserID and F_PaymentIsPosted = 'X' and F_PaymentIsActive = 'Y';
|
||||
|
||||
commit;
|
||||
end$$
|
||||
DELIMITER ;
|
||||
Reference in New Issue
Block a user