chore: add db diagnostic mode on packaging units page
Expose a temporary db_diag=1 view for /bag/packaging-units so we can verify runtime DB connectivity and required table counts directly on production.
This commit is contained in:
@@ -331,6 +331,7 @@ class Bag extends BaseController
|
||||
{
|
||||
$lgIdx = $this->lgIdx();
|
||||
$packagingUnits = [];
|
||||
$dbDiag = null;
|
||||
if ($lgIdx) {
|
||||
try {
|
||||
$packagingUnits = model(PackagingUnitModel::class)->where('pu_lg_idx', $lgIdx)->orderBy('pu_bag_code', 'ASC')->findAll();
|
||||
@@ -339,7 +340,34 @@ class Bag extends BaseController
|
||||
}
|
||||
}
|
||||
|
||||
return $this->render('포장 단위', 'bag/packaging_units', ['packagingUnits' => $packagingUnits]);
|
||||
if ($this->request->getGet('db_diag') === '1') {
|
||||
$dbDiag = [
|
||||
'lg_idx' => $lgIdx,
|
||||
'db_name' => null,
|
||||
'packaging_unit' => null,
|
||||
'code_kind' => null,
|
||||
'code_detail' => null,
|
||||
'error' => null,
|
||||
];
|
||||
try {
|
||||
$db = db_connect();
|
||||
$dbDiag['db_name'] = $db->database;
|
||||
$dbDiag['packaging_unit'] = (int) $db->table('packaging_unit')->where('pu_lg_idx', (int) $lgIdx)->countAllResults();
|
||||
$dbDiag['code_kind'] = (int) $db->table('code_kind')->countAllResults();
|
||||
$dbDiag['code_detail'] = (int) $db->table('code_detail')->countAllResults();
|
||||
} catch (\Throwable $e) {
|
||||
$dbDiag['error'] = $e->getMessage();
|
||||
log_message('error', '[packagingUnits][db_diag] {type}: {message}', [
|
||||
'type' => $e::class,
|
||||
'message' => $e->getMessage(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
return $this->render('포장 단위', 'bag/packaging_units', [
|
||||
'packagingUnits' => $packagingUnits,
|
||||
'dbDiag' => $dbDiag,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user