Seed riwayat from form template

This commit is contained in:
sas.fajri
2026-05-26 06:15:27 +07:00
parent 566f3f9b09
commit 6d7563151d

View File

@@ -3166,36 +3166,45 @@ class Resultentry extends MY_Controller
$x_exist = $this->db_onedev->query($sql, [$prm['re_id']])->row()->xcount;*/
if ($prm['template_name'] == 'Fisik Umum' || $prm['template_name'] == 'Fisik Umum K3') {
$sql = "INSERT INTO so_resultentry_fisik_umum (
So_ResultEntryFisikUmumT_OrderHeaderID,
So_ResultEntryFisikUmumFisikTemplateID,
So_ResultEntryFisikUmumDetails,
if ($prm['template_name'] == 'Fisik Umum' || $prm['template_name'] == 'Fisik Umum K3') {
$sql = "INSERT INTO so_resultentry_fisik_umum (
So_ResultEntryFisikUmumT_OrderHeaderID,
So_ResultEntryFisikUmumFisikTemplateID,
So_ResultEntryFisikUmumDetails,
So_ResultEntryFisikUmumCreated,
So_ResultEntryFisikUmumCreatedUserID
)
SELECT ?,
FisikTemplateID,
FisikTemplateJSON,
NOW(),
{$userid}
FROM fisik_template
JOIN t_orderheader ON T_OrderHeaderID = ?
JOIN so_resultentry ON SO_ResultEntryT_OrderHeaderID = T_OrderHeaderID AND
)
SELECT ?,
FisikTemplateID,
IF(
FisikTemplateType = 'Riwayat' AND FormRiwayatPasienTemplateID IS NOT NULL,
FormRiwayatPasienTemplateDetails,
FisikTemplateJSON
),
NOW(),
{$userid}
FROM fisik_template
JOIN t_orderheader ON T_OrderHeaderID = ?
JOIN so_resultentry ON SO_ResultEntryT_OrderHeaderID = T_OrderHeaderID AND
So_ResultEntryIsActive = 'Y' AND
So_ResultEntryNonlab_TemplateID = 27
JOIN t_orderdetail ON T_OrderDetailID = So_ResultEntryT_OrderDetailID AND T_OrderDetailIsActive = 'Y'
JOIN t_test ON T_TestID = T_OrderDetailT_TestID
JOIN fisik_map_test_template ON Fisik_MapTestTemplateNat_TestID = T_TestNat_TestID AND Fisik_MapTestTemplateIsActive = 'Y'
JOIN fisik_template_mapping ON Fisik_MapTestTemplateFisikTemplateMappingID = FisikTemplateMappingID
JOIN fisik_template_mapping_detail ON FisikTemplateMappingDetailFisikTemplateMappingID = FisikTemplateMappingID AND
FisikTemplateMappingDetailFisikTemplateID = FisikTemplateID AND
FisikTemplateMappingDetailIsActive = 'Y'
LEFT JOIN so_resultentry_fisik_umum ON So_ResultEntryFisikUmumT_OrderHeaderID = T_OrderHeaderID AND
So_ResultEntryFisikUmumIsActive = 'Y'
WHERE
FisikTemplateIsActive = 'Y' AND So_ResultEntryFisikUmumID IS NULL
GROUP BY FisikTemplateID
JOIN fisik_template_mapping ON Fisik_MapTestTemplateFisikTemplateMappingID = FisikTemplateMappingID
JOIN fisik_template_mapping_detail ON FisikTemplateMappingDetailFisikTemplateMappingID = FisikTemplateMappingID AND
FisikTemplateMappingDetailFisikTemplateID = FisikTemplateID AND
FisikTemplateMappingDetailIsActive = 'Y'
LEFT JOIN form_riwayat_pasien ON FormRiwayatPasienT_OrderHeaderID = T_OrderHeaderID AND
FormRiwayatPasienIsActive = 'Y'
LEFT JOIN form_riwayat_pasien_template ON FormRiwayatPasienTemplateFormRiwayatPasienID = FormRiwayatPasienID AND
FormRiwayatPasienTemplateFisikTemplateID = FisikTemplateID AND
FormRiwayatPasienTemplateIsActive = 'Y'
LEFT JOIN so_resultentry_fisik_umum ON So_ResultEntryFisikUmumT_OrderHeaderID = T_OrderHeaderID AND
So_ResultEntryFisikUmumIsActive = 'Y'
WHERE
FisikTemplateIsActive = 'Y' AND So_ResultEntryFisikUmumID IS NULL
GROUP BY FisikTemplateID
ORDER BY FisikTemplateCode ASC";
$query = $this->db_onedev->query($sql, [$prm['orderid'], $prm['orderid']]);
@@ -3205,21 +3214,21 @@ class Resultentry extends MY_Controller
}
}
$riwayats = [];
$fisiks = [];
$k3s = [];
$sql = "SELECT *
FROM so_resultentry_fisik_umum
JOIN fisik_template ON So_ResultEntryFisikUmumFisikTemplateID = FisikTemplateID
WHERE
So_ResultEntryFisikUmumT_OrderHeaderID = ? AND So_ResultEntryFisikUmumIsActive = 'Y'
ORDER BY FisikTemplateCode ASC";
$rows_data = $this->db_onedev->query($sql, [$prm['orderid']])->result_array();
if ($rows_data) {
foreach ($rows_data as $key => $value) {
if ($value['FisikTemplateType'] == 'Riwayat')
$riwayats[] = json_decode($value['So_ResultEntryFisikUmumDetails'], TRUE);
$riwayats = [];
$fisiks = [];
$k3s = [];
$sql = "SELECT *
FROM so_resultentry_fisik_umum
JOIN fisik_template ON So_ResultEntryFisikUmumFisikTemplateID = FisikTemplateID
WHERE
So_ResultEntryFisikUmumT_OrderHeaderID = ? AND So_ResultEntryFisikUmumIsActive = 'Y'
ORDER BY FisikTemplateCode ASC";
$rows_data = $this->db_onedev->query($sql, [$prm['orderid']])->result_array();
if ($rows_data) {
foreach ($rows_data as $key => $value) {
if ($value['FisikTemplateType'] == 'Riwayat')
$riwayats[] = json_decode($value['So_ResultEntryFisikUmumDetails'], TRUE);
if ($value['FisikTemplateType'] == 'Fisik')
$fisiks[] = json_decode($value['So_ResultEntryFisikUmumDetails'], TRUE);