diff --git a/app/Config/Routes.php b/app/Config/Routes.php index cb0438c..9446a07 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -652,6 +652,8 @@ $routes->get('Report/report_total_payment_app_show/(:segment)/(:segment)/(:segme $routes->get('Report/report_total_payment_app_show/(:segment)/(:segment)/(:segment)/(:num)', 'Report::report_total_payment_app_show/$1/$2/$3/$4'); $routes->get('Report/report_total_payment_app_show/(:segment)/(:segment)/(:segment)/(:segment)', 'Report::report_total_payment_app_show/$1/$2/$3/$4'); $routes->get('Report/report_total_payment_app_show/(:segment)/(:segment)/(:segment)/(:segment)/(:num)', 'Report::report_total_payment_app_show/$1/$2/$3/$4/$5'); +$routes->get('Report/report_total_payment_total_amount_show/(:segment)/(:segment)/(:segment)', 'Report::report_total_payment_total_amount_show/$1/$2/$3'); +$routes->get('Report/report_total_payment_total_amount_show/(:segment)/(:segment)/(:segment)/(:num)', 'Report::report_total_payment_total_amount_show/$1/$2/$3/$4'); $routes->get('Report/billing_operations_report', 'Report::billing_operations_report'); $routes->get('Report/billing_operations_report_data/(:segment)/(:segment)', 'Report::billing_operations_report_data/$1/$2'); diff --git a/app/Controllers/Report.php b/app/Controllers/Report.php index c26b05f..bf70775 100644 --- a/app/Controllers/Report.php +++ b/app/Controllers/Report.php @@ -2,6 +2,8 @@ namespace App\Controllers; +use Mpdf\Mpdf; + class Report extends BaseController { public function index() @@ -103,6 +105,151 @@ class Report extends BaseController return $this->response->setBody(''); } + if ($output === 2) { + $mpdfTempDir = WRITEPATH . 'cache' . DIRECTORY_SEPARATOR . 'mpdf'; + if (! is_dir($mpdfTempDir)) { + mkdir($mpdfTempDir, 0755, true); + } + + $mpdf = new Mpdf([ + 'tempDir' => $mpdfTempDir, + 'format' => 'A4-L', + 'margin_top' => 8, + 'margin_bottom' => 8, + 'margin_left' => 8, + 'margin_right' => 8, + ]); + + $pdfHtml = '' + . '
Date Range: = esc($minRange) ?> to = esc($maxRange) ?>
+ + +| User ID | +OPD Amount | +Charge Amount | +IPD Amount | +ORG Amount | +Return Amount | +Total | +
|---|---|---|---|---|---|---|
| + user_name ?? '')); + $userId = (int) ($row->user_id ?? 0); + $userLabel = $userName !== '' ? $userName : 'Unknown'; + if ($userId > 0) { + $userLabel .= '[' . $userId . ']'; + } + ?> + = esc($userLabel) ?> + | += esc(number_format((float) ($row->opd_amount ?? 0), 2)) ?> | += esc(number_format((float) ($row->charge_amount ?? 0), 2)) ?> | += esc(number_format((float) ($row->ipd_amount ?? 0), 2)) ?> | += esc(number_format((float) ($row->org_amount ?? 0), 2)) ?> | += esc(number_format((float) ($row->return_amount ?? 0), 2)) ?> | += esc(number_format((float) ($row->total_amount ?? 0), 2)) ?> | +
| Total | += esc(number_format((float) ($totals['opd_amount'] ?? 0), 2)) ?> | += esc(number_format((float) ($totals['charge_amount'] ?? 0), 2)) ?> | += esc(number_format((float) ($totals['ipd_amount'] ?? 0), 2)) ?> | += esc(number_format((float) ($totals['org_amount'] ?? 0), 2)) ?> | += esc(number_format((float) ($totals['return_amount'] ?? 0), 2)) ?> | += esc(number_format((float) ($totals['total_amount'] ?? 0), 2)) ?> | +
Date Range: = esc($minRange) ?> to = esc($maxRange) ?>
+Date Range: = esc($minRangeDisplay) ?> to = esc($maxRangeDisplay) ?>
Invoice Type: = esc($invoiceTypeLabel) ?>