dbmsv2_init...1
This commit is contained in:
parent
fc3746eb2d
commit
88980a98ab
@ -4,8 +4,6 @@ namespace App\Controllers\Admin\Equipment;
|
|||||||
|
|
||||||
use App\Entities\Equipment\ServerEntity;
|
use App\Entities\Equipment\ServerEntity;
|
||||||
use App\Helpers\Equipment\ServerHelper;
|
use App\Helpers\Equipment\ServerHelper;
|
||||||
|
|
||||||
use App\Helpers\Equipment\ServerPartHelper;
|
|
||||||
use App\Services\Equipment\ServerService;
|
use App\Services\Equipment\ServerService;
|
||||||
use CodeIgniter\HTTP\RedirectResponse;
|
use CodeIgniter\HTTP\RedirectResponse;
|
||||||
use CodeIgniter\HTTP\RequestInterface;
|
use CodeIgniter\HTTP\RequestInterface;
|
||||||
@ -108,14 +106,4 @@ class ServerController extends EquipmentController
|
|||||||
$this->getService()->codeCheck($formDatas);
|
$this->getService()->codeCheck($formDatas);
|
||||||
return parent::modify_process($entity, $formDatas);
|
return parent::modify_process($entity, $formDatas);
|
||||||
}
|
}
|
||||||
protected function view_process(mixed $entity): ServerEntity
|
|
||||||
{
|
|
||||||
$this->serverPartHelper = new ServerPartHelper();
|
|
||||||
return parent::view_process($entity);
|
|
||||||
}
|
|
||||||
protected function index_process(array $entities = []): array
|
|
||||||
{
|
|
||||||
$this->serverPartHelper = new ServerPartHelper();
|
|
||||||
return parent::index_process($entities);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -590,4 +590,4 @@ UNLOCK TABLES;
|
|||||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||||
|
|
||||||
-- Dump completed on 2025-09-05 9:49:49
|
-- Dump completed on 2025-09-05 10:17:16
|
||||||
|
|||||||
@ -2,14 +2,21 @@
|
|||||||
|
|
||||||
namespace App\Helpers\Customer;
|
namespace App\Helpers\Customer;
|
||||||
|
|
||||||
|
use App\Helpers\Equipment\ServerPartHelper;
|
||||||
use App\Models\Customer\ServiceModel;
|
use App\Models\Customer\ServiceModel;
|
||||||
|
|
||||||
class ServiceHelper extends CustomerHelper
|
class ServiceHelper extends CustomerHelper
|
||||||
{
|
{
|
||||||
|
private ?ServerPartHelper $_serverPartHelper = null;
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->setTitleField(field: ServiceModel::TITLE);
|
$this->setTitleField(field: ServiceModel::TITLE);
|
||||||
|
$this->_serverPartHelper = new ServerPartHelper();
|
||||||
|
}
|
||||||
|
private function getServerPartHelper(): ServerPartHelper
|
||||||
|
{
|
||||||
|
return $this->_serverPartHelper;
|
||||||
}
|
}
|
||||||
public function getFieldForm(string $field, mixed $value, array $viewDatas, array $extras = []): string
|
public function getFieldForm(string $field, mixed $value, array $viewDatas, array $extras = []): string
|
||||||
{
|
{
|
||||||
@ -51,6 +58,19 @@ class ServiceHelper extends CustomerHelper
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 'SWITCH':
|
||||||
|
case 'IP':
|
||||||
|
case 'CS':
|
||||||
|
case 'CPU':
|
||||||
|
case 'RAM':
|
||||||
|
case 'DISK':
|
||||||
|
case 'OS':
|
||||||
|
case 'DB':
|
||||||
|
case 'SOFTWARE':
|
||||||
|
$serverEntity = $viewDatas['entity']->getServerEntity();
|
||||||
|
$viewDatas['serverPartEntities'] = $serverEntity->getServerPartEntities($field);
|
||||||
|
$value = $this->getServerPartHelper()->getFieldView($field, $value, $viewDatas, $extras);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
$value = parent::getFieldView($field, $value, $viewDatas, $extras);
|
$value = parent::getFieldView($field, $value, $viewDatas, $extras);
|
||||||
break;
|
break;
|
||||||
@ -81,6 +101,19 @@ class ServiceHelper extends CustomerHelper
|
|||||||
]
|
]
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
case 'SWITCH':
|
||||||
|
case 'IP':
|
||||||
|
case 'CS':
|
||||||
|
case 'CPU':
|
||||||
|
case 'RAM':
|
||||||
|
case 'DISK':
|
||||||
|
case 'OS':
|
||||||
|
case 'DB':
|
||||||
|
case 'SOFTWARE':
|
||||||
|
$serverEntity = $viewDatas['entity']->getServerEntity();
|
||||||
|
$viewDatas['serverPartEntities'] = $serverEntity->getServerPartEntities($action);
|
||||||
|
$action = $this->getServerPartHelper()->getListButton($action, $label, $viewDatas, $extras);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -51,15 +51,11 @@ class ServerHelper extends EquipmentHelper
|
|||||||
case 'format_at':
|
case 'format_at':
|
||||||
$value = $value ? date("Y-m-d", strtotime($value)) : "";
|
$value = $value ? date("Y-m-d", strtotime($value)) : "";
|
||||||
break;
|
break;
|
||||||
case 'ipinfo_uid':
|
case 'CPU':
|
||||||
foreach ($viewDatas['entity']->getIPEntities() as $ipEntity) {
|
case 'RAM':
|
||||||
$value .= sprintf("<div>%s%s %s</div>", $ipEntity->getTitle(), $ipEntity->getAmount());
|
case 'DISK':
|
||||||
}
|
$viewDatas['serverPartEntities'] = $viewDatas['entity']->getServerPartEntities($field);
|
||||||
break;
|
$value = $this->getServerPartHelper()->getFieldView($field, $value, $viewDatas, $extras);
|
||||||
case 'csinfo_uid':
|
|
||||||
foreach ($viewDatas['entity']->getCSEntities() as $csEntity) {
|
|
||||||
$value .= sprintf("<div>%s%s %s</div>", $csEntity->getTitle(), $csEntity->getAmount());
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$value = parent::getFieldView($field, $value, $viewDatas, $extras);
|
$value = parent::getFieldView($field, $value, $viewDatas, $extras);
|
||||||
@ -90,6 +86,12 @@ class ServerHelper extends EquipmentHelper
|
|||||||
]
|
]
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
case 'CPU':
|
||||||
|
case 'RAM':
|
||||||
|
case 'DISK':
|
||||||
|
$viewDatas['serverPartEntities'] = $viewDatas['entity']->getServerPartEntities($action);
|
||||||
|
$action = $this->getServerPartHelper()->getListButton($action, $label, $viewDatas, $extras);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -31,38 +31,42 @@ class ServerPartHelper extends EquipmentHelper
|
|||||||
public function getFieldForm(string $field, mixed $value, array $viewDatas, array $extras = []): string
|
public function getFieldForm(string $field, mixed $value, array $viewDatas, array $extras = []): string
|
||||||
{
|
{
|
||||||
switch ($field) {
|
switch ($field) {
|
||||||
|
// case 'SWITCH':
|
||||||
|
// if (array_key_exists('entity', $viewDatas)) {
|
||||||
|
// $value = $viewDatas['entity']->getSwitchEntity() !== null ? $viewDatas['entity']->getSwitchEntity()->getPK() : $value;
|
||||||
|
// }
|
||||||
|
// $extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
||||||
|
// $form = $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
||||||
|
// break;
|
||||||
|
// case 'IP':
|
||||||
|
// $extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
||||||
|
// $form = "";
|
||||||
|
// if (array_key_exists('entity', $viewDatas)) {
|
||||||
|
// foreach ($viewDatas['entity']->getIPEntities() as $ipEntity) {
|
||||||
|
// $form .= "<div>" . $this->form_dropdown_custom($field, $ipEntity->getPK(), $viewDatas, $extras) . "</div>";
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// $form .= $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
||||||
|
// break;
|
||||||
|
// case 'CS':
|
||||||
|
// $extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
||||||
|
// $form = "";
|
||||||
|
// if (array_key_exists('entity', $viewDatas)) {
|
||||||
|
// foreach ($viewDatas['entity']->getCSEntities() as $csEntity) {
|
||||||
|
// $form .= "<div>" . $this->form_dropdown_custom($field, $csEntity->getPK(), $viewDatas, $extras) . "</div>";
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// $form .= $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
||||||
|
// break;
|
||||||
case 'SWITCH':
|
case 'SWITCH':
|
||||||
if (array_key_exists('entity', $viewDatas)) {
|
|
||||||
$value = $viewDatas['entity']->getSwitchEntity() !== null ? $viewDatas['entity']->getSwitchEntity()->getPK() : $value;
|
|
||||||
}
|
|
||||||
$extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
|
||||||
$form = $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
|
||||||
break;
|
|
||||||
case 'IP':
|
case 'IP':
|
||||||
$extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
|
||||||
$form = "";
|
|
||||||
if (array_key_exists('entity', $viewDatas)) {
|
|
||||||
foreach ($viewDatas['entity']->getIPEntities() as $ipEntity) {
|
|
||||||
$form .= "<div>" . $this->form_dropdown_custom($field, $ipEntity->getPK(), $viewDatas, $extras) . "</div>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$form .= $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
|
||||||
break;
|
|
||||||
case 'CS':
|
case 'CS':
|
||||||
$extras['class'] = array_key_exists('class', $extras) ? $extras['class'] . ' select-field' : 'select-field';
|
|
||||||
$form = "";
|
|
||||||
if (array_key_exists('entity', $viewDatas)) {
|
|
||||||
foreach ($viewDatas['entity']->getCSEntities() as $csEntity) {
|
|
||||||
$form .= "<div>" . $this->form_dropdown_custom($field, $csEntity->getPK(), $viewDatas, $extras) . "</div>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$form .= $this->form_dropdown_custom($field, $value, $viewDatas, $extras);
|
|
||||||
break;
|
|
||||||
case 'CPU':
|
case 'CPU':
|
||||||
case 'RAM':
|
case 'RAM':
|
||||||
case 'DISK':
|
case 'DISK':
|
||||||
case 'DB':
|
case 'DB':
|
||||||
case 'OS':
|
case 'OS':
|
||||||
|
case 'SOFTWARE':
|
||||||
$form = $this->getServerPartForm($field, $value, $viewDatas, $extras, $field);
|
$form = $this->getServerPartForm($field, $value, $viewDatas, $extras, $field);
|
||||||
break;
|
break;
|
||||||
case 'CPU_cnt':
|
case 'CPU_cnt':
|
||||||
@ -70,6 +74,7 @@ class ServerPartHelper extends EquipmentHelper
|
|||||||
case 'DISK_cnt':
|
case 'DISK_cnt':
|
||||||
case 'DB_cnt':
|
case 'DB_cnt':
|
||||||
case 'OS_cnt':
|
case 'OS_cnt':
|
||||||
|
case 'SOFTWARE_cnt':
|
||||||
$form = "*" . form_dropdown($field, SERVERPART['CNT_RANGE'], $value, $extras) . "개";
|
$form = "*" . form_dropdown($field, SERVERPART['CNT_RANGE'], $value, $extras) . "개";
|
||||||
break;
|
break;
|
||||||
case 'DISK_extra':
|
case 'DISK_extra':
|
||||||
@ -100,7 +105,7 @@ class ServerPartHelper extends EquipmentHelper
|
|||||||
case 'DB':
|
case 'DB':
|
||||||
case 'SOFTWARE':
|
case 'SOFTWARE':
|
||||||
$temps = [];
|
$temps = [];
|
||||||
foreach ($viewDatas['entity']->getServerPartEntities($field) as $partEntity) {
|
foreach ($viewDatas['serverPartEntities'] as $partEntity) {
|
||||||
$modal = form_label(
|
$modal = form_label(
|
||||||
ICONS['SETUP'],
|
ICONS['SETUP'],
|
||||||
$field,
|
$field,
|
||||||
@ -144,17 +149,21 @@ class ServerPartHelper extends EquipmentHelper
|
|||||||
case 'OS':
|
case 'OS':
|
||||||
case 'DB':
|
case 'DB':
|
||||||
case 'SOFTWARE':
|
case 'SOFTWARE':
|
||||||
$extras = ["class" => "btn btn-sm btn-outline btn-circle", "target" => "_self", ...$extras];
|
$temps = [];
|
||||||
$action = form_label(
|
foreach ($viewDatas['serverPartEntities'] as $partEntity) {
|
||||||
$label ? $label : ICONS['SETUP'],
|
$extras = ["class" => "btn btn-sm btn-outline btn-circle", "target" => "_self", ...$extras];
|
||||||
$action,
|
$temps[] = form_label(
|
||||||
[
|
$label ? $label : ICONS['SETUP'],
|
||||||
"data-src" => "/admin/equipment/serverpart?serverinfo_uid={$viewDatas['entity']->getPK()}&type={$action}&ActionTemplate=popup",
|
$action,
|
||||||
"data-bs-toggle" => "modal",
|
[
|
||||||
"data-bs-target" => "#index_action_form",
|
"data-src" => "/admin/equipment/serverpart?serverinfo_uid={$partEntity->getServerInfoUID()}&type={$partEntity->getType()}&ActionTemplate=popup",
|
||||||
...$extras
|
"data-bs-toggle" => "modal",
|
||||||
]
|
"data-bs-target" => "#index_action_form",
|
||||||
);
|
...$extras,
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
$action = implode("<BR>", $temps);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
$action = parent::getListButton($action, $label, $viewDatas, $extras);
|
||||||
|
|||||||
@ -191,17 +191,7 @@ class ServiceService extends CustomerService
|
|||||||
return $this->getModel()->query($sql, [$billing_at, $status]);
|
return $this->getModel()->query($sql, [$billing_at, $status]);
|
||||||
}
|
}
|
||||||
|
|
||||||
//다른장치 설정용
|
//서버설정용
|
||||||
private function disableService(ServiceEntity $entity): ServiceEntity
|
|
||||||
{
|
|
||||||
//기존 Server정보와 다른경우 사용가능상태로 변경
|
|
||||||
$serverEntity = $entity->getServerEntity();
|
|
||||||
if ($serverEntity !== null) {
|
|
||||||
$serverEntity = $this->getServerService()->disableService($entity, $serverEntity);
|
|
||||||
$entity->setServerEntity(null);
|
|
||||||
}
|
|
||||||
return $entity;
|
|
||||||
}
|
|
||||||
private function enableService(ServiceEntity $entity, array $formDatas): ServiceEntity
|
private function enableService(ServiceEntity $entity, array $formDatas): ServiceEntity
|
||||||
{
|
{
|
||||||
//서버경우 서비스중으로 설정
|
//서버경우 서비스중으로 설정
|
||||||
@ -213,6 +203,16 @@ class ServiceService extends CustomerService
|
|||||||
$entity->setServerEntity($serverEntity);
|
$entity->setServerEntity($serverEntity);
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
|
private function disableService(ServiceEntity $entity): ServiceEntity
|
||||||
|
{
|
||||||
|
//기존 Server정보와 다른경우 사용가능상태로 변경
|
||||||
|
$serverEntity = $entity->getServerEntity();
|
||||||
|
if ($serverEntity !== null) {
|
||||||
|
$serverEntity = $this->getServerService()->disableService($entity, $serverEntity);
|
||||||
|
$entity->setServerEntity(null);
|
||||||
|
}
|
||||||
|
return $entity;
|
||||||
|
}
|
||||||
//생성
|
//생성
|
||||||
public function create(array $formDatas): ServiceEntity
|
public function create(array $formDatas): ServiceEntity
|
||||||
{
|
{
|
||||||
|
|||||||
@ -166,11 +166,12 @@ class ServerService extends EquipmentService
|
|||||||
$formDatas['status'] = STATUS['OCCUPIED'];;
|
$formDatas['status'] = STATUS['OCCUPIED'];;
|
||||||
$entity = parent::modify($entity, $formDatas);
|
$entity = parent::modify($entity, $formDatas);
|
||||||
//ServerPart경우 서비스번호 설정
|
//ServerPart경우 서비스번호 설정
|
||||||
$serverPartEntities = [];
|
|
||||||
foreach ($this->getServerPartService()->getEntities(['serverinfo_uid' => $entity->getPK()]) as $serverPartEntity) {
|
foreach ($this->getServerPartService()->getEntities(['serverinfo_uid' => $entity->getPK()]) as $serverPartEntity) {
|
||||||
$serverPartEntities[] = $this->getServerPartService()->enableService($entity, $serverPartEntity, $formDatas);
|
$entity->addServerPartEntity(
|
||||||
|
$serverPartEntity->getType(),
|
||||||
|
$this->getServerPartService()->enableService($entity, $serverPartEntity, $formDatas)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
$entity->setServerPartEntities($serverPartEntities);
|
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
public function disableService(ServiceEntity $serviceEntity, ServerEntity $entity): ServerEntity
|
public function disableService(ServiceEntity $serviceEntity, ServerEntity $entity): ServerEntity
|
||||||
@ -182,11 +183,12 @@ class ServerService extends EquipmentService
|
|||||||
$formDatas['status'] = STATUS['AVAILABLE'];
|
$formDatas['status'] = STATUS['AVAILABLE'];
|
||||||
$entity = parent::modify($entity, $formDatas);
|
$entity = parent::modify($entity, $formDatas);
|
||||||
//ServerPart경우 서비스번호 해지
|
//ServerPart경우 서비스번호 해지
|
||||||
$serverPartEntities = [];
|
|
||||||
foreach ($this->getServerPartService()->getEntities(['serverinfo_uid' => $entity->getPK()]) as $serverPartEntity) {
|
foreach ($this->getServerPartService()->getEntities(['serverinfo_uid' => $entity->getPK()]) as $serverPartEntity) {
|
||||||
$serverPartEntities[] = $this->getServerPartService()->disableService($serverPartEntity);
|
$entity->addServerPartEntity(
|
||||||
|
$serverPartEntity->getType(),
|
||||||
|
$this->getServerPartService()->disableService($serverPartEntity)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
$entity->setServerPartEntities($serverPartEntities);
|
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,8 +72,8 @@
|
|||||||
<table class="table table-bordered table-striped m-0 p-0">
|
<table class="table table-bordered table-striped m-0 p-0">
|
||||||
<?php foreach (SERVERPART['SERVER_PARTTTYPES'] as $partType): ?>
|
<?php foreach (SERVERPART['SERVER_PARTTTYPES'] as $partType): ?>
|
||||||
<tr class="m-0 p-0">
|
<tr class="m-0 p-0">
|
||||||
<th class="text-end m-0 p-0"><?= $viewDatas['serverPartHelper']->getListButton($partType, $partType, $viewDatas) ?></th>
|
<th class="text-end m-0 p-0"><?= $viewDatas['helper']->getListButton($partType, $partType, $viewDatas) ?></th>
|
||||||
<td class="text-start m-0 p-0"><?= $viewDatas['serverPartHelper']->getFieldView($partType, "", $viewDatas) ?></td>
|
<td class="text-start m-0 p-0"><?= $viewDatas['helper']->getFieldView($partType, "", $viewDatas) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@ -81,19 +81,9 @@
|
|||||||
<td class="m-0 p-0"><?= $viewDatas['helper']->getFieldView($partType, "", $viewDatas) ?></td>
|
<td class="m-0 p-0"><?= $viewDatas['helper']->getFieldView($partType, "", $viewDatas) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php endforeach ?>
|
<?php endforeach ?>
|
||||||
<tr class="m-0 p-0">
|
|
||||||
<th class="m-0 p-0">IP</th>
|
|
||||||
<td class="m-0 p-0"><?= $viewDatas['helper']->getFieldView("ipinfo_uid", "", $viewDatas) ?></td>
|
|
||||||
</tr>
|
|
||||||
<tr class="m-0 p-0">
|
|
||||||
<th class="m-0 p-0">CS</th>
|
|
||||||
<td class="m-0 p-0"><?= $viewDatas['helper']->getFieldView("csinfo_uid", "", $viewDatas) ?></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
</table>
|
||||||
</td>
|
</td>
|
||||||
<td nowrap>
|
<td nowrap><?= $viewDatas['helper']->getFieldView('user_uid', $entity->user_uid, $viewDatas) ?></td>
|
||||||
<div><?= $viewDatas['helper']->getFieldView('user_uid', $entity->user_uid, $viewDatas) ?></div>
|
|
||||||
</td>
|
|
||||||
<td nowrap>
|
<td nowrap>
|
||||||
<?= $viewDatas['helper']->getListButton('view', '', $viewDatas) ?>
|
<?= $viewDatas['helper']->getListButton('view', '', $viewDatas) ?>
|
||||||
<?= $viewDatas['helper']->getListButton('history', '', $viewDatas) ?>
|
<?= $viewDatas['helper']->getListButton('history', '', $viewDatas) ?>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user