dbmsv4 init...1

This commit is contained in:
최준흠 2025-11-20 15:26:33 +09:00
parent c401cac80b
commit f88a98f4cd
27 changed files with 158 additions and 34 deletions

View File

@ -80,7 +80,7 @@ class BoardController extends AdminController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -58,7 +58,7 @@ class AccountController extends CustomerController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -67,7 +67,7 @@ class ClientController extends CustomerController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -58,7 +58,7 @@ class CouponController extends CustomerController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -54,7 +54,7 @@ class PointController extends CustomerController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -82,7 +82,7 @@ class ServiceController extends CustomerController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -56,7 +56,7 @@ class LineController extends EquipmentController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -59,7 +59,7 @@ class ServerController extends EquipmentController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -60,7 +60,7 @@ class ServerPartController extends EquipmentController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -45,7 +45,7 @@ class MylogController extends AdminController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -52,7 +52,7 @@ class CPUController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -13,7 +13,7 @@ class CSController extends PartController
{ {
parent::initController($request, $response, $logger); parent::initController($request, $response, $logger);
if ($this->service === null) { if ($this->service === null) {
$this->service = service('part_softwareservice'); $this->service = service('part_csservice');
} }
$this->addActionPaths('cs'); $this->addActionPaths('cs');
} }
@ -79,7 +79,7 @@ class CSController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -23,7 +23,6 @@ class DISKController extends PartController
"title", "title",
"price", "price",
"stock", "stock",
"format",
]; ];
$filters = [ $filters = [
"status", "status",
@ -34,16 +33,17 @@ class DISKController extends PartController
switch ($action) { switch ($action) {
case 'create': case 'create':
case 'create_form': case 'create_form':
break;
case 'modify': case 'modify':
case 'modify_form': case 'modify_form':
$fields = [...$fields, 'status']; $fields = [...$fields, "format", 'status'];
break; break;
case 'view': case 'view':
$fields = [...$fields, 'status', 'created_at']; $fields = [...$fields, "format", 'status', 'created_at'];
break; break;
case 'index': case 'index':
case 'download': case 'download':
$fields = [...$fields, 'status', 'created_at']; $fields = [...$fields, "format", 'status', 'created_at'];
break; break;
default: default:
throw new \Exception("[{$action}] 지원하지 않는 action입니다."); throw new \Exception("[{$action}] 지원하지 않는 action입니다.");
@ -53,7 +53,7 @@ class DISKController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action);; parent::action_init_process($action);;
} }

View File

@ -13,7 +13,7 @@ class IPController extends PartController
{ {
parent::initController($request, $response, $logger); parent::initController($request, $response, $logger);
if ($this->service === null) { if ($this->service === null) {
$this->service = service('part_softwareservice'); $this->service = service('part_ipservice');
} }
$this->addActionPaths('ip'); $this->addActionPaths('ip');
} }
@ -70,7 +70,7 @@ class IPController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -52,7 +52,7 @@ class RAMController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -52,7 +52,7 @@ class SOFTWAREController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -13,7 +13,7 @@ class SWITCHController extends PartController
{ {
parent::initController($request, $response, $logger); parent::initController($request, $response, $logger);
if ($this->service === null) { if ($this->service === null) {
$this->service = service('part_softwareservice'); $this->service = service('part_switchservice');
} }
$this->addActionPaths('switch'); $this->addActionPaths('switch');
} }
@ -71,7 +71,7 @@ class SWITCHController extends PartController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -29,7 +29,7 @@ class PaymentController extends AdminController
"content ", "content ",
]; ];
$filters = ['user_uid', 'clientinfo_uid', 'serviceinfo_uid', 'status', 'billing', 'pay']; $filters = ['user_uid', 'clientinfo_uid', 'serviceinfo_uid', 'status', 'billing', 'pay'];
$indexFilter = $filters; $indexFilter = ['serviceinfo_uid', 'status', 'billing'];
$batchjobFilters = ['status']; $batchjobFilters = ['status'];
switch ($action) { switch ($action) {
case 'create': case 'create':
@ -81,7 +81,7 @@ class PaymentController extends AdminController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -55,7 +55,7 @@ class UserController extends AdminController
$this->service->getFormService()->setFormRules($action, $fields); $this->service->getFormService()->setFormRules($action, $fields);
$this->service->getFormService()->setFormFilters($filters); $this->service->getFormService()->setFormFilters($filters);
$this->service->getFormService()->setFormOptions($filters); $this->service->getFormService()->setFormOptions($filters);
$this->service->getFormService()->getIndexFilters($indexFilter); $this->service->getFormService()->setIndexFilters($indexFilter);
$this->service->getFormService()->setBatchjobFilters($batchjobFilters); $this->service->getFormService()->setBatchjobFilters($batchjobFilters);
parent::action_init_process($action); parent::action_init_process($action);
} }

View File

@ -151,8 +151,8 @@ abstract class CommonController extends AbstractCRUDController
$value = $this->request->getVar($field) ?? null; $value = $this->request->getVar($field) ?? null;
if ($value) { if ($value) {
$this->service->setFilter($field, $value); $this->service->setFilter($field, $value);
$index_filters[$field] = $value;
} }
$index_filters[$field] = $value;
} }
$this->addViewDatas('index_filters', $index_filters); $this->addViewDatas('index_filters', $index_filters);

View File

@ -63,7 +63,6 @@ abstract class CommonForm
$formOptions[$field] = $formOptions[$field] ?? $this->getFormOption($field); $formOptions[$field] = $formOptions[$field] ?? $this->getFormOption($field);
} }
$this->_formOptions = $formOptions; $this->_formOptions = $formOptions;
// dd($this->_formOptions[$field]);
} }
//$fields 매치된것만 반환, []->전체 //$fields 매치된것만 반환, []->전체
final public function getFormOptions(array $fields = []): array final public function getFormOptions(array $fields = []): array

View File

@ -31,4 +31,21 @@ class CSForm extends PartForm
} }
return $rule; return $rule;
} }
public function getFormOption(string $field, array $options = ['options' => [], 'extras' => [], 'atttributes' => []]): array
{
$tempOptions = ['' => lang("{$this->getAttribute('class_path')}.label.{$field}") . " 선택"];
switch ($field) {
case 'serverinfo_uid':
foreach (service('equipment_serverservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
$options['options'] = $tempOptions;
break;
default:
$options = parent::getFormOption($field, $options);
break;
}
return $options;
}
} }

View File

@ -27,4 +27,36 @@ class IPForm extends PartForm
} }
return $rule; return $rule;
} }
public function getFormOption(string $field, array $options = ['options' => [], 'extras' => [], 'atttributes' => []]): array
{
$tempOptions = ['' => lang("{$this->getAttribute('class_path')}.label.{$field}") . " 선택"];
switch ($field) {
case 'lineinfo_uid':
foreach (service('equipment_lineservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
$options['options'] = $tempOptions;
break;
case 'old_clientinfo_uid':
foreach (service('customer_clientservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
// dd($tempOptions);
$options['options'] = $tempOptions;
break;
case 'serverinfo_uid':
foreach (service('equipment_serverservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
$options['options'] = $tempOptions;
break;
default:
$options = parent::getFormOption($field, $options);
break;
}
return $options;
}
} }

View File

@ -20,4 +20,28 @@ class SWITCHForm extends PartForm
} }
return $rule; return $rule;
} }
public function getFormOption(string $field, array $options = ['options' => [], 'extras' => [], 'atttributes' => []]): array
{
$tempOptions = ['' => lang("{$this->getAttribute('class_path')}.label.{$field}") . " 선택"];
switch ($field) {
case 'serviceinfo_uid':
foreach (service('customer_serviceservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
$options['options'] = $tempOptions;
break;
case 'serverinfo_uid':
foreach (service('equipment_serverservice')->getEntities() as $entity) {
$tempOptions[$entity->getPK()] = $entity->getTitle();
// $options['attributes'][$entity->getPK()] = ['data-role' => implode(DEFAULTS['DELIMITER_ROLE'], $entity->getRole())];
}
$options['options'] = $tempOptions;
break;
default:
$options = parent::getFormOption($field, $options);
break;
}
return $options;
}
} }

View File

@ -140,7 +140,10 @@ abstract class CommonHelper
switch ($field) { switch ($field) {
case 'clientinfo_uid': case 'clientinfo_uid':
if (array_key_exists($value, $viewDatas['formOptions'][$field]['options'])) { if (array_key_exists($value, $viewDatas['formOptions'][$field]['options'])) {
$value = "<a href=\"/admin/customer/client/detail/{$value}\">{$viewDatas['formOptions'][$field]['options'][$value]}</a>"; if (!array_key_exists($value, $viewDatas['formOptions'][$field]['options'])) {
throw new \Exception(__METHOD__ . "에서 오류발생: {$field}에서 {$value}에 해당하는 값이 존재하지 않습니다.");
}
$value = !$value ? "" : "<a href=\"/admin/customer/client/detail/{$value}\">{$viewDatas['formOptions'][$field]['options'][$value]}</a>";
} }
break; break;
case 'role': case 'role':
@ -173,8 +176,13 @@ abstract class CommonHelper
break; break;
default: default:
if (in_array($field, $viewDatas['formFilters'])) { if (in_array($field, $viewDatas['formFilters'])) {
if ($value) {
if (!array_key_exists($value, $viewDatas['formOptions'][$field]['options'])) {
throw new \Exception(__METHOD__ . "에서 오류발생: {$field}에서 {$value}에 해당하는 값이 존재하지 않습니다.");
}
$value = !$value ? "" : $viewDatas['formOptions'][$field]['options'][$value]; $value = !$value ? "" : $viewDatas['formOptions'][$field]['options'][$value];
} }
}
break; break;
} }
return $value; return $value;

View File

@ -2,9 +2,8 @@
<nav class="index_top navbar navbar-expand-lg"> <nav class="index_top navbar navbar-expand-lg">
<div class="container-fluid"> <div class="container-fluid">
<nav class="condition nav">조건: <nav class="condition nav">조건:
<?php foreach ($viewDatas['formFilters'] as $field): ?> <?php foreach ($viewDatas['index_filters'] as $field => $value): ?>
<?php $filterValue = $viewDatas['index_filters'][$field] ?? old($field); ?> <?= $viewDatas['helper']->getListFilter($field, $value, $viewDatas) ?>&nbsp;
<?= $viewDatas['helper']->getListFilter($field, $filterValue, $viewDatas) ?>&nbsp;
<?php endforeach ?> <?php endforeach ?>
</nav> </nav>
<?= $this->include("templates/{$viewDatas['layout']}/index_content_top"); ?> <?= $this->include("templates/{$viewDatas['layout']}/index_content_top"); ?>

View File

@ -4,4 +4,49 @@
<h4>&nbsp;&nbsp;<?= ICONS['DESKTOP'] ?> <?= lang("{$viewDatas['classPath']}.title") ?>&nbsp;&nbsp;</h4> <h4>&nbsp;&nbsp;<?= ICONS['DESKTOP'] ?> <?= lang("{$viewDatas['classPath']}.title") ?>&nbsp;&nbsp;</h4>
</span> </span>
</li> </li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/customer/client">고객정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/customer/account">예치금정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/customer/coupon">쿠폰정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/customer/point">포인트정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/customer/service">서비스정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/payment?status=<?= STATUS['UNPAID'] ?>">결제정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/equipment/server">서버정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/equipment/line">회선정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/ip">IP정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/switch">SWITCH정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/cs">CS정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/cpu">CPU정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/ram">RAM정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/disk">DISK정보</a></span>
</li>
<li class="nav-item">
<span class="nav-link active" aria-current="page" style="cursor:pointer;"><a href="/admin/part/software">SOFTWARE정보</a></span>
</li>
</ul> </ul>