diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 014d938..947f257 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -95,19 +95,6 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au }); }); $routes->group('device', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { - $routes->group('rack', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { - $routes->get('/', 'RackController::index', []); - $routes->get('create', 'RackController::create_form'); - $routes->post('create', 'RackController::create'); - $routes->get('modify/(:num)', 'RackController::modify_form/$1'); - $routes->post('modify/(:num)', 'RackController::modify/$1'); - $routes->get('view/(:num)', 'RackController::view/$1'); - $routes->get('delete/(:num)', 'RackController::delete/$1'); - $routes->get('toggle/(:num)/(:any)', 'RackController::toggle/$1/$2'); - $routes->post('batchjob', 'RackController::batchjob'); - $routes->post('batchjob_delete', 'RackController::batchjob_delete'); - $routes->get('download/(:alpha)', 'RackController::download/$1'); - }); $routes->group('line', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { $routes->get('/', 'LineController::index', []); $routes->get('create', 'LineController::create_form'); diff --git a/app/Controllers/Admin/Customer/ClientController.php b/app/Controllers/Admin/Customer/ClientController.php index 9693ba5..9ca641d 100644 --- a/app/Controllers/Admin/Customer/ClientController.php +++ b/app/Controllers/Admin/Customer/ClientController.php @@ -58,10 +58,7 @@ class ClientController extends CustomerController protected function create_process(): ClientEntity { - //데이터 검증 - $this->formDatas = $this->doValidate($this->action, $this->fields); - $entity = $this->getService()->create($this->formDatas); - + $entity = parent::create_process(); //Account정보 $temps = []; $temps['clientinfo_uid'] = $entity->getPK(); diff --git a/app/Controllers/Admin/Customer/CustomerController.php b/app/Controllers/Admin/Customer/CustomerController.php index 68806e0..f13cd13 100644 --- a/app/Controllers/Admin/Customer/CustomerController.php +++ b/app/Controllers/Admin/Customer/CustomerController.php @@ -14,7 +14,10 @@ use App\Services\Customer\PointService; abstract class CustomerController extends AdminController { - private $_clientService = null; + private ?ClientService $_clientService = null; + private ?AccountService $_accountService = null; + private ?CouponService $_couponService = null; + private ?PointService $_pointService = null; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { parent::initController($request, $response, $logger); diff --git a/app/Controllers/Admin/Device/DeviceController.php b/app/Controllers/Admin/Device/DeviceController.php index 1a4d774..fd6e0cf 100644 --- a/app/Controllers/Admin/Device/DeviceController.php +++ b/app/Controllers/Admin/Device/DeviceController.php @@ -6,11 +6,14 @@ use App\Controllers\Admin\AdminController; use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\ResponseInterface; use Psr\Log\LoggerInterface; + +use App\Services\Device\LineService; use App\Services\Device\ServerService; abstract class DeviceController extends AdminController { - private $_serverService = null; + private ?ServerService $_serverService = null; + private ?LineService $_lineService = null; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { parent::initController($request, $response, $logger); @@ -24,6 +27,13 @@ abstract class DeviceController extends AdminController } return $this->_serverService; } + final public function getLineService(): LineService + { + if (!$this->_lineService) { + $this->_lineService = new LineService($this->request); + } + return $this->_lineService; + } //Index,FieldForm관련 protected function getFormFieldOption(string $field, array $options = []): array { @@ -33,6 +43,11 @@ abstract class DeviceController extends AdminController // echo $this->getUserModel()->getLastQuery(); // dd($options); break; + case 'lineinfo_uid': + $options[$field] = $this->getLineService()->getFormFieldOption($field); + // echo $this->getUserModel()->getLastQuery(); + // dd($options); + break; default: $options = parent::getFormFieldOption($field, $options); break; diff --git a/app/Controllers/Admin/Device/IpController.php b/app/Controllers/Admin/Device/IpController.php index ca6cfdf..6307692 100644 --- a/app/Controllers/Admin/Device/IpController.php +++ b/app/Controllers/Admin/Device/IpController.php @@ -35,18 +35,4 @@ class IpController extends DeviceController return $this->_helper; } //Index,FieldForm관련 - protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation - { - switch ($field) { - case 'role': - //아래 Rule Array는 필드명.* checkbox를 사용 - $validation->setRule("{$field}.*", $field, $rule); - break; - default: - $validation = parent::setValidation($validation, $action, $field, $rule); - break; - } - return $validation; - } - //Index,FieldForm관련. } diff --git a/app/Controllers/Admin/Device/LineController.php b/app/Controllers/Admin/Device/LineController.php index 52de010..56306e5 100644 --- a/app/Controllers/Admin/Device/LineController.php +++ b/app/Controllers/Admin/Device/LineController.php @@ -4,14 +4,17 @@ namespace App\Controllers\Admin\Device; use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\ResponseInterface; -use CodeIgniter\Validation\Validation; use Psr\Log\LoggerInterface; +use App\Entities\Device\LineEntity; use App\Helpers\Device\LineHelper; use App\Services\Device\LineService; +use App\Services\Device\IpService; +use App\Entities\Device\IpEntity; class LineController extends DeviceController { + private ?IpService $_ipService = null; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { parent::initController($request, $response, $logger); @@ -34,19 +37,32 @@ class LineController extends DeviceController } return $this->_helper; } - //Index,FieldForm관련 - protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation + final public function getIpService(): IpService { - switch ($field) { - case 'role': - //아래 Rule Array는 필드명.* checkbox를 사용 - $validation->setRule("{$field}.*", $field, $rule); - break; - default: - $validation = parent::setValidation($validation, $action, $field, $rule); - break; + if (!$this->_ipService) { + $this->_ipService = new IpService($this->request); } - return $validation; + return $this->_ipService; + } + //Index,FieldForm관련 + + //생성 + protected function create_process(): LineEntity + { + //Line 등록 + if (!$this->getHelper()->isValidCIDR($this->formDatas['bandwith'])) { + throw new \Exception("{$this->formDatas['bandwith']}는 CIDR 형식에 부합되지 않습니다."); + } + $entity = parent::create_process(); + // //IP 등록 + foreach ($this->getHelper()->cidrToIpRange($this->formDatas['bandwith']) as $ip) { + $temps = []; + $temps['lineinfo_uid'] = $entity->getPK(); + $temps['ip'] = $ip; + $temps['price'] = $this->formDatas['price'] ?? 0; + $temps['status'] = lang("{$this->getIpService()->getClassPath()}.DEFAULTS.status"); + $this->getIpService()->create($temps, new IpEntity()); + } + return $entity; } - //Index,FieldForm관련. } diff --git a/app/Controllers/Admin/Device/RackController.php b/app/Controllers/Admin/Device/RackController.php deleted file mode 100644 index 48ea36d..0000000 --- a/app/Controllers/Admin/Device/RackController.php +++ /dev/null @@ -1,52 +0,0 @@ -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(): RackService - { - if (!$this->_service) { - $this->_service = new RackService($this->request); - } - return $this->_service; - } - public function getHelper(): mixed - { - if (!$this->_helper) { - $this->_helper = new RackHelper($this->request); - } - return $this->_helper; - } - //Index,FieldForm관련 - protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation - { - switch ($field) { - case 'role': - //아래 Rule Array는 필드명.* checkbox를 사용 - $validation->setRule("{$field}.*", $field, $rule); - break; - default: - $validation = parent::setValidation($validation, $action, $field, $rule); - break; - } - return $validation; - } - //Index,FieldForm관련. -} diff --git a/app/Controllers/Admin/Home.php b/app/Controllers/Admin/Home.php index da92965..6f2cf77 100644 --- a/app/Controllers/Admin/Home.php +++ b/app/Controllers/Admin/Home.php @@ -6,6 +6,7 @@ use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\ResponseInterface; use Psr\Log\LoggerInterface; use App\Services\UserService as Service; +use App\Helpers\UserHelper as Helper; class Home extends AdminController { @@ -14,6 +15,7 @@ class Home extends AdminController { parent::initController($request, $response, $logger); $this->title = "관리자페이지 메인"; + $this->helper = $this->getHelper(); } final public function getService(): Service @@ -23,6 +25,13 @@ class Home extends AdminController } return $this->_service; } + public function getHelper(): mixed + { + if (!$this->_helper) { + $this->_helper = new Helper($this->request); + } + return $this->_helper; + } //Index,FieldForm관련 public function getFields(): array diff --git a/app/Controllers/Auth/AuthController.php b/app/Controllers/Auth/AuthController.php index 0c4c81c..9da1aaf 100644 --- a/app/Controllers/Auth/AuthController.php +++ b/app/Controllers/Auth/AuthController.php @@ -47,7 +47,10 @@ abstract class AuthController extends CommonController } return $result; } - + final public function getFields(): array + { + return ['id', 'passwd']; + } //로그인화면 final public function login_form(): RedirectResponse|string { diff --git a/app/Controllers/CommonController.php b/app/Controllers/CommonController.php index 6820a7f..9befd06 100644 --- a/app/Controllers/CommonController.php +++ b/app/Controllers/CommonController.php @@ -191,8 +191,6 @@ abstract class CommonController extends BaseController } protected function create_process(): mixed { - //데이터 검증 - $this->formDatas = $this->doValidate($this->action, $this->fields); return $this->getService()->create($this->formDatas); } final public function create(): RedirectResponse|string @@ -201,6 +199,8 @@ abstract class CommonController extends BaseController try { $this->init(__FUNCTION__); helper(['form']); + //데이터 검증 + $this->formDatas = $this->doValidate($this->action, $this->fields); $this->entity = $this->create_process(); $this->getService()->getModel()->transCommit(); $this->getMyLogService()->save($this->getService(), __FUNCTION__, $this->getMyAuth(), MESSAGES["SUCCESS"]); @@ -230,8 +230,6 @@ abstract class CommonController extends BaseController } protected function modify_process(mixed $uid): mixed { - //데이터 검증 - $this->formDatas = $this->doValidate($this->action, $this->fields); //자신정보정의 $entity = $this->getService()->getEntity($uid); return $this->getService()->modify($entity, $this->formDatas); @@ -243,6 +241,8 @@ abstract class CommonController extends BaseController try { $this->init(__FUNCTION__); helper(['form']); + //데이터 검증 + $this->formDatas = $this->doValidate($this->action, $this->fields); $this->entity = $this->modify_process($uid); $this->getService()->getModel()->transCommit(); $this->getMyLogService()->save($this->getService(), __FUNCTION__, $this->getMyAuth(), MESSAGES["SUCCESS"]); @@ -256,8 +256,6 @@ abstract class CommonController extends BaseController //단일필드작업 protected function toggle_process(mixed $uid): mixed { - //데이터 검증 - $this->formDatas = $this->doValidate($this->action, $this->fields); //자신정보정의 $entity = $this->getService()->getEntity($uid); return $this->getService()->modify($entity, $this->formDatas); @@ -269,6 +267,8 @@ abstract class CommonController extends BaseController try { $this->action = __FUNCTION__; $this->fields = [$field]; + //데이터 검증 + $this->formDatas = $this->doValidate($this->action, $this->fields); $this->entity = $this->toggle_process($uid); $this->getService()->getModel()->transCommit(); $this->getMyLogService()->save($this->getService(), __FUNCTION__, $this->getMyAuth(), MESSAGES["SUCCESS"]); @@ -282,8 +282,6 @@ abstract class CommonController extends BaseController //일괄처리작업 protected function batchjob_process(array $entities): array { - //데이터 검증 - $this->formDatas = $this->doValidate($this->action, $this->fields); $temps = []; foreach ($entities as $entity) { $temps[] = $this->getService()->modify($entity, $this->formDatas); @@ -317,6 +315,8 @@ abstract class CommonController extends BaseController $entity = $this->getService()->getEntity($uid); $entities[] = $entity; } + //데이터 검증 + $this->formDatas = $this->doValidate($this->action, $this->fields); $this->entities = $this->batchjob_process($entities); $this->getService()->getModel()->transCommit(); $this->getMyLogService()->save($this->getService(), __FUNCTION__, $this->getMyAuth(), MESSAGES["SUCCESS"]); @@ -429,23 +429,40 @@ abstract class CommonController extends BaseController //조건절 처리 foreach ($filter_fields as $field) { $this->$field = $this->request->getVar($field); - if (!is_null($this->$field)) { - $this->getService()->getModel()->where($this->getService()->getModel()->getTable() . '.' . $field, $this->$field); + if ($this->$field !== null && $this->$field !== '') { + if ($field === 'role') { + $where = "FIND_IN_SET(" . $this->getService()->getModel()->escape($this->$field) . ", {$this->getService()->getModel()->getTable()}.{$field}) > 0"; + //FIND_IN_SET()은 MySQL 함수이므로 CodeIgniter가 이를 일반 컬럼명으로 착각하고 escape하게 되면 오류가 발생합니다. 따라서 ->where($sql, null, false)로 명시하여 escape를 꺼줘야 정상 작동 + $this->getService()->getModel()->where($where, null, false); + } else { + $this->getService()->getModel()->where("{$this->getService()->getModel()->getTable()}.{$field}", $this->$field); + } } } //검색어 처리 $this->word = $this->request->getVar('word'); - if (!is_null($this->word)) { + if ($this->word !== null && $this->word !== '') { $this->getService()->getModel()->setList_WordFilter($this->word); } //검색일 처리 $this->start = $this->request->getVar('start'); - $this->end = $this->request->getVar('end'); - if ($this->start) { - $this->getService()->getModel()->where($this->getService()->getModel()->getTable() . ".created_at >= '{$this->start} 00:00:00'"); + if ($this->start !== null && $this->start !== '') { + $this->getService()->getModel()->where(sprintf("%s.created_at >= '%s 00:00:00'", $this->getService()->getModel()->getTable(), $this->start)); } - if ($this->end) { - $this->getService()->getModel()->where($this->getService()->getModel()->getTable() . ".created_at <= '{$this->start} 23:59:59'"); + $this->end = $this->request->getVar('end'); + if ($this->end !== null && $this->end !== '') { + $this->getService()->getModel()->where(sprintf("%s.created_at <= '%s 23:59:59'", $this->getService()->getModel()->getTable(), $this->end)); + } + } + final protected function setOrcerByForList() + { + //OrderBy 처리 + $this->order_field = $this->request->getVar('order_field'); + $this->order_value = $this->request->getVar('order_value'); + if ($this->order_field !== null && $this->order_field !== '') { + $this->getService()->getModel()->orderBy(sprintf("%s.%s %s", $this->getService()->getModel()->getTable(), $this->order_field, $this->order_value ?: "DESC")); + } else { + $this->getService()->getModel()->orderBy(sprintf("%s.%s %s", $this->getService()->getModel()->getTable(), $this->getService()->getModel()->getPKField(), "DESC")); } } //PageNation 처리 @@ -483,14 +500,9 @@ abstract class CommonController extends BaseController $this->total_count = intval($this->getService()->getModel()->selectCount('*', 'cnt')->get()->getRow()->cnt); //Pagination 처리 $this->pagination = $this->getPaginationForList(); - //OrderBy 처리 - $this->order_field = $this->request->getVar('order_field'); - $this->order_value = $this->request->getVar('order_value'); - if ($this->order_field && $this->order_value) { - $this->getService()->getModel()->orderBy(sprintf("%s.%s %s", $this->getService()->getModel()->getTable(), $this->order_field, $this->order_value)); - } else { - $this->getService()->getModel()->orderBy(sprintf("%s.%s %s", $this->getService()->getModel()->getTable(), $this->getService()->getModel()->getPKField(), "DESC")); - } + //조건절 , OrcerBy , Limit 처리 + $this->setConditionForList($this->filter_fields); + $this->setOrcerByForList(); $this->getService()->getModel()->limit($this->per_page); $this->getService()->getModel()->offset(($this->page - 1) * $this->per_page); return $this->getService()->getEntities(); diff --git a/app/Database/erp2.vuerd.json b/app/Database/erp2.vuerd.json index 95ce8c1..3f5231c 100644 --- a/app/Database/erp2.vuerd.json +++ b/app/Database/erp2.vuerd.json @@ -4,10 +4,10 @@ "settings": { "width": 4000, "height": 4000, - "scrollTop": -445.2193, - "scrollLeft": -1050.102, + "scrollTop": -1975.1577, + "scrollLeft": -1561.9689, "zoomLevel": 0.79, - "show": 495, + "show": 511, "database": 4, "databaseName": "", "canvasType": "ERD", @@ -40,7 +40,6 @@ "ZMGIWLFEswObjH2Sx0NlW", "doERb3lIVeBW_D0NtNYX8", "ZLEpY5EjuZV21718zf-Y1", - "koyEKtRkVwNF0GzL7x9EJ", "kc1EFvFhlBSc0B0bDgX28", "R4reSshLxH3DQW6fUfSPa", "sgFc3Tg9sWiMm4hsEwKm9", @@ -48,13 +47,16 @@ "5KwHMmZppj-7TjRC_xQ54", "3tdV9J9ns8BWCGQeCXITI", "F82-EcEv3fB4uzGzPrPla", - "ttG9p8-yD8NJ7mGo3WNmM", "jO40Ej5EXImXnadoJo9bn", "gsa0XtQZQgrJ8ZXy8VQVg", "h2unshrMDFXEq0pYzkkj1", "5AUwJum9FKPCoYRMBhLnF", "xrgAG9Zc_whfxTeGQ2fqx", - "CYHveKA03TPJiz6X5wq2L" + "CYHveKA03TPJiz6X5wq2L", + "fCwd8aDYfxPrR9RVbsNPS", + "RMhrLs7bOaopKmKt9YKHQ", + "gYqhvNLZjWrQk8LNKH3il", + "O0Q0QEgi652Vd4dZ9tccI" ], "relationshipIds": [ "gAVYXWnBSnCw-0ieO4Mil", @@ -75,14 +77,18 @@ "95uRv2fz3rssNbkyuzkLh", "Jj6R_4lq6u3hMzLKjgqc9", "hHtOx5fLjgkRN3SIPGLfw", - "xoiTCIGWOuuUaMQlCDnhd", - "6DEBBDnRPVRt5gU5AuUcU", "4BDt10BeeryoN0ZdEHIui", "KtdVJCYZ3DMVnPnFGKi3P", "vm1jrQz9O3U0SgH8t06u-", "AH1dyESfueUlhcoiU6KsQ", "QvPqTtlLZg4ZVLrIjQGT4", - "zJIufcYlZwkLRJbg3kScu" + "zJIufcYlZwkLRJbg3kScu", + "9R2rjPFcsYMu-1-2X7ns9", + "C3aumd6Ayn4nTxCSyQNsn", + "H3ufP8FbEnPlyFiHAggt0", + "hEYDIiEFtsN5gxqTmDYC7", + "9RdCu7ZeEew2uEQd55LeS", + "CzqHK01dxGEXEEcXqTeGZ" ], "indexIds": [], "memoIds": [] @@ -262,8 +268,8 @@ }, "z6WAw_7GnarTYkag4Lcsg": { "id": "z6WAw_7GnarTYkag4Lcsg", - "name": "partinfo", - "comment": "장비 부품 정보", + "name": "raminfo", + "comment": "ram 부품 정보", "columnIds": [ "7fB6MgwIX6jMpD6d2Sq7k", "ifLOIjTEKNJytRfXVcKLh", @@ -289,15 +295,15 @@ "gQUT2v0Gg59R1SfKMhry3" ], "ui": { - "x": 2196.1751, - "y": 2022.7381, + "x": 2197.4409, + "y": 2293.6242, "zIndex": 2, "widthName": 60, - "widthComment": 81, + "widthComment": 77, "color": "" }, "meta": { - "updateAt": 1746606938182, + "updateAt": 1746783294854, "createAt": 1745819764138 } }, @@ -308,17 +314,22 @@ "columnIds": [ "iylHjtnqU_oLEYolQkQIM", "pDILaJt_-vUo0fH_c6t2O", + "7oTkP7etYsNgI6J6xQZVG", "5kPFX9LYoh8iinAEpt3lm", + "qHwMDFU4dV5frDXsuW445", "dLOesaVz9GnwntiIyvxwW", "NNGQ-RewVIApA1EISBQRS" ], "seqColumnIds": [ "iylHjtnqU_oLEYolQkQIM", "pDILaJt_-vUo0fH_c6t2O", + "7oTkP7etYsNgI6J6xQZVG", "5kPFX9LYoh8iinAEpt3lm", + "qHwMDFU4dV5frDXsuW445", "dLOesaVz9GnwntiIyvxwW", "wQnQfh-JJI9BSQGaahMFu", - "NNGQ-RewVIApA1EISBQRS" + "NNGQ-RewVIApA1EISBQRS", + "D0lTirj9_pycie0SwZlUG" ], "ui": { "x": 3153.684, @@ -329,7 +340,7 @@ "color": "" }, "meta": { - "updateAt": 1746605144322, + "updateAt": 1746783677668, "createAt": 1745819764138 } }, @@ -359,15 +370,15 @@ "8ZPjmeG3NoO6C0icGibJP" ], "ui": { - "x": 2195.9314, - "y": 2346.4197, + "x": 2194.6655, + "y": 2857.8121, "zIndex": 2, "widthName": 68, "widthComment": 89, "color": "" }, "meta": { - "updateAt": 1746576355059, + "updateAt": 1746783277722, "createAt": 1745819764138 } }, @@ -382,6 +393,7 @@ "fiQBfXvw-4tj42PuGiDAk", "ehNv0f07ci1ARnkTSDG6J", "PHhRG4nKR6k_CQF9B8xS1", + "wb9_XvPZHAOrpH-s0B0YN", "ltPYBs_iNuZJM6wTnK0H-", "liJON6hIBB9aS-pQgM0Q6" ], @@ -395,6 +407,7 @@ "ehNv0f07ci1ARnkTSDG6J", "xaUC3GLta1iHmo1YQ-qDo", "PHhRG4nKR6k_CQF9B8xS1", + "wb9_XvPZHAOrpH-s0B0YN", "ltPYBs_iNuZJM6wTnK0H-", "liJON6hIBB9aS-pQgM0Q6" ], @@ -407,7 +420,7 @@ "color": "" }, "meta": { - "updateAt": 1746609540830, + "updateAt": 1746769052614, "createAt": 1745819764138 } }, @@ -418,7 +431,6 @@ "columnIds": [ "Id0h8QbOdlhPj9P1zTm5o", "f7_MGvRjkwL1xkCWrAgDR", - "lhQ3PpSdLxVcH5LvI4DNx", "6qd6rcTkraI_AbHcVbp6T", "0ONL4QLQRyZ32MBJ7TN7u", "nDoaVrEhO8hLuHbgZV4il", @@ -447,7 +459,7 @@ "color": "" }, "meta": { - "updateAt": 1746607693617, + "updateAt": 1746773436425, "createAt": 1745819764138 } }, @@ -603,8 +615,8 @@ }, "aKTVtMqmPG7TJIsmxeVts": { "id": "aKTVtMqmPG7TJIsmxeVts", - "name": "serviceinfos_partinfos", - "comment": "서비스-장비 부품 연결", + "name": "serviceinfos_raminfos", + "comment": "서비스_ram 부품 연결", "columnIds": [ "6NfFu4xWPfE3dgKI5J2hR", "ywDnRAz0bbHUceo-EmLgZ", @@ -623,15 +635,15 @@ "EJHor6ZpIKpTwVp6raA_S" ], "ui": { - "x": 1175.8911, - "y": 1889.6665, + "x": 1168.1696, + "y": 2069.3949, "zIndex": 2, - "widthName": 116, - "widthComment": 121, + "widthName": 115, + "widthComment": 118, "color": "" }, "meta": { - "updateAt": 1746604913421, + "updateAt": 1746783846007, "createAt": 1745819764139 } }, @@ -657,15 +669,15 @@ "3v3JWUBHg3mAb4HmHPUP-" ], "ui": { - "x": 1173.8733, - "y": 2195.3876, + "x": 1181.4684, + "y": 2637.1597, "zIndex": 2, "widthName": 139, "widthComment": 130, "color": "" }, "meta": { - "updateAt": 1745821583978, + "updateAt": 1746783858479, "createAt": 1745819764139 } }, @@ -954,15 +966,15 @@ "2rgItDTiBojLhyoJ4J-z-" ], "ui": { - "x": 2194.7921, - "y": 2645.4029, + "x": 2192.2604, + "y": 3123.884, "zIndex": 401, "widthName": 65, "widthComment": 98, "color": "" }, "meta": { - "updateAt": 1746607895517, + "updateAt": 1746783275559, "createAt": 1745916349284 } }, @@ -987,15 +999,15 @@ "RZJESxJSfjv0xxD8DYnZy" ], "ui": { - "x": 1179.5218, - "y": 2475.6096, + "x": 1168.1295, + "y": 2928.7742, "zIndex": 428, "widthName": 137, "widthComment": 142, "color": "" }, "meta": { - "updateAt": 1746604426902, + "updateAt": 1746783341493, "createAt": 1746576203015 } }, @@ -1017,6 +1029,187 @@ "updateAt": 1746596045428, "createAt": 1746596035962 } + }, + "fCwd8aDYfxPrR9RVbsNPS": { + "id": "fCwd8aDYfxPrR9RVbsNPS", + "name": "diskinfo", + "comment": "disk 부품 정보", + "columnIds": [ + "q8oHp8wqEn6w_wOyWwvPo", + "1YL6PuBFTgDIw8KbG4Lgl", + "V0MKwLG0NLp7IhyLjcgfz", + "BE27xpoGp8kRkIHqEFNnc", + "MGi64TXpUkYL7U5iHOXVV", + "H_1vMpmSnY2T83GZcBrXm", + "-fdjpSFqLU0ltYuj3r6bi", + "280CG3HIAYNudV5QG4X7P", + "6cXp-rd8H2R4gxjOfTeTc" + ], + "seqColumnIds": [ + "q8oHp8wqEn6w_wOyWwvPo", + "1YL6PuBFTgDIw8KbG4Lgl", + "V0MKwLG0NLp7IhyLjcgfz", + "BE27xpoGp8kRkIHqEFNnc", + "MGi64TXpUkYL7U5iHOXVV", + "H_1vMpmSnY2T83GZcBrXm", + "-fdjpSFqLU0ltYuj3r6bi", + "280CG3HIAYNudV5QG4X7P", + "6cXp-rd8H2R4gxjOfTeTc" + ], + "ui": { + "x": 2196.3317, + "y": 2577.4928, + "zIndex": 443, + "widthName": 60, + "widthComment": 78, + "color": "" + }, + "meta": { + "updateAt": 1746783289610, + "createAt": 1746783196108 + } + }, + "RMhrLs7bOaopKmKt9YKHQ": { + "id": "RMhrLs7bOaopKmKt9YKHQ", + "name": "cpuinfo", + "comment": "CPU 부품 정보", + "columnIds": [ + "Jh6e_-9QYe1Tqve0PE3kT", + "DC7TvFFpBT7vY0UKKHt-W", + "kXkNsvdbXOcI-DslovgVa", + "cg9Jr22ykbciJUTruf5fu", + "dr0UoY8ebsS-TjcPyP4is", + "wx8zTFviA4I8YQnn-MFpW", + "3nwgqrQd_qDGdg6Fe3kEp", + "mwVYv9PaJFpoxYvTRJ223" + ], + "seqColumnIds": [ + "roON46ztrEREN9ysNVyCK", + "Jh6e_-9QYe1Tqve0PE3kT", + "DC7TvFFpBT7vY0UKKHt-W", + "kXkNsvdbXOcI-DslovgVa", + "cg9Jr22ykbciJUTruf5fu", + "dr0UoY8ebsS-TjcPyP4is", + "wx8zTFviA4I8YQnn-MFpW", + "3nwgqrQd_qDGdg6Fe3kEp", + "mwVYv9PaJFpoxYvTRJ223" + ], + "ui": { + "x": 2197.5975, + "y": 2012.9361, + "zIndex": 495, + "widthName": 60, + "widthComment": 79, + "color": "" + }, + "meta": { + "updateAt": 1746783580549, + "createAt": 1746783410914 + } + }, + "6NAcym8fS-wrzXVXAfM2h": { + "id": "6NAcym8fS-wrzXVXAfM2h", + "name": "", + "comment": "", + "columnIds": [], + "seqColumnIds": [], + "ui": { + "x": 2367.2177215189868, + "y": 2163.568734177215, + "zIndex": 541, + "widthName": 60, + "widthComment": 60, + "color": "" + }, + "meta": { + "updateAt": 1746783655080, + "createAt": 1746783655080 + } + }, + "gYqhvNLZjWrQk8LNKH3il": { + "id": "gYqhvNLZjWrQk8LNKH3il", + "name": "serviceinfos_cpuinfos", + "comment": "서비스_cpu 부품 연결", + "columnIds": [ + "TQwAGrd3jBQOImSKgfAZb", + "YKXKsIEJE-vmIMQd5ZUMC", + "ox7xu7XaYBZyB2alu2HcK", + "lc-qccQ7orROrFjeexBjR", + "2G6G5tqs-9wyT0i7RaFtL", + "VzuPW7xCYQCRJ5S3m5qU1" + ], + "seqColumnIds": [ + "TQwAGrd3jBQOImSKgfAZb", + "YKXKsIEJE-vmIMQd5ZUMC", + "ox7xu7XaYBZyB2alu2HcK", + "lc-qccQ7orROrFjeexBjR", + "2G6G5tqs-9wyT0i7RaFtL", + "VzuPW7xCYQCRJ5S3m5qU1" + ], + "ui": { + "x": 1169.5808, + "y": 1826.7818, + "zIndex": 547, + "widthName": 114, + "widthComment": 117, + "color": "" + }, + "meta": { + "updateAt": 1746783838373, + "createAt": 1746783705263 + } + }, + "O0Q0QEgi652Vd4dZ9tccI": { + "id": "O0Q0QEgi652Vd4dZ9tccI", + "name": "serviceinfos_diskinfos", + "comment": "서비스_disk 부품 연결", + "columnIds": [ + "i02dSH4PObKOQ-GK1UpzI", + "KwM9EZ1tNuO7Pb_WD389k", + "HVYYqMWNfn6FArWDYKtbD", + "Mx8dX7QrOwdvvcxUia9Lz", + "vN_rV7lTMW6ng8Ao6E2ne", + "wmXNFR-tG6TMhBZH9usq2" + ], + "seqColumnIds": [ + "i02dSH4PObKOQ-GK1UpzI", + "KwM9EZ1tNuO7Pb_WD389k", + "HVYYqMWNfn6FArWDYKtbD", + "Mx8dX7QrOwdvvcxUia9Lz", + "vN_rV7lTMW6ng8Ao6E2ne", + "wmXNFR-tG6TMhBZH9usq2" + ], + "ui": { + "x": 1168.3151, + "y": 2302.7313, + "zIndex": 592, + "widthName": 115, + "widthComment": 119, + "color": "" + }, + "meta": { + "updateAt": 1746783978924, + "createAt": 1746783866428 + } + }, + "uRkAWGAaXXf5oxuIO0YiN": { + "id": "uRkAWGAaXXf5oxuIO0YiN", + "name": "", + "comment": "", + "columnIds": [], + "seqColumnIds": [], + "ui": { + "x": 512.6188607594938, + "y": 1144.5034177215189, + "zIndex": 613, + "widthName": 60, + "widthComment": 60, + "color": "" + }, + "meta": { + "updateAt": 1746783939405, + "createAt": 1746783939405 + } } }, "tableColumnEntities": { @@ -1826,7 +2019,7 @@ "name": "type", "comment": "", "dataType": "VARCHAR(20)", - "default": "memory", + "default": "'cpu'", "options": 8, "ui": { "keys": 0, @@ -1836,7 +2029,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746576494397, + "updateAt": 1746764551033, "createAt": 1745819764138 } }, @@ -2023,20 +2216,20 @@ "5kPFX9LYoh8iinAEpt3lm": { "id": "5kPFX9LYoh8iinAEpt3lm", "tableId": "IhXnqMFBU_GmCvISNyaKj", - "name": "serverpartinfo_uid", + "name": "raminfo_uid", "comment": "", "dataType": "INT", "default": "", "options": 8, "ui": { "keys": 2, - "widthName": 97, + "widthName": 65, "widthComment": 60, "widthDataType": 60, "widthDefault": 60 }, "meta": { - "updateAt": 1745915836226, + "updateAt": 1746783399667, "createAt": 1745819764138 } }, @@ -2286,7 +2479,7 @@ "name": "type", "comment": "회선구분", "dataType": "VARCHAR(20)", - "default": "general", + "default": "'general'", "options": 8, "ui": { "keys": 0, @@ -2296,7 +2489,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746595543973, + "updateAt": 1746764496647, "createAt": 1745819764138 } }, @@ -2356,7 +2549,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1745819764138, + "updateAt": 1746769042882, "createAt": 1745819764138 } }, @@ -2416,7 +2609,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1745819764138, + "updateAt": 1746764392703, "createAt": 1745819764138 } }, @@ -2426,7 +2619,7 @@ "name": "type", "comment": "", "dataType": "VARCHAR(20)", - "default": "1u", + "default": "'1u'", "options": 0, "ui": { "keys": 0, @@ -2436,7 +2629,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746575941359, + "updateAt": 1746764481688, "createAt": 1745819764139 } }, @@ -3083,20 +3276,20 @@ "sn3p4UDiY4D9XJS4odHbP": { "id": "sn3p4UDiY4D9XJS4odHbP", "tableId": "aKTVtMqmPG7TJIsmxeVts", - "name": "serverpartinfo_uid", + "name": "raminfo_uid", "comment": "", "dataType": "INT", "default": "", "options": 8, "ui": { "keys": 2, - "widthName": 97, + "widthName": 65, "widthComment": 60, "widthDataType": 60, "widthDefault": 60 }, "meta": { - "updateAt": 1745915744882, + "updateAt": 1746783329455, "createAt": 1745819764139 } }, @@ -4007,7 +4200,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 10, + "options": 11, "ui": { "keys": 1, "widthName": 60, @@ -4016,7 +4209,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1745820679282, + "updateAt": 1746764385134, "createAt": 1745820637059 } }, @@ -4227,7 +4420,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 10, + "options": 11, "ui": { "keys": 1, "widthName": 60, @@ -4236,7 +4429,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1745821492106, + "updateAt": 1746764367462, "createAt": 1745821489011 } }, @@ -4249,7 +4442,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 80, "widthComment": 60, "widthDataType": 60, @@ -4269,7 +4462,7 @@ "default": "", "options": 8, "ui": { - "keys": 2, + "keys": 0, "widthName": 66, "widthComment": 60, "widthDataType": 60, @@ -4367,7 +4560,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 10, + "options": 11, "ui": { "keys": 1, "widthName": 60, @@ -4376,7 +4569,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1745914921039, + "updateAt": 1746764362759, "createAt": 1745914874024 } }, @@ -4647,7 +4840,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 10, + "options": 11, "ui": { "keys": 1, "widthName": 60, @@ -4656,7 +4849,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746576667674, + "updateAt": 1746764378743, "createAt": 1745916389386 } }, @@ -5027,7 +5220,7 @@ "comment": "", "dataType": "INT", "default": "", - "options": 10, + "options": 11, "ui": { "keys": 1, "widthName": 60, @@ -5036,7 +5229,7 @@ "widthDefault": 60 }, "meta": { - "updateAt": 1746576776181, + "updateAt": 1746764375735, "createAt": 1746576242360 } }, @@ -5599,6 +5792,686 @@ "updateAt": 1746609918332, "createAt": 1746609884642 } + }, + "wb9_XvPZHAOrpH-s0B0YN": { + "id": "wb9_XvPZHAOrpH-s0B0YN", + "tableId": "doERb3lIVeBW_D0NtNYX8", + "name": "opening_at", + "comment": "개통일", + "dataType": "TIMESTAMP", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 61, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746769097515, + "createAt": 1746769048830 + } + }, + "q8oHp8wqEn6w_wOyWwvPo": { + "id": "q8oHp8wqEn6w_wOyWwvPo", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783271084, + "createAt": 1746783266930 + } + }, + "1YL6PuBFTgDIw8KbG4Lgl": { + "id": "1YL6PuBFTgDIw8KbG4Lgl", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'cpu'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266930, + "createAt": 1746783266930 + } + }, + "V0MKwLG0NLp7IhyLjcgfz": { + "id": "V0MKwLG0NLp7IhyLjcgfz", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "model", + "comment": "", + "dataType": "VARCHAR(50)", + "default": "", + "options": 12, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266930, + "createAt": 1746783266930 + } + }, + "BE27xpoGp8kRkIHqEFNnc": { + "id": "BE27xpoGp8kRkIHqEFNnc", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "capacity", + "comment": "용량 (GB)", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "MGi64TXpUkYL7U5iHOXVV": { + "id": "MGi64TXpUkYL7U5iHOXVV", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "price", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "H_1vMpmSnY2T83GZcBrXm": { + "id": "H_1vMpmSnY2T83GZcBrXm", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "description", + "comment": "", + "dataType": "TEXT", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 61, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "-fdjpSFqLU0ltYuj3r6bi": { + "id": "-fdjpSFqLU0ltYuj3r6bi", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "status", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'use'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "280CG3HIAYNudV5QG4X7P": { + "id": "280CG3HIAYNudV5QG4X7P", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "updated_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 62, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "6cXp-rd8H2R4gxjOfTeTc": { + "id": "6cXp-rd8H2R4gxjOfTeTc", + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1746783266931, + "createAt": 1746783266931 + } + }, + "roON46ztrEREN9ysNVyCK": { + "id": "roON46ztrEREN9ysNVyCK", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'cpu'", + "options": 10, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783530740, + "createAt": 1746783443622 + } + }, + "DC7TvFFpBT7vY0UKKHt-W": { + "id": "DC7TvFFpBT7vY0UKKHt-W", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "model", + "comment": "", + "dataType": "VARCHAR(50)", + "default": "", + "options": 12, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "kXkNsvdbXOcI-DslovgVa": { + "id": "kXkNsvdbXOcI-DslovgVa", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "capacity", + "comment": "속도(HZ)", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783477990, + "createAt": 1746783443622 + } + }, + "cg9Jr22ykbciJUTruf5fu": { + "id": "cg9Jr22ykbciJUTruf5fu", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "price", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "dr0UoY8ebsS-TjcPyP4is": { + "id": "dr0UoY8ebsS-TjcPyP4is", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "description", + "comment": "", + "dataType": "TEXT", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 61, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "wx8zTFviA4I8YQnn-MFpW": { + "id": "wx8zTFviA4I8YQnn-MFpW", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "status", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'use'", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "3nwgqrQd_qDGdg6Fe3kEp": { + "id": "3nwgqrQd_qDGdg6Fe3kEp", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "updated_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "", + "options": 0, + "ui": { + "keys": 0, + "widthName": 62, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "mwVYv9PaJFpoxYvTRJ223": { + "id": "mwVYv9PaJFpoxYvTRJ223", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1746783443622, + "createAt": 1746783443622 + } + }, + "Jh6e_-9QYe1Tqve0PE3kT": { + "id": "Jh6e_-9QYe1Tqve0PE3kT", + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783593438, + "createAt": 1746783511284 + } + }, + "D0lTirj9_pycie0SwZlUG": { + "id": "D0lTirj9_pycie0SwZlUG", + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "name": "", + "comment": "", + "dataType": "", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783513869, + "createAt": 1746783513869 + } + }, + "7oTkP7etYsNgI6J6xQZVG": { + "id": "7oTkP7etYsNgI6J6xQZVG", + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "name": "cpuinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 64, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783639303, + "createAt": 1746783631248 + } + }, + "qHwMDFU4dV5frDXsuW445": { + "id": "qHwMDFU4dV5frDXsuW445", + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "name": "diskinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 65, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783672462, + "createAt": 1746783665163 + } + }, + "TQwAGrd3jBQOImSKgfAZb": { + "id": "TQwAGrd3jBQOImSKgfAZb", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783766841, + "createAt": 1746783760395 + } + }, + "lc-qccQ7orROrFjeexBjR": { + "id": "lc-qccQ7orROrFjeexBjR", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "payment_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 0, + "ui": { + "keys": 0, + "widthName": 77, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783760395, + "createAt": 1746783760395 + } + }, + "2G6G5tqs-9wyT0i7RaFtL": { + "id": "2G6G5tqs-9wyT0i7RaFtL", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 0, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783760395, + "createAt": 1746783760395 + } + }, + "VzuPW7xCYQCRJ5S3m5qU1": { + "id": "VzuPW7xCYQCRJ5S3m5qU1", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1746783760395, + "createAt": 1746783760395 + } + }, + "YKXKsIEJE-vmIMQd5ZUMC": { + "id": "YKXKsIEJE-vmIMQd5ZUMC", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783800416, + "createAt": 1746783790047 + } + }, + "ox7xu7XaYBZyB2alu2HcK": { + "id": "ox7xu7XaYBZyB2alu2HcK", + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "name": "cpuinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 64, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783827263, + "createAt": 1746783814940 + } + }, + "i02dSH4PObKOQ-GK1UpzI": { + "id": "i02dSH4PObKOQ-GK1UpzI", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783921462, + "createAt": 1746783916885 + } + }, + "Mx8dX7QrOwdvvcxUia9Lz": { + "id": "Mx8dX7QrOwdvvcxUia9Lz", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "payment_type", + "comment": "", + "dataType": "VARCHAR(20)", + "default": "'month'", + "options": 0, + "ui": { + "keys": 0, + "widthName": 77, + "widthComment": 60, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783916885, + "createAt": 1746783916885 + } + }, + "vN_rV7lTMW6ng8Ao6E2ne": { + "id": "vN_rV7lTMW6ng8Ao6E2ne", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "amount", + "comment": "", + "dataType": "INT", + "default": "0", + "options": 0, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783916885, + "createAt": 1746783916885 + } + }, + "wmXNFR-tG6TMhBZH9usq2": { + "id": "wmXNFR-tG6TMhBZH9usq2", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1746783916885, + "createAt": 1746783916885 + } + }, + "KwM9EZ1tNuO7Pb_WD389k": { + "id": "KwM9EZ1tNuO7Pb_WD389k", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "serviceinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 80, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783992419, + "createAt": 1746783952690 + } + }, + "HVYYqMWNfn6FArWDYKtbD": { + "id": "HVYYqMWNfn6FArWDYKtbD", + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "name": "diskinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 65, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1746783988130, + "createAt": 1746783975606 + } } }, "relationshipEntities": { @@ -5612,7 +6485,7 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 650.5947, + "x": 673.5947, "y": 377.3022666666667, "direction": 2 }, @@ -5640,7 +6513,7 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2692.7435, + "x": 2715.7435, "y": 1927.2319, "direction": 2 }, @@ -5650,7 +6523,7 @@ "pDILaJt_-vUo0fH_c6t2O" ], "x": 3153.684, - "y": 2313.345233333333, + "y": 2306.4119, "direction": 1 }, "meta": { @@ -5668,8 +6541,8 @@ "columnIds": [ "7fB6MgwIX6jMpD6d2Sq7k" ], - "x": 2670.1751, - "y": 2158.7381, + "x": 2694.4409, + "y": 2429.6242, "direction": 2 }, "end": { @@ -5678,7 +6551,7 @@ "5kPFX9LYoh8iinAEpt3lm" ], "x": 3153.684, - "y": 2372.0118999999995, + "y": 2396.0119000000004, "direction": 1 }, "meta": { @@ -5724,7 +6597,7 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 396.5947, + "x": 408.0947, "y": 430.6356, "direction": 8 }, @@ -5733,7 +6606,7 @@ "columnIds": [ "sscrxOdwLlx94tx1j_MrH" ], - "x": 416.42719999999997, + "x": 427.92719999999997, "y": 824.4514, "direction": 4 }, @@ -5752,7 +6625,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 251.4272, + "x": 220.72719999999998, "y": 1144.4514, "direction": 8 }, @@ -5761,7 +6634,7 @@ "columnIds": [ "bEnLVhafLMHZluEaYba4n" ], - "x": 444.6454, + "x": 456.1454, "y": 1748.7777, "direction": 4 }, @@ -5780,8 +6653,8 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 663.9272, - "y": 1048.4514, + "x": 686.9272, + "y": 1024.4514, "direction": 2 }, "end": { @@ -5817,7 +6690,7 @@ "columnIds": [ "uNqzMzAALwe_V_QA41OFW" ], - "x": 1660.3116, + "x": 1683.3116, "y": 1691.8223, "direction": 2 }, @@ -5836,17 +6709,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 663.9272, - "y": 1112.4514, - "direction": 2 + "x": 427.92719999999997, + "y": 1144.4514, + "direction": 8 }, "end": { "tableId": "aKTVtMqmPG7TJIsmxeVts", "columnIds": [ "ywDnRAz0bbHUceo-EmLgZ" ], - "x": 1175.8911, - "y": 1989.6665, + "x": 1168.1696, + "y": 2169.3949, "direction": 1 }, "meta": { @@ -5864,8 +6737,8 @@ "columnIds": [ "7fB6MgwIX6jMpD6d2Sq7k" ], - "x": 2196.1751, - "y": 2158.7381, + "x": 2197.4409, + "y": 2429.6242, "direction": 1 }, "end": { @@ -5873,8 +6746,8 @@ "columnIds": [ "sn3p4UDiY4D9XJS4odHbP" ], - "x": 1684.8911, - "y": 1989.6665, + "x": 1683.1696, + "y": 2169.3949, "direction": 2 }, "meta": { @@ -5892,7 +6765,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 416.42719999999997, + "x": 635.1272, "y": 1144.4514, "direction": 8 }, @@ -5901,8 +6774,8 @@ "columnIds": [ "CgGKx59wNvLpWcoBrEuvK" ], - "x": 1173.8733, - "y": 2295.3876, + "x": 1181.4684, + "y": 2737.1597, "direction": 1 }, "meta": { @@ -5920,8 +6793,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 2195.9314, - "y": 2470.4197, + "x": 2194.6655, + "y": 2981.8121, "direction": 1 }, "end": { @@ -5929,8 +6802,8 @@ "columnIds": [ "AKpf8UbHiwRJll36PQR6f" ], - "x": 1674.8733, - "y": 2295.3876, + "x": 1705.4684, + "y": 2737.1597, "direction": 2 }, "meta": { @@ -5948,8 +6821,8 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 663.9272, - "y": 984.4514, + "x": 686.9272, + "y": 944.4514, "direction": 2 }, "end": { @@ -5975,7 +6848,7 @@ "tableId": "ZLEpY5EjuZV21718zf-Y1", "columnIds": [], "x": 2192.6819, - "y": 1539.3551, + "y": 1527.3551, "direction": 1 }, "end": { @@ -5983,7 +6856,7 @@ "columnIds": [ "fdfaSp8HaDoxD96LL1tX4" ], - "x": 1662.0737, + "x": 1685.0737, "y": 1456.6502, "direction": 2 }, @@ -6002,8 +6875,8 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 663.9272, - "y": 920.4514, + "x": 686.9272, + "y": 864.4514, "direction": 2 }, "end": { @@ -6031,7 +6904,7 @@ "7B0zaLoZnOoMNW8OHZlrQ" ], "x": 2193.1161, - "y": 1195.4117, + "y": 1207.4117, "direction": 1 }, "end": { @@ -6039,7 +6912,7 @@ "columnIds": [ "dDoAacc03mr5Qr0bIwlN6" ], - "x": 1659.9223, + "x": 1682.9223, "y": 1213.6482, "direction": 2 }, @@ -6058,7 +6931,7 @@ "columnIds": [ "mfHtgzc_Aeocr6xkgwYWh" ], - "x": 673.2192, + "x": 696.2192, "y": 2991.5555, "direction": 2 }, @@ -6086,7 +6959,7 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2692.7435, + "x": 2715.7435, "y": 1779.2319, "direction": 2 }, @@ -6114,8 +6987,8 @@ "columnIds": [ "Id0h8QbOdlhPj9P1zTm5o" ], - "x": 2676.6819, - "y": 1539.3551, + "x": 2690.6819, + "y": 1527.3551, "direction": 2 }, "end": { @@ -6132,62 +7005,6 @@ "createAt": 1745820911647 } }, - "xoiTCIGWOuuUaMQlCDnhd": { - "id": "xoiTCIGWOuuUaMQlCDnhd", - "identification": false, - "relationshipType": 16, - "startRelationshipType": 2, - "start": { - "tableId": "kc1EFvFhlBSc0B0bDgX28", - "columnIds": [ - "nb5CGzskl3_LIRA0yyede" - ], - "x": 663.9272, - "y": 856.4514, - "direction": 2 - }, - "end": { - "tableId": "ttG9p8-yD8NJ7mGo3WNmM", - "columnIds": [ - "JNQ2Viala7U_sALVNvoTK" - ], - "x": 1164.6266, - "y": 965.8292, - "direction": 1 - }, - "meta": { - "updateAt": 1745821529375, - "createAt": 1745821529375 - } - }, - "6DEBBDnRPVRt5gU5AuUcU": { - "id": "6DEBBDnRPVRt5gU5AuUcU", - "identification": false, - "relationshipType": 16, - "startRelationshipType": 2, - "start": { - "tableId": "koyEKtRkVwNF0GzL7x9EJ", - "columnIds": [ - "kfY2wrPM9lt3o_CUkvoak" - ], - "x": 2193.0929, - "y": 811.7973, - "direction": 1 - }, - "end": { - "tableId": "ttG9p8-yD8NJ7mGo3WNmM", - "columnIds": [ - "gn7SpOC02ZjT2ajroWZ9Z" - ], - "x": 1656.6266, - "y": 965.8292, - "direction": 2 - }, - "meta": { - "updateAt": 1745821546633, - "createAt": 1745821546633 - } - }, "4BDt10BeeryoN0ZdEHIui": { "id": "4BDt10BeeryoN0ZdEHIui", "identification": false, @@ -6198,7 +7015,7 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 650.5947, + "x": 673.5947, "y": 163.96893333333333, "direction": 2 }, @@ -6226,7 +7043,7 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 650.5947, + "x": 673.5947, "y": 270.6356, "direction": 2 }, @@ -6254,7 +7071,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 581.4272, + "x": 324.32719999999995, "y": 1144.4514, "direction": 8 }, @@ -6263,8 +7080,8 @@ "columnIds": [ "RtHk4GL4mwwGvwZ0UAoXQ" ], - "x": 1179.5218, - "y": 2575.6096, + "x": 1168.1295, + "y": 3028.7742, "direction": 1 }, "meta": { @@ -6282,8 +7099,8 @@ "columnIds": [ "7B0zaLoZnOoMNW8OHZlrQ" ], - "x": 2433.1161, - "y": 1319.4117, + "x": 2444.6161, + "y": 1343.4117, "direction": 8 }, "end": { @@ -6291,7 +7108,7 @@ "columnIds": [ "f7_MGvRjkwL1xkCWrAgDR" ], - "x": 2434.6819, + "x": 2441.6819, "y": 1415.3551, "direction": 4 }, @@ -6366,8 +7183,8 @@ "columnIds": [ "r7fMKgeUcNq4FhYZPN3h8" ], - "x": 2194.7921, - "y": 2781.4029, + "x": 2192.2604, + "y": 3259.884, "direction": 1 }, "end": { @@ -6375,8 +7192,8 @@ "columnIds": [ "2DXZGT0BJwjeij0IKXFa1" ], - "x": 1678.5218, - "y": 2575.6096, + "x": 1690.1295, + "y": 3028.7742, "direction": 2 }, "meta": { @@ -6394,8 +7211,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 2669.9314, - "y": 2470.4197, + "x": 2691.6655, + "y": 2981.8121, "direction": 2 }, "end": { @@ -6404,2059 +7221,213 @@ "dLOesaVz9GnwntiIyvxwW" ], "x": 3153.684, - "y": 2430.678566666666, + "y": 2485.611900000001, "direction": 1 }, "meta": { "updateAt": 1746605122397, "createAt": 1746605122397 } + }, + "bjgW7pAqSUOi68Ah2H-ua": { + "id": "bjgW7pAqSUOi68Ah2H-ua", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "columnIds": [ + "Jh6e_-9QYe1Tqve0PE3kT" + ], + "x": 2694.5975, + "y": 2155.2651, + "direction": 2 + }, + "end": { + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "columnIds": [ + "D0lTirj9_pycie0SwZlUG" + ], + "x": 3153.684, + "y": 2359.0119, + "direction": 1 + }, + "meta": { + "updateAt": 1746783513870, + "createAt": 1746783513870 + } + }, + "9R2rjPFcsYMu-1-2X7ns9": { + "id": "9R2rjPFcsYMu-1-2X7ns9", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "columnIds": [ + "Jh6e_-9QYe1Tqve0PE3kT" + ], + "x": 2694.5975, + "y": 2136.9361, + "direction": 2 + }, + "end": { + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "columnIds": [ + "7oTkP7etYsNgI6J6xQZVG" + ], + "x": 3153.684, + "y": 2351.2119000000002, + "direction": 1 + }, + "meta": { + "updateAt": 1746783631249, + "createAt": 1746783631249 + } + }, + "C3aumd6Ayn4nTxCSyQNsn": { + "id": "C3aumd6Ayn4nTxCSyQNsn", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "columnIds": [ + "q8oHp8wqEn6w_wOyWwvPo" + ], + "x": 2693.3317, + "y": 2713.4928, + "direction": 2 + }, + "end": { + "tableId": "IhXnqMFBU_GmCvISNyaKj", + "columnIds": [ + "qHwMDFU4dV5frDXsuW445" + ], + "x": 3153.684, + "y": 2440.8119000000006, + "direction": 1 + }, + "meta": { + "updateAt": 1746783665164, + "createAt": 1746783665164 + } + }, + "H3ufP8FbEnPlyFiHAggt0": { + "id": "H3ufP8FbEnPlyFiHAggt0", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 686.9272, + "y": 1104.4514, + "direction": 2 + }, + "end": { + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "columnIds": [ + "YKXKsIEJE-vmIMQd5ZUMC" + ], + "x": 1169.5808, + "y": 1926.7818, + "direction": 1 + }, + "meta": { + "updateAt": 1746783790047, + "createAt": 1746783790047 + } + }, + "hEYDIiEFtsN5gxqTmDYC7": { + "id": "hEYDIiEFtsN5gxqTmDYC7", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "RMhrLs7bOaopKmKt9YKHQ", + "columnIds": [ + "Jh6e_-9QYe1Tqve0PE3kT" + ], + "x": 2197.5975, + "y": 2136.9361, + "direction": 1 + }, + "end": { + "tableId": "gYqhvNLZjWrQk8LNKH3il", + "columnIds": [ + "ox7xu7XaYBZyB2alu2HcK" + ], + "x": 1684.5808, + "y": 1926.7818, + "direction": 2 + }, + "meta": { + "updateAt": 1746783814940, + "createAt": 1746783814940 + } + }, + "9RdCu7ZeEew2uEQd55LeS": { + "id": "9RdCu7ZeEew2uEQd55LeS", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "kc1EFvFhlBSc0B0bDgX28", + "columnIds": [ + "nb5CGzskl3_LIRA0yyede" + ], + "x": 531.5272, + "y": 1144.4514, + "direction": 8 + }, + "end": { + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "columnIds": [ + "KwM9EZ1tNuO7Pb_WD389k" + ], + "x": 1168.3151, + "y": 2402.7313, + "direction": 1 + }, + "meta": { + "updateAt": 1746783952690, + "createAt": 1746783952690 + } + }, + "CzqHK01dxGEXEEcXqTeGZ": { + "id": "CzqHK01dxGEXEEcXqTeGZ", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "fCwd8aDYfxPrR9RVbsNPS", + "columnIds": [ + "q8oHp8wqEn6w_wOyWwvPo" + ], + "x": 2196.3317, + "y": 2713.4928, + "direction": 1 + }, + "end": { + "tableId": "O0Q0QEgi652Vd4dZ9tccI", + "columnIds": [ + "HVYYqMWNfn6FArWDYKtbD" + ], + "x": 1683.3151, + "y": 2402.7313, + "direction": 2 + }, + "meta": { + "updateAt": 1746783975606, + "createAt": 1746783975606 + } } }, "indexEntities": {}, "indexColumnEntities": {}, "memoEntities": {} - }, - "lww": { - "SFj3q5xg6pcI4RSDKPSgI": [ - "tableColumnEntities", - 1745820616314, - 1746595278134, - { - "options(notNull)": 1745820616314, - "name": 1746575984415, - "dataType": 1746576026142, - "default": 1745820616314, - "comment": 1745820616314 - } - ], - "Id0h8QbOdlhPj9P1zTm5o": [ - "tableColumnEntities", - 1745820637058, - -1, - { - "name": 1745820637058, - "dataType": 1745820637058, - "default": 1745820637058, - "comment": 1745820637058, - "options(notNull)": 1745820637058, - "options(unique)": 1745820637058, - "options(autoIncrement)": 1745820637058, - "options(primaryKey)": 1745820679281 - } - ], - "Do7xvuwqsEo1L9PMTYoFg": [ - "tableColumnEntities", - -1, - 1745820675465, - { - "name": 1745820641243 - } - ], - "Vm1-FnoJLcJ0GRnTp0vnn": [ - "tableColumnEntities", - 1745820683600, - -1, - { - "name": 1745820683600, - "dataType": 1745820683600, - "default": 1745820683600, - "comment": 1745820683600, - "options(notNull)": 1745820683600, - "options(unique)": 1745820683600, - "options(autoIncrement)": 1745820683600 - } - ], - "R-UjmO-S2UeQdddVNwH5M": [ - "tableColumnEntities", - 1745820683600, - -1, - { - "name": 1745820683600, - "dataType": 1745820683600, - "default": 1745820683600, - "comment": 1745820683600, - "options(notNull)": 1745820683600, - "options(unique)": 1745820683600, - "options(autoIncrement)": 1745820683600 - } - ], - "h2unshrMDFXEq0pYzkkj1": [ - "tableEntities", - 1745820710361, - -1, - { - "name": 1745915802565, - "comment": 1745820759182 - } - ], - "0VUfC7ZS0NaIcqAhZYWHV": [ - "tableColumnEntities", - 1745820772689, - -1, - { - "name": 1745820772689, - "dataType": 1745820772689, - "default": 1745820772689, - "comment": 1745820772689, - "options(notNull)": 1745820772689, - "options(unique)": 1745820772689, - "options(autoIncrement)": 1745820772689, - "options(primaryKey)": 1745820775209 - } - ], - "eh3Ubc6NIftsQEbE3kq-v": [ - "tableColumnEntities", - 1745820865006, - -1, - { - "options(notNull)": 1745820865006, - "name": 1745915809011, - "dataType": 1745820865006, - "default": 1745820865006, - "comment": 1745820865006 - } - ], - "Jj6R_4lq6u3hMzLKjgqc9": [ - "relationshipEntities", - 1745820865006, - -1, - {} - ], - "QZeSgl1hDBgLHn8iG-S4s": [ - "tableColumnEntities", - 1745820895090, - -1, - { - "name": 1745820895090, - "dataType": 1745820895090, - "default": 1745820895090, - "comment": 1745820895090, - "options(notNull)": 1745820895090, - "options(unique)": 1745820895090, - "options(autoIncrement)": 1745820895090 - } - ], - "-VaB7wQ3cQKai3peK85u8": [ - "tableColumnEntities", - 1745820911646, - -1, - { - "options(notNull)": 1745820911646, - "name": 1745820925710, - "dataType": 1745820911646, - "default": 1745820911646, - "comment": 1745820911646 - } - ], - "hHtOx5fLjgkRN3SIPGLfw": [ - "relationshipEntities", - 1745820911646, - -1, - {} - ], - "0ONL4QLQRyZ32MBJ7TN7u": [ - "tableColumnEntities", - 1745821113010, - -1, - { - "name": 1745821113010, - "dataType": 1745821113010, - "default": 1746609434305, - "comment": 1745821113010, - "options(notNull)": 1746576754634, - "options(unique)": 1745821113010, - "options(autoIncrement)": 1745821113010 - } - ], - "e6eWKMFnpXI-rPJZ_9tBt": [ - "tableColumnEntities", - 1745821113010, - 1746409152348, - { - "name": 1745821113010, - "dataType": 1745821113010, - "default": 1745821113010, - "comment": 1745821113010, - "options(notNull)": 1745821113010, - "options(unique)": 1745821113010, - "options(autoIncrement)": 1745821113010 - } - ], - "O_MKuQKv7yP-k0dsyszkk": [ - "tableColumnEntities", - -1, - 1745821259113, - {} - ], - "3EFy0j6PlKaha31ajJSsZ": [ - "tableColumnEntities", - -1, - 1745821272961, - {} - ], - "Dw-euSUHCJjMfHmPx9RZw": [ - "tableColumnEntities", - 1745821287276, - 1745914525631, - { - "name": 1745821287276, - "dataType": 1745821287276, - "default": 1745821287276, - "comment": 1745821287276, - "options(notNull)": 1745821287276, - "options(unique)": 1745821287276, - "options(autoIncrement)": 1745821287276 - } - ], - "bc7vXbPHzkkSjtIb1Eu_C": [ - "tableColumnEntities", - 1745821287276, - 1745914527054, - { - "name": 1745821287276, - "dataType": 1745821287276, - "default": 1745821287276, - "comment": 1745821287276, - "options(notNull)": 1745821287276, - "options(unique)": 1745821287276, - "options(autoIncrement)": 1745821287276 - } - ], - "UAJUB0FsrZBOtW3odCNDB": [ - "tableColumnEntities", - 1745821489010, - -1, - { - "name": 1745821489010, - "dataType": 1745821489010, - "default": 1745821489010, - "comment": 1745821489010, - "options(notNull)": 1745821489010, - "options(unique)": 1745821489010, - "options(autoIncrement)": 1745821489010, - "options(primaryKey)": 1745821492106 - } - ], - "Boi84IhuWPlgjwsHQoE7r": [ - "tableColumnEntities", - -1, - 1745821494586, - {} - ], - "0WQYrtV8bOVl-ZWieHr_Q": [ - "tableColumnEntities", - -1, - 1745821495593, - {} - ], - "JNQ2Viala7U_sALVNvoTK": [ - "tableColumnEntities", - 1745821529373, - -1, - { - "options(notNull)": 1745821529373, - "name": 1745821537071, - "dataType": 1745821529373, - "default": 1745821529373, - "comment": 1745821529373 - } - ], - "xoiTCIGWOuuUaMQlCDnhd": [ - "relationshipEntities", - 1745821529373, - -1, - {} - ], - "gn7SpOC02ZjT2ajroWZ9Z": [ - "tableColumnEntities", - 1745821546630, - -1, - { - "options(notNull)": 1745821546630, - "name": 1745821553006, - "dataType": 1745821546630, - "default": 1745821546630, - "comment": 1745821546630 - } - ], - "6DEBBDnRPVRt5gU5AuUcU": [ - "relationshipEntities", - 1745821546630, - -1, - {} - ], - "9_FF-LiFPrIftEIMWXpN8": [ - "tableColumnEntities", - 1745821562181, - -1, - { - "name": 1746604017052, - "dataType": 1746604017052, - "default": 1746604017052, - "comment": 1746604017052, - "options(notNull)": 1746604017052, - "options(unique)": 1746604017052, - "options(autoIncrement)": 1745821562181 - } - ], - "uBuqi8eabZOjHwaEZ4HnE": [ - "tableColumnEntities", - -1, - 1745821576034, - {} - ], - "oslDq1FY5cMlsObGiCwzd": [ - "tableColumnEntities", - -1, - 1745821579473, - {} - ], - "bz9oU8libaYKgvU2IR82Y": [ - "tableColumnEntities", - -1, - 1745821583978, - {} - ], - "OgECIC2AofE3lQIX-nOkM": [ - "tableColumnEntities", - -1, - 1745821593690, - {} - ], - "6JNus18UqajPfwOjkPali": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1745821688154, - "dataType": 1746408900556, - "default": 1746404118872 - } - ], - "z-q_Ah0sghd0nR7VcCTLX": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746404109591, - "dataType": 1746420283047, - "default": 1746404114348 - } - ], - "Wef1cEik-NFTr_alGxLpa": [ - "tableColumnEntities", - -1, - 1745885692761, - { - "dataType": 1745885282627, - "default": 1745885076389 - } - ], - "yMcXBh6lgSLWfLhrivvuX": [ - "tableColumnEntities", - -1, - 1745885705761, - {} - ], - "jO40Ej5EXImXnadoJo9bn": [ - "tableEntities", - -1, - -1, - { - "comment": 1745914650615, - "name": 1745914641935 - } - ], - "G3KLXJzl6S28Y8pN8hfy2": [ - "tableColumnEntities", - -1, - 1745914711971, - { - "dataType": 1745914669470 - } - ], - "3jtklRjnxzZANo69T6vWW": [ - "tableColumnEntities", - 1745914576665, - -1, - { - "name": 1746609780292, - "dataType": 1745914593550, - "options(notNull)": 1745914595560, - "default": 1746609786552, - "comment": 1746609838106 - } - ], - "9gNKhuq9UnDKyb9KuZ7cY": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745914714973, - "dataType": 1745914714973, - "options(notNull)": 1745914714973, - "default": 1745914714973, - "comment": 1745914714973 - } - ], - "RJRgO2-42FxCW0ucjngu9": [ - "tableColumnEntities", - 1746409433111, - 1746609791861, - { - "name": 1746409204492, - "dataType": 1746409204492, - "default": 1746421463530, - "comment": 1746409204492, - "options(notNull)": 1746409204492, - "options(unique)": 1745914717251, - "options(autoIncrement)": 1745914717251 - } - ], - "1bvped58WqdQLlaObX0AT": [ - "tableColumnEntities", - -1, - 1745914721306, - {} - ], - "35XbdvgOzpNdasPnMcbkx": [ - "tableColumnEntities", - 1745914803628, - -1, - { - "options(notNull)": 1745914803628, - "name": 1745914818178, - "dataType": 1746406061983, - "default": 1745914803628, - "comment": 1745914803628 - } - ], - "4BDt10BeeryoN0ZdEHIui": [ - "relationshipEntities", - 1745914803628, - -1, - {} - ], - "5AUwJum9FKPCoYRMBhLnF": [ - "tableEntities", - 1745914844734, - -1, - { - "name": 1745914856783, - "comment": 1745914863426 - } - ], - "PJapuo6nvm3x9hJPUfXd6": [ - "tableColumnEntities", - 1745914874022, - -1, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022, - "options(primaryKey)": 1745914921039 - } - ], - "X1GxGekOLLuoEkqGQDF86": [ - "tableColumnEntities", - 1745914874022, - 1745914907039, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "fhM5WF3fhv8_g8KDcNF9g": [ - "tableColumnEntities", - 1745914874022, - -1, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "QfmlZ3--qScQizx76syAE": [ - "tableColumnEntities", - 1745914874022, - 1745914938847, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "NnXAqOInrD08SltZoFNHu": [ - "tableColumnEntities", - 1745914874022, - 1746609858542, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "S3K2h7O2zUHNoSb5rfn5c": [ - "tableColumnEntities", - 1745914874022, - 1746409583260, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "v6TBpKQ_tIXDcJth0Hf4s": [ - "tableColumnEntities", - 1745914874022, - 1746409201100, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "qHxcsOsImKFSnmwyIE_XZ": [ - "tableColumnEntities", - 1745914874022, - 1746609964264, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "jav6q3L-HQhPYJBdcLIgz": [ - "tableColumnEntities", - 1745914874022, - -1, - { - "name": 1745914874022, - "dataType": 1745914874022, - "default": 1745914874022, - "comment": 1745914874022, - "options(notNull)": 1745914874022, - "options(unique)": 1745914874022, - "options(autoIncrement)": 1745914874022 - } - ], - "fMx3gLKi1fsfp7g26-QA9": [ - "tableColumnEntities", - -1, - 1745914915454, - {} - ], - "PyXYmokQzpzzT08WTmtsN": [ - "tableColumnEntities", - 1745914916195, - -1, - { - "options(notNull)": 1745914916195, - "name": 1745914930050, - "dataType": 1746406061983, - "default": 1745914916195, - "comment": 1745914916195 - } - ], - "KtdVJCYZ3DMVnPnFGKi3P": [ - "relationshipEntities", - 1745914916195, - -1, - {} - ], - "Z4egkB50o_Ii-lP5VRBGr": [ - "tableColumnEntities", - 1745914974319, - 1745914978464, - {} - ], - "xEoc72X0ErdGKU7rMzenm": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745914982008, - "dataType": 1745914982008, - "options(notNull)": 1745914982008, - "default": 1745914982008, - "comment": 1745914982008 - } - ], - "02r_3OPPiD_vAgD7rmZK4": [ - "tableColumnEntities", - 1745914990794, - -1, - { - "name": 1745915001746, - "dataType": 1745914990794, - "default": 1745914990794, - "comment": 1745915019734, - "options(notNull)": 1745914990794, - "options(unique)": 1745914990794, - "options(autoIncrement)": 1745914990794 - } - ], - "Vb_CyMe0qvi7oxda4dUVW": [ - "tableColumnEntities", - 1745914991601, - -1, - { - "name": 1745915008851, - "dataType": 1745914991601, - "default": 1745914991601, - "comment": 1745915029321, - "options(notNull)": 1745914991601, - "options(unique)": 1745914991601, - "options(autoIncrement)": 1745914991601 - } - ], - "5hP5ZiQGWDGf4HJrOiFb6": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745915052393, - "dataType": 1745915052393, - "options(notNull)": 1745915052393, - "default": 1745915052393, - "comment": 1745915052393 - } - ], - "XPpipgVUsGKsXCW5YNg1X": [ - "tableColumnEntities", - 1745915055366, - -1, - { - "name": 1745915062547, - "dataType": 1745915055366, - "default": 1745915055366, - "comment": 1745915055366, - "options(notNull)": 1745915055366, - "options(unique)": 1746603764110, - "options(autoIncrement)": 1745915055366 - } - ], - "B4qGh3KZsXHQ3_4EOgwJZ": [ - "tableEntities", - -1, - -1, - { - "name": 1745915671728, - "comment": 1745915688377 - } - ], - "BAzGsBrmLOwZGYLchLmyP": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576556444, - "options(notNull)": 1746576547254, - "default": 1746606274801, - "comment": 1746606280819 - } - ], - "z6WAw_7GnarTYkag4Lcsg": [ - "tableEntities", - -1, - -1, - { - "name": 1746604902524 - } - ], - "ifLOIjTEKNJytRfXVcKLh": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576494397, - "options(notNull)": 1746576295568 - } - ], - "sn3p4UDiY4D9XJS4odHbP": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745915744882 - } - ], - "aKTVtMqmPG7TJIsmxeVts": [ - "tableEntities", - -1, - -1, - { - "name": 1746604913420 - } - ], - "sgFc3Tg9sWiMm4hsEwKm9": [ - "tableEntities", - -1, - -1, - { - "name": 1745915772005 - } - ], - "uNqzMzAALwe_V_QA41OFW": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745915779411 - } - ], - "IhXnqMFBU_GmCvISNyaKj": [ - "tableEntities", - -1, - -1, - { - "name": 1745915821586 - } - ], - "pDILaJt_-vUo0fH_c6t2O": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745915831190 - } - ], - "5kPFX9LYoh8iinAEpt3lm": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1745915836226 - } - ], - "xrgAG9Zc_whfxTeGQ2fqx": [ - "tableEntities", - 1745916349283, - -1, - { - "name": 1745916355107, - "comment": 1745916365617 - } - ], - "r7fMKgeUcNq4FhYZPN3h8": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1746576392770, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383, - "options(primaryKey)": 1746576667673 - } - ], - "GwdDytCn1l984Y6piavyi": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1746576406954, - "default": 1746576673100, - "comment": 1745916389383, - "options(notNull)": 1746576394394, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "kpG1Udq4ON9Ohj4ociOCo": [ - "tableColumnEntities", - 1745916389383, - 1746607296399, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1746576395586, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "xGjZPy89motgc7RMZWhnl": [ - "tableColumnEntities", - 1745916389383, - 1746576373378, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1745916389383, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "ZyOb1xK46x0-io64OuWOF": [ - "tableColumnEntities", - 1745916389383, - 1746576348394, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1745916389383, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "B3NNhoIrKYGZrScx8XuuH": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1746576346474, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "06IXODaDZXY8cDIet15Im": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1745916389383, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "AtQmi9C4c5YlY8Brl9irr": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1745916389383, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "a0bnNatieTB5pr9jElQbS": [ - "tableColumnEntities", - 1745916389383, - -1, - { - "name": 1745916389383, - "dataType": 1745916389383, - "default": 1745916389383, - "comment": 1745916389383, - "options(notNull)": 1745916389383, - "options(unique)": 1745916389383, - "options(autoIncrement)": 1745916389383 - } - ], - "NVO-aO4GEW9DHdEV8XQq6": [ - "tableColumnEntities", - 1746404353799, - 1746408831933, - { - "name": 1746404358524, - "dataType": 1746404371161 - } - ], - "_AcWUYKzNJd-V0fRHq8Cx": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746406061983, - "options(notNull)": 1746576275687 - } - ], - "sscrxOdwLlx94tx1j_MrH": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746406061983 - } - ], - "nPYun5WHoy8uroXUBiqh8": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746406061983 - } - ], - "Ksp65Qh_aOFmAb1ksx64Q": [ - "tableColumnEntities", - -1, - 1746408500533, - {} - ], - "iM3NfWTfO6qrXv94EUFgk": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746408944556 - } - ], - "jBxeJ8Sz7jRGrKBCkD1q1": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746408955452, - "default": 1746603828533 - } - ], - "iDvGbVnpR-GTfqajd7P02": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746408968678, - "options(unique)": 1746603847945, - "default": 1746603844452 - } - ], - "5ZWglx6I92JkdajKWQyGq": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746420269272 - } - ], - "GSZc6SEGQpz6SnTW-mo2n": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746409029483 - } - ], - "WHpensFTMwtupqV5TbNMV": [ - "tableColumnEntities", - 1746409047864, - -1, - { - "name": 1746409047864, - "dataType": 1746409047864, - "default": 1746409047864, - "comment": 1746409047864, - "options(notNull)": 1746409047864, - "options(unique)": 1746409047864, - "options(autoIncrement)": 1746409047864 - } - ], - "gsa0XtQZQgrJ8ZXy8VQVg": [ - "tableEntities", - -1, - -1, - { - "name": 1746409070281 - } - ], - "KvMMNu-PKESt0_2K4AJcB": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1746409083865 - } - ], - "kKI4hKELPs9Nh5UtQvSu7": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1746409091429 - } - ], - "W5bxFTggHoO9_PPsfy2EB": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1746409102873 - } - ], - "0HPmN1faJk-KhZXILO2zx": [ - "tableColumnEntities", - 1746409116718, - -1, - { - "name": 1746409116718, - "dataType": 1746409116718, - "default": 1746603914004, - "comment": 1746409116718, - "options(notNull)": 1746576336960, - "options(unique)": 1746409116718, - "options(autoIncrement)": 1746409116718 - } - ], - "VycsOgeM1SXkcq_5XYUMS": [ - "tableColumnEntities", - 1746409123564, - -1, - { - "name": 1746409123564, - "dataType": 1746409123564, - "default": 1746603908728, - "comment": 1746409123564, - "options(notNull)": 1746576332240, - "options(unique)": 1746409123564, - "options(autoIncrement)": 1746409123564 - } - ], - "PfyFAW02XGNLH3al90jv5": [ - "tableColumnEntities", - 1746409129705, - -1, - { - "name": 1746409129705, - "dataType": 1746409129705, - "default": 1746603904692, - "comment": 1746409129705, - "options(notNull)": 1746576320384, - "options(unique)": 1746603901515, - "options(autoIncrement)": 1746409129705 - } - ], - "bh-W1plz0vCW2rURDnfDR": [ - "tableColumnEntities", - 1746409135258, - -1, - { - "name": 1746409135258, - "dataType": 1746409135258, - "default": 1746603923348, - "comment": 1746409135258, - "options(notNull)": 1746576620936, - "options(unique)": 1746409135258, - "options(autoIncrement)": 1746409135258 - } - ], - "Djbw3B6xZWKAvwJDto9xl": [ - "tableColumnEntities", - -1, - 1746409142725, - {} - ], - "nDoaVrEhO8hLuHbgZV4il": [ - "tableColumnEntities", - 1746409147623, - -1, - { - "name": 1746409147623, - "dataType": 1746409147623, - "default": 1746603928085, - "comment": 1746409147623, - "options(notNull)": 1746576756426, - "options(unique)": 1746409147623, - "options(autoIncrement)": 1746409147623 - } - ], - "PHhRG4nKR6k_CQF9B8xS1": [ - "tableColumnEntities", - 1746409157660, - -1, - { - "name": 1746409157660, - "dataType": 1746409157660, - "default": 1746603932724, - "comment": 1746409157660, - "options(notNull)": 1746576749075, - "options(unique)": 1746409157660, - "options(autoIncrement)": 1746409157660 - } - ], - "xaUC3GLta1iHmo1YQ-qDo": [ - "tableColumnEntities", - -1, - 1746409161412, - {} - ], - "w9ZyCsgvhPpSDiq62Fc4J": [ - "tableColumnEntities", - 1746409165334, - -1, - { - "name": 1746409165334, - "dataType": 1746409165334, - "default": 1746603938932, - "comment": 1746409165334, - "options(notNull)": 1746409165334, - "options(unique)": 1746409165334, - "options(autoIncrement)": 1746409165334 - } - ], - "YuuqW6tFbr7O4iA-rdhqg": [ - "tableColumnEntities", - -1, - 1746409169996, - {} - ], - "hQM1tPHn6MrCa4pIL7t7w": [ - "tableColumnEntities", - -1, - 1746609880478, - { - "name": 1746409184363, - "dataType": 1746409184363, - "options(notNull)": 1746409184363, - "default": 1746421449082, - "comment": 1746409184363 - } - ], - "9CJ9f4Gdh5iKDZAMDjNAz": [ - "tableColumnEntities", - 1746409195692, - 1746609853230, - { - "name": 1746409195692, - "dataType": 1746409195692, - "default": 1746421440442, - "comment": 1746409195692, - "options(notNull)": 1746409195692, - "options(unique)": 1746409195692, - "options(autoIncrement)": 1746409195692 - } - ], - "6ZDZLrSpVuAeUGWvifvq7": [ - "tableColumnEntities", - -1, - 1746409580309, - {} - ], - "f4NQ8F-FyamLyf4YR0VY1": [ - "tableColumnEntities", - -1, - 1746409586940, - {} - ], - "-AVLGqgg8iuXOxuNBdJWM": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746575941358 - } - ], - "oc5quhO8E3mqrBZKbIy_G": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746575956602, - "options(notNull)": 1746576743138, - "comment": 1746595543973 - } - ], - "XQE8sY3pDLC2iy95uc9Ir": [ - "tableColumnEntities", - -1, - 1746575972530, - {} - ], - "_WFB7yKFt3jKQzWvZ875h": [ - "relationshipEntities", - -1, - 1746605112096, - { - "relationshipType": 1746605098712 - } - ], - "yTGnmFSvbFdY5rWfr010W": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746576114572 - } - ], - "lVmT5NRPuRWiB5-mz3uij": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746576167029 - } - ], - "CYHveKA03TPJiz6X5wq2L": [ - "tableEntities", - 1746576203014, - -1, - { - "name": 1746576220357, - "comment": 1746576237396 - } - ], - "JJri1o7mljYSCAk5wNIYS": [ - "tableColumnEntities", - 1746576242359, - -1, - { - "name": 1746576246517, - "dataType": 1746576250439, - "options(notNull)": 1746576257327, - "options(primaryKey)": 1746576776180 - } - ], - "BEKFy_-SDnnB_udIwHS4P": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576255711 - } - ], - "6NfFu4xWPfE3dgKI5J2hR": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576259903 - } - ], - "TDXOYTNCKhN0r0vj8at-s": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576261359 - } - ], - "N9whwkJk3imEwSl_tqk7W": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576264575 - } - ], - "PQWVHSFO2ixiAvG2FPtNK": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576266318 - } - ], - "ia3c6jjHvbTOX0cX4gbJl": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576268558 - } - ], - "nb5CGzskl3_LIRA0yyede": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576278847 - } - ], - "fsAJySlXPbGQahV59hQgo": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576282952 - } - ], - "2HB01q46-mugMjuOz85YG": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576290576 - } - ], - "7fB6MgwIX6jMpD6d2Sq7k": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576292368 - } - ], - "WypofEzhfxAMC-B6m6_Pa": [ - "tableColumnEntities", - -1, - 1746606938181, - { - "options(notNull)": 1746576296624 - } - ], - "vEH63UEDTpNDwfohuydGV": [ - "tableColumnEntities", - -1, - 1746576310977, - { - "options(notNull)": 1746576299608 - } - ], - "6puy3O9sH_wHBHdoek3GL": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576300920 - } - ], - "P84ZMnZu1nZtRhDY18T5o": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576343186 - } - ], - "4acJag7ORjUzX7FP-gnhZ": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576326984, - "dataType": 1746607055078 - } - ], - "zL9bBVm37HTSU-xWpwxxJ": [ - "tableColumnEntities", - -1, - 1746576355058, - {} - ], - "G9PMddYQm9ohnzkJUa_nw": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576533911 - } - ], - "9F6QpQqxeEggZ0FHM81O1": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576559478, - "name": 1746607152184, - "default": 1746607156998, - "options(unique)": 1746609583671 - } - ], - "uV64jBfR6hderID7y49PR": [ - "tableColumnEntities", - 1746576585040, - -1, - { - "name": 1746576585040, - "dataType": 1746576585040, - "default": 1746576585040, - "comment": 1746576585040, - "options(notNull)": 1746576585040, - "options(unique)": 1746609592320, - "options(autoIncrement)": 1746576585040 - } - ], - "Wks-dXdsHSF-EATUWnxzY": [ - "tableColumnEntities", - -1, - 1746576608071, - {} - ], - "lu2r9w2xmXsB8H7Mrdt1t": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576622840 - } - ], - "F9EPb6nsDx6Tf3GG8rvP1": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576625392 - } - ], - "DvwDCnsNxrcfqx6nTsbP4": [ - "tableColumnEntities", - 1746576689024, - -1, - { - "name": 1746576689024, - "dataType": 1746576689024, - "default": 1746576689024, - "comment": 1746576689024, - "options(notNull)": 1746576689024, - "options(unique)": 1746609601447, - "options(autoIncrement)": 1746576689024 - } - ], - "7B0zaLoZnOoMNW8OHZlrQ": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576741114 - } - ], - "ehNv0f07ci1ARnkTSDG6J": [ - "tableColumnEntities", - -1, - -1, - { - "options(notNull)": 1746576747162 - } - ], - "RtHk4GL4mwwGvwZ0UAoXQ": [ - "tableColumnEntities", - 1746576801533, - -1, - { - "options(notNull)": 1746576801533, - "name": 1746576814607, - "dataType": 1746576801533, - "default": 1746576801533, - "comment": 1746576801533 - } - ], - "vm1jrQz9O3U0SgH8t06u-": [ - "relationshipEntities", - 1746576801533, - -1, - {} - ], - "8agbo_j1bQNrN8OoG2TAs": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576874691, - "options(notNull)": 1746576878997, - "default": 1746604186603 - } - ], - "_QMB8iNL4ACVQSKx9yLtt": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576889074, - "default": 1746604183036 - } - ], - "N7bLm6kgwYVMp4xflIi_V": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576897793, - "default": 1746604178826 - } - ], - "6TYzDwJbiYyvcj6NuvaBI": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576906177, - "default": 1746604169242 - } - ], - "nAYYL4VvZwFBqqY9J5A1P": [ - "tableColumnEntities", - -1, - -1, - { - "dataType": 1746576917281, - "default": 1746603958198 - } - ], - "rU3ltf8eeXRUibpCkm9H-": [ - "tableColumnEntities", - 1746576948210, - -1, - { - "name": 1746576948210, - "dataType": 1746576948210, - "default": 1746604190955, - "comment": 1746576948210, - "options(notNull)": 1746576948210, - "options(unique)": 1746576948210, - "options(autoIncrement)": 1746576948210 - } - ], - "Pf3dXiCCFxq7Rp3X1El7K": [ - "tableColumnEntities", - 1746576948210, - -1, - { - "name": 1746576948210, - "dataType": 1746576948210, - "default": 1746576948210, - "comment": 1746576948210, - "options(notNull)": 1746576948210, - "options(unique)": 1746576948210, - "options(autoIncrement)": 1746576948210 - } - ], - "RZJESxJSfjv0xxD8DYnZy": [ - "tableColumnEntities", - 1746576948210, - -1, - { - "name": 1746576948210, - "dataType": 1746576948210, - "default": 1746576948210, - "comment": 1746576948210, - "options(notNull)": 1746576948210, - "options(unique)": 1746576948210, - "options(autoIncrement)": 1746576948210 - } - ], - "dkwDt8XZjnu1Hq3vX4Wta": [ - "tableColumnEntities", - 1746595138875, - 1746595629175, - { - "name": 1746595178709, - "dataType": 1746595178709, - "options(notNull)": 1746595178709, - "default": 1746595178709, - "comment": 1746595620522 - } - ], - "lZQAY89JoyOHoTQEHeS1Y": [ - "tableColumnEntities", - 1746595187788, - -1, - { - "name": 1746595194269, - "dataType": 1746595202146, - "options(notNull)": 1746595204732, - "options(unique)": 1746609572983 - } - ], - "f7_MGvRjkwL1xkCWrAgDR": [ - "tableColumnEntities", - 1746595277833, - -1, - { - "options(notNull)": 1746595277833, - "name": 1746595301986, - "dataType": 1746595277833, - "default": 1746595277833, - "comment": 1746595277833 - } - ], - "AH1dyESfueUlhcoiU6KsQ": [ - "relationshipEntities", - 1746595277833, - -1, - {} - ], - "6qd6rcTkraI_AbHcVbp6T": [ - "tableColumnEntities", - 1746595324622, - -1, - { - "name": 1746595328660, - "dataType": 1746595355764, - "options(notNull)": 1746595360463, - "options(unique)": 1746609553357 - } - ], - "fiQBfXvw-4tj42PuGiDAk": [ - "tableColumnEntities", - 1746595486403, - -1, - { - "name": 1746595497605, - "dataType": 1746595514197, - "options(notNull)": 1746595517651, - "comment": 1746595529897 - } - ], - "ZLEpY5EjuZV21718zf-Y1": [ - "tableEntities", - -1, - -1, - { - "comment": 1746607685334 - } - ], - "XWKAFmv-cAeXRXaCxhuK7": [ - "tableEntities", - 1746596035961, - 1746609537158, - { - "comment": 1746596045427 - } - ], - "koyEKtRkVwNF0GzL7x9EJ": [ - "tableEntities", - -1, - -1, - { - "name": 1746603330921 - } - ], - "-ByjEyVRaGe8OsKNDMA2o": [ - "tableColumnEntities", - 1746603382287, - -1, - { - "name": 1746603387277, - "dataType": 1746603393214, - "options(notNull)": 1746603396054, - "options(unique)": 1746603740086 - } - ], - "UM4wPPjROpI6Pif-JUDey": [ - "tableColumnEntities", - 1746604024909, - 1746604131383, - { - "name": 1746604044232, - "dataType": 1746604024909, - "default": 1746604054535, - "comment": 1746604024909, - "options(notNull)": 1746604024909, - "options(unique)": 1746604024909, - "options(autoIncrement)": 1746604024909 - } - ], - "uEGTvQ5Ia8d3OQUJp_Chz": [ - "tableColumnEntities", - 1746604072504, - -1, - { - "name": 1746604072504, - "dataType": 1746604072504, - "default": 1746604072504, - "comment": 1746604072504, - "options(notNull)": 1746604072504, - "options(unique)": 1746604072504, - "options(autoIncrement)": 1746604072504 - } - ], - "WSxN_kMQ_Bla9Z3njzM79": [ - "tableColumnEntities", - 1746604092925, - -1, - { - "name": 1746604092925, - "dataType": 1746604092925, - "default": 1746604092925, - "comment": 1746604092925, - "options(notNull)": 1746604092925, - "options(unique)": 1746604092925, - "options(autoIncrement)": 1746604092925 - } - ], - "sfeekPFUxsfR1R3fpCkPO": [ - "tableColumnEntities", - 1746604351683, - 1746607893702, - { - "options(notNull)": 1746604351683, - "name": 1746604351683, - "dataType": 1746604351683, - "default": 1746604351683, - "comment": 1746604351683 - } - ], - "P3c75BA2d-yUP_2FozsIz": [ - "relationshipEntities", - 1746604351683, - 1746604370918, - {} - ], - "2rgItDTiBojLhyoJ4J-z-": [ - "tableColumnEntities", - 1746604389017, - 1746607895517, - { - "options(notNull)": 1746604389017, - "name": 1746604389017, - "dataType": 1746604389017, - "default": 1746604389017, - "comment": 1746604389017 - } - ], - "k46KbuckCuqc5k_Oo2Ow8": [ - "relationshipEntities", - 1746604389017, - 1746604406223, - {} - ], - "2DXZGT0BJwjeij0IKXFa1": [ - "tableColumnEntities", - 1746604423389, - -1, - { - "options(notNull)": 1746604423389, - "name": 1746604434512, - "dataType": 1746604423389, - "default": 1746604423389, - "comment": 1746604423389 - } - ], - "QvPqTtlLZg4ZVLrIjQGT4": [ - "relationshipEntities", - 1746604423389, - -1, - {} - ], - "fXVyT3pzVo0T0fgoFz4Gi": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604459296 - } - ], - "DpudF8iv_Pam0hOxkXJHx": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604467736 - } - ], - "2fpNq-aTVMnLCnp481j3_": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604474224 - } - ], - "KG3dDhcIJxHk3e1aGPWPa": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604481985 - } - ], - "6blFGW77QEOBG_yDwtFQq": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604489464 - } - ], - "gAVYXWnBSnCw-0ieO4Mil": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604503019 - } - ], - "AckV69XB9r2m1VHP64gtd": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604508898 - } - ], - "gNCG3TpxxGPRdE0xNJM4Z": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604513682 - } - ], - "aKIaANWEYltTtJffBo7DN": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604519233 - } - ], - "-ehlfECxBa5BFIg6kMnvT": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604524330 - } - ], - "qrtpEEOK_OBwxcghJlb0I": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604529354 - } - ], - "5zrgwg2t7XYDC0zIz0ORc": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604536738 - } - ], - "WXDbQNvgLU6e2AEqZl8If": [ - "relationshipEntities", - -1, - -1, - { - "relationshipType": 1746604543098 - } - ], - "6QKQkCLEQNWLc1oF16LgN": [ - "tableColumnEntities", - 1746604787600, - -1, - { - "name": 1746604792585, - "dataType": 1746604800238, - "options(notNull)": 1746604803600, - "options(unique)": 1746609616840 - } - ], - "cbdszvDa-AJcISTgkydfJ": [ - "tableColumnEntities", - 1746604989615, - -1, - { - "name": 1746604989615, - "dataType": 1746604989615, - "default": 1746604989615, - "comment": 1746604989615, - "options(notNull)": 1746604989615, - "options(unique)": 1746609603638, - "options(autoIncrement)": 1746604989615 - } - ], - "dLOesaVz9GnwntiIyvxwW": [ - "tableColumnEntities", - 1746605122396, - -1, - { - "options(notNull)": 1746605122396, - "name": 1746605134374, - "dataType": 1746605122396, - "default": 1746605122396, - "comment": 1746605122396 - } - ], - "zJIufcYlZwkLRJbg3kScu": [ - "relationshipEntities", - 1746605122396, - -1, - {} - ], - "wQnQfh-JJI9BSQGaahMFu": [ - "tableColumnEntities", - -1, - 1746605144322, - {} - ], - "tNaVOzr3vywCXiQdfUJWq": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1746606227025, - "dataType": 1746606227025, - "options(notNull)": 1746606227025, - "options(unique)": 1746606227025, - "default": 1746606227025, - "comment": 1746606227025 - } - ], - "o0KMVEBZAnWRSsxx10HmA": [ - "tableColumnEntities", - 1746606232068, - -1, - { - "name": 1746606837089, - "dataType": 1746606232068, - "default": 1746606232068, - "comment": 1746606859590, - "options(notNull)": 1746607630934, - "options(unique)": 1746606232068, - "options(autoIncrement)": 1746606232068 - } - ], - "6e3HgOnQwPQRS7r37pAK6": [ - "tableColumnEntities", - -1, - 1746606926494, - {} - ], - "lhQ3PpSdLxVcH5LvI4DNx": [ - "tableColumnEntities", - 1746607691543, - -1, - { - "name": 1746607691543, - "dataType": 1746607691543, - "default": 1746607706343, - "comment": 1746607691543, - "options(notNull)": 1746607691543, - "options(unique)": 1746607691543, - "options(autoIncrement)": 1746607691543 - } - ], - "1q8jG5dQKdD35_XYimkSk": [ - "tableColumnEntities", - -1, - -1, - { - "name": 1746608011182, - "dataType": 1746608016538, - "options(unique)": 1746609596359 - } - ], - "hZ6BBU-xMeNW6jafbpxzY": [ - "tableColumnEntities", - 1746609796989, - -1, - { - "name": 1746609805271, - "dataType": 1746609813212, - "options(notNull)": 1746609815236, - "default": 1746609818313, - "comment": 1746609843004 - } - ], - "hpqVO4TcRRrwuvlSosSGx": [ - "tableColumnEntities", - 1746609863005, - -1, - { - "name": 1746609863005, - "dataType": 1746609863005, - "default": 1746609863005, - "comment": 1746609901156, - "options(notNull)": 1746609863005, - "options(unique)": 1746609863005, - "options(autoIncrement)": 1746609863005 - } - ], - "loBrh2giB1WiI1GakcT46": [ - "tableColumnEntities", - 1746609863005, - -1, - { - "name": 1746609863005, - "dataType": 1746609863005, - "default": 1746609863005, - "comment": 1746609905642, - "options(notNull)": 1746609863005, - "options(unique)": 1746609863005, - "options(autoIncrement)": 1746609863005 - } - ], - "HaKM09bv5DwJFH9pxSqWI": [ - "tableColumnEntities", - -1, - 1746609875878, - {} - ], - "OwsCuEWoHNZ8zov4IClUR": [ - "tableColumnEntities", - 1746609884640, - -1, - { - "name": 1746609884640, - "dataType": 1746609884640, - "default": 1746609884640, - "comment": 1746609911817, - "options(notNull)": 1746609884640, - "options(unique)": 1746609884640, - "options(autoIncrement)": 1746609884640 - } - ], - "-egu-8EQDsUJcOi-nzl74": [ - "tableColumnEntities", - 1746609884640, - -1, - { - "name": 1746609884640, - "dataType": 1746609884640, - "default": 1746609884640, - "comment": 1746609918332, - "options(notNull)": 1746609884640, - "options(unique)": 1746609884640, - "options(autoIncrement)": 1746609884640 - } - ], - "iMCMcnQGafCPo46R91hOK": [ - "tableColumnEntities", - -1, - 1746609968777, - {} - ], - "Mr4qiMpKO4UVj3aZ3HueW": [ - "tableColumnEntities", - -1, - 1746609971673, - {} - ] } } \ No newline at end of file diff --git a/app/Entities/Device/LineEntity.php b/app/Entities/Device/LineEntity.php index 9465c47..034c771 100644 --- a/app/Entities/Device/LineEntity.php +++ b/app/Entities/Device/LineEntity.php @@ -9,8 +9,12 @@ class LineEntity extends DeviceEntity const PK = LineModel::PK; const TITLE = LineModel::TITLE; - public function getAmount() + public function getBandwith() { - return $this->attributes['amount']; + return $this->attributes['bandwith']; + } + public function getPrice() + { + return $this->attributes['price']; } } diff --git a/app/Helpers/CommonHelper.php b/app/Helpers/CommonHelper.php index 6009640..e479722 100644 --- a/app/Helpers/CommonHelper.php +++ b/app/Helpers/CommonHelper.php @@ -36,6 +36,7 @@ class CommonHelper return $this->_viewDatas[$key]; } + //IP관련련 final public function isDomainName(string $domain): bool { $pattern_validation = '/((http|https)\:\/\/)?[a-zA-Z0-9\.\/\?\:@\-_=#]+\.([a-zA-Z0-9\&\.\/\?\:@\-_=#])*/'; @@ -60,6 +61,24 @@ class CommonHelper } return $result; } + final function isValidCIDR(string $cidr, $type = "ipv4"): bool + { + // 형식: "IP/Prefix" 형태인지 검사 + if (!preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}\/\d{1,2}$/', $cidr)) { + return false; + } + list($ip, $prefix) = explode('/', $cidr); + // IP 유효성 검사 + if (!$this->isIPAddress($ip, $type)) { + return false; + } + // Prefix는 0~32 사이인지 검사 (IPv4 기준) + $prefix = (int) $prefix; + if ($prefix < 0 || $prefix > 32) { + return false; + } + return true; + } final public function isHostName(string $host): bool { $pattern_validation = '/[a-zA-Z0-9\.\/\?\:@\*\-_=#]/'; @@ -155,16 +174,28 @@ class CommonHelper } // (EX:192.168.1.0 -> 192.168.001.000) - final public function convertIPV4toCIDR($cidr) + final public function cidrToIpRange(string $cidr): array { - $temps = explode(".", $cidr); - return sprintf("%03d.%03d.%03d.%03d", $temps[0], $temps[1], $temps[2], $temps[3]); - } - // (EX:192.168.001.0000 -> 192.168.1.0) - final public function convertCIDRtoIPV4($ipv4) - { - $temps = explode(".", $ipv4); - return sprintf("%d.%d.%d.%d", $temps[0], $temps[1], $temps[2], $temps[3]); + if (!$this->isValidCIDR($cidr)) { + return []; // 유효하지 않으면 빈 배열 반환 + } + + list($ip, $prefix) = explode('/', $cidr); + $prefix = (int) $prefix; + + $ipLong = ip2long($ip); + $netmask = ~((1 << (32 - $prefix)) - 1); + $network = $ipLong & $netmask; + $broadcast = $network | ~$netmask; + + $ips = []; + + // 첫 IP부터 마지막 IP까지 반복 + for ($i = $network; $i <= $broadcast; $i++) { + $ips[] = long2ip($i); + } + + return $ips; } public function getFieldLabel(string $field, array $viewDatas, array $extras = []): string @@ -186,16 +217,15 @@ class CommonHelper } switch ($field) { case 'email': - $form = form_input($field, $value, ["placeholder" => "예)test@example.com", ...$extras]); + $form = form_input($field, $value ?? "", ["placeholder" => "예)test@example.com", ...$extras]); break; case 'mobile': case 'phone': - $form = form_input($field, $value, ["placeholder" => "예)010-0010-0010", ...$extras]); + $form = form_input($field, $value ?? "", ["placeholder" => "예)010-0010-0010", ...$extras]); break; case 'role': if (!is_array($viewDatas['field_options'][$field])) { - echo var_dump($viewDatas['field_options']); - exit; + throw new \Exception(__METHOD__ . "에서 {$field}의 field_options가 array형태가 아닙니다."); } if (in_array($viewDatas['action'], ['create_form', 'modify_form'])) { $forms = []; @@ -215,13 +245,12 @@ class CommonHelper case 'updated_at': case 'created_at': $extra_class = isset($extras['class']) ? $extras['class'] . ' calender' : 'calender'; - $form = form_input($field, $value, ['class' => $extra_class, ...array_diff_key($extras, ['class' => ''])]); + $form = form_input($field, $value ?? "", ['class' => $extra_class, ...array_diff_key($extras, ['class' => ''])]); break; default: if (in_array($field, $viewDatas['filter_fields'])) { if (!is_array($viewDatas['field_options'][$field])) { - echo var_dump($viewDatas['field_options']); - exit; + throw new \Exception(__METHOD__ . "에서 {$field}의 field_options가 array형태가 아닙니다."); } $formOptions = ["" => lang($viewDatas['class_path'] . '.label.' . $field) . ' 선택']; foreach ($viewDatas['field_options'][$field] as $key => $label) { @@ -229,7 +258,7 @@ class CommonHelper } $form = form_dropdown($field, $formOptions, $value, $extras); } else { - $form = form_input($field, $value, ["autocomplete" => $field, ...$extras]); + $form = form_input($field, $value ?? "", ["autocomplete" => $field, ...$extras]); } break; } @@ -238,7 +267,7 @@ class CommonHelper public function getFieldView(string $field, array $viewDatas, array $extras = []): string { - $value = $viewDatas['entity']->$field; + $value = $viewDatas['entity']->$field ?? ""; switch ($field) { case $this->getTitleField(): $value = form_label( @@ -272,7 +301,7 @@ class CommonHelper case 'role': $roles = []; foreach (explode(DEFAULTS["DELIMITER_ROLE"], $value) as $key) { - $roles[] = $viewDatas['field_options'][$field][$key]; + $roles[] = $viewDatas['field_options'][$field][$key] ?? ""; } $value = implode(" , ", $roles); break; @@ -335,15 +364,14 @@ class CommonHelper ); break; case 'modify': - $pk = $viewDatas['entity']->getPK(); $oldBatchJobUids = old("batchjob_uids", null); $oldBatchJobUids = is_array($oldBatchJobUids) ? $oldBatchJobUids : [$oldBatchJobUids]; $checkbox = form_checkbox([ - "id" => "checkbox_uid_{$pk}", + "id" => "checkbox_uid_{$viewDatas['entity']->getPK()}", "name" => "batchjob_uids[]", - "value" => $pk, + "value" => $viewDatas['entity']->getPK(), "class" => "batchjobuids_checkboxs", - "checked" => in_array($pk, $oldBatchJobUids) + "checked" => in_array($viewDatas['entity']->getPK(), $oldBatchJobUids) ]); $action = $checkbox . form_label( $viewDatas['cnt'], diff --git a/app/Helpers/Device/DeviceHelper.php b/app/Helpers/Device/DeviceHelper.php index a2fd23d..0fc5158 100644 --- a/app/Helpers/Device/DeviceHelper.php +++ b/app/Helpers/Device/DeviceHelper.php @@ -19,8 +19,7 @@ class DeviceHelper extends CommonHelper switch ($field) { case "serverinfo_uid": if (!is_array($viewDatas['field_options'][$field])) { - echo var_dump($viewDatas['field_options']); - exit; + throw new \Exception(__METHOD__ . "에서 {$field}의 field_options가 array형태가 아닙니다."); } $formOptions = array_merge( ["" => lang($viewDatas['class_path'] . '.label.' . $field) . ' 선택'], @@ -34,7 +33,7 @@ class DeviceHelper extends CommonHelper } return $form; } // - public function getListRowColor(mixed $entity, string $field = 'status', string $value = 'in'): string + public function getListRowColor(mixed $entity, string $field = 'status', string $value = 'use'): string { return $entity->isMatched($field, $value) ? "" : 'class="table-danger"'; } diff --git a/app/Helpers/Device/RackHelper.php b/app/Helpers/Device/RackHelper.php deleted file mode 100644 index c362129..0000000 --- a/app/Helpers/Device/RackHelper.php +++ /dev/null @@ -1,16 +0,0 @@ -setTitleField(field: RackModel::TITLE); - } -} diff --git a/app/Language/en/Device/Ip.php b/app/Language/en/Device/Ip.php new file mode 100644 index 0000000..a34d491 --- /dev/null +++ b/app/Language/en/Device/Ip.php @@ -0,0 +1,21 @@ + "IP정보", + 'label' => [ + 'lineinfo_uid' => '회선정보', + 'ip' => "IP", + 'price' => "금액", + 'status' => "상태", + 'updated_at' => "수정일", + 'created_at' => "작성일", + ], + 'DEFAULTS' => [ + 'status' => "use" + ], + "STATUS" => [ + "use" => "사용가능", + "pause" => "일시중지", + "occupied" => "사용중", + "forbidden" => "사용금지됨", + ], +]; diff --git a/app/Language/en/Device/Line.php b/app/Language/en/Device/Line.php new file mode 100644 index 0000000..fe0e235 --- /dev/null +++ b/app/Language/en/Device/Line.php @@ -0,0 +1,27 @@ + "회선정보", + 'label' => [ + 'title' => "제목", + 'type' => "종류", + 'price' => "금액", + 'bandwith' => "CIDR대역", + 'status' => "상태", + 'updated_at' => "수정일", + 'created_at' => "작성일", + ], + 'DEFAULTS' => [ + 'type' => 'general', + 'status' => "use" + ], + "TYPE" => [ + "general" => "일반", + "dedicated" => "전용", + "defence" => "빙아", + ], + "STATUS" => [ + "use" => "사용", + "pause" => "사용정지", + "termination" => "해지", + ], +]; diff --git a/app/Models/CommonModel.php b/app/Models/CommonModel.php index d309ece..b57207b 100644 --- a/app/Models/CommonModel.php +++ b/app/Models/CommonModel.php @@ -174,14 +174,13 @@ abstract class CommonModel extends Model return $entity; } - public function create(array $formDatas, mixed $entity): mixed + final function create(array $formDatas, mixed $entity): mixed { // Field에 맞는 Validation Rule 재정의 - $this->setValidationRules($this->getFieldRules('create', $this->allowedFields)); - // 저장하기 전에 데이터 값 변경이 필요한 Field + $this->setValidationRules($this->getFieldRules(__FUNCTION__, $this->allowedFields)); foreach (array_keys($formDatas) as $field) { - LogCollector::debug("{$field}:{$formDatas[$field]}"); - $entity->$field = $this->convertEntityData($field, $formDatas); + $value = $this->convertEntityData($field, $formDatas); + $entity->$field = $value; } // primaryKey가 자동입력이 아니면 if (!$this->useAutoIncrement) { @@ -194,19 +193,22 @@ abstract class CommonModel extends Model $pkField = $this->getPKField(); $entity->$pkField = $this->getInsertID(); } - // log_message("debug", $this->getTable() . " => " . __FUNCTION__ . " DB 작업 완료"); + LogCollector::debug("[{$entity->getTitle()}] 입력내용"); + LogCollector::debug(var_export($entity->toArray(), true)); return $entity; } - public function modify(mixed $entity, array $formDatas): mixed + final function modify(mixed $entity, array $formDatas): mixed { // Field에 맞는 Validation Rule 재정의 - $this->setValidationRules($this->getFieldRules('modify', $this->allowedFields)); + $this->setValidationRules($this->getFieldRules(__FUNCTION__, $this->allowedFields)); // 저장하기 전에 데이터 값 변경이 필요한 Field - LogCollector::debug("[{$entity->getPK()}/{$entity->getTitle()}] 변경내용"); + LogCollector::debug("[{$entity->getPK()}/{$entity->getTitle()}] 변경 전 내용"); + LogCollector::debug(var_export($entity->toArray(), true)); foreach (array_keys($formDatas) as $field) { - LogCollector::debug("{$field}/{$entity->$field}=>{$formDatas[$field]}"); $entity->$field = $this->convertEntityData($field, $formDatas); } + LogCollector::debug("[{$entity->getPK()}/{$entity->getTitle()}] 변경 후 내용"); + LogCollector::debug(var_export($entity->toArray(), true)); return $this->save_process($entity); } diff --git a/app/Models/Device/IpModel.php b/app/Models/Device/IpModel.php index 271cc7a..924d9bf 100644 --- a/app/Models/Device/IpModel.php +++ b/app/Models/Device/IpModel.php @@ -8,15 +8,15 @@ class IpModel extends DeviceModel { const TABLE = "ipinfo"; const PK = "uid"; - const TITLE = "title"; + const TITLE = "ip"; protected $table = self::TABLE; protected $primaryKey = self::PK; protected $returnType = IpEntity::class; protected $allowedFields = [ - "clientinfo_uid", + "lineinfo_uid", + "ip", + "price", "status", - "title", - "amount", ]; public function __construct() { @@ -24,7 +24,7 @@ class IpModel extends DeviceModel } public function getFilterFields(): array { - return ["clientinfo_uid", 'status']; + return ["lineinfo_uid", 'status']; } public function getBatchJobFields(): array { @@ -36,15 +36,15 @@ class IpModel extends DeviceModel throw new \Exception(__FUNCTION__ . "=> field가 array 입니다.\n" . var_export($field, true)); } switch ($field) { - case "clientinfo_uid": - case "amount": + case "lineinfo_uid": + case "price": $rule = "required|numeric"; break; - case "title": - $rule = "required|trim|string"; + case "ip": + $rule = "required|trim|valid_ip[both]"; //ipv4 , ipv6 , both(ipv4,ipv6) break; case "status": - $rule = "required|in_list[in,out]"; + $rule = "required|in_list[use,pause,occupied,forbidden]"; break; default: $rule = parent::getFieldRule($action, $field); diff --git a/app/Models/Device/LineModel.php b/app/Models/Device/LineModel.php index 6b379c8..49b9587 100644 --- a/app/Models/Device/LineModel.php +++ b/app/Models/Device/LineModel.php @@ -13,10 +13,11 @@ class LineModel extends DeviceModel protected $primaryKey = self::PK; protected $returnType = LineEntity::class; protected $allowedFields = [ - "clientinfo_uid", - "status", + "type", "title", - "amount", + "bandwith", + "price", + "status", ]; public function __construct() { @@ -24,7 +25,7 @@ class LineModel extends DeviceModel } public function getFilterFields(): array { - return ["clientinfo_uid", 'status']; + return ["type", 'status']; } public function getBatchJobFields(): array { @@ -36,15 +37,18 @@ class LineModel extends DeviceModel throw new \Exception(__FUNCTION__ . "=> field가 array 입니다.\n" . var_export($field, true)); } switch ($field) { - case "clientinfo_uid": - case "amount": + case "price": $rule = "required|numeric"; break; case "title": + case "bandwith": $rule = "required|trim|string"; break; + case "type": + $rule = "required|in_list[general,dedicated,defence]"; + break; case "status": - $rule = "required|in_list[in,out]"; + $rule = "required|in_list[use,pause,termination]"; break; default: $rule = parent::getFieldRule($action, $field); diff --git a/app/Models/Device/RackModel.php b/app/Models/Device/RackModel.php deleted file mode 100644 index 47e8d3f..0000000 --- a/app/Models/Device/RackModel.php +++ /dev/null @@ -1,55 +0,0 @@ - field가 array 입니다.\n" . var_export($field, true)); - } - switch ($field) { - case "clientinfo_uid": - case "amount": - $rule = "required|numeric"; - break; - case "title": - $rule = "required|trim|string"; - break; - case "status": - $rule = "required|in_list[in,out]"; - break; - default: - $rule = parent::getFieldRule($action, $field); - break; - } - return $rule; - } -} diff --git a/app/Services/Auth/AuthService.php b/app/Services/Auth/AuthService.php index a240a63..6752324 100644 --- a/app/Services/Auth/AuthService.php +++ b/app/Services/Auth/AuthService.php @@ -21,11 +21,6 @@ abstract class AuthService extends CommonService return "Auth" . DIRECTORY_SEPARATOR; } //Index,FieldForm관련 - final public function getFields(): array - { - return ['id', 'passwd']; - } - //Index,FieldForm관련 final public function getSession(): Session { diff --git a/app/Services/CommonService.php b/app/Services/CommonService.php index 8b22868..35be9a8 100644 --- a/app/Services/CommonService.php +++ b/app/Services/CommonService.php @@ -74,6 +74,7 @@ abstract class CommonService } if (env('app.debug.index')) { echo $this->getModel()->getLastQuery(); + // exit; } return $entitys; } // @@ -105,7 +106,7 @@ abstract class CommonService public function create(array $formDatas, mixed $entity = null): mixed { - $entity = $this->getModel()->create($formDatas, $entity); + $entity = $this->getModel()->create($formDatas, $entity ?? $this->getEntityClass()); LogCollector::info("[{$entity->getTitle()}]" . MESSAGES["CREATED"] . ":"); return $entity; } diff --git a/app/Services/Device/RackService.php b/app/Services/Device/RackService.php deleted file mode 100644 index 98e6e77..0000000 --- a/app/Services/Device/RackService.php +++ /dev/null @@ -1,28 +0,0 @@ - 계정 관리 -
- SNS 계정 관리 -
Log 관리
\ No newline at end of file diff --git a/app/Views/layouts/admin/left_menu/device.php b/app/Views/layouts/admin/left_menu/device.php index 98b69d9..eaae96f 100644 --- a/app/Views/layouts/admin/left_menu/device.php +++ b/app/Views/layouts/admin/left_menu/device.php @@ -5,9 +5,6 @@
-
- 상면정보 -
회선정보
diff --git a/app/Views/templates/admin/index_content_top.php b/app/Views/templates/admin/index_content_top.php index 5a8e551..52e4cf7 100644 --- a/app/Views/templates/admin/index_content_top.php +++ b/app/Views/templates/admin/index_content_top.php @@ -4,12 +4,12 @@