From 5389a60e1a4d09d60fd45e90227731fffbb7ce96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=B5=9C=EC=A4=80=ED=9D=A0?= Date: Wed, 21 May 2025 17:18:03 +0900 Subject: [PATCH] dbms_init...1 --- app/Config/Routes.php | 60 +- .../Admin/Customer/CustomerController.php | 31 +- .../Admin/Customer/ServiceController.php | 35 +- .../Admin/Customer/ServicePartController.php | 8 +- .../Admin/Equipment/EquipmentController.php | 38 +- .../Admin/Equipment/IpController.php | 14 + .../Admin/Equipment/Part/CpuController.php | 37 + .../Admin/Equipment/Part/DiskController.php | 37 + .../Admin/Equipment/Part/PartController.php | 34 + .../Admin/Equipment/Part/RamController.php | 37 + .../Admin/Equipment/ServerController.php | 2 +- .../Admin/Equipment/ServerPartController.php | 6 +- app/Controllers/Admin/MyLogController.php | 4 +- app/Controllers/CommonController.php | 23 +- app/Database/dbms_init.sql | 836 +++++++ app/Database/erp2.vuerd.json | 2002 +++++++++++++++-- app/Database/users.sql | 62 - app/Entities/Customer/ServiceEntity.php | 6 +- app/Entities/Customer/ServiceServerEntity.php | 4 +- app/Entities/Equipment/Part/CpuEntity.php | 11 + app/Entities/Equipment/Part/DiskEntity.php | 11 + app/Entities/Equipment/Part/PartEntity.php | 14 + app/Entities/Equipment/Part/RamEntity.php | 11 + app/Entities/Equipment/PartEntity.php | 16 - app/Entities/Equipment/ServerPartEntity.php | 4 +- app/Helpers/CommonHelper.php | 3 - app/Helpers/Customer/CustomerHelper.php | 2 +- app/Helpers/Customer/ServiceHelper.php | 7 +- app/Helpers/Equipment/EquipmentHelper.php | 2 +- .../{PartHelper.php => Part/CpuHelper.php} | 8 +- app/Helpers/Equipment/Part/DiskHelper.php | 16 + app/Helpers/Equipment/Part/PartHelper.php | 14 + app/Helpers/Equipment/Part/RamHelper.php | 16 + app/Language/en/Customer/Service.php | 5 +- .../en/Equipment/{Part.php => Part/Cpu.php} | 12 +- app/Language/en/Equipment/Part/Disk.php | 18 + app/Language/en/Equipment/Part/Ram.php | 18 + app/Models/Customer/ServiceModel.php | 4 + .../{PartModel.php => Part/CpuModel.php} | 13 +- app/Models/Equipment/Part/DiskModel.php | 39 + app/Models/Equipment/Part/PartModel.php | 13 + app/Models/Equipment/Part/RamModel.php | 39 + app/Services/CommonService.php | 5 +- app/Services/Customer/ClientService.php | 16 - app/Services/Customer/ServicePartService.php | 4 +- app/Services/Customer/ServiceService.php | 4 +- app/Services/Equipment/IpService.php | 15 - app/Services/Equipment/Part/CpuService.php | 28 + app/Services/Equipment/Part/DiskService.php | 28 + app/Services/Equipment/Part/PartService.php | 35 + app/Services/Equipment/Part/RamService.php | 28 + app/Services/Equipment/PartService.php | 63 - app/Services/Equipment/ServerService.php | 17 +- app/Views/admin/create_form.php | 2 +- app/Views/admin/index.php | 7 +- app/Views/admin/modify_form.php | 2 +- app/Views/admin/popup/index.php | 3 +- app/Views/admin/view.php | 1 + .../layouts/admin/left_menu/equipment.php | 18 +- 59 files changed, 3399 insertions(+), 449 deletions(-) create mode 100644 app/Controllers/Admin/Equipment/Part/CpuController.php create mode 100644 app/Controllers/Admin/Equipment/Part/DiskController.php create mode 100644 app/Controllers/Admin/Equipment/Part/PartController.php create mode 100644 app/Controllers/Admin/Equipment/Part/RamController.php create mode 100644 app/Database/dbms_init.sql delete mode 100644 app/Database/users.sql create mode 100644 app/Entities/Equipment/Part/CpuEntity.php create mode 100644 app/Entities/Equipment/Part/DiskEntity.php create mode 100644 app/Entities/Equipment/Part/PartEntity.php create mode 100644 app/Entities/Equipment/Part/RamEntity.php delete mode 100644 app/Entities/Equipment/PartEntity.php rename app/Helpers/Equipment/{PartHelper.php => Part/CpuHelper.php} (56%) create mode 100644 app/Helpers/Equipment/Part/DiskHelper.php create mode 100644 app/Helpers/Equipment/Part/PartHelper.php create mode 100644 app/Helpers/Equipment/Part/RamHelper.php rename app/Language/en/Equipment/{Part.php => Part/Cpu.php} (54%) create mode 100644 app/Language/en/Equipment/Part/Disk.php create mode 100644 app/Language/en/Equipment/Part/Ram.php rename app/Models/Equipment/{PartModel.php => Part/CpuModel.php} (76%) create mode 100644 app/Models/Equipment/Part/DiskModel.php create mode 100644 app/Models/Equipment/Part/PartModel.php create mode 100644 app/Models/Equipment/Part/RamModel.php create mode 100644 app/Services/Equipment/Part/CpuService.php create mode 100644 app/Services/Equipment/Part/DiskService.php create mode 100644 app/Services/Equipment/Part/PartService.php create mode 100644 app/Services/Equipment/Part/RamService.php delete mode 100644 app/Services/Equipment/PartService.php diff --git a/app/Config/Routes.php b/app/Config/Routes.php index c155457..7661dc1 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -106,6 +106,20 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'ServiceController::batchjob_delete'); $routes->get('download/(:alpha)', 'ServiceController::download/$1'); }); + + $routes->group('servicepart', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { + $routes->get('/', 'ServicePartController::index', []); + $routes->get('create', 'ServicePartController::create_form'); + $routes->post('create', 'ServicePartController::create'); + $routes->get('modify/(:num)', 'ServicePartController::modify_form/$1'); + $routes->post('modify/(:num)', 'ServicePartController::modify/$1'); + $routes->get('view/(:num)', 'ServicePartController::view/$1'); + $routes->get('delete/(:num)', 'ServicePartController::delete/$1'); + $routes->get('toggle/(:num)/(:any)', 'ServicePartController::toggle/$1/$2'); + $routes->post('batchjob', 'ServicePartController::batchjob'); + $routes->post('batchjob_delete', 'ServicePartController::batchjob_delete'); + $routes->get('download/(:alpha)', 'ServicePartController::download/$1'); + }); }); $routes->group('equipment', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->group('line', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { @@ -134,7 +148,6 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'IpController::batchjob_delete'); $routes->get('download/(:alpha)', 'IpController::download/$1'); }); - $routes->group('server', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'ServerController::index', []); $routes->get('create', 'ServerController::create_form'); @@ -148,19 +161,6 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'ServerController::batchjob_delete'); $routes->get('download/(:alpha)', 'ServerController::download/$1'); }); - $routes->group('part', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { - $routes->get('/', 'PartController::index', []); - $routes->get('create', 'PartController::create_form'); - $routes->post('create', 'PartController::create'); - $routes->get('modify/(:num)', 'PartController::modify_form/$1'); - $routes->post('modify/(:num)', 'PartController::modify/$1'); - $routes->get('view/(:num)', 'PartController::view/$1'); - $routes->get('delete/(:num)', 'PartController::delete/$1'); - $routes->get('toggle/(:num)/(:any)', 'PartController::toggle/$1/$2'); - $routes->post('batchjob', 'PartController::batchjob'); - $routes->post('batchjob_delete', 'PartController::batchjob_delete'); - $routes->get('download/(:alpha)', 'PartController::download/$1'); - }); $routes->group('defence', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'DefenceController::index', []); $routes->get('create', 'DefenceController::create_form'); @@ -200,5 +200,37 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'ServerPartController::batchjob_delete'); $routes->get('download/(:alpha)', 'ServerPartController::download/$1'); }); + $routes->group('part', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { + $routes->group('cpu', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { + $routes->get('/', 'CpuController::index', []); + $routes->get('create', 'CpuController::create_form'); + $routes->post('create', 'CpuController::create'); + $routes->get('modify/(:num)', 'CpuController::modify_form/$1'); + $routes->post('modify/(:num)', 'CpuController::modify/$1'); + $routes->get('view/(:num)', 'CpuController::view/$1'); + $routes->get('delete/(:num)', 'CpuController::delete/$1'); + $routes->get('toggle/(:num)/(:any)', 'CpuController::toggle/$1/$2'); + }); + $routes->group('ram', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { + $routes->get('/', 'RamController::index', []); + $routes->get('create', 'RamController::create_form'); + $routes->post('create', 'RamController::create'); + $routes->get('modify/(:num)', 'RamController::modify_form/$1'); + $routes->post('modify/(:num)', 'RamController::modify/$1'); + $routes->get('view/(:num)', 'RamController::view/$1'); + $routes->get('delete/(:num)', 'RamController::delete/$1'); + $routes->get('toggle/(:num)/(:any)', 'RamController::toggle/$1/$2'); + }); + $routes->group('disk', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { + $routes->get('/', 'DiskController::index', []); + $routes->get('create', 'DiskController::create_form'); + $routes->post('create', 'DiskController::create'); + $routes->get('modify/(:num)', 'DiskController::modify_form/$1'); + $routes->post('modify/(:num)', 'DiskController::modify/$1'); + $routes->get('view/(:num)', 'DiskController::view/$1'); + $routes->get('delete/(:num)', 'DiskController::delete/$1'); + $routes->get('toggle/(:num)/(:any)', 'DiskController::toggle/$1/$2'); + }); + }); }); }); diff --git a/app/Controllers/Admin/Customer/CustomerController.php b/app/Controllers/Admin/Customer/CustomerController.php index c1eca2e..3e3a377 100644 --- a/app/Controllers/Admin/Customer/CustomerController.php +++ b/app/Controllers/Admin/Customer/CustomerController.php @@ -3,17 +3,18 @@ namespace App\Controllers\Admin\Customer; use App\Controllers\Admin\AdminController; -use CodeIgniter\HTTP\RequestInterface; -use CodeIgniter\HTTP\ResponseInterface; -use Psr\Log\LoggerInterface; - +use App\Services\Customer\ClientService; use App\Services\Customer\ServiceService; use App\Services\Customer\AccountService; use App\Services\Customer\CouponService; use App\Services\Customer\PointService; +use CodeIgniter\HTTP\RequestInterface; +use CodeIgniter\HTTP\ResponseInterface; +use Psr\Log\LoggerInterface; abstract class CustomerController extends AdminController { + private ?ClientService $_clientService = null; private ?ServiceService $_serviceService = null; private ?AccountService $_accountService = null; private ?CouponService $_couponService = null; @@ -25,6 +26,13 @@ abstract class CustomerController extends AdminController // $this->view_path .= "customer" . DIRECTORY_SEPARATOR; } + final public function getClientService(): ClientService + { + if (!$this->_clientService) { + $this->_clientService = new ClientService($this->request); + } + return $this->_clientService; + } final public function getServiceService(): ServiceService { if (!$this->_serviceService) { @@ -53,5 +61,20 @@ abstract class CustomerController extends AdminController } return $this->_pointService; } + + protected function getFormFieldOption(string $field, array $options): array + { + switch ($field) { + case 'clientinfo_uid': + $options = $this->getClientService()->getFormFieldOption($field); + // echo $this->getUserModel()->getLastQuery(); + // dd($options); + break; + default: + $options = parent::getFormFieldOption($field, $options); + break; + } + return $options; + } //Index,FieldForm관련 } diff --git a/app/Controllers/Admin/Customer/ServiceController.php b/app/Controllers/Admin/Customer/ServiceController.php index e6f6031..e026401 100644 --- a/app/Controllers/Admin/Customer/ServiceController.php +++ b/app/Controllers/Admin/Customer/ServiceController.php @@ -10,6 +10,7 @@ use App\Entities\Customer\ServiceEntity; use App\Helpers\Customer\ServiceHelper; use App\Services\Customer\ServiceService; +use App\Services\Equipment\LineService; use App\Services\Equipment\ServerService; use App\Entities\Customer\ServiceServerEntity; use App\Services\Customer\ServiceServerService; @@ -20,6 +21,7 @@ use App\Services\Equipment\IpService; class ServiceController extends CustomerController { + private ?LineService $_lineService = null; private ?ServerService $_serverService = null; private ?ServiceServerService $_serviceServerService = null; private ?PartService $_partService = null; @@ -50,6 +52,13 @@ class ServiceController extends CustomerController } return $this->_helper; } + final public function getLineService(): LineService + { + if (!$this->_lineService) { + $this->_lineService = new LineService(); + } + return $this->_lineService; + } final public function getServerService(): ServerService { if (!$this->_serverService) { @@ -85,6 +94,22 @@ class ServiceController extends CustomerController } return $this->_ipService; } + protected function getFormFieldOption(string $field, array $options): array + { + switch ($field) { + case 'lineinfo_uid': + $options = $this->getLineService()->getFormFieldOption($field); + break; + case 'serverinfo_uid': + $options = $this->getServerService()->getFormFieldOption($field); + break; + default: + $options = parent::getFormFieldOption($field, $options); + break; + } + // dd($options); + return $options; + } //Index,FieldForm관련 private function setPartEntity(ServiceEntity $entity): ServiceEntity @@ -97,10 +122,18 @@ class ServiceController extends CustomerController } return $entity; } + + protected function create_process(): mixed + { + $entity = parent::create_process(); + //사용중인 서버로 변경 + $this->getServerService()->setOccupied($this->getServerService()->getEntity($entity->getServerInfoUID())); + return $entity; + } protected function index_process(): array { $fields = [ - 'fields' => ['type', 'billing_at', 'rack', 'SERVER', 'IP', 'CPU', 'RAM', 'DISK', 'SOFTWARE', 'DEFENCE', 'start_at', 'status'], + 'fields' => ['type', 'clientinfo_uid', 'rack', 'lineinfo_uid', 'serverinfo_uid', 'IP', 'CPU', 'RAM', 'DISK', 'SOFTWARE', 'DEFENCE', 'billing_at', 'start_at', 'status'], ]; $this->init('index', $fields); $this->modal_type = 'modal_iframe'; diff --git a/app/Controllers/Admin/Customer/ServicePartController.php b/app/Controllers/Admin/Customer/ServicePartController.php index b45bab1..53e0b19 100644 --- a/app/Controllers/Admin/Customer/ServicePartController.php +++ b/app/Controllers/Admin/Customer/ServicePartController.php @@ -43,14 +43,14 @@ class ServicePartController extends CustomerController } return $this->_partService; } - protected function getFormFieldOption(string $field, array $options = []): array + protected function getFormFieldOption(string $field, array $options): array { switch ($field) { case 'serviceinfo_uid': - $options[$field] = $this->getServiceService()->getFormFieldOption($field); + $options[$field] = $this->getServiceService()->getFormFieldOption($field,); break; case 'partinfo_uid': - $options[$field] = $this->getPartService()->getFormFieldOption($field); + $options[$field] = $this->getPartService()->getFormFieldOption($field,); break; default: $options = parent::getFormFieldOption($field, $options); @@ -84,7 +84,7 @@ class ServicePartController extends CustomerController protected function index_process(): array { $fields = [ - 'fields' => ['serviceinfo_uid', 'type', 'partinfo_uid'], + 'fields' => ['serviceinfo_uid', 'billing_type', 'partinfo_uid'], ]; $this->init('index', $fields); $this->modal_type = 'modal_iframe'; diff --git a/app/Controllers/Admin/Equipment/EquipmentController.php b/app/Controllers/Admin/Equipment/EquipmentController.php index c5c7df8..810e229 100644 --- a/app/Controllers/Admin/Equipment/EquipmentController.php +++ b/app/Controllers/Admin/Equipment/EquipmentController.php @@ -3,15 +3,18 @@ namespace App\Controllers\Admin\Equipment; use App\Controllers\Admin\AdminController; +use App\Services\Customer\ClientService; +use App\Services\Equipment\LineService; +use App\Services\Equipment\ServerService; + use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\ResponseInterface; use Psr\Log\LoggerInterface; -use App\Services\Equipment\LineService; -use App\Services\Equipment\ServerService; - abstract class EquipmentController extends AdminController { + private ?ClientService $_clientService = null; + private ?LineService $_lineService = null; private ?ServerService $_serverService = null; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { @@ -19,6 +22,20 @@ abstract class EquipmentController extends AdminController $this->uri_path .= 'equipment/'; // $this->view_path .= "equipment" . DIRECTORY_SEPARATOR; } + final public function getClientService(): ClientService + { + if (!$this->_clientService) { + $this->_clientService = new ClientService($this->request); + } + return $this->_clientService; + } + final public function getLineService(): LineService + { + if (!$this->_lineService) { + $this->_lineService = new LineService($this->request); + } + return $this->_lineService; + } final public function getServerService(): ServerService { if (!$this->_serverService) { @@ -26,5 +43,20 @@ abstract class EquipmentController extends AdminController } return $this->_serverService; } + + protected function getFormFieldOption(string $field, array $options): array + { + switch ($field) { + case 'clientinfo_uid': + $options = $this->getClientService()->getFormFieldOption($field); + // echo $this->getUserModel()->getLastQuery(); + // dd($options); + break; + default: + $options = parent::getFormFieldOption($field, $options); + break; + } + return $options; + } //Index,FieldForm관련 } diff --git a/app/Controllers/Admin/Equipment/IpController.php b/app/Controllers/Admin/Equipment/IpController.php index a6ce47d..56d3066 100644 --- a/app/Controllers/Admin/Equipment/IpController.php +++ b/app/Controllers/Admin/Equipment/IpController.php @@ -34,6 +34,20 @@ class IpController extends EquipmentController } return $this->_helper; } + protected function getFormFieldOption(string $field, array $options = []): array + { + switch ($field) { + case 'lineinfo_uid': + $options = $this->getLineService()->getFormFieldOption($field); + // echo $this->getUserModel()->getLastQuery(); + // dd($options); + break; + default: + $options = parent::getFormFieldOption($field, $options); + break; + } + return $options; + } //Index,FieldForm관련 protected function setOrderByForList() { diff --git a/app/Controllers/Admin/Equipment/Part/CpuController.php b/app/Controllers/Admin/Equipment/Part/CpuController.php new file mode 100644 index 0000000..83fe1b8 --- /dev/null +++ b/app/Controllers/Admin/Equipment/Part/CpuController.php @@ -0,0 +1,37 @@ +uri_path .= strtolower($this->getService()->getClassName()) . '/'; + $this->class_path = $this->getService()->getClassPath(); + $this->title = lang("{$this->getService()->getClassPath()}.title"); + $this->helper = $this->getHelper(); + } + public function getService(): CpuService + { + if (!$this->_service) { + $this->_service = new CpuService($this->request); + } + return $this->_service; + } + public function getHelper(): mixed + { + if (!$this->_helper) { + $this->_helper = new CpuHelper($this->request); + } + return $this->_helper; + } + //Index,FieldForm관련 +} diff --git a/app/Controllers/Admin/Equipment/Part/DiskController.php b/app/Controllers/Admin/Equipment/Part/DiskController.php new file mode 100644 index 0000000..3b6fee9 --- /dev/null +++ b/app/Controllers/Admin/Equipment/Part/DiskController.php @@ -0,0 +1,37 @@ +uri_path .= strtolower($this->getService()->getClassName()) . '/'; + $this->class_path = $this->getService()->getClassPath(); + $this->title = lang("{$this->getService()->getClassPath()}.title"); + $this->helper = $this->getHelper(); + } + public function getService(): DiskService + { + if (!$this->_service) { + $this->_service = new DiskService($this->request); + } + return $this->_service; + } + public function getHelper(): mixed + { + if (!$this->_helper) { + $this->_helper = new DiskHelper($this->request); + } + return $this->_helper; + } + //Index,FieldForm관련 +} diff --git a/app/Controllers/Admin/Equipment/Part/PartController.php b/app/Controllers/Admin/Equipment/Part/PartController.php new file mode 100644 index 0000000..75d91eb --- /dev/null +++ b/app/Controllers/Admin/Equipment/Part/PartController.php @@ -0,0 +1,34 @@ +uri_path .= 'part/'; + // $this->view_path .= "part" . DIRECTORY_SEPARATOR; + } + + protected function setOrderByForList() + { + //OrderBy 처리 + $this->getService()->getModel()->orderBy('model', 'ASC', false); + parent::setOrderByForList(); + } + protected function index_process(): array + { + $fields = [ + 'fields' => ['model', 'status'], + ]; + $this->init('index', $fields); + return parent::index_process(); + } +} diff --git a/app/Controllers/Admin/Equipment/Part/RamController.php b/app/Controllers/Admin/Equipment/Part/RamController.php new file mode 100644 index 0000000..fea9673 --- /dev/null +++ b/app/Controllers/Admin/Equipment/Part/RamController.php @@ -0,0 +1,37 @@ +uri_path .= strtolower($this->getService()->getClassName()) . '/'; + $this->class_path = $this->getService()->getClassPath(); + $this->title = lang("{$this->getService()->getClassPath()}.title"); + $this->helper = $this->getHelper(); + } + public function getService(): RamService + { + if (!$this->_service) { + $this->_service = new RamService($this->request); + } + return $this->_service; + } + public function getHelper(): mixed + { + if (!$this->_helper) { + $this->_helper = new RamHelper($this->request); + } + return $this->_helper; + } + //Index,FieldForm관련 +} diff --git a/app/Controllers/Admin/Equipment/ServerController.php b/app/Controllers/Admin/Equipment/ServerController.php index 46fe935..f430564 100644 --- a/app/Controllers/Admin/Equipment/ServerController.php +++ b/app/Controllers/Admin/Equipment/ServerController.php @@ -59,7 +59,7 @@ class ServerController extends EquipmentController private function setPartEntity(ServerEntity $entity): ServerEntity { foreach ($this->getServerPartService()->getEntities(['serverinfo_uid' => $entity->getPK()]) as $serverPartEntity) { - $partEntity = $this->getPartService()->getEntity($serverPartEntity->getPartInfo()); + $partEntity = $this->getPartService()->getEntity($serverPartEntity->getPartInfoUID()); if ($partEntity) { $entity->addPartEntity($partEntity->getType(), $partEntity); } diff --git a/app/Controllers/Admin/Equipment/ServerPartController.php b/app/Controllers/Admin/Equipment/ServerPartController.php index 8eea678..c4edc4a 100644 --- a/app/Controllers/Admin/Equipment/ServerPartController.php +++ b/app/Controllers/Admin/Equipment/ServerPartController.php @@ -43,14 +43,14 @@ class ServerPartController extends EquipmentController } return $this->_partService; } - protected function getFormFieldOption(string $field, array $options = []): array + protected function getFormFieldOption(string $field, array $options): array { switch ($field) { case 'serverinfo_uid': - $options[$field] = $this->getServerService()->getFormFieldOption($field); + $options = $this->getServerService()->getFormFieldOption($field); break; case 'partinfo_uid': - $options[$field] = $this->getPartService()->getFormFieldOption($field); + $options = $this->getPartService()->getFormFieldOption($field); break; default: $options = parent::getFormFieldOption($field, $options); diff --git a/app/Controllers/Admin/MyLogController.php b/app/Controllers/Admin/MyLogController.php index 5f97ec6..ecda3eb 100644 --- a/app/Controllers/Admin/MyLogController.php +++ b/app/Controllers/Admin/MyLogController.php @@ -45,11 +45,11 @@ class MyLogController extends AdminController return $this->_userService; } //Index,FieldForm관련 - protected function getFormFieldOption(string $field, array $options = []): array + protected function getFormFieldOption(string $field, array $options): array { switch ($field) { case 'user_uid': - $options[$field] = $this->getUserService()->getFormFieldOption($field); + $options = $this->getUserService()->getFormFieldOption($field); // echo $this->getUserModel()->getLastQuery(); // dd($options); break; diff --git a/app/Controllers/CommonController.php b/app/Controllers/CommonController.php index b392ed3..9253824 100644 --- a/app/Controllers/CommonController.php +++ b/app/Controllers/CommonController.php @@ -17,13 +17,11 @@ use Psr\Log\LoggerInterface; use App\Libraries\LogCollector; use App\Services\MyLogService; -use App\Services\Customer\ClientService; abstract class CommonController extends BaseController { private $_myAuth = null; private ?MyLogService $_myLogService = null; - private ?ClientService $_clientService = null; private $_viewDatas = []; abstract public function getService(): mixed; abstract function getHelper(): mixed; @@ -61,13 +59,6 @@ abstract class CommonController extends BaseController { return $this->_viewDatas; } - final public function getClientService(): ClientService - { - if (!$this->_clientService) { - $this->_clientService = new ClientService($this->request); - } - return $this->_clientService; - } final public function getMyLogService(): mixed { if (!$this->_myLogService) { @@ -119,15 +110,13 @@ abstract class CommonController extends BaseController protected function getFormFieldOption(string $field, array $options): array { switch ($field) { - case 'clientinfo_uid': - $options[$field] = $this->getClientService()->getFormFieldOption($field); - // echo $this->getUserModel()->getLastQuery(); - // dd($options); - break; default: - $options[$field] = lang($this->getService()->getClassPath() . '.' . strtoupper($field)); + $options = lang($this->getService()->getClassPath() . '.' . strtoupper($field)); break; } + if (!is_array($options)) { + throw new \Exception(__FUNCTION__ . "에서 field의 options 값이 array가 아닙니다.\n" . var_export($options, true)); + } return $options; } final protected function getFormFieldOptions(array $fields, array $options = []): array @@ -136,8 +125,9 @@ abstract class CommonController extends BaseController if (is_array($field)) { throw new \Exception(__FUNCTION__ . "에서 field array 입니다.\n" . var_export($field, true)); } - $options = $this->getFormFieldOption($field, $options); + $options[$field] = $this->getFormFieldOption($field, $options); } + // dd($options); return $options; } protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation @@ -180,6 +170,7 @@ abstract class CommonController extends BaseController case 'modify_form': case 'index': case 'view': + // dd($this->getViewDatas()); $this->getHelper()->setViewDatas($this->getViewDatas()); $result = view($this->view_path . $action, ['viewDatas' => $this->getViewDatas()]); break; diff --git a/app/Database/dbms_init.sql b/app/Database/dbms_init.sql new file mode 100644 index 0000000..1f1d527 --- /dev/null +++ b/app/Database/dbms_init.sql @@ -0,0 +1,836 @@ +/*!999999\- enable the sandbox mode */ +-- MariaDB dump 10.19 Distrib 10.5.25-MariaDB, for Win64 (AMD64) +-- +-- Host: localhost Database: dbms +-- ------------------------------------------------------ +-- Server version 10.5.25-MariaDB + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `accountinfo` +-- + +DROP TABLE IF EXISTS `accountinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `accountinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `clientinfo_uid` int(11) NOT NULL, + `title` varchar(255) NOT NULL, + `alias` varchar(50) NOT NULL COMMENT '입출금자명', + `amount` int(11) NOT NULL DEFAULT 0 COMMENT '압출금액', + `status` varchar(20) NOT NULL DEFAULT 'in', + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_clientinfo_TO_accountinfo` (`clientinfo_uid`), + CONSTRAINT `FK_clientinfo_TO_accountinfo` FOREIGN KEY (`clientinfo_uid`) REFERENCES `clientinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='입출금계좌'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `accountinfo` +-- + +LOCK TABLES `accountinfo` WRITE; +/*!40000 ALTER TABLE `accountinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `accountinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `billinginfo` +-- + +DROP TABLE IF EXISTS `billinginfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `billinginfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `issue_at` date NOT NULL, + `total_amount` int(11) NOT NULL DEFAULT 0, + `status` varchar(20) DEFAULT 'unpaid', + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_billinginfo` (`serviceinfo_uid`), + CONSTRAINT `FK_serviceinfo_TO_billinginfo` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='청구서 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `billinginfo` +-- + +LOCK TABLES `billinginfo` WRITE; +/*!40000 ALTER TABLE `billinginfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `billinginfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `clientinfo` +-- + +DROP TABLE IF EXISTS `clientinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `clientinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `role` varchar(50) NOT NULL DEFAULT 'user', + `name` varchar(100) NOT NULL, + `phone` varchar(50) DEFAULT NULL, + `email` varchar(50) NOT NULL, + `coupon_balance` int(11) NOT NULL DEFAULT 0 COMMENT '쿠폰수', + `point_balance` int(11) NOT NULL DEFAULT 0 COMMENT '포인트', + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='고객정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `clientinfo` +-- + +LOCK TABLES `clientinfo` WRITE; +/*!40000 ALTER TABLE `clientinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `clientinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `couponinfo` +-- + +DROP TABLE IF EXISTS `couponinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `couponinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `clientinfo_uid` int(11) NOT NULL, + `title` varchar(100) NOT NULL, + `amount` int(11) NOT NULL DEFAULT 0 COMMENT '갯수', + `status` varchar(20) NOT NULL DEFAULT 'in', + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_clientinfo_TO_couponinfo` (`clientinfo_uid`), + CONSTRAINT `FK_clientinfo_TO_couponinfo` FOREIGN KEY (`clientinfo_uid`) REFERENCES `clientinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='쿠폰정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `couponinfo` +-- + +LOCK TABLES `couponinfo` WRITE; +/*!40000 ALTER TABLE `couponinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `couponinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `cpuinfo` +-- + +DROP TABLE IF EXISTS `cpuinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `cpuinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `model` varchar(50) NOT NULL, + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_model` (`model`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='CPU 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `cpuinfo` +-- + +LOCK TABLES `cpuinfo` WRITE; +/*!40000 ALTER TABLE `cpuinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `cpuinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `defenceinfo` +-- + +DROP TABLE IF EXISTS `defenceinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `defenceinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(20) NOT NULL DEFAULT 'VPC-CS', + `ip` varchar(50) DEFAULT NULL, + `domain` varchar(100) DEFAULT NULL, + `description` text DEFAULT NULL, + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_uid` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='방어정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `defenceinfo` +-- + +LOCK TABLES `defenceinfo` WRITE; +/*!40000 ALTER TABLE `defenceinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `defenceinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `diskinfo` +-- + +DROP TABLE IF EXISTS `diskinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `diskinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `model` varchar(50) NOT NULL, + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_model` (`model`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='DISK 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `diskinfo` +-- + +LOCK TABLES `diskinfo` WRITE; +/*!40000 ALTER TABLE `diskinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `diskinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `ipinfo` +-- + +DROP TABLE IF EXISTS `ipinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `ipinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `lineinfo_uid` int(11) NOT NULL, + `ip` char(16) NOT NULL, + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_ip` (`ip`), + KEY `FK_lineinfo_TO_ipinfo` (`lineinfo_uid`), + CONSTRAINT `FK_lineinfo_TO_ipinfo` FOREIGN KEY (`lineinfo_uid`) REFERENCES `lineinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT=' IP 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `ipinfo` +-- + +LOCK TABLES `ipinfo` WRITE; +/*!40000 ALTER TABLE `ipinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `ipinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `lineinfo` +-- + +DROP TABLE IF EXISTS `lineinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `lineinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `clientinfo_uid` int(11) DEFAULT NULL COMMENT '소유자정보', + `type` varchar(20) NOT NULL DEFAULT 'general' COMMENT '회선구분', + `title` varchar(100) NOT NULL, + `bandwith` varchar(20) NOT NULL COMMENT 'IP 대역', + `status` varchar(20) NOT NULL DEFAULT 'use', + `start_at` date DEFAULT NULL COMMENT '개통일', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_title` (`title`), + KEY `FK_clientinfo_TO_lineinfo` (`clientinfo_uid`), + CONSTRAINT `FK_clientinfo_TO_lineinfo` FOREIGN KEY (`clientinfo_uid`) REFERENCES `clientinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='회선 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `lineinfo` +-- + +LOCK TABLES `lineinfo` WRITE; +/*!40000 ALTER TABLE `lineinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `lineinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `logger` +-- + +DROP TABLE IF EXISTS `logger`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `logger` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `userinfo_uid` int(11) NOT NULL, + `class_name` varchar(255) DEFAULT NULL, + `method_name` varchar(255) DEFAULT NULL, + `title` varchar(255) NOT NULL, + `content` text NOT NULL, + `status` varchar(20) DEFAULT 'use', + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='작업 기록 로그'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `logger` +-- + +LOCK TABLES `logger` WRITE; +/*!40000 ALTER TABLE `logger` DISABLE KEYS */; +/*!40000 ALTER TABLE `logger` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `pointinfo` +-- + +DROP TABLE IF EXISTS `pointinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `pointinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `clientinfo_uid` int(11) NOT NULL, + `title` varchar(255) NOT NULL, + `amount` int(11) NOT NULL DEFAULT 0 COMMENT '압출금액', + `status` varchar(20) NOT NULL DEFAULT 'in', + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_clientinfo_TO_pointinfo` (`clientinfo_uid`), + CONSTRAINT `FK_clientinfo_TO_pointinfo` FOREIGN KEY (`clientinfo_uid`) REFERENCES `clientinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='포인트정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `pointinfo` +-- + +LOCK TABLES `pointinfo` WRITE; +/*!40000 ALTER TABLE `pointinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `pointinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `raminfo` +-- + +DROP TABLE IF EXISTS `raminfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `raminfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `model` varchar(50) NOT NULL, + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_model` (`model`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='RAM 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `raminfo` +-- + +LOCK TABLES `raminfo` WRITE; +/*!40000 ALTER TABLE `raminfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `raminfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serverinfo` +-- + +DROP TABLE IF EXISTS `serverinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serverinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `code` varchar(20) NOT NULL, + `type` varchar(20) NOT NULL DEFAULT 'Rack', + `model` varchar(50) NOT NULL, + `description` text DEFAULT NULL, + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_uid` (`uid`), + UNIQUE KEY `UQ_code` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서버정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serverinfo` +-- + +LOCK TABLES `serverinfo` WRITE; +/*!40000 ALTER TABLE `serverinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `serverinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serverinfos_cpuinfos` +-- + +DROP TABLE IF EXISTS `serverinfos_cpuinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serverinfos_cpuinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serverinfo_uid` int(11) NOT NULL, + `cpuinfo_uid` int(11) NOT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serverinfo_TO_serverinfos_cpuinfos` (`serverinfo_uid`), + KEY `FK_cpuinfo_TO_serverinfos_cpuinfos` (`cpuinfo_uid`), + CONSTRAINT `FK_cpuinfo_TO_serverinfos_cpuinfos` FOREIGN KEY (`cpuinfo_uid`) REFERENCES `cpuinfo` (`uid`), + CONSTRAINT `FK_serverinfo_TO_serverinfos_cpuinfos` FOREIGN KEY (`serverinfo_uid`) REFERENCES `serverinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서버-CPU 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serverinfos_cpuinfos` +-- + +LOCK TABLES `serverinfos_cpuinfos` WRITE; +/*!40000 ALTER TABLE `serverinfos_cpuinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serverinfos_cpuinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serverinfos_diskinfos` +-- + +DROP TABLE IF EXISTS `serverinfos_diskinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serverinfos_diskinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serverinfo_uid` int(11) NOT NULL, + `diskinfo_uid` int(11) NOT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serverinfo_TO_serverinfos_diskinfos` (`serverinfo_uid`), + KEY `FK_diskinfo_TO_serverinfos_diskinfos` (`diskinfo_uid`), + CONSTRAINT `FK_diskinfo_TO_serverinfos_diskinfos` FOREIGN KEY (`diskinfo_uid`) REFERENCES `diskinfo` (`uid`), + CONSTRAINT `FK_serverinfo_TO_serverinfos_diskinfos` FOREIGN KEY (`serverinfo_uid`) REFERENCES `serverinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서버-DISK연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serverinfos_diskinfos` +-- + +LOCK TABLES `serverinfos_diskinfos` WRITE; +/*!40000 ALTER TABLE `serverinfos_diskinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serverinfos_diskinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serverinfos_raminfos` +-- + +DROP TABLE IF EXISTS `serverinfos_raminfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serverinfos_raminfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serverinfo_uid` int(11) NOT NULL, + `raminfo_uid` int(11) NOT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serverinfo_TO_serverinfos_raminfos` (`serverinfo_uid`), + KEY `FK_raminfo_TO_serverinfos_raminfos` (`raminfo_uid`), + CONSTRAINT `FK_raminfo_TO_serverinfos_raminfos` FOREIGN KEY (`raminfo_uid`) REFERENCES `raminfo` (`uid`), + CONSTRAINT `FK_serverinfo_TO_serverinfos_raminfos` FOREIGN KEY (`serverinfo_uid`) REFERENCES `serverinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서버-RAM 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serverinfos_raminfos` +-- + +LOCK TABLES `serverinfos_raminfos` WRITE; +/*!40000 ALTER TABLE `serverinfos_raminfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serverinfos_raminfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfo` +-- + +DROP TABLE IF EXISTS `serviceinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `clientinfo_uid` int(11) NOT NULL, + `rack` varchar(10) NOT NULL COMMENT 'Rack번호', + `type` varchar(20) NOT NULL DEFAULT 'hosting', + `billing_at` date NOT NULL COMMENT '청구일', + `start_at` date DEFAULT NULL COMMENT '개통일', + `end_at` date DEFAULT NULL COMMENT '종료일', + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_clientinfo_TO_serviceinfo` (`clientinfo_uid`), + CONSTRAINT `FK_clientinfo_TO_serviceinfo` FOREIGN KEY (`clientinfo_uid`) REFERENCES `clientinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfo` +-- + +LOCK TABLES `serviceinfo` WRITE; +/*!40000 ALTER TABLE `serviceinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_cpuinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_cpuinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_cpuinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `cpuinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_cpuinfos` (`serviceinfo_uid`), + KEY `FK_cpuinfo_TO_serviceinfos_cpuinfos` (`cpuinfo_uid`), + CONSTRAINT `FK_cpuinfo_TO_serviceinfos_cpuinfos` FOREIGN KEY (`cpuinfo_uid`) REFERENCES `cpuinfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_cpuinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스_CPU 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_cpuinfos` +-- + +LOCK TABLES `serviceinfos_cpuinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_cpuinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_cpuinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_defenceinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_defenceinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_defenceinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `defenceinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_defenceinfos` (`serviceinfo_uid`), + KEY `FK_defenceinfo_TO_serviceinfos_defenceinfos` (`defenceinfo_uid`), + CONSTRAINT `FK_defenceinfo_TO_serviceinfos_defenceinfos` FOREIGN KEY (`defenceinfo_uid`) REFERENCES `defenceinfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_defenceinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스-방어 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_defenceinfos` +-- + +LOCK TABLES `serviceinfos_defenceinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_defenceinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_defenceinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_diskinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_diskinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_diskinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `diskinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_diskinfos` (`serviceinfo_uid`), + KEY `FK_diskinfo_TO_serviceinfos_diskinfos` (`diskinfo_uid`), + CONSTRAINT `FK_diskinfo_TO_serviceinfos_diskinfos` FOREIGN KEY (`diskinfo_uid`) REFERENCES `diskinfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_diskinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스_DISK 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_diskinfos` +-- + +LOCK TABLES `serviceinfos_diskinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_diskinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_diskinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_ipinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_ipinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_ipinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `ipinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_ipinfos` (`serviceinfo_uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_ipinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스-IP 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_ipinfos` +-- + +LOCK TABLES `serviceinfos_ipinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_ipinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_ipinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_lineinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_lineinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_lineinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `lineinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_lineinfos` (`serviceinfo_uid`), + KEY `FK_lineinfo_TO_serviceinfos_lineinfos` (`lineinfo_uid`), + CONSTRAINT `FK_lineinfo_TO_serviceinfos_lineinfos` FOREIGN KEY (`lineinfo_uid`) REFERENCES `lineinfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_lineinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스-Line연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_lineinfos` +-- + +LOCK TABLES `serviceinfos_lineinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_lineinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_lineinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_raminfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_raminfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_raminfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `cpuinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_raminfos` (`serviceinfo_uid`), + KEY `FK_raminfo_TO_serviceinfos_raminfos` (`cpuinfo_uid`), + CONSTRAINT `FK_raminfo_TO_serviceinfos_raminfos` FOREIGN KEY (`cpuinfo_uid`) REFERENCES `raminfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_raminfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='섭비스_RAM 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_raminfos` +-- + +LOCK TABLES `serviceinfos_raminfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_raminfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_raminfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_serverinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_serverinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_serverinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `serverinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_serverinfos` (`serviceinfo_uid`), + KEY `FK_serverinfo_TO_serviceinfos_serverinfos` (`serverinfo_uid`), + CONSTRAINT `FK_serverinfo_TO_serviceinfos_serverinfos` FOREIGN KEY (`serverinfo_uid`) REFERENCES `serverinfo` (`uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_serverinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스-Server 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_serverinfos` +-- + +LOCK TABLES `serviceinfos_serverinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_serverinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_serverinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `serviceinfos_softwareinfos` +-- + +DROP TABLE IF EXISTS `serviceinfos_softwareinfos`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `serviceinfos_softwareinfos` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `serviceinfo_uid` int(11) NOT NULL, + `softwareinfo_uid` int(11) NOT NULL, + `billing_type` varchar(20) NOT NULL DEFAULT 'month', + `amount` int(11) NOT NULL DEFAULT 0, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + KEY `FK_serviceinfo_TO_serviceinfos_softwareinfos` (`serviceinfo_uid`), + KEY `FK_softwareinfo_TO_serviceinfos_softwareinfos` (`softwareinfo_uid`), + CONSTRAINT `FK_serviceinfo_TO_serviceinfos_softwareinfos` FOREIGN KEY (`serviceinfo_uid`) REFERENCES `serviceinfo` (`uid`), + CONSTRAINT `FK_softwareinfo_TO_serviceinfos_softwareinfos` FOREIGN KEY (`softwareinfo_uid`) REFERENCES `softwareinfo` (`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='서비스-소프트웨어 연결'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `serviceinfos_softwareinfos` +-- + +LOCK TABLES `serviceinfos_softwareinfos` WRITE; +/*!40000 ALTER TABLE `serviceinfos_softwareinfos` DISABLE KEYS */; +/*!40000 ALTER TABLE `serviceinfos_softwareinfos` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `softwareinfo` +-- + +DROP TABLE IF EXISTS `softwareinfo`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `softwareinfo` ( + `uid` int(11) NOT NULL AUTO_INCREMENT, + `type` varchar(20) NOT NULL DEFAULT 'Windows', + `model` varchar(50) NOT NULL, + `description` text DEFAULT NULL, + `status` varchar(20) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `UQ_model` (`model`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci COMMENT='소프트웨어 정보'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `softwareinfo` +-- + +LOCK TABLES `softwareinfo` WRITE; +/*!40000 ALTER TABLE `softwareinfo` DISABLE KEYS */; +/*!40000 ALTER TABLE `softwareinfo` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `user` +-- + +DROP TABLE IF EXISTS `user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `user` ( + `uid` int(5) unsigned NOT NULL AUTO_INCREMENT, + `id` varchar(20) NOT NULL, + `passwd` varchar(255) NOT NULL, + `name` varchar(20) NOT NULL, + `email` varchar(50) NOT NULL, + `mobile` varchar(20) DEFAULT NULL, + `role` varchar(255) NOT NULL DEFAULT 'use', + `status` varchar(10) NOT NULL DEFAULT 'use', + `updated_at` timestamp NULL DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT current_timestamp(), + PRIMARY KEY (`uid`), + UNIQUE KEY `id` (`id`), + UNIQUE KEY `email` (`email`) +) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `user` +-- + +LOCK TABLES `user` WRITE; +/*!40000 ALTER TABLE `user` DISABLE KEYS */; +INSERT INTO `user` VALUES (1,'choi.jh','$2y$10$9kUte0xrvEkxtI9CzVaeKeCAxzOR4pKPpsCaQHR1YW7dXsCrTLWeC','최준흠','choi.jh@prime-idc.jp','','manager,cloudflare,firewall,director,master','use','2023-05-31 14:55:51','2023-03-23 06:50:04'),(2,'cho.jh','$2y$10$ot/aUXR/W1n4Q3dZA2dZCOxQrpVb2Bq31Y7xFQS3G6D1gtImmyBjm','조준희','cho.jh@prime-idc.jp',NULL,'manager,cloudflare','use','2023-05-30 14:35:55','2023-03-24 02:20:48'),(4,'kimdy','$2y$10$18uyn94xdprzAnt.oYZ5weAvb8rRLhkz/SdQrjEK7yuGhCr9PlUCC','김동윤','kimdy@prime-idc.jp',NULL,'manager,cloudflare','use','2023-03-24 02:21:50','2023-03-24 02:21:50'),(5,'kimhy','$2y$10$.yEKVqY.F7HoSOZijl4uyeulUtfAQ4EDRiyR2JpgFYBuKw.mZoZvG','김효영','khy@prime-idc.jp',NULL,'manager,cloudflare,director','use','2023-03-24 02:23:18','2023-03-24 02:23:18'),(6,'kim.eh','$2y$10$YmwicI.Br4XNyGamfRADMOu.qlkwKd2fmnNkL7YIkNHGndvqYPnCq','김은혁','kim.eh@prime-idc.jp',NULL,'manager,cloudflare','use','2023-03-24 02:23:52','2023-03-24 02:23:52'),(7,'leeph','$2y$10$lR739WzJsW6rDLgchYs7buek4BYeTlKHTQY60RDqRms9Io7RSY3AC','이풍호','leeph@prime-idc.jp',NULL,'manager,cloudflare','use','2023-05-29 16:32:52','2023-03-24 02:24:21'),(8,'jinmingyu','$2y$10$PI8WA6d/z4hDE6hxJoUhbuMH3vTTWH0Ry2Z6fTLUUpwQGaE/9bEZa','김명옥','jinmingyu@idcjp.jp',NULL,'manager,cloudflare','use','2023-07-21 06:48:39','2023-03-24 02:25:00'),(9,'kangdh','$2y$10$gu9OS2DDQQ5H.Hh61t3BSOUp87l35q.xsduVSxvCcn8IgA4jrATgG','강동헌','kang.dh@idcjp.jp',NULL,'manager,cloudflare','use','2023-06-22 23:59:07','2023-03-24 02:25:48'),(10,'yoohs','$2y$10$TGASk98FuZ6Ux6FDquu1aO3rztA01MCle/Vs1.3iaEMQzakAbCzJy','유혜성','yoo.hs@idcjp.jp',NULL,'manager,cloudflare','use','2023-06-02 02:07:19','2023-03-24 02:26:31'),(11,'kim.yh','$2y$10$8GciQXpKYiR3TDWQfh9JjOQAQ.YWGoOSCL0a0/w4XACO0mUgjjbWy','김영환','kim.yh@idcjp.jp',NULL,'manager,cloudflare,firewall','use','2023-10-16 23:08:51','2023-03-24 02:27:05'),(12,'yunmuj','$2y$10$zkgwGVj2JSOVIsxLe8fePe1gvWWaCemfZMktzBlrN8oLb3CKydkZC','윤무정','yunmuj@idcjp.jp',NULL,'manager,cloudflare','use','2024-06-12 00:21:07','2023-03-24 02:27:59'),(13,'kim.mt','$2y$10$3dfkA0oq4LqiJOmjbBGKe.p0Dhj/MDqjoTdw11BOPF/H2qJqnEuHO','김문태','kim.mt@idcjp.jp',NULL,'manager,cloudflare','use','2023-05-31 14:22:43','2023-03-24 02:28:31'),(14,'shin.ms','$2y$10$.jaDkGtm/gZK3ZDF.fJUGOwMI7Zif5588X5AxSMvvk238RDI7spQ6','신민수','shin.ms@idcjp.jp',NULL,'manager,cloudflare','use','2023-03-24 02:29:00','2023-03-24 02:29:00'),(15,'park.sm','$2y$10$BwMxw0uvw2tAdQ0EZQ2/hu.Q7zYu7mbuBPPRTaa14bwG3VLf0cXfu','박선미','park.sm@idcjp.jp',NULL,'manager,cloudflare','use','2024-03-12 02:14:09','2023-03-24 02:29:34'),(19,'park.hg','$2y$10$x7QQOkOEJHVKOnghbHBqYuI12Vsa9KLV8W4wgebCWy1pZiM93/W.e','박혁규','park.hg@prime-idc.jp',NULL,'manager','unuse','2023-09-04 10:27:32','2023-09-04 09:48:02'),(21,'masakuni','$2y$10$di6Y7CqJGbbf72kDyCrOCOafJgk3vqJCYg6N3EtBUc3J6r24/7SFe','김창국','masakuni@prime-idc.jp',NULL,'cloudflare','unuse','2023-12-18 08:56:29','2023-12-18 08:56:29'),(22,'bjh','$2y$10$LnEQ6kz4igRPZeDYwe7UluRiSaMVGN9Jj1fW3QqUUp6zPeLJW9goS','배장훈','bjh@prime-idc.jp',NULL,'cloudflare','unuse','2024-06-06 23:51:19','2024-02-26 01:26:20'),(23,'cho.sh','$2y$10$jmmNrEsFmb2.Zj3OkBXDHuktrIj.NCP/tO2k9kquFBTBssa/lNG6y','조성호','cho.sh@prime-idc.jp','','manager','unuse','2024-10-02 00:45:19','2024-10-02 00:32:30'),(24,'kobn','$2y$10$pWM/XFfSNeSng32sypbDX.WaR4UlM4EDkYKCQfFkYIOC7Ppg0nc5G','고병남','ko@prime-idc.jp',NULL,'manager,cloudflare','use',NULL,'2024-10-29 06:30:19'),(25,'jeong.sg','$2y$10$OzH6140JztiUEs4s/VHbPOxfxubFooqwqVhGpdFG8OJCGAFXNu546','정상구','jeong.sg@prime-idc.jp',NULL,'manager,cloudflare','use','2025-01-23 00:30:13','2025-01-23 00:29:46'),(38,'choi.jh234222222','$2y$10$zCgVXnCClLbftgeGxH0rk.v3o1zHkoO8Ywq2UDmGkdjIhK5mLJhvu','adfasdfas2222','postfixadmin@idcjp.jp2222222','043443432722222','cloudflare','pause',NULL,'2025-05-02 04:49:19'),(40,'choi.jh2342222224','$2y$10$hP/z5Nojh4eNKnTxZe3Cm.0NtvqHW2U2U0vvVDSzelKRaXSxlVj2y','adfasdfas22222221234','postfixadmin@idcjp.jp3234343','04344343271234','manager,cloudflare','pause',NULL,'2025-05-02 06:34:43'); +/*!40000 ALTER TABLE `user` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2025-05-21 16:10:32 diff --git a/app/Database/erp2.vuerd.json b/app/Database/erp2.vuerd.json index 67699b9..637ccc6 100644 --- a/app/Database/erp2.vuerd.json +++ b/app/Database/erp2.vuerd.json @@ -4,9 +4,9 @@ "settings": { "width": 4000, "height": 4000, - "scrollTop": -1517.2462, - "scrollLeft": -620.6366, - "zoomLevel": 0.73, + "scrollTop": -2704.6009, + "scrollLeft": -1890.4788, + "zoomLevel": 0.79, "show": 511, "database": 4, "databaseName": "", @@ -49,9 +49,15 @@ "RMhrLs7bOaopKmKt9YKHQ", "gYqhvNLZjWrQk8LNKH3il", "RTq5rHQupiXXJPXqpN8K5", - "3RJ8qxNNqL7eCvBmmqzpd", - "Btzrm5KCDr_59gZoXRXol", - "BoXnD7ITrjdXuJVzpiLoN" + "BoXnD7ITrjdXuJVzpiLoN", + "lwd2DR7f1FW8fXtJ0lX-r", + "clEhcctzDQV_zPwyyczK1", + "33kopDW02tJG0YjGvxsnb", + "5b_1J-B_jmnw1NU_mV_sr", + "dnFyz1CSdGeS6mCbfCMO0", + "O16FZYP2H6A8FoXHHYkLK", + "SnAHgbwS6oJiDJ-9JvMsS", + "KjMkfDhEIFtqzt24wZL_o" ], "relationshipIds": [ "gAVYXWnBSnCw-0ieO4Mil", @@ -69,13 +75,21 @@ "hEYDIiEFtsN5gxqTmDYC7", "rDaiOqjpenuTOWAB9GhA6", "rvhOgmNcWHmmWI1PYPjzk", - "6OXR3AW1sSxDJA2ITIz9i", - "QJHejLurUndA2vJMYRawK", "avEpCJt-x4kXYN5bcKxiG", - "xnvl_tBcFrTl87jBGDW08", - "xYyFwSIzfn3RPzA8eaJoV", "KMa7J50RT1ImakceLy9iZ", - "bVmMQk7Qb5kh6yURDiOLx" + "bVmMQk7Qb5kh6yURDiOLx", + "aAqJBcaRRMJ4DFG9kgvbN", + "fubg5Dl6T9RhMC2UiG1G2", + "FUBur66i0x78rG_9t77X-", + "XHvOEOQa7Em8ZA6JW2zyu", + "wT92mXVEGvXGzTjfbCmIc", + "FVI_bw_S3pQ5iPraRK3AU", + "-hk1fQTZWwoqdMg3o4v2H", + "BMCA7A2au8qHxEybuVin6", + "A95jXUL-PbW1llS_CcnDv", + "GPdTxG-bhcW_C7QYLUi7U", + "Ora6jxky2rRdOP3TdmEVY", + "zJI4tjQWmlupFIPITHL9_" ], "indexIds": [], "memoIds": [] @@ -111,15 +125,15 @@ "_Isvu_q8_Gsp82W0Lkk-r" ], "ui": { - "x": 220.2781, - "y": 2556.8495, + "x": 1215.6628, + "y": 3197.2341, "zIndex": 2, "widthName": 60, "widthComment": 62, "color": "" }, "meta": { - "updateAt": 1747375499809, + "updateAt": 1747808064456, "createAt": 1745819764136 } }, @@ -229,6 +243,7 @@ "kyD7tU9kevxCDow7j2uHI", "pY1RZgzuWBgRILX2XsMTt", "J97WIRanerqkRvOlQCnL3", + "dluCt7VimWWwGu4Is8V0v", "GUAjQ-qFNvMHOaqY-rBXq", "BAzGsBrmLOwZGYLchLmyP", "9F6QpQqxeEggZ0FHM81O1", @@ -244,15 +259,15 @@ "yjaoHnd4nFaa-3REXvRfN" ], "ui": { - "x": 2410.6602, - "y": 2559.435, + "x": 2174.2456, + "y": 1800.121, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1747632582436, + "updateAt": 1747809651649, "createAt": 1745819764137 } }, @@ -281,15 +296,15 @@ "8ZPjmeG3NoO6C0icGibJP" ], "ui": { - "x": 2400.1595, - "y": 2278.1189, + "x": 2211.1203, + "y": 3109.0399, "zIndex": 2, "widthName": 68, "widthComment": 89, "color": "" }, "meta": { - "updateAt": 1747631449097, + "updateAt": 1747809669945, "createAt": 1745819764138 } }, @@ -327,15 +342,15 @@ "liJON6hIBB9aS-pQgM0Q6" ], "ui": { - "x": 2349.9171, - "y": 1413.5552, + "x": 2143.4318, + "y": 1088.9074, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1747626184082, + "updateAt": 1747810340692, "createAt": 1745819764138 } }, @@ -366,15 +381,15 @@ "R-UjmO-S2UeQdddVNwH5M" ], "ui": { - "x": 2404.3581, - "y": 1780.9982, + "x": 2164.4251, + "y": 1464.1334, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1747625582327, + "updateAt": 1747810347386, "createAt": 1745819764138 } }, @@ -401,6 +416,8 @@ "JXFtN33CEiVr8DDSQay0k", "CY-ZAs3Ns1YhoxL9UiCee", "UKMpq-uPW9JhNhwRMtBmC", + "HFfXA_mDYFa0cgMnr8qBF", + "6zK3adxA2E9fHUYDhbE8g", "jN2378kieoBKN-G1x8myT", "iM3NfWTfO6qrXv94EUFgk", "CITRNBpXOZqGM6gHy5MlB", @@ -415,15 +432,15 @@ "29LdworovSsHw2EaPP8Zv" ], "ui": { - "x": 178.1378, - "y": 1657.3461, + "x": 208.1378, + "y": 1544.8461, "zIndex": 2, "widthName": 60, "widthComment": 65, "color": "" }, "meta": { - "updateAt": 1747733939677, + "updateAt": 1747809614360, "createAt": 1745819764139 } }, @@ -455,15 +472,15 @@ "2SU_tNQXyQlsQc6WchJ04" ], "ui": { - "x": 1158.0459, - "y": 1342.7878, + "x": 236.7385, + "y": 2560.6143, "zIndex": 2, "widthName": 60, "widthComment": 65, "color": "" }, "meta": { - "updateAt": 1747626911262, + "updateAt": 1747809476929, "createAt": 1745819764139 } }, @@ -494,15 +511,15 @@ "UCQyqc-F1swYRY6Qa3lIi" ], "ui": { - "x": 1167.4791, - "y": 2150.4061, + "x": 1214.9955, + "y": 2749.3448, "zIndex": 2, "widthName": 136, "widthComment": 94, "color": "" }, "meta": { - "updateAt": 1747625655368, + "updateAt": 1747808077987, "createAt": 1745819764139 } }, @@ -530,15 +547,15 @@ "3v3JWUBHg3mAb4HmHPUP-" ], "ui": { - "x": 1170.8023, - "y": 2382.9427, + "x": 1213.3791, + "y": 2969.4319, "zIndex": 2, "widthName": 139, "widthComment": 130, "color": "" }, "meta": { - "updateAt": 1747631546977, + "updateAt": 1747808069835, "createAt": 1745819764139 } }, @@ -564,18 +581,22 @@ "zk7fke88oHwR5W_3ReKcp", "uUAmxeQ2jccu4JFTvVBGY", "N61HbQYSC4Xe-OKxZLLiO", - "kTwnu5ylJ22aQ7cBwn3pZ" + "kTwnu5ylJ22aQ7cBwn3pZ", + "lLQgyWJhi6-3ZThpmB1yu", + "9owj9VIe6zTgi6G9zptgz", + "klrCP5HxLB7xFcRejN3RZ", + "rJxM74-2ICXhXGMSF1g_b" ], "ui": { - "x": 1169.2751, - "y": 1924.3199, + "x": 1157.533, + "y": 1529.5163, "zIndex": 2, "widthName": 104, "widthComment": 80, "color": "" }, "meta": { - "updateAt": 1747625658979, + "updateAt": 1747809791921, "createAt": 1745819764139 } }, @@ -687,15 +708,15 @@ "qHceMMaFcmVnWPlJ2T4Sg" ], "ui": { - "x": 1181.8279, - "y": 3150.7872, + "x": 2215.3404, + "y": 3360.1787, "zIndex": 2, "widthName": 60, "widthComment": 81, "color": "" }, "meta": { - "updateAt": 1747631474020, + "updateAt": 1747809677362, "createAt": 1745819764142 } }, @@ -743,14 +764,11 @@ }, "RMhrLs7bOaopKmKt9YKHQ": { "id": "RMhrLs7bOaopKmKt9YKHQ", - "name": "partinfo", - "comment": "부품 정보", + "name": "cpuinfo", + "comment": "CPU 정보", "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT", - "-Vr-igaSkx5zEcVp0oUGN", "DC7TvFFpBT7vY0UKKHt-W", - "dr0UoY8ebsS-TjcPyP4is", - "wx8zTFviA4I8YQnn-MFpW", "3nwgqrQd_qDGdg6Fe3kEp", "mwVYv9PaJFpoxYvTRJ223" ], @@ -770,22 +788,22 @@ "mwVYv9PaJFpoxYvTRJ223" ], "ui": { - "x": 2410.026, - "y": 2835.3911, + "x": 2196.9786, + "y": 2294.1577, "zIndex": 495, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1747631446772, + "updateAt": 1747809657264, "createAt": 1746783410914 } }, "gYqhvNLZjWrQk8LNKH3il": { "id": "gYqhvNLZjWrQk8LNKH3il", - "name": "serviceinfos_partinfos", - "comment": "서비스_부품 연결", + "name": "serviceinfos_cpuinfos", + "comment": "서비스_CPU 연결", "columnIds": [ "TQwAGrd3jBQOImSKgfAZb", "YKXKsIEJE-vmIMQd5ZUMC", @@ -798,6 +816,7 @@ "TQwAGrd3jBQOImSKgfAZb", "YKXKsIEJE-vmIMQd5ZUMC", "ox7xu7XaYBZyB2alu2HcK", + "mbHBFFMJ3Y1Bj4Yu3Irv2", "sqR0RO_KImSS3iNSVWt0Q", "lc-qccQ7orROrFjeexBjR", "2G6G5tqs-9wyT0i7RaFtL", @@ -806,15 +825,15 @@ "VzuPW7xCYQCRJ5S3m5qU1" ], "ui": { - "x": 1182.4615, - "y": 2916.1046, + "x": 1185.8779, + "y": 2086.844, "zIndex": 547, - "widthName": 116, - "widthComment": 94, + "widthName": 114, + "widthComment": 93, "color": "" }, "meta": { - "updateAt": 1747631498746, + "updateAt": 1747808847140, "createAt": 1746783705263 } }, @@ -889,15 +908,15 @@ "pzEFysMFfI2J8uB8YHXxA" ], "ui": { - "x": 2402.2093, - "y": 2002.2003, + "x": 2210.4386, + "y": 2830.124, "zIndex": 796, "widthName": 64, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1747625578932, + "updateAt": 1747809667091, "createAt": 1747374666215 } }, @@ -955,27 +974,26 @@ "UvgOUjhbSsKnhm7ks-2T7" ], "ui": { - "x": 1179.9799, - "y": 2663.9415, + "x": 1165.5062, + "y": 1791.573, "zIndex": 951, "widthName": 126, "widthComment": 94, "color": "" }, "meta": { - "updateAt": 1747631676525, + "updateAt": 1747788310547, "createAt": 1747631513876 } }, "BoXnD7ITrjdXuJVzpiLoN": { "id": "BoXnD7ITrjdXuJVzpiLoN", - "name": "serverinfos_partinfos", - "comment": "서버-부품 연결", + "name": "serverinfos_cpuinfos", + "comment": "서버-CPU 연결", "columnIds": [ "hvzap8WHQwxODmGohOVcN", "LHHK0n71w3kZmkJRraK-4", "Ba036rLR2vRLjGURehMqM", - "0QgnkM04w2SJ7Nf3MTfxM", "TS6YN3ndjqITM6LWdVimX" ], "seqColumnIds": [ @@ -987,17 +1005,285 @@ "TS6YN3ndjqITM6LWdVimX" ], "ui": { - "x": 3036.1445, - "y": 2748.8727, + "x": 3174.0523, + "y": 1944.7913, "zIndex": 995, - "widthName": 111, - "widthComment": 82, + "widthName": 109, + "widthComment": 80, "color": "" }, "meta": { - "updateAt": 1747632416616, + "updateAt": 1747810367218, "createAt": 1747632275744 } + }, + "lwd2DR7f1FW8fXtJ0lX-r": { + "id": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "raminfo", + "comment": "RAM 정보", + "columnIds": [ + "203b3hUKUQ_Gu5wKShBgZ", + "kohhWoNuei3x97SzgQUF4", + "EEerVyCwkEAuiRc-gon8s", + "uki_QcviBOFJ57v1IbbPX" + ], + "seqColumnIds": [ + "203b3hUKUQ_Gu5wKShBgZ", + "kohhWoNuei3x97SzgQUF4", + "EEerVyCwkEAuiRc-gon8s", + "uki_QcviBOFJ57v1IbbPX", + "5EZEDNUFxzmElbK6goZPK" + ], + "ui": { + "x": 2199.8478, + "y": 2473.3563, + "zIndex": 1036, + "widthName": 60, + "widthComment": 60, + "color": "" + }, + "meta": { + "updateAt": 1747809661233, + "createAt": 1747808112554 + } + }, + "clEhcctzDQV_zPwyyczK1": { + "id": "clEhcctzDQV_zPwyyczK1", + "name": "serverinfos_raminfos", + "comment": "서버-RAM 연결", + "columnIds": [ + "N12qnw2uSzxkqIk8T0Edq", + "b5P_DaJJMnNzu6zY9NAp2", + "48fHpk5tPRX9_lrYaJyTu", + "0yA1naX0uCYnEqx_5fFUl" + ], + "seqColumnIds": [ + "N12qnw2uSzxkqIk8T0Edq", + "b5P_DaJJMnNzu6zY9NAp2", + "48fHpk5tPRX9_lrYaJyTu", + "0yA1naX0uCYnEqx_5fFUl" + ], + "ui": { + "x": 3184.9304, + "y": 2148.1977, + "zIndex": 1048, + "widthName": 110, + "widthComment": 84, + "color": "" + }, + "meta": { + "updateAt": 1747810363449, + "createAt": 1747808159900 + } + }, + "33kopDW02tJG0YjGvxsnb": { + "id": "33kopDW02tJG0YjGvxsnb", + "name": "serviceinfos_raminfos", + "comment": "섭비스_RAM 연결", + "columnIds": [ + "xSh2byQSRVFSs1c7xHVnU", + "T56cjdxZzJE1kNMWaD1Wy", + "Sdf3eOJV9eozG_NEDn2jP", + "MgshrD8GBDwhT6_34GtuN", + "8AWYprt0NzdgUvEYKax5e", + "OIgoKpFkAqW7-ZSX4Di-h" + ], + "seqColumnIds": [ + "xSh2byQSRVFSs1c7xHVnU", + "T56cjdxZzJE1kNMWaD1Wy", + "Sdf3eOJV9eozG_NEDn2jP", + "MgshrD8GBDwhT6_34GtuN", + "8AWYprt0NzdgUvEYKax5e", + "OIgoKpFkAqW7-ZSX4Di-h" + ], + "ui": { + "x": 1180.7525, + "y": 2306.3292, + "zIndex": 1067, + "widthName": 115, + "widthComment": 96, + "color": "" + }, + "meta": { + "updateAt": 1747808785945, + "createAt": 1747808269255 + } + }, + "wdTNl8LTb5gHL9cK8O5iT": { + "id": "wdTNl8LTb5gHL9cK8O5iT", + "name": "", + "comment": "", + "columnIds": [], + "seqColumnIds": [], + "ui": { + "x": 1662.4597560975612, + "y": 1945.3536585365855, + "zIndex": 1090, + "widthName": 60, + "widthComment": 60, + "color": "" + }, + "meta": { + "updateAt": 1747808373216, + "createAt": 1747808373216 + } + }, + "5b_1J-B_jmnw1NU_mV_sr": { + "id": "5b_1J-B_jmnw1NU_mV_sr", + "name": "serverinfos_diskinfos", + "comment": "서버-DISK연결", + "columnIds": [ + "apwDX29U7cM0sUmGl441j", + "LAIQDn9Qi2OWSgzkpHpuu", + "-gUujQG3t9GG2FmOqThrf", + "_oImjzgGwpdWW78j79uQ4" + ], + "seqColumnIds": [ + "apwDX29U7cM0sUmGl441j", + "LAIQDn9Qi2OWSgzkpHpuu", + "-gUujQG3t9GG2FmOqThrf", + "_oImjzgGwpdWW78j79uQ4" + ], + "ui": { + "x": 3202.1074, + "y": 2363.0985, + "zIndex": 1095, + "widthName": 111, + "widthComment": 80, + "color": "" + }, + "meta": { + "updateAt": 1747810360216, + "createAt": 1747808412378 + } + }, + "dnFyz1CSdGeS6mCbfCMO0": { + "id": "dnFyz1CSdGeS6mCbfCMO0", + "name": "diskinfo", + "comment": "DISK 정보", + "columnIds": [ + "WaCB3uNZYFReAPiBqQ97v", + "tn-GhYT445kEh1tzf8Lf1", + "cMe_lKgwfS-LNTHhHIYrk", + "ixmBlLhmVt4et6tZEwLPC" + ], + "seqColumnIds": [ + "WaCB3uNZYFReAPiBqQ97v", + "tn-GhYT445kEh1tzf8Lf1", + "cMe_lKgwfS-LNTHhHIYrk", + "ixmBlLhmVt4et6tZEwLPC" + ], + "ui": { + "x": 2198.6283, + "y": 2646.5269, + "zIndex": 1118, + "widthName": 60, + "widthComment": 60, + "color": "" + }, + "meta": { + "updateAt": 1747809663796, + "createAt": 1747808548333 + } + }, + "O16FZYP2H6A8FoXHHYkLK": { + "id": "O16FZYP2H6A8FoXHHYkLK", + "name": "serviceinfos_diskinfos", + "comment": "서비스_DISK 연결", + "columnIds": [ + "it93yolgcnLv-86UHTSok", + "eR5sCRzMNW3UANZudEgAD", + "Rz-tT8JA2j_zo2Sml5hES", + "RANoHyQBf_sobpDKqoEtd", + "jw_L_SVoiwF5NGVBMhtNj", + "6w-g7TpyNz-QYr3RsDarF" + ], + "seqColumnIds": [ + "it93yolgcnLv-86UHTSok", + "eR5sCRzMNW3UANZudEgAD", + "Rz-tT8JA2j_zo2Sml5hES", + "RANoHyQBf_sobpDKqoEtd", + "jw_L_SVoiwF5NGVBMhtNj", + "6w-g7TpyNz-QYr3RsDarF" + ], + "ui": { + "x": 1183.1916, + "y": 2519.7439, + "zIndex": 1147, + "widthName": 115, + "widthComment": 95, + "color": "" + }, + "meta": { + "updateAt": 1747808789475, + "createAt": 1747808666473 + } + }, + "SnAHgbwS6oJiDJ-9JvMsS": { + "id": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "serviceinfos_serverinfos", + "comment": "서비스-Server 연결", + "columnIds": [ + "aJ5yir7zNZfD8YNnDXuwL", + "iNv7Lm2grAxh9C3WLUmhS", + "0AzBsuvrX5XEk2pIRNTZR", + "TKoYcVntKcHeEDpWfusm1", + "IpWimoINbuMFGnEMZ554I", + "X4MpKGfIk57frbGbI_hvm" + ], + "seqColumnIds": [ + "aJ5yir7zNZfD8YNnDXuwL", + "iNv7Lm2grAxh9C3WLUmhS", + "0AzBsuvrX5XEk2pIRNTZR", + "TKoYcVntKcHeEDpWfusm1", + "IpWimoINbuMFGnEMZ554I", + "X4MpKGfIk57frbGbI_hvm" + ], + "ui": { + "x": 1169.2989, + "y": 1770.2022, + "zIndex": 1223, + "widthName": 126, + "widthComment": 103, + "color": "" + }, + "meta": { + "updateAt": 1747809890855, + "createAt": 1747809799591 + } + }, + "KjMkfDhEIFtqzt24wZL_o": { + "id": "KjMkfDhEIFtqzt24wZL_o", + "name": "serviceinfos_lineinfos", + "comment": "서비스-Line연결", + "columnIds": [ + "7H1dMNV2UxOx8O6DD_fv3", + "nL-8jbbaXLAxQmwKmxwVp", + "A5jE2aplbrccrkErwht-L", + "xXf6S4ALrDaYympxFLecy", + "xVa4vn9BzbObswNs0nbUQ", + "s4YF5Cw7Z65Hvw-z95dDa" + ], + "seqColumnIds": [ + "7H1dMNV2UxOx8O6DD_fv3", + "nL-8jbbaXLAxQmwKmxwVp", + "A5jE2aplbrccrkErwht-L", + "xXf6S4ALrDaYympxFLecy", + "xVa4vn9BzbObswNs0nbUQ", + "s4YF5Cw7Z65Hvw-z95dDa" + ], + "ui": { + "x": 1157.7727, + "y": 1301.1527, + "zIndex": 1250, + "widthName": 113, + "widthComment": 88, + "color": "" + }, + "meta": { + "updateAt": 1747810045012, + "createAt": 1747809933290 + } } }, "tableColumnEntities": { @@ -1588,7 +1874,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 11, + "options": 15, "ui": { "keys": 1, "widthName": 60, @@ -1597,7 +1883,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1747378859541, + "updateAt": 1747795104844, "createAt": 1745819764137 } }, @@ -3907,7 +4193,7 @@ "name": "status", "comment": "", "dataType": "VARCHAR(20)", - "default": "use", + "default": "'use'", "options": 0, "ui": { "keys": 0, @@ -3917,7 +4203,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746409047866, + "updateAt": 1747811295275, "createAt": 1746409047865 } }, @@ -4584,20 +4870,20 @@ "ox7xu7XaYBZyB2alu2HcK": { "id": "ox7xu7XaYBZyB2alu2HcK", "tableId": "gYqhvNLZjWrQk8LNKH3il", - "name": "partinfo_uid", + "name": "cpuinfo_uid", "comment": "", "dataType": "INT", "default": "", "options": 8, "ui": { "keys": 2, - "widthName": 66, + "widthName": 64, "widthComment": 60, "widthDataType": 60, "widthDefault": 60 }, "meta": { - "updateAt": 1747117938945, + "updateAt": 1747807986303, "createAt": 1746783814940 } }, @@ -5008,7 +5294,7 @@ "comment": "종료일", "dataType": "DATE", "default": "", - "options": 5, + "options": 0, "ui": { "keys": 0, "widthName": 60, @@ -5017,7 +5303,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1747733901576, + "updateAt": 1747792789752, "createAt": 1747277755303 } }, @@ -6070,7 +6356,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 80, "widthComment": 60, "widthDataType": 60, @@ -6090,7 +6376,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 63, "widthComment": 60, "widthDataType": 60, @@ -6250,7 +6536,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 80, "widthComment": 60, "widthDataType": 60, @@ -6270,7 +6556,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 76, "widthComment": 60, "widthDataType": 60, @@ -6364,20 +6650,20 @@ "Ba036rLR2vRLjGURehMqM": { "id": "Ba036rLR2vRLjGURehMqM", "tableId": "BoXnD7ITrjdXuJVzpiLoN", - "name": "partinfo_uid", + "name": "cpuinfo_uid", "comment": "", "dataType": "INT", "default": "", "options": 8, "ui": { "keys": 2, - "widthName": 66, + "widthName": 64, "widthComment": 60, "widthDataType": 60, "widthDefault": 60 }, "meta": { - "updateAt": 1747632360101, + "updateAt": 1747807964927, "createAt": 1747632352018 } }, @@ -6440,6 +6726,986 @@ "updateAt": 1747733996079, "createAt": 1747733912998 } + }, + "mbHBFFMJ3Y1Bj4Yu3Irv2": { + "id": "mbHBFFMJ3Y1Bj4Yu3Irv2", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'CPU'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747787616868, + "createAt": 1747787616867 + } + }, + "HFfXA_mDYFa0cgMnr8qBF": { + "id": "HFfXA_mDYFa0cgMnr8qBF", + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "name": "lineinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747788179949, + "createAt": 1747788167946 + } + }, + "6zK3adxA2E9fHUYDhbE8g": { + "id": "6zK3adxA2E9fHUYDhbE8g", + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747788598740, + "createAt": 1747788592272 + } + }, + "dluCt7VimWWwGu4Is8V0v": { + "id": "dluCt7VimWWwGu4Is8V0v", + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "name": "clientinfo_uid", + "comment": "소유자정보", + "dataType": "INT", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 73, + "widthComment": 62, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747795106997, + "createAt": 1747795106997 + } + }, + "203b3hUKUQ_Gu5wKShBgZ": { + "id": "203b3hUKUQ_Gu5wKShBgZ", + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808149491, + "createAt": 1747808146987 + } + }, + "kohhWoNuei3x97SzgQUF4": { + "id": "kohhWoNuei3x97SzgQUF4", + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "model", + "comment": "", + "dataType": "VARCHAR(50)", + "default": "", + "options": 12, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808146988, + "createAt": 1747808146988 + } + }, + "EEerVyCwkEAuiRc-gon8s": { + "id": "EEerVyCwkEAuiRc-gon8s", + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "updated_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 62, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808146988, + "createAt": 1747808146988 + } + }, + "uki_QcviBOFJ57v1IbbPX": { + "id": "uki_QcviBOFJ57v1IbbPX", + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808146988, + "createAt": 1747808146988 + } + }, + "N12qnw2uSzxkqIk8T0Edq": { + "id": "N12qnw2uSzxkqIk8T0Edq", + "tableId": "clEhcctzDQV_zPwyyczK1", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808216812, + "createAt": 1747808212794 + } + }, + "0yA1naX0uCYnEqx_5fFUl": { + "id": "0yA1naX0uCYnEqx_5fFUl", + "tableId": "clEhcctzDQV_zPwyyczK1", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808212794, + "createAt": 1747808212794 + } + }, + "5EZEDNUFxzmElbK6goZPK": { + "id": "5EZEDNUFxzmElbK6goZPK", + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808226928, + "createAt": 1747808226928 + } + }, + "b5P_DaJJMnNzu6zY9NAp2": { + "id": "b5P_DaJJMnNzu6zY9NAp2", + "tableId": "clEhcctzDQV_zPwyyczK1", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808470223, + "createAt": 1747808237337 + } + }, + "xSh2byQSRVFSs1c7xHVnU": { + "id": "xSh2byQSRVFSs1c7xHVnU", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808327199, + "createAt": 1747808325311 + } + }, + "MgshrD8GBDwhT6_34GtuN": { + "id": "MgshrD8GBDwhT6_34GtuN", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "billing_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808325312, + "createAt": 1747808325311 + } + }, + "8AWYprt0NzdgUvEYKax5e": { + "id": "8AWYprt0NzdgUvEYKax5e", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 0, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808325312, + "createAt": 1747808325312 + } + }, + "OIgoKpFkAqW7-ZSX4Di-h": { + "id": "OIgoKpFkAqW7-ZSX4Di-h", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808325312, + "createAt": 1747808325312 + } + }, + "T56cjdxZzJE1kNMWaD1Wy": { + "id": "T56cjdxZzJE1kNMWaD1Wy", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808359996, + "createAt": 1747808340389 + } + }, + "Sdf3eOJV9eozG_NEDn2jP": { + "id": "Sdf3eOJV9eozG_NEDn2jP", + "tableId": "33kopDW02tJG0YjGvxsnb", + "name": "cpuinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 64, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808397485, + "createAt": 1747808386677 + } + }, + "48fHpk5tPRX9_lrYaJyTu": { + "id": "48fHpk5tPRX9_lrYaJyTu", + "tableId": "clEhcctzDQV_zPwyyczK1", + "name": "raminfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 65, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808525773, + "createAt": 1747808511550 + } + }, + "WaCB3uNZYFReAPiBqQ97v": { + "id": "WaCB3uNZYFReAPiBqQ97v", + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808579838, + "createAt": 1747808577955 + } + }, + "tn-GhYT445kEh1tzf8Lf1": { + "id": "tn-GhYT445kEh1tzf8Lf1", + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "name": "model", + "comment": "", + "dataType": "VARCHAR(50)", + "default": "", + "options": 12, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808577955, + "createAt": 1747808577955 + } + }, + "cMe_lKgwfS-LNTHhHIYrk": { + "id": "cMe_lKgwfS-LNTHhHIYrk", + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "name": "updated_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 62, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808577955, + "createAt": 1747808577955 + } + }, + "ixmBlLhmVt4et6tZEwLPC": { + "id": "ixmBlLhmVt4et6tZEwLPC", + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808577955, + "createAt": 1747808577955 + } + }, + "apwDX29U7cM0sUmGl441j": { + "id": "apwDX29U7cM0sUmGl441j", + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808599573, + "createAt": 1747808597240 + } + }, + "_oImjzgGwpdWW78j79uQ4": { + "id": "_oImjzgGwpdWW78j79uQ4", + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808597240, + "createAt": 1747808597240 + } + }, + "LAIQDn9Qi2OWSgzkpHpuu": { + "id": "LAIQDn9Qi2OWSgzkpHpuu", + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808631812, + "createAt": 1747808619604 + } + }, + "-gUujQG3t9GG2FmOqThrf": { + "id": "-gUujQG3t9GG2FmOqThrf", + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "name": "diskinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 65, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808653496, + "createAt": 1747808642949 + } + }, + "it93yolgcnLv-86UHTSok": { + "id": "it93yolgcnLv-86UHTSok", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808715753, + "createAt": 1747808713452 + } + }, + "RANoHyQBf_sobpDKqoEtd": { + "id": "RANoHyQBf_sobpDKqoEtd", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "billing_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808713452, + "createAt": 1747808713452 + } + }, + "jw_L_SVoiwF5NGVBMhtNj": { + "id": "jw_L_SVoiwF5NGVBMhtNj", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 0, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808713452, + "createAt": 1747808713452 + } + }, + "6w-g7TpyNz-QYr3RsDarF": { + "id": "6w-g7TpyNz-QYr3RsDarF", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747808713452, + "createAt": 1747808713452 + } + }, + "eR5sCRzMNW3UANZudEgAD": { + "id": "eR5sCRzMNW3UANZudEgAD", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808741798, + "createAt": 1747808730126 + } + }, + "Rz-tT8JA2j_zo2Sml5hES": { + "id": "Rz-tT8JA2j_zo2Sml5hES", + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "name": "diskinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 65, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747808775764, + "createAt": 1747808761985 + } + }, + "lLQgyWJhi6-3ZThpmB1yu": { + "id": "lLQgyWJhi6-3ZThpmB1yu", + "tableId": "3tdV9J9ns8BWCGQeCXITI", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 9, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809790679, + "createAt": 1747809790679 + } + }, + "9owj9VIe6zTgi6G9zptgz": { + "id": "9owj9VIe6zTgi6G9zptgz", + "tableId": "3tdV9J9ns8BWCGQeCXITI", + "name": "billing_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809790679, + "createAt": 1747809790679 + } + }, + "klrCP5HxLB7xFcRejN3RZ": { + "id": "klrCP5HxLB7xFcRejN3RZ", + "tableId": "3tdV9J9ns8BWCGQeCXITI", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 0, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809790679, + "createAt": 1747809790679 + } + }, + "rJxM74-2ICXhXGMSF1g_b": { + "id": "rJxM74-2ICXhXGMSF1g_b", + "tableId": "3tdV9J9ns8BWCGQeCXITI", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747809790679, + "createAt": 1747809790679 + } + }, + "aJ5yir7zNZfD8YNnDXuwL": { + "id": "aJ5yir7zNZfD8YNnDXuwL", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809839934, + "createAt": 1747809837531 + } + }, + "TKoYcVntKcHeEDpWfusm1": { + "id": "TKoYcVntKcHeEDpWfusm1", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "billing_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809837531, + "createAt": 1747809837531 + } + }, + "IpWimoINbuMFGnEMZ554I": { + "id": "IpWimoINbuMFGnEMZ554I", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809837531, + "createAt": 1747809837531 + } + }, + "X4MpKGfIk57frbGbI_hvm": { + "id": "X4MpKGfIk57frbGbI_hvm", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747809837531, + "createAt": 1747809837531 + } + }, + "iNv7Lm2grAxh9C3WLUmhS": { + "id": "iNv7Lm2grAxh9C3WLUmhS", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809875858, + "createAt": 1747809857178 + } + }, + "0AzBsuvrX5XEk2pIRNTZR": { + "id": "0AzBsuvrX5XEk2pIRNTZR", + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809898165, + "createAt": 1747809887421 + } + }, + "7H1dMNV2UxOx8O6DD_fv3": { + "id": "7H1dMNV2UxOx8O6DD_fv3", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809992907, + "createAt": 1747809990681 + } + }, + "xXf6S4ALrDaYympxFLecy": { + "id": "xXf6S4ALrDaYympxFLecy", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "billing_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809990682, + "createAt": 1747809990681 + } + }, + "xVa4vn9BzbObswNs0nbUQ": { + "id": "xVa4vn9BzbObswNs0nbUQ", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747809990682, + "createAt": 1747809990682 + } + }, + "s4YF5Cw7Z65Hvw-z95dDa": { + "id": "s4YF5Cw7Z65Hvw-z95dDa", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747809990682, + "createAt": 1747809990682 + } + }, + "nL-8jbbaXLAxQmwKmxwVp": { + "id": "nL-8jbbaXLAxQmwKmxwVp", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747810011779, + "createAt": 1747810002441 + } + }, + "A5jE2aplbrccrkErwht-L": { + "id": "A5jE2aplbrccrkErwht-L", + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "name": "lineinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 63, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747810040937, + "createAt": 1747810029959 + } } }, "relationshipEntities": { @@ -6490,8 +7756,8 @@ "columnIds": [ "sscrxOdwLlx94tx1j_MrH" ], - "x": 686.1378, - "y": 1678.488957142857, + "x": 716.1378, + "y": 1565.988957142857, "direction": 2 }, "meta": { @@ -6509,17 +7775,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.1378, - "y": 1847.631814285714, - "direction": 2 + "x": 631.4711333333333, + "y": 1840.8461, + "direction": 8 }, "end": { "tableId": "sgFc3Tg9sWiMm4hsEwKm9", "columnIds": [ "zG8_7CN0n4heTPXcS1V8e" ], - "x": 1167.4791, - "y": 2250.4061, + "x": 1214.9955, + "y": 2849.3448, "direction": 1 }, "meta": { @@ -6537,17 +7803,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.1378, - "y": 1889.9175285714282, - "direction": 2 + "x": 462.13779999999997, + "y": 1840.8461, + "direction": 8 }, "end": { "tableId": "5KwHMmZppj-7TjRC_xQ54", "columnIds": [ "CgGKx59wNvLpWcoBrEuvK" ], - "x": 1170.8023, - "y": 2482.9427, + "x": 1213.3791, + "y": 3069.4319, "direction": 1 }, "meta": { @@ -6565,8 +7831,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 2400.1595, - "y": 2390.1189, + "x": 2211.1203, + "y": 3221.0399, "direction": 1 }, "end": { @@ -6574,8 +7840,8 @@ "columnIds": [ "AKpf8UbHiwRJll36PQR6f" ], - "x": 1694.8023, - "y": 2482.9427, + "x": 1737.3791, + "y": 3069.4319, "direction": 2 }, "meta": { @@ -6593,8 +7859,8 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.1378, - "y": 1805.3460999999998, + "x": 716.1378, + "y": 1650.5603857142855, "direction": 2 }, "end": { @@ -6602,8 +7868,8 @@ "columnIds": [ "jw-RY9uJDPlANghUUPnJ4" ], - "x": 1169.2751, - "y": 2024.3199, + "x": 1157.533, + "y": 1629.5163, "direction": 1 }, "meta": { @@ -6619,8 +7885,8 @@ "start": { "tableId": "ZLEpY5EjuZV21718zf-Y1", "columnIds": [], - "x": 2404.3581, - "y": 1880.9982, + "x": 2164.4251, + "y": 1564.1334, "direction": 1 }, "end": { @@ -6628,8 +7894,8 @@ "columnIds": [ "fdfaSp8HaDoxD96LL1tX4" ], - "x": 1684.2751, - "y": 2024.3199, + "x": 1672.533, + "y": 1629.5163, "direction": 2 }, "meta": { @@ -6647,8 +7913,8 @@ "columnIds": [ "mfHtgzc_Aeocr6xkgwYWh" ], - "x": 723.2781, - "y": 2704.8495, + "x": 1718.6628, + "y": 3345.2341, "direction": 2 }, "end": { @@ -6656,8 +7922,8 @@ "columnIds": [ "DGl10GI58QwOHwpTu4Z1Y" ], - "x": 1181.8279, - "y": 3274.7872, + "x": 2215.3404, + "y": 3484.1787, "direction": 1 }, "meta": { @@ -6731,8 +7997,8 @@ "columnIds": [ "7B0zaLoZnOoMNW8OHZlrQ" ], - "x": 2607.9171, - "y": 1685.5552, + "x": 2401.4318, + "y": 1360.9074, "direction": 8 }, "end": { @@ -6740,8 +8006,8 @@ "columnIds": [ "f7_MGvRjkwL1xkCWrAgDR" ], - "x": 2653.3581, - "y": 1780.9982, + "x": 2413.4251, + "y": 1464.1334, "direction": 4 }, "meta": { @@ -6759,17 +8025,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 432.13779999999997, - "y": 1953.3461, - "direction": 8 + "x": 716.1378, + "y": 1735.131814285714, + "direction": 2 }, "end": { "tableId": "gYqhvNLZjWrQk8LNKH3il", "columnIds": [ "YKXKsIEJE-vmIMQd5ZUMC" ], - "x": 1182.4615, - "y": 3016.1046, + "x": 1185.8779, + "y": 2186.844, "direction": 1 }, "meta": { @@ -6787,8 +8053,8 @@ "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT" ], - "x": 2410.026, - "y": 2947.3911, + "x": 2196.9786, + "y": 2370.1577, "direction": 1 }, "end": { @@ -6796,8 +8062,8 @@ "columnIds": [ "ox7xu7XaYBZyB2alu2HcK" ], - "x": 1697.4615, - "y": 3016.1046, + "x": 1700.8779, + "y": 2186.844, "direction": 2 }, "meta": { @@ -6824,8 +8090,8 @@ "columnIds": [ "5KRw8TtT2nLqpYfKFOBwe" ], - "x": 2349.9171, - "y": 1481.5552, + "x": 2143.4318, + "y": 1156.9074, "direction": 1 }, "meta": { @@ -6843,8 +8109,8 @@ "columnIds": [ "zBz4vBOZSIA8vKmfqXckO" ], - "x": 2402.2093, - "y": 2126.2003, + "x": 2210.4386, + "y": 2954.124, "direction": 1 }, "end": { @@ -6852,8 +8118,8 @@ "columnIds": [ "Ve6X-7qKKUxId0tll1Caz" ], - "x": 1688.4791, - "y": 2250.4061, + "x": 1735.9955, + "y": 2849.3448, "direction": 2 }, "meta": { @@ -6955,18 +8221,18 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.1378, - "y": 1720.7746714285713, - "direction": 2 + "x": 292.80446666666666, + "y": 1840.8461, + "direction": 8 }, "end": { "tableId": "R4reSshLxH3DQW6fUfSPa", "columnIds": [ "uodvC_rgsnCqB65A3uZYW" ], - "x": 1158.0459, - "y": 1442.7878, - "direction": 1 + "x": 494.2385, + "y": 2560.6143, + "direction": 4 }, "meta": { "updateAt": 1747626605945, @@ -7040,7 +8306,7 @@ "nb5CGzskl3_LIRA0yyede" ], "x": 686.1378, - "y": 1932.2032428571424, + "y": 1844.0127666666663, "direction": 2 }, "end": { @@ -7048,8 +8314,8 @@ "columnIds": [ "aVHpSwITyNUlzw2eRHocV" ], - "x": 1179.9799, - "y": 2763.9415, + "x": 1165.5062, + "y": 1891.573, "direction": 1 }, "meta": { @@ -7067,8 +8333,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2410.6602, - "y": 2683.435, + "x": 2377.7654, + "y": 1770.2772, "direction": 1 }, "end": { @@ -7076,8 +8342,8 @@ "columnIds": [ "stEdaFSZ8RZorO2WI_W2Z" ], - "x": 1694.9799, - "y": 2763.9415, + "x": 1680.5062, + "y": 1891.573, "direction": 2 }, "meta": { @@ -7095,8 +8361,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2907.6602, - "y": 2683.435, + "x": 2671.2456, + "y": 1841.4543333333336, "direction": 2 }, "end": { @@ -7104,8 +8370,8 @@ "columnIds": [ "LHHK0n71w3kZmkJRraK-4" ], - "x": 3036.1445, - "y": 2792.8727, + "x": 3174.0523, + "y": 1982.7913, "direction": 1 }, "meta": { @@ -7123,8 +8389,8 @@ "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT" ], - "x": 2907.026, - "y": 2947.3911, + "x": 2693.9786, + "y": 2370.1577, "direction": 2 }, "end": { @@ -7132,14 +8398,434 @@ "columnIds": [ "Ba036rLR2vRLjGURehMqM" ], - "x": 3036.1445, - "y": 2880.8727, + "x": 3174.0523, + "y": 2058.7913, "direction": 1 }, "meta": { "updateAt": 1747632352018, "createAt": 1747632352018 } + }, + "yRqdBlk02rkPXWzAwo7fw": { + "id": "yRqdBlk02rkPXWzAwo7fw", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "doERb3lIVeBW_D0NtNYX8", + "columnIds": [ + "7B0zaLoZnOoMNW8OHZlrQ" + ], + "x": 1155.1804, + "y": 1371.9237, + "direction": 1 + }, + "end": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "HFfXA_mDYFa0cgMnr8qBF" + ], + "x": 719.1378, + "y": 1618.5603857142855, + "direction": 2 + }, + "meta": { + "updateAt": 1747788167947, + "createAt": 1747788167947 + } + }, + "F8H08wMOdclk8KgILLdzo": { + "id": "F8H08wMOdclk8KgILLdzo", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 1170.4481, + "y": 1919.0577, + "direction": 1 + }, + "end": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "6zK3adxA2E9fHUYDhbE8g" + ], + "x": 719.1378, + "y": 1678.179433333333, + "direction": 2 + }, + "meta": { + "updateAt": 1747788592272, + "createAt": 1747788592272 + } + }, + "wkPphqUmvwqctfKyH-AHK": { + "id": "wkPphqUmvwqctfKyH-AHK", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "clEhcctzDQV_zPwyyczK1", + "columnIds": [ + "N12qnw2uSzxkqIk8T0Edq" + ], + "x": 2307.3623, + "y": 2019.1098, + "direction": 2 + }, + "end": { + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "columnIds": [ + "5EZEDNUFxzmElbK6goZPK" + ], + "x": 2396.6061, + "y": 2047.8903, + "direction": 1 + }, + "meta": { + "updateAt": 1747808226928, + "createAt": 1747808226928 + } + }, + "aAqJBcaRRMJ4DFG9kgvbN": { + "id": "aAqJBcaRRMJ4DFG9kgvbN", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 2671.2456, + "y": 1924.1210000000003, + "direction": 2 + }, + "end": { + "tableId": "clEhcctzDQV_zPwyyczK1", + "columnIds": [ + "b5P_DaJJMnNzu6zY9NAp2" + ], + "x": 3184.9304, + "y": 2186.1977, + "direction": 1 + }, + "meta": { + "updateAt": 1747808237337, + "createAt": 1747808237337 + } + }, + "fubg5Dl6T9RhMC2UiG1G2": { + "id": "fubg5Dl6T9RhMC2UiG1G2", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 716.1378, + "y": 1777.4175285714282, + "direction": 2 + }, + "end": { + "tableId": "33kopDW02tJG0YjGvxsnb", + "columnIds": [ + "T56cjdxZzJE1kNMWaD1Wy" + ], + "x": 1180.7525, + "y": 2406.3292, + "direction": 1 + }, + "meta": { + "updateAt": 1747808340390, + "createAt": 1747808340390 + } + }, + "FUBur66i0x78rG_9t77X-": { + "id": "FUBur66i0x78rG_9t77X-", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "columnIds": [ + "203b3hUKUQ_Gu5wKShBgZ" + ], + "x": 2199.8478, + "y": 2549.3563, + "direction": 1 + }, + "end": { + "tableId": "33kopDW02tJG0YjGvxsnb", + "columnIds": [ + "Sdf3eOJV9eozG_NEDn2jP" + ], + "x": 1695.7525, + "y": 2406.3292, + "direction": 2 + }, + "meta": { + "updateAt": 1747808386677, + "createAt": 1747808386677 + } + }, + "XHvOEOQa7Em8ZA6JW2zyu": { + "id": "XHvOEOQa7Em8ZA6JW2zyu", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "lwd2DR7f1FW8fXtJ0lX-r", + "columnIds": [ + "203b3hUKUQ_Gu5wKShBgZ" + ], + "x": 2696.8478, + "y": 2549.3563, + "direction": 2 + }, + "end": { + "tableId": "clEhcctzDQV_zPwyyczK1", + "columnIds": [ + "48fHpk5tPRX9_lrYaJyTu" + ], + "x": 3184.9304, + "y": 2262.1977, + "direction": 1 + }, + "meta": { + "updateAt": 1747808511550, + "createAt": 1747808511550 + } + }, + "wT92mXVEGvXGzTjfbCmIc": { + "id": "wT92mXVEGvXGzTjfbCmIc", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 2671.2456, + "y": 2006.787666666667, + "direction": 2 + }, + "end": { + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "columnIds": [ + "LAIQDn9Qi2OWSgzkpHpuu" + ], + "x": 3202.1074, + "y": 2401.0985, + "direction": 1 + }, + "meta": { + "updateAt": 1747808619604, + "createAt": 1747808619604 + } + }, + "FVI_bw_S3pQ5iPraRK3AU": { + "id": "FVI_bw_S3pQ5iPraRK3AU", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "columnIds": [ + "WaCB3uNZYFReAPiBqQ97v" + ], + "x": 2695.6283, + "y": 2722.5269, + "direction": 2 + }, + "end": { + "tableId": "5b_1J-B_jmnw1NU_mV_sr", + "columnIds": [ + "-gUujQG3t9GG2FmOqThrf" + ], + "x": 3202.1074, + "y": 2477.0985, + "direction": 1 + }, + "meta": { + "updateAt": 1747808642950, + "createAt": 1747808642950 + } + }, + "-hk1fQTZWwoqdMg3o4v2H": { + "id": "-hk1fQTZWwoqdMg3o4v2H", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 716.1378, + "y": 1819.7032428571424, + "direction": 2 + }, + "end": { + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "columnIds": [ + "eR5sCRzMNW3UANZudEgAD" + ], + "x": 1183.1916, + "y": 2619.7439, + "direction": 1 + }, + "meta": { + "updateAt": 1747808730126, + "createAt": 1747808730126 + } + }, + "BMCA7A2au8qHxEybuVin6": { + "id": "BMCA7A2au8qHxEybuVin6", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "dnFyz1CSdGeS6mCbfCMO0", + "columnIds": [ + "WaCB3uNZYFReAPiBqQ97v" + ], + "x": 2198.6283, + "y": 2722.5269, + "direction": 1 + }, + "end": { + "tableId": "O16FZYP2H6A8FoXHHYkLK", + "columnIds": [ + "Rz-tT8JA2j_zo2Sml5hES" + ], + "x": 1698.1916, + "y": 2619.7439, + "direction": 2 + }, + "meta": { + "updateAt": 1747808761985, + "createAt": 1747808761985 + } + }, + "A95jXUL-PbW1llS_CcnDv": { + "id": "A95jXUL-PbW1llS_CcnDv", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 716.1378, + "y": 1692.8460999999998, + "direction": 2 + }, + "end": { + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "columnIds": [ + "iNv7Lm2grAxh9C3WLUmhS" + ], + "x": 1169.2989, + "y": 1870.2022, + "direction": 1 + }, + "meta": { + "updateAt": 1747809857178, + "createAt": 1747809857178 + } + }, + "GPdTxG-bhcW_C7QYLUi7U": { + "id": "GPdTxG-bhcW_C7QYLUi7U", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 2174.2456, + "y": 1924.121, + "direction": 1 + }, + "end": { + "tableId": "SnAHgbwS6oJiDJ-9JvMsS", + "columnIds": [ + "0AzBsuvrX5XEk2pIRNTZR" + ], + "x": 1684.2989, + "y": 1870.2022, + "direction": 2 + }, + "meta": { + "updateAt": 1747809887421, + "createAt": 1747809887421 + } + }, + "Ora6jxky2rRdOP3TdmEVY": { + "id": "Ora6jxky2rRdOP3TdmEVY", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 716.1378, + "y": 1608.2746714285713, + "direction": 2 + }, + "end": { + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "columnIds": [ + "nL-8jbbaXLAxQmwKmxwVp" + ], + "x": 1157.7727, + "y": 1401.1527, + "direction": 1 + }, + "meta": { + "updateAt": 1747810002441, + "createAt": 1747810002441 + } + }, + "zJI4tjQWmlupFIPITHL9_": { + "id": "zJI4tjQWmlupFIPITHL9_", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "doERb3lIVeBW_D0NtNYX8", + "columnIds": [ + "7B0zaLoZnOoMNW8OHZlrQ" + ], + "x": 2143.4318, + "y": 1292.9074, + "direction": 1 + }, + "end": { + "tableId": "KjMkfDhEIFtqzt24wZL_o", + "columnIds": [ + "A5jE2aplbrccrkErwht-L" + ], + "x": 1672.7727, + "y": 1401.1527, + "direction": 2 + }, + "meta": { + "updateAt": 1747810029959, + "createAt": 1747810029959 + } } }, "indexEntities": {}, diff --git a/app/Database/users.sql b/app/Database/users.sql deleted file mode 100644 index 74a8e70..0000000 --- a/app/Database/users.sql +++ /dev/null @@ -1,62 +0,0 @@ -/*!999999\- enable the sandbox mode */ --- MariaDB dump 10.19 Distrib 10.5.25-MariaDB, for Win64 (AMD64) --- --- Host: localhost Database: cfmgr --- ------------------------------------------------------ --- Server version 10.5.25-MariaDB - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `user` --- - -DROP TABLE IF EXISTS `user`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `user` ( - `uid` int(5) unsigned NOT NULL AUTO_INCREMENT, - `id` varchar(20) NOT NULL, - `passwd` varchar(255) NOT NULL, - `name` varchar(20) NOT NULL, - `email` varchar(50) NOT NULL, - `mobile` varchar(20) DEFAULT NULL, - `role` varchar(255) NOT NULL DEFAULT 'use', - `status` varchar(10) NOT NULL DEFAULT 'use', - `updated_at` timestamp NULL DEFAULT NULL, - `created_at` timestamp NOT NULL DEFAULT current_timestamp(), - PRIMARY KEY (`uid`), - UNIQUE KEY `id` (`id`), - UNIQUE KEY `email` (`email`) -) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `user` --- - -LOCK TABLES `user` WRITE; -/*!40000 ALTER TABLE `user` DISABLE KEYS */; -INSERT INTO `user` VALUES (1,'choi.jh','$2y$10$9kUte0xrvEkxtI9CzVaeKeCAxzOR4pKPpsCaQHR1YW7dXsCrTLWeC','최준흠','choi.jh@prime-idc.jp',NULL,'user,vip,manager,cloudflare,firewall,director,master','use','2023-05-31 14:55:51','2023-03-23 06:50:04'),(2,'cho.jh','$2y$10$ot/aUXR/W1n4Q3dZA2dZCOxQrpVb2Bq31Y7xFQS3G6D1gtImmyBjm','조준희','cho.jh@prime-idc.jp',NULL,'manager,cloudflare','use','2023-05-30 14:35:55','2023-03-24 02:20:48'),(4,'kimdy','$2y$10$18uyn94xdprzAnt.oYZ5weAvb8rRLhkz/SdQrjEK7yuGhCr9PlUCC','김동윤','kimdy@prime-idc.jp',NULL,'manager,cloudflare','use','2023-03-24 02:21:50','2023-03-24 02:21:50'),(5,'kimhy','$2y$10$.yEKVqY.F7HoSOZijl4uyeulUtfAQ4EDRiyR2JpgFYBuKw.mZoZvG','김효영','khy@prime-idc.jp',NULL,'manager,cloudflare,director','use','2023-03-24 02:23:18','2023-03-24 02:23:18'),(6,'kim.eh','$2y$10$YmwicI.Br4XNyGamfRADMOu.qlkwKd2fmnNkL7YIkNHGndvqYPnCq','김은혁','kim.eh@prime-idc.jp',NULL,'manager,cloudflare','use','2023-03-24 02:23:52','2023-03-24 02:23:52'),(7,'leeph','$2y$10$lR739WzJsW6rDLgchYs7buek4BYeTlKHTQY60RDqRms9Io7RSY3AC','이풍호','leeph@prime-idc.jp',NULL,'manager,cloudflare','use','2023-05-29 16:32:52','2023-03-24 02:24:21'),(8,'jinmingyu','$2y$10$PI8WA6d/z4hDE6hxJoUhbuMH3vTTWH0Ry2Z6fTLUUpwQGaE/9bEZa','김명옥','jinmingyu@idcjp.jp',NULL,'manager,cloudflare','use','2023-07-21 06:48:39','2023-03-24 02:25:00'),(9,'kangdh','$2y$10$gu9OS2DDQQ5H.Hh61t3BSOUp87l35q.xsduVSxvCcn8IgA4jrATgG','강동헌','kang.dh@idcjp.jp',NULL,'manager,cloudflare','use','2023-06-22 23:59:07','2023-03-24 02:25:48'),(10,'yoohs','$2y$10$TGASk98FuZ6Ux6FDquu1aO3rztA01MCle/Vs1.3iaEMQzakAbCzJy','유혜성','yoo.hs@idcjp.jp',NULL,'manager,cloudflare','use','2023-06-02 02:07:19','2023-03-24 02:26:31'),(11,'kim.yh','$2y$10$8GciQXpKYiR3TDWQfh9JjOQAQ.YWGoOSCL0a0/w4XACO0mUgjjbWy','김영환','kim.yh@idcjp.jp',NULL,'manager,cloudflare,firewall','use','2023-10-16 23:08:51','2023-03-24 02:27:05'),(12,'yunmuj','$2y$10$zkgwGVj2JSOVIsxLe8fePe1gvWWaCemfZMktzBlrN8oLb3CKydkZC','윤무정','yunmuj@idcjp.jp',NULL,'manager,cloudflare','use','2024-06-12 00:21:07','2023-03-24 02:27:59'),(13,'kim.mt','$2y$10$3dfkA0oq4LqiJOmjbBGKe.p0Dhj/MDqjoTdw11BOPF/H2qJqnEuHO','김문태','kim.mt@idcjp.jp',NULL,'manager,cloudflare','use','2023-05-31 14:22:43','2023-03-24 02:28:31'),(14,'shin.ms','$2y$10$.jaDkGtm/gZK3ZDF.fJUGOwMI7Zif5588X5AxSMvvk238RDI7spQ6','신민수','shin.ms@idcjp.jp',NULL,'manager,cloudflare','use','2023-03-24 02:29:00','2023-03-24 02:29:00'),(15,'park.sm','$2y$10$BwMxw0uvw2tAdQ0EZQ2/hu.Q7zYu7mbuBPPRTaa14bwG3VLf0cXfu','박선미','park.sm@idcjp.jp',NULL,'manager,cloudflare','use','2024-03-12 02:14:09','2023-03-24 02:29:34'),(19,'park.hg','$2y$10$x7QQOkOEJHVKOnghbHBqYuI12Vsa9KLV8W4wgebCWy1pZiM93/W.e','박혁규','park.hg@prime-idc.jp',NULL,'manager','unuse','2023-09-04 10:27:32','2023-09-04 09:48:02'),(21,'masakuni','$2y$10$di6Y7CqJGbbf72kDyCrOCOafJgk3vqJCYg6N3EtBUc3J6r24/7SFe','김창국','masakuni@prime-idc.jp',NULL,'cloudflare','unuse','2023-12-18 08:56:29','2023-12-18 08:56:29'),(22,'bjh','$2y$10$LnEQ6kz4igRPZeDYwe7UluRiSaMVGN9Jj1fW3QqUUp6zPeLJW9goS','배장훈','bjh@prime-idc.jp',NULL,'cloudflare','unuse','2024-06-06 23:51:19','2024-02-26 01:26:20'),(23,'cho.sh','$2y$10$jmmNrEsFmb2.Zj3OkBXDHuktrIj.NCP/tO2k9kquFBTBssa/lNG6y','조성호','cho.sh@prime-idc.jp',NULL,'user','unuse','2024-10-02 00:45:19','2024-10-02 00:32:30'),(24,'kobn','$2y$10$pWM/XFfSNeSng32sypbDX.WaR4UlM4EDkYKCQfFkYIOC7Ppg0nc5G','고병남','ko@prime-idc.jp',NULL,'manager,cloudflare','use',NULL,'2024-10-29 06:30:19'),(25,'jeong.sg','$2y$10$OzH6140JztiUEs4s/VHbPOxfxubFooqwqVhGpdFG8OJCGAFXNu546','정상구','jeong.sg@prime-idc.jp',NULL,'manager,cloudflare','use','2025-01-23 00:30:13','2025-01-23 00:29:46'); -/*!40000 ALTER TABLE `user` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2025-04-29 9:31:24 diff --git a/app/Entities/Customer/ServiceEntity.php b/app/Entities/Customer/ServiceEntity.php index 083e7b6..e460335 100644 --- a/app/Entities/Customer/ServiceEntity.php +++ b/app/Entities/Customer/ServiceEntity.php @@ -9,11 +9,15 @@ class ServiceEntity extends CustomerEntity { const PK = ServiceModel::PK; const TITLE = ServiceModel::TITLE; + + public function getServerInfoUID() + { + return $this->attributes['serverinfo_uid']; + } public function getPartEntities(string $type): array { return $this->attributes[$type] ?? []; } - public function addPartEntity(string $type, PartEntity $partEntity): void { if (!isset($this->attributes[$type])) { diff --git a/app/Entities/Customer/ServiceServerEntity.php b/app/Entities/Customer/ServiceServerEntity.php index b9602b6..a303289 100644 --- a/app/Entities/Customer/ServiceServerEntity.php +++ b/app/Entities/Customer/ServiceServerEntity.php @@ -9,12 +9,12 @@ class ServiceServerEntity extends CustomerEntity const PK = ServiceServerModel::PK; const TITLE = ServiceServerModel::TITLE; - public function getServiceInfo() + public function getServiceInfoUID() { return $this->attributes['serviceinfo_uid']; } - public function getServerInfo() + public function getServerInfoUID() { return $this->attributes['serverinfo_uid']; } diff --git a/app/Entities/Equipment/Part/CpuEntity.php b/app/Entities/Equipment/Part/CpuEntity.php new file mode 100644 index 0000000..cac1516 --- /dev/null +++ b/app/Entities/Equipment/Part/CpuEntity.php @@ -0,0 +1,11 @@ +attributes['type']; - } -} diff --git a/app/Entities/Equipment/ServerPartEntity.php b/app/Entities/Equipment/ServerPartEntity.php index 416eeda..e111464 100644 --- a/app/Entities/Equipment/ServerPartEntity.php +++ b/app/Entities/Equipment/ServerPartEntity.php @@ -9,12 +9,12 @@ class ServerPartEntity extends EquipmentEntity const PK = ServerPartModel::PK; const TITLE = ServerPartModel::TITLE; - public function getServerInfo() + public function getServerInfoUID() { return $this->attributes['serverinfo_uid']; } - public function getPartInfo() + public function getPartInfoUID() { return $this->attributes['partinfo_uid']; } diff --git a/app/Helpers/CommonHelper.php b/app/Helpers/CommonHelper.php index a489149..a2bcca9 100644 --- a/app/Helpers/CommonHelper.php +++ b/app/Helpers/CommonHelper.php @@ -123,9 +123,6 @@ class CommonHelper case 'close': $msg .= "window.close();"; break; - case 'back': - $msg .= "history.back();"; - break; default: $msg .= $url ? "location.href=\"{$url}\";" : ""; break; diff --git a/app/Helpers/Customer/CustomerHelper.php b/app/Helpers/Customer/CustomerHelper.php index b87978e..4694373 100644 --- a/app/Helpers/Customer/CustomerHelper.php +++ b/app/Helpers/Customer/CustomerHelper.php @@ -5,7 +5,7 @@ namespace App\Helpers\Customer; use App\Helpers\CommonHelper; use CodeIgniter\HTTP\IncomingRequest; -class CustomerHelper extends CommonHelper +abstract class CustomerHelper extends CommonHelper { protected function __construct(?IncomingRequest $request = null) { diff --git a/app/Helpers/Customer/ServiceHelper.php b/app/Helpers/Customer/ServiceHelper.php index e9c86e4..fae2187 100644 --- a/app/Helpers/Customer/ServiceHelper.php +++ b/app/Helpers/Customer/ServiceHelper.php @@ -17,13 +17,12 @@ class ServiceHelper extends CustomerHelper { $value = $viewDatas['entity']->$field ?? ""; switch ($field) { - case "SERVER": case "IP": + case "DEFENCE": + case "SOFTWARE": case "CPU": case "RAM": case "DISK": - case "DEFENCE": - case "SOFTWARE": $temps = []; foreach ($viewDatas['entity']->getPartEntities($field) as $partEntity) { $temps[] = "
" . $partEntity->getTitle() . "
"; @@ -33,7 +32,7 @@ class ServiceHelper extends CustomerHelper '변경', $field, [ - "data-src" => "/admin/equipment/serverpart?type={$field}&serverinfo_uid={$viewDatas['entity']->getPK()}", + "data-src" => "/admin/customer/servicepart?type={$field}&serviceinfo_uid={$viewDatas['entity']->getPK()}", "data-bs-toggle" => "modal", "data-bs-target" => "#index_action_form", ...$extras diff --git a/app/Helpers/Equipment/EquipmentHelper.php b/app/Helpers/Equipment/EquipmentHelper.php index 4289382..f963d57 100644 --- a/app/Helpers/Equipment/EquipmentHelper.php +++ b/app/Helpers/Equipment/EquipmentHelper.php @@ -5,7 +5,7 @@ namespace App\Helpers\Equipment; use App\Helpers\CommonHelper; use CodeIgniter\HTTP\IncomingRequest; -class EquipmentHelper extends CommonHelper +abstract class EquipmentHelper extends CommonHelper { protected function __construct(?IncomingRequest $request = null) { diff --git a/app/Helpers/Equipment/PartHelper.php b/app/Helpers/Equipment/Part/CpuHelper.php similarity index 56% rename from app/Helpers/Equipment/PartHelper.php rename to app/Helpers/Equipment/Part/CpuHelper.php index ae729f7..7c32680 100644 --- a/app/Helpers/Equipment/PartHelper.php +++ b/app/Helpers/Equipment/Part/CpuHelper.php @@ -1,16 +1,16 @@ setTitleField(field: PartModel::TITLE); + $this->setTitleField(field: CpuModel::TITLE); } } diff --git a/app/Helpers/Equipment/Part/DiskHelper.php b/app/Helpers/Equipment/Part/DiskHelper.php new file mode 100644 index 0000000..cb4584b --- /dev/null +++ b/app/Helpers/Equipment/Part/DiskHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: DiskModel::TITLE); + } +} diff --git a/app/Helpers/Equipment/Part/PartHelper.php b/app/Helpers/Equipment/Part/PartHelper.php new file mode 100644 index 0000000..e209658 --- /dev/null +++ b/app/Helpers/Equipment/Part/PartHelper.php @@ -0,0 +1,14 @@ +setTitleField(field: RamModel::TITLE); + } +} diff --git a/app/Language/en/Customer/Service.php b/app/Language/en/Customer/Service.php index 2e5af05..1283ace 100644 --- a/app/Language/en/Customer/Service.php +++ b/app/Language/en/Customer/Service.php @@ -3,6 +3,8 @@ return [ 'title' => "고객서비스정보", 'label' => [ 'clientinfo_uid' => "고객명", + 'lineinfo_uid' => "회선정보", + 'serverinfo_uid' => "서버정보", 'rack' => "Rack번호", 'type' => "종류", 'billing_at' => "청구일", @@ -11,13 +13,12 @@ return [ 'status' => "상태", 'updated_at' => "수정일", 'created_at' => "신청일", - 'DEFENCE' => "방어", - 'SERVER' => "서버", 'IP' => "IP", 'CPU' => "CPU", 'RAM' => "RAM", 'DISK' => "DISK", 'SOFTWARE' => "SOFTWARE", + 'DEFENCE' => "방어", ], 'DEFAULTS' => [ 'type' => "hosting", diff --git a/app/Language/en/Equipment/Part.php b/app/Language/en/Equipment/Part/Cpu.php similarity index 54% rename from app/Language/en/Equipment/Part.php rename to app/Language/en/Equipment/Part/Cpu.php index 1295769..afea91a 100644 --- a/app/Language/en/Equipment/Part.php +++ b/app/Language/en/Equipment/Part/Cpu.php @@ -1,28 +1,18 @@ "부품장비정보", + 'title' => "CPU정보", 'label' => [ - 'type' => "종류", 'model' => "모델", - 'price' => "금액", 'description' => "설명", 'status' => "상태", 'updated_at' => "수정일", 'created_at' => "작성일", ], 'DEFAULTS' => [ - 'type' => 'CPU', 'status' => "use" ], - "TYPE" => [ - "CPU" => "CPU", - "RAM" => "RAM", - "DISK" => "DISK", - "colocation" => "코로케이션", - ], "STATUS" => [ "use" => "사용가능", "pause" => "일시정지", - "occupied" => "사용중", ], ]; diff --git a/app/Language/en/Equipment/Part/Disk.php b/app/Language/en/Equipment/Part/Disk.php new file mode 100644 index 0000000..f0d6483 --- /dev/null +++ b/app/Language/en/Equipment/Part/Disk.php @@ -0,0 +1,18 @@ + "DISK정보", + 'label' => [ + 'model' => "모델", + 'description' => "설명", + 'status' => "상태", + 'updated_at' => "수정일", + 'created_at' => "작성일", + ], + 'DEFAULTS' => [ + 'status' => "use" + ], + "STATUS" => [ + "use" => "사용가능", + "pause" => "일시정지", + ], +]; diff --git a/app/Language/en/Equipment/Part/Ram.php b/app/Language/en/Equipment/Part/Ram.php new file mode 100644 index 0000000..04a5c79 --- /dev/null +++ b/app/Language/en/Equipment/Part/Ram.php @@ -0,0 +1,18 @@ + "RAM정보", + 'label' => [ + 'model' => "모델", + 'description' => "설명", + 'status' => "상태", + 'updated_at' => "수정일", + 'created_at' => "작성일", + ], + 'DEFAULTS' => [ + 'status' => "use" + ], + "STATUS" => [ + "use" => "사용가능", + "pause" => "일시정지", + ], +]; diff --git a/app/Models/Customer/ServiceModel.php b/app/Models/Customer/ServiceModel.php index 747208b..6359220 100644 --- a/app/Models/Customer/ServiceModel.php +++ b/app/Models/Customer/ServiceModel.php @@ -14,6 +14,8 @@ class ServiceModel extends CustomerModel protected $returnType = ServiceEntity::class; protected $allowedFields = [ "clientinfo_uid", + "lineinfo_uid", + "serverinfo_uid", "rack", "type", "billing_at", @@ -33,6 +35,8 @@ class ServiceModel extends CustomerModel } switch ($field) { case "clientinfo_uid": + case "lineinfo_uid": + case "serverinfo_uid": $rule = "required|numeric"; break; case "rack": diff --git a/app/Models/Equipment/PartModel.php b/app/Models/Equipment/Part/CpuModel.php similarity index 76% rename from app/Models/Equipment/PartModel.php rename to app/Models/Equipment/Part/CpuModel.php index 3380a4a..4ae1e4c 100644 --- a/app/Models/Equipment/PartModel.php +++ b/app/Models/Equipment/Part/CpuModel.php @@ -1,21 +1,19 @@ field가 array 입니다.\n" . var_export($field, true)); + } + switch ($field) { + case "model": + $rule = "required|trim|string"; + break; + default: + $rule = parent::getFieldRule($action, $field); + break; + } + return $rule; + } +} diff --git a/app/Models/Equipment/Part/PartModel.php b/app/Models/Equipment/Part/PartModel.php new file mode 100644 index 0000000..ca36c84 --- /dev/null +++ b/app/Models/Equipment/Part/PartModel.php @@ -0,0 +1,13 @@ + field가 array 입니다.\n" . var_export($field, true)); + } + switch ($field) { + case "model": + $rule = "required|trim|string"; + break; + default: + $rule = parent::getFieldRule($action, $field); + break; + } + return $rule; + } +} diff --git a/app/Services/CommonService.php b/app/Services/CommonService.php index 11cd73f..d888f46 100644 --- a/app/Services/CommonService.php +++ b/app/Services/CommonService.php @@ -92,11 +92,12 @@ abstract class CommonService } return $rule; } - public function getFormFieldOption(string $field, array $options = []): array + final public function getFormFieldOption(string $field, mixed $where = null): array { + $options = []; switch ($field) { default: - foreach ($this->getEntities() as $entity) { + foreach ($this->getEntities($where) as $entity) { $options[$entity->getPK()] = $entity->getTitle(); } break; diff --git a/app/Services/Customer/ClientService.php b/app/Services/Customer/ClientService.php index 18662ee..6e195d3 100644 --- a/app/Services/Customer/ClientService.php +++ b/app/Services/Customer/ClientService.php @@ -39,22 +39,6 @@ class ClientService extends CustomerService { return ['status']; } - public function getFormFieldOption(string $field, array $options = []): array - { - switch ($field) { - case 'clientinfo_uid': - foreach ($this->getEntities() as $entity) { - $options[$entity->getPK()] = $entity->getTitle(); - } - break; - default: - $options = parent::getFormFieldOption($field, $options); - break; - } - // dd($options); - return $options; - } - public function create(array $formDatas, mixed $entity = new ClientEntity()): ClientEntity { $formDatas['role'] = implode(DEFAULTS["DELIMITER_ROLE"], $formDatas['role']); diff --git a/app/Services/Customer/ServicePartService.php b/app/Services/Customer/ServicePartService.php index 5f79caf..df929f9 100644 --- a/app/Services/Customer/ServicePartService.php +++ b/app/Services/Customer/ServicePartService.php @@ -37,10 +37,10 @@ class ServicePartService extends CustomerService } public function getFilterFields(): array { - return ["serviceinfo_uid", "type", "partinfo_uid"]; + return ["serviceinfo_uid", "billing_type", "partinfo_uid"]; } public function getBatchJobFields(): array { - return ["type", "partinfo_uid"]; + return ["billing_type", "partinfo_uid"]; } } diff --git a/app/Services/Customer/ServiceService.php b/app/Services/Customer/ServiceService.php index 6936390..115923c 100644 --- a/app/Services/Customer/ServiceService.php +++ b/app/Services/Customer/ServiceService.php @@ -31,6 +31,8 @@ class ServiceService extends CustomerService "clientinfo_uid", "type", "rack", + "lineinfo_uid", + "serverinfo_uid", "billing_at", "start_at", "end_at", @@ -39,7 +41,7 @@ class ServiceService extends CustomerService } public function getFilterFields(): array { - return ["clientinfo_uid", 'type', 'status']; + return ["clientinfo_uid", "lineinfo_uid", "serverinfo_uid", 'type', 'status']; } public function getBatchJobFields(): array { diff --git a/app/Services/Equipment/IpService.php b/app/Services/Equipment/IpService.php index ec0a03d..9a647fe 100644 --- a/app/Services/Equipment/IpService.php +++ b/app/Services/Equipment/IpService.php @@ -41,19 +41,4 @@ class IpService extends EquipmentService { return ['status']; } - public function getFormFieldOption(string $field, array $options = []): array - { - switch ($field) { - case 'IP': - foreach ($this->getEntities(['status' => 'use']) as $entity) { - $options[$entity->getPK()] = $entity->getTitle(); - } - break; - default: - $options = parent::getFormFieldOption($field, $options); - break; - } - // dd($options); - return $options; - } } diff --git a/app/Services/Equipment/Part/CpuService.php b/app/Services/Equipment/Part/CpuService.php new file mode 100644 index 0000000..8a4c5dc --- /dev/null +++ b/app/Services/Equipment/Part/CpuService.php @@ -0,0 +1,28 @@ +getEntities(['type' => $field]) as $entity) { - $options[$entity->getPK()] = $entity->getTitle(); - } - break; - default: - $options = parent::getFormFieldOption($field, $options); - break; - } - // dd($options); - return $options; - } -} diff --git a/app/Services/Equipment/ServerService.php b/app/Services/Equipment/ServerService.php index 2f623a0..487ba0e 100644 --- a/app/Services/Equipment/ServerService.php +++ b/app/Services/Equipment/ServerService.php @@ -44,20 +44,9 @@ class ServerService extends EquipmentService { return ["type", 'model', 'status']; } - - public function getFormFieldOption(string $field, array $options = []): array + //서비스에서 사용중인 서버를 occupied로 변경 + public function setOccupied(ServerEntity $entity): ServerEntity { - switch ($field) { - case 'serverinfo_uid': - foreach ($this->getEntities() as $entity) { - $options[$entity->getPK()] = $entity->getTitle(); - } - break; - default: - $options = parent::getFormFieldOption($field, $options); - break; - } - // dd($options); - return $options; + return $this->getModel()->modify($entity, ['status' => 'occupied']); } } diff --git a/app/Views/admin/create_form.php b/app/Views/admin/create_form.php index 2125294..038ab37 100644 --- a/app/Views/admin/create_form.php +++ b/app/Views/admin/create_form.php @@ -1,5 +1,6 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> +alert($error) ?>
@@ -26,6 +27,5 @@
"btn btn-outline btn-primary")); ?>
- alert($error) ?> endSection() ?> \ No newline at end of file diff --git a/app/Views/admin/index.php b/app/Views/admin/index.php index bb84911..e1ac510 100644 --- a/app/Views/admin/index.php +++ b/app/Views/admin/index.php @@ -1,5 +1,6 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> +alert($error) ?>
include(LAYOUTS[$viewDatas['layout']]['path'] . '/top'); ?>
@@ -16,6 +17,7 @@
include("templates/{$viewDatas['layout']}/index_content_top"); ?> + 'batchjob_form', 'method' => "post"]) ?>
@@ -55,9 +57,6 @@
-alert($error) ?> -
- include(LAYOUTS[$viewDatas['layout']]['path'] . '/bottom'); ?> -
+
include(LAYOUTS[$viewDatas['layout']]['path'] . '/bottom'); ?>
endSection() ?> \ No newline at end of file diff --git a/app/Views/admin/modify_form.php b/app/Views/admin/modify_form.php index 6cd45be..692b656 100644 --- a/app/Views/admin/modify_form.php +++ b/app/Views/admin/modify_form.php @@ -1,5 +1,6 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> +alert($error) ?>
@@ -26,6 +27,5 @@
"btn btn-outline btn-primary"]) ?>
- alert($error) ?> endSection() ?> \ No newline at end of file diff --git a/app/Views/admin/popup/index.php b/app/Views/admin/popup/index.php index 796ad53..97e850e 100644 --- a/app/Views/admin/popup/index.php +++ b/app/Views/admin/popup/index.php @@ -1,5 +1,6 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> +alert($error) ?>
@@ -32,12 +33,12 @@ + include("templates/{$viewDatas['layout']}/index_content_batchjob"); ?>
include("templates/common/" . (isset($viewDatas['modal_type']) ? $viewDatas['modal_type'] : 'modal_fetch')); ?>
-alert($error) ?> endSection() ?> \ No newline at end of file diff --git a/app/Views/admin/view.php b/app/Views/admin/view.php index f709d5b..5c2f405 100644 --- a/app/Views/admin/view.php +++ b/app/Views/admin/view.php @@ -1,5 +1,6 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> +alert($error) ?>
diff --git a/app/Views/layouts/admin/left_menu/equipment.php b/app/Views/layouts/admin/left_menu/equipment.php index d824809..74847b0 100644 --- a/app/Views/layouts/admin/left_menu/equipment.php +++ b/app/Views/layouts/admin/left_menu/equipment.php @@ -11,16 +11,22 @@ - - + +
+ CPU정보 +
+
+ RAM정보 +
+
\ No newline at end of file