diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 947f257..2163bb6 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -94,8 +94,8 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->get('download/(:alpha)', 'PointController::download/$1'); }); }); - $routes->group('device', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { - $routes->group('line', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('device', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { + $routes->group('line', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'LineController::index', []); $routes->get('create', 'LineController::create_form'); $routes->post('create', 'LineController::create'); @@ -108,7 +108,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'LineController::batchjob_delete'); $routes->get('download/(:alpha)', 'LineController::download/$1'); }); - $routes->group('ip', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('ip', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'IpController::index', []); $routes->get('create', 'IpController::create_form'); $routes->post('create', 'IpController::create'); @@ -121,7 +121,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'IpController::batchjob_delete'); $routes->get('download/(:alpha)', 'IpController::download/$1'); }); - $routes->group('network', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('network', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'NetworkController::index', []); $routes->get('create', 'NetworkController::create_form'); $routes->post('create', 'NetworkController::create'); @@ -134,7 +134,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'NetworkController::batchjob_delete'); $routes->get('download/(:alpha)', 'NetworkController::download/$1'); }); - $routes->group('server', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('server', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'ServerController::index', []); $routes->get('create', 'ServerController::create_form'); $routes->post('create', 'ServerController::create'); @@ -147,7 +147,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'ServerController::batchjob_delete'); $routes->get('download/(:alpha)', 'ServerController::download/$1'); }); - $routes->group('part', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('part', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'PartController::index', []); $routes->get('create', 'PartController::create_form'); $routes->post('create', 'PartController::create'); @@ -160,7 +160,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au $routes->post('batchjob_delete', 'PartController::batchjob_delete'); $routes->get('download/(:alpha)', 'PartController::download/$1'); }); - $routes->group('software', ['namespace' => 'App\Controllers\Admin\Device'], function ($routes) { + $routes->group('software', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->get('/', 'SoftwareController::index', []); $routes->get('create', 'SoftwareController::create_form'); $routes->post('create', 'SoftwareController::create'); diff --git a/app/Controllers/Admin/Customer/ClientController.php b/app/Controllers/Admin/Customer/ClientController.php index 9ca641d..9ffefd5 100644 --- a/app/Controllers/Admin/Customer/ClientController.php +++ b/app/Controllers/Admin/Customer/ClientController.php @@ -37,10 +37,6 @@ class ClientController extends CustomerController } return $this->_helper; } - public function getFields(): array - { - return ['name', 'email', 'phone', 'role']; - } //Index,FieldForm관련 protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation { @@ -92,7 +88,7 @@ class ClientController extends CustomerController protected function view_process($uid): mixed { $fields = [ - 'fields' => [$this->getService()->getModel()::TITLE, 'email', 'phone', 'role', 'account_balance', 'coupon_balance', 'point_balance', 'status'], + 'fields' => [$this->getService()->getModel()->getTitleField(), 'email', 'phone', 'role', 'account_balance', 'coupon_balance', 'point_balance', 'status'], ]; $this->init('view', $fields); return parent::view_process($uid); @@ -100,7 +96,7 @@ class ClientController extends CustomerController protected function index_process(): array { $fields = [ - 'fields' => [$this->getService()->getModel()::TITLE, 'email', 'phone', 'role', 'account_balance', 'coupon_balance', 'point_balance', 'status'], + 'fields' => [$this->getService()->getModel()->getTitleField(), 'email', 'phone', 'role', 'account_balance', 'coupon_balance', 'point_balance', 'status'], ]; $this->init('index', $fields); return parent::index_process(); diff --git a/app/Controllers/Admin/Device/DeviceController.php b/app/Controllers/Admin/Equipment/EquipmentController.php similarity index 70% rename from app/Controllers/Admin/Device/DeviceController.php rename to app/Controllers/Admin/Equipment/EquipmentController.php index fd6e0cf..1a9fbf6 100644 --- a/app/Controllers/Admin/Device/DeviceController.php +++ b/app/Controllers/Admin/Equipment/EquipmentController.php @@ -1,19 +1,21 @@ _lineService; } + final public function getClientService(): ClientService + { + if (!$this->_clientService) { + $this->_clientService = new ClientService($this->request); + } + return $this->_clientService; + } //Index,FieldForm관련 protected function getFormFieldOption(string $field, array $options = []): array { switch ($field) { - case 'serverinfo_uid': - $options[$field] = $this->getServerService()->getFormFieldOption($field); - // echo $this->getUserModel()->getLastQuery(); - // dd($options); - break; - case 'lineinfo_uid': - $options[$field] = $this->getLineService()->getFormFieldOption($field); + case 'clientinfo_uid': + $options[$field] = $this->getClientService()->getFormFieldOption($field); // echo $this->getUserModel()->getLastQuery(); // dd($options); break; @@ -54,5 +58,4 @@ abstract class DeviceController extends AdminController } return $options; } - //Index,FieldForm관련 } diff --git a/app/Controllers/Admin/Device/IpController.php b/app/Controllers/Admin/Equipment/IpController.php similarity index 72% rename from app/Controllers/Admin/Device/IpController.php rename to app/Controllers/Admin/Equipment/IpController.php index 3118e55..b096c85 100644 --- a/app/Controllers/Admin/Device/IpController.php +++ b/app/Controllers/Admin/Equipment/IpController.php @@ -1,16 +1,16 @@ _helper; } //Index,FieldForm관련 - protected function setOrcerByForList() { //OrderBy 처리 $this->getService()->getModel()->orderBy('INET_ATON(ip)', 'ASC', false); parent::setOrcerByForList(); } + + protected function index_process(): array + { + $fields = [ + 'fields' => ['lineinfo_uid', $this->getService()->getModel()->getTitleField(), 'price', 'status', 'updated_at'], + ]; + $this->init('index', $fields); + return parent::index_process(); + } } diff --git a/app/Controllers/Admin/Device/LineController.php b/app/Controllers/Admin/Equipment/LineController.php similarity index 87% rename from app/Controllers/Admin/Device/LineController.php rename to app/Controllers/Admin/Equipment/LineController.php index 56306e5..ecff08e 100644 --- a/app/Controllers/Admin/Device/LineController.php +++ b/app/Controllers/Admin/Equipment/LineController.php @@ -1,18 +1,18 @@ _helper; } //Index,FieldForm관련 - protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation + protected function index_process(): array { - switch ($field) { - case 'role': - //아래 Rule Array는 필드명.* checkbox를 사용 - $validation->setRule("{$field}.*", $field, $rule); - break; - default: - $validation = parent::setValidation($validation, $action, $field, $rule); - break; - } - return $validation; + $fields = [ + 'fields' => ['code', 'clientinfo_uid', 'type', $this->getService()->getModel()->getTitleField(), 'price', 'status', 'description'], + ]; + $this->init('index', $fields); + $this->modal_type = 'modal_iframe'; + return parent::index_process(); } - //Index,FieldForm관련. } diff --git a/app/Controllers/Admin/Device/PartController.php b/app/Controllers/Admin/Equipment/PartController.php similarity index 90% rename from app/Controllers/Admin/Device/PartController.php rename to app/Controllers/Admin/Equipment/PartController.php index 0b0ed27..4942585 100644 --- a/app/Controllers/Admin/Device/PartController.php +++ b/app/Controllers/Admin/Equipment/PartController.php @@ -1,16 +1,16 @@ _helper; } //Index,FieldForm관련 - protected function setValidation(Validation $validation, string $action, string $field, ?string $rule = null): Validation + protected function index_process(): array { - switch ($field) { - case 'role': - //아래 Rule Array는 필드명.* checkbox를 사용 - $validation->setRule("{$field}.*", $field, $rule); - break; - default: - $validation = parent::setValidation($validation, $action, $field, $rule); - break; - } - return $validation; + $fields = [ + 'fields' => ['code', 'clientinfo_uid', 'type', $this->getService()->getModel()->getTitleField(), 'price', 'status', 'description'], + ]; + $this->init('index', $fields); + $this->modal_type = 'modal_iframe'; + return parent::index_process(); } - //Index,FieldForm관련. } diff --git a/app/Controllers/Admin/Device/SoftwareController.php b/app/Controllers/Admin/Equipment/SoftwareController.php similarity index 89% rename from app/Controllers/Admin/Device/SoftwareController.php rename to app/Controllers/Admin/Equipment/SoftwareController.php index e0fab15..f60a244 100644 --- a/app/Controllers/Admin/Device/SoftwareController.php +++ b/app/Controllers/Admin/Equipment/SoftwareController.php @@ -1,16 +1,16 @@ ['user_uid', 'class_name', 'method_name', $this->getService()->getModel()::TITLE, 'status', 'created_at', 'content'], + 'fields' => ['user_uid', 'class_name', 'method_name', $this->getService()->getModel()->getTitleField(), 'status', 'created_at', 'content'], ]; $this->init('view', $fields); return parent::view_process($uid); @@ -74,7 +74,7 @@ class MyLogController extends AdminController protected function index_process(): array { $fields = [ - 'fields' => ['user_uid', 'class_name', 'method_name', $this->getService()->getModel()::TITLE, 'status', 'created_at'], + 'fields' => ['user_uid', 'class_name', 'method_name', $this->getService()->getModel()->getTitleField(), 'status', 'created_at'], ]; $this->init('index', $fields); return parent::index_process(); diff --git a/app/Controllers/Admin/UserController.php b/app/Controllers/Admin/UserController.php index 6373e51..f7a6eaf 100644 --- a/app/Controllers/Admin/UserController.php +++ b/app/Controllers/Admin/UserController.php @@ -54,11 +54,6 @@ class UserController extends AdminController } //Index,FieldForm관련. - public function getFields(): array - { - return ['id', 'passwd', 'confirmpassword', $this->getService()->getModel()::TITLE, 'email', 'mobile', 'role']; - } - protected function getResultPageByActon(string $action, string $message = MESSAGES["SUCCESS"]): RedirectResponse|string { switch ($action) { @@ -78,7 +73,7 @@ class UserController extends AdminController protected function view_process($uid): mixed { $fields = [ - 'fields' => ['id', $this->getService()->getModel()::TITLE, 'email', 'mobile', 'role', 'status'], + 'fields' => ['id', $this->getService()->getModel()->getTitleField(), 'email', 'mobile', 'role', 'status'], ]; $this->init('view', $fields); return parent::view_process($uid); @@ -86,7 +81,7 @@ class UserController extends AdminController protected function index_process(): array { $fields = [ - 'fields' => ['id', $this->getService()->getModel()::TITLE, 'email', 'mobile', 'role', 'status'], + 'fields' => ['id', $this->getService()->getModel()->getTitleField(), 'email', 'mobile', 'role', 'status'], ]; $this->init('index', $fields); return parent::index_process(); diff --git a/app/Database/erp2.vuerd.json b/app/Database/erp2.vuerd.json index 2d6f30a..064dfd9 100644 --- a/app/Database/erp2.vuerd.json +++ b/app/Database/erp2.vuerd.json @@ -4,13 +4,13 @@ "settings": { "width": 4000, "height": 4000, - "scrollTop": -2536.8226, - "scrollLeft": -1896.4925, - "zoomLevel": 0.76, + "scrollTop": -1693.9895, + "scrollLeft": -1471.6563, + "zoomLevel": 0.28, "show": 511, "database": 4, "databaseName": "", - "canvasType": "@dineug/erd-editor/builtin-schema-sql", + "canvasType": "ERD", "language": 1, "tableNameCase": 4, "columnNameCase": 2, @@ -88,7 +88,9 @@ "H3ufP8FbEnPlyFiHAggt0", "hEYDIiEFtsN5gxqTmDYC7", "9RdCu7ZeEew2uEQd55LeS", - "CzqHK01dxGEXEEcXqTeGZ" + "CzqHK01dxGEXEEcXqTeGZ", + "dzvA2g0z62LPmClZ32wPE", + "Trklw7votg2N3SEwtuiuX" ], "indexIds": [], "memoIds": [] @@ -124,15 +126,15 @@ "_Isvu_q8_Gsp82W0Lkk-r" ], "ui": { - "x": 193.2192, - "y": 2843.5555, + "x": 210.8662, + "y": 3496.4966, "zIndex": 2, "widthName": 60, "widthComment": 62, "color": "" }, "meta": { - "updateAt": 1745916324258, + "updateAt": 1747032513463, "createAt": 1745819764136 } }, @@ -171,15 +173,15 @@ "NVO-aO4GEW9DHdEV8XQq6" ], "ui": { - "x": 142.5947, - "y": 110.6356, + "x": 1170.0947, + "y": 848.1356, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1746408831933, + "updateAt": 1747033112963, "createAt": 1745819764137 } }, @@ -210,15 +212,15 @@ "ut3UlHsNjxqNgAzENBkfy" ], "ui": { - "x": 1156.4971, - "y": 592.9912, + "x": 281.2262, + "y": 475.1583, "zIndex": 2, "widthName": 64, "widthComment": 62, "color": "" }, "meta": { - "updateAt": 1746609971673, + "updateAt": 1747033098995, "createAt": 1745819764137 } }, @@ -228,6 +230,7 @@ "comment": "서버정보", "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1", + "F6TXYV3uwRzb-aZYCmf5x", "6QKQkCLEQNWLc1oF16LgN", "BAzGsBrmLOwZGYLchLmyP", "9F6QpQqxeEggZ0FHM81O1", @@ -240,6 +243,7 @@ ], "seqColumnIds": [ "F9EPb6nsDx6Tf3GG8rvP1", + "F6TXYV3uwRzb-aZYCmf5x", "6QKQkCLEQNWLc1oF16LgN", "BAzGsBrmLOwZGYLchLmyP", "9F6QpQqxeEggZ0FHM81O1", @@ -254,15 +258,15 @@ "6bQ_6eGfINic9LpM6PtDw" ], "ui": { - "x": 2193.7435, - "y": 1705.2319, + "x": 2219.1847, + "y": 2190.0849, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1746609401134, + "updateAt": 1747033339129, "createAt": 1745819764137 } }, @@ -295,15 +299,15 @@ "gQUT2v0Gg59R1SfKMhry3" ], "ui": { - "x": 2197.4409, - "y": 2293.6242, + "x": 2215.382, + "y": 3068.1831, "zIndex": 2, "widthName": 60, "widthComment": 77, "color": "" }, "meta": { - "updateAt": 1746783294854, + "updateAt": 1747033146817, "createAt": 1745819764138 } }, @@ -332,15 +336,15 @@ "D0lTirj9_pycie0SwZlUG" ], "ui": { - "x": 3153.684, - "y": 2284.0119, + "x": 3253.684, + "y": 3254.0119, "zIndex": 2, "widthName": 123, "widthComment": 118, "color": "" }, "meta": { - "updateAt": 1746783677668, + "updateAt": 1747033170257, "createAt": 1745819764138 } }, @@ -370,15 +374,15 @@ "8ZPjmeG3NoO6C0icGibJP" ], "ui": { - "x": 2194.6655, - "y": 2857.8121, + "x": 2213.9302, + "y": 3668.4005, "zIndex": 2, "widthName": 68, "widthComment": 89, "color": "" }, "meta": { - "updateAt": 1746783277722, + "updateAt": 1747033140004, "createAt": 1745819764138 } }, @@ -412,15 +416,15 @@ "liJON6hIBB9aS-pQgM0Q6" ], "ui": { - "x": 2193.1161, - "y": 1071.4117, + "x": 2205.6162, + "y": 1066.5589, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1746769052614, + "updateAt": 1747033197608, "createAt": 1745819764138 } }, @@ -451,15 +455,15 @@ "R-UjmO-S2UeQdddVNwH5M" ], "ui": { - "x": 2192.6819, - "y": 1415.3551, + "x": 2213.123, + "y": 1424.6199, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1746773436425, + "updateAt": 1747033204342, "createAt": 1745819764138 } }, @@ -531,15 +535,15 @@ "2SU_tNQXyQlsQc6WchJ04" ], "ui": { - "x": 155.1454, - "y": 1748.7777, + "x": 59.1454, + "y": 2404.7777, "zIndex": 2, "widthName": 60, "widthComment": 65, "color": "" }, "meta": { - "updateAt": 1745820132928, + "updateAt": 1747033271722, "createAt": 1745819764139 } }, @@ -565,15 +569,15 @@ "UCQyqc-F1swYRY6Qa3lIi" ], "ui": { - "x": 1168.3116, - "y": 1591.8223, + "x": 1180.0762, + "y": 2027.1164, "zIndex": 2, "widthName": 126, "widthComment": 94, "color": "" }, "meta": { - "updateAt": 1745915772006, + "updateAt": 1747032303062, "createAt": 1745819764139 } }, @@ -599,15 +603,15 @@ "EJHor6ZpIKpTwVp6raA_S" ], "ui": { - "x": 1168.1696, - "y": 2069.3949, + "x": 1174.052, + "y": 2498.8066, "zIndex": 2, "widthName": 115, "widthComment": 118, "color": "" }, "meta": { - "updateAt": 1746783846007, + "updateAt": 1747032295476, "createAt": 1745819764139 } }, @@ -633,15 +637,15 @@ "3v3JWUBHg3mAb4HmHPUP-" ], "ui": { - "x": 1181.4684, - "y": 2637.1597, + "x": 1160.8801, + "y": 2948.9244, "zIndex": 2, "widthName": 139, "widthComment": 130, "color": "" }, "meta": { - "updateAt": 1746783858479, + "updateAt": 1747032238203, "createAt": 1745819764139 } }, @@ -666,15 +670,15 @@ "kTwnu5ylJ22aQ7cBwn3pZ" ], "ui": { - "x": 1170.0737, - "y": 1356.6502, + "x": 1185.9561, + "y": 1505.7679, "zIndex": 2, "widthName": 104, "widthComment": 80, "color": "" }, "meta": { - "updateAt": 1746604113260, + "updateAt": 1747033241192, "createAt": 1745819764139 } }, @@ -699,15 +703,15 @@ "iYSERwWFGJgDi9-uEJfTS" ], "ui": { - "x": 1167.9223, - "y": 1113.6482, + "x": 1179.687, + "y": 1246.5895, "zIndex": 2, "widthName": 113, "widthComment": 94, "color": "" }, "meta": { - "updateAt": 1746604115178, + "updateAt": 1747033235777, "createAt": 1745819764139 } }, @@ -741,15 +745,15 @@ "6WOE-jsg5rFe2X04atr-Y" ], "ui": { - "x": 1145.6795, - "y": 24.016, + "x": 2148.1795, + "y": 479.016, "zIndex": 2, "widthName": 63, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1746609968777, + "updateAt": 1747033101874, "createAt": 1745819764140 } }, @@ -781,15 +785,15 @@ "qHceMMaFcmVnWPlJ2T4Sg" ], "ui": { - "x": 1166.3824, - "y": 3182.8708, + "x": 1186.9706, + "y": 3662.2826, "zIndex": 2, "widthName": 60, "widthComment": 81, "color": "" }, "meta": { - "updateAt": 1746409070281, + "updateAt": 1747032508302, "createAt": 1745819764142 } }, @@ -810,15 +814,15 @@ "QZeSgl1hDBgLHn8iG-S4s" ], "ui": { - "x": 3154.2473, - "y": 1581.7166, + "x": 3198.8062, + "y": 1853.3342, "zIndex": 143, "widthName": 100, "widthComment": 63, "color": "" }, "meta": { - "updateAt": 1746577034726, + "updateAt": 1747033222510, "createAt": 1745820710362 } }, @@ -850,15 +854,15 @@ "jav6q3L-HQhPYJBdcLIgz" ], "ui": { - "x": 1149.287, - "y": 306.2737, + "x": 1203.8458, + "y": 399.2148, "zIndex": 287, "widthName": 60, "widthComment": 62, "color": "" }, "meta": { - "updateAt": 1746609964264, + "updateAt": 1747033103246, "createAt": 1745914844735 } }, @@ -868,6 +872,7 @@ "comment": "네트워크장비정보", "columnIds": [ "r7fMKgeUcNq4FhYZPN3h8", + "HlUwkGDQIzvSXKilnVmeR", "cbdszvDa-AJcISTgkydfJ", "GwdDytCn1l984Y6piavyi", "DvwDCnsNxrcfqx6nTsbP4", @@ -879,6 +884,7 @@ ], "seqColumnIds": [ "r7fMKgeUcNq4FhYZPN3h8", + "HlUwkGDQIzvSXKilnVmeR", "cbdszvDa-AJcISTgkydfJ", "GwdDytCn1l984Y6piavyi", "kpG1Udq4ON9Ohj4ociOCo", @@ -894,15 +900,15 @@ "2rgItDTiBojLhyoJ4J-z-" ], "ui": { - "x": 2192.2604, - "y": 3123.884, + "x": 2201.231, + "y": 1794.7664, "zIndex": 401, "widthName": 65, "widthComment": 98, "color": "" }, "meta": { - "updateAt": 1746783275559, + "updateAt": 1747033317657, "createAt": 1745916349284 } }, @@ -927,15 +933,15 @@ "RZJESxJSfjv0xxD8DYnZy" ], "ui": { - "x": 1168.1295, - "y": 2928.7742, + "x": 1182.3246, + "y": 1770.9106, "zIndex": 428, "widthName": 137, "widthComment": 142, "color": "" }, "meta": { - "updateAt": 1746783341493, + "updateAt": 1747033243584, "createAt": 1746576203015 } }, @@ -966,15 +972,15 @@ "6cXp-rd8H2R4gxjOfTeTc" ], "ui": { - "x": 2196.3317, - "y": 2577.4928, + "x": 2209.7141, + "y": 3370.8752, "zIndex": 443, "widthName": 60, "widthComment": 78, "color": "" }, "meta": { - "updateAt": 1746783289610, + "updateAt": 1747033142912, "createAt": 1746783196108 } }, @@ -1004,15 +1010,15 @@ "mwVYv9PaJFpoxYvTRJ223" ], "ui": { - "x": 2197.5975, - "y": 2012.9361, + "x": 2211.7152, + "y": 2778.3776, "zIndex": 495, "widthName": 60, "widthComment": 79, "color": "" }, "meta": { - "updateAt": 1746783580549, + "updateAt": 1747033150267, "createAt": 1746783410914 } }, @@ -1056,15 +1062,15 @@ "VzuPW7xCYQCRJ5S3m5qU1" ], "ui": { - "x": 1169.5808, - "y": 1826.7818, + "x": 1175.4631, + "y": 2253.2524, "zIndex": 547, "widthName": 114, "widthComment": 117, "color": "" }, "meta": { - "updateAt": 1746783838373, + "updateAt": 1747032298638, "createAt": 1746783705263 } }, @@ -1089,15 +1095,15 @@ "wmXNFR-tG6TMhBZH9usq2" ], "ui": { - "x": 1168.3151, - "y": 2302.7313, + "x": 1168.315, + "y": 2732.1431, "zIndex": 592, "widthName": 115, "widthComment": 119, "color": "" }, "meta": { - "updateAt": 1746783978924, + "updateAt": 1747032292209, "createAt": 1746783866428 } }, @@ -1119,6 +1125,69 @@ "updateAt": 1746783939405, "createAt": 1746783939405 } + }, + "T-aAH59sOSNr6TdUbOGNm": { + "id": "T-aAH59sOSNr6TdUbOGNm", + "name": "clientinfos_serverinfos", + "comment": "소유자_장비 연결", + "columnIds": [ + "TMWvTqGl4LsAGwujQ1Ej2", + "OWh0eBheafnaAraiKcG5D", + "ZxkaWAlThwzbADqyDPMeV", + "818RPiE_qxXfiJ7zGfQXF" + ], + "seqColumnIds": [ + "TMWvTqGl4LsAGwujQ1Ej2", + "OWh0eBheafnaAraiKcG5D", + "ZxkaWAlThwzbADqyDPMeV", + "hrMeKE4M3XlfBWoQPsHKB", + "BL0nCNl3EILhE2nwb5aMb", + "7RGmvQ8u3Yx0D2gKokE4j", + "OYSqcoDUJkReVbtf9aj1B", + "GE8m9_gWzv3f_8wQ2mndn", + "818RPiE_qxXfiJ7zGfQXF" + ], + "ui": { + "x": 1180.6871, + "y": 1133.6675, + "zIndex": 595, + "widthName": 118, + "widthComment": 94, + "color": "" + }, + "meta": { + "updateAt": 1747032402973, + "createAt": 1747031797136 + } + }, + "itFYsEk62Kbat4LrIKmUn": { + "id": "itFYsEk62Kbat4LrIKmUn", + "name": "clientinfos_networkinfos", + "comment": "소유자_네트워크장비 연결", + "columnIds": [ + "AE58JmL3wAsx2gmB2dHuH", + "IKHyOxgbE7VPvy3z65PF2", + "jTgQrDoraWjifIoU8XaJU", + "cCNC6MvSe770G35EW319U" + ], + "seqColumnIds": [ + "AE58JmL3wAsx2gmB2dHuH", + "IKHyOxgbE7VPvy3z65PF2", + "jTgQrDoraWjifIoU8XaJU", + "cCNC6MvSe770G35EW319U" + ], + "ui": { + "x": 1184.3248, + "y": 936.6861, + "zIndex": 626, + "widthName": 130, + "widthComment": 142, + "color": "" + }, + "meta": { + "updateAt": 1747032407994, + "createAt": 1747032054183 + } } }, "tableColumnEntities": { @@ -1727,18 +1796,18 @@ "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", "name": "type", "comment": "", - "dataType": "VHARCHAR(20)", + "dataType": "VARCHAR(20)", "default": "'server'", "options": 8, "ui": { "keys": 0, "widthName": 60, "widthComment": 60, - "widthDataType": 84, + "widthDataType": 75, "widthDefault": 60 }, "meta": { - "updateAt": 1746606280820, + "updateAt": 1747020048606, "createAt": 1745819764138 } }, @@ -6041,6 +6110,306 @@ "updateAt": 1746783988130, "createAt": 1746783975606 } + }, + "OWh0eBheafnaAraiKcG5D": { + "id": "OWh0eBheafnaAraiKcG5D", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "clientinfo_uid", + "comment": "소유자", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 73, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747032039663, + "createAt": 1747031912541 + } + }, + "TMWvTqGl4LsAGwujQ1Ej2": { + "id": "TMWvTqGl4LsAGwujQ1Ej2", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031931015, + "createAt": 1747031925811 + } + }, + "hrMeKE4M3XlfBWoQPsHKB": { + "id": "hrMeKE4M3XlfBWoQPsHKB", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "clientinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 73, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031925811, + "createAt": 1747031925811 + } + }, + "BL0nCNl3EILhE2nwb5aMb": { + "id": "BL0nCNl3EILhE2nwb5aMb", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "title", + "comment": "", + "dataType": "VARCHAR(255)", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 81, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031925812, + "createAt": 1747031925811 + } + }, + "7RGmvQ8u3Yx0D2gKokE4j": { + "id": "7RGmvQ8u3Yx0D2gKokE4j", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "alias", + "comment": "입출금자명", + "dataType": "VARCHAR(50)", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 62, + "widthDataType": 75, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031925812, + "createAt": 1747031925812 + } + }, + "OYSqcoDUJkReVbtf9aj1B": { + "id": "OYSqcoDUJkReVbtf9aj1B", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "deposit", + "comment": "압금", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031925812, + "createAt": 1747031925812 + } + }, + "GE8m9_gWzv3f_8wQ2mndn": { + "id": "GE8m9_gWzv3f_8wQ2mndn", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "withdrawal", + "comment": "출금", + "dataType": "INT", + "default": "0", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747031925812, + "createAt": 1747031925812 + } + }, + "818RPiE_qxXfiJ7zGfQXF": { + "id": "818RPiE_qxXfiJ7zGfQXF", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747031925812, + "createAt": 1747031925812 + } + }, + "ZxkaWAlThwzbADqyDPMeV": { + "id": "ZxkaWAlThwzbADqyDPMeV", + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747032028109, + "createAt": 1747032014572 + } + }, + "IKHyOxgbE7VPvy3z65PF2": { + "id": "IKHyOxgbE7VPvy3z65PF2", + "tableId": "itFYsEk62Kbat4LrIKmUn", + "name": "clientinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 73, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747032134956, + "createAt": 1747032110597 + } + }, + "AE58JmL3wAsx2gmB2dHuH": { + "id": "AE58JmL3wAsx2gmB2dHuH", + "tableId": "itFYsEk62Kbat4LrIKmUn", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 11, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747032121367, + "createAt": 1747032117377 + } + }, + "cCNC6MvSe770G35EW319U": { + "id": "cCNC6MvSe770G35EW319U", + "tableId": "itFYsEk62Kbat4LrIKmUn", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1747032117377, + "createAt": 1747032117377 + } + }, + "jTgQrDoraWjifIoU8XaJU": { + "id": "jTgQrDoraWjifIoU8XaJU", + "tableId": "itFYsEk62Kbat4LrIKmUn", + "name": "networkinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 87, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747032180763, + "createAt": 1747032168094 + } + }, + "HlUwkGDQIzvSXKilnVmeR": { + "id": "HlUwkGDQIzvSXKilnVmeR", + "tableId": "xrgAG9Zc_whfxTeGQ2fqx", + "name": "clientinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 0, + "ui": { + "keys": 2, + "widthName": 73, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747033328600, + "createAt": 1747033067366 + } + }, + "F6TXYV3uwRzb-aZYCmf5x": { + "id": "F6TXYV3uwRzb-aZYCmf5x", + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "name": "clientinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 0, + "ui": { + "keys": 2, + "widthName": 73, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1747033357069, + "createAt": 1747033130118 + } } }, "relationshipEntities": { @@ -6054,18 +6423,18 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 673.5947, - "y": 377.3022666666667, - "direction": 2 + "x": 1170.0947, + "y": 928.1356, + "direction": 1 }, "end": { "tableId": "GDEF0_WuOpaYtsZxjn2zM", "columnIds": [ "nPYun5WHoy8uroXUBiqh8" ], - "x": 1156.4971, - "y": 704.9912, - "direction": 1 + "x": 797.2262000000001, + "y": 587.1583, + "direction": 2 }, "meta": { "updateAt": 1746604503019, @@ -6082,8 +6451,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2715.7435, - "y": 1927.2319, + "x": 2732.1847, + "y": 2430.0849, "direction": 2 }, "end": { @@ -6091,8 +6460,8 @@ "columnIds": [ "pDILaJt_-vUo0fH_c6t2O" ], - "x": 3153.684, - "y": 2306.4119, + "x": 3253.684, + "y": 3276.4119, "direction": 1 }, "meta": { @@ -6110,8 +6479,8 @@ "columnIds": [ "7fB6MgwIX6jMpD6d2Sq7k" ], - "x": 2694.4409, - "y": 2429.6242, + "x": 2712.382, + "y": 3204.1831, "direction": 2 }, "end": { @@ -6119,8 +6488,8 @@ "columnIds": [ "5kPFX9LYoh8iinAEpt3lm" ], - "x": 3153.684, - "y": 2396.0119000000004, + "x": 3253.684, + "y": 3366.0119000000004, "direction": 1 }, "meta": { @@ -6138,18 +6507,18 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 408.0947, - "y": 430.6356, - "direction": 8 + "x": 1170.0947, + "y": 1088.1356, + "direction": 1 }, "end": { "tableId": "kc1EFvFhlBSc0B0bDgX28", "columnIds": [ "sscrxOdwLlx94tx1j_MrH" ], - "x": 427.92719999999997, - "y": 824.4514, - "direction": 4 + "x": 686.9272, + "y": 864.4514, + "direction": 2 }, "meta": { "updateAt": 1746604543098, @@ -6166,7 +6535,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 220.72719999999998, + "x": 212.09386666666666, "y": 1144.4514, "direction": 8 }, @@ -6175,8 +6544,8 @@ "columnIds": [ "bEnLVhafLMHZluEaYba4n" ], - "x": 456.1454, - "y": 1748.7777, + "x": 360.1454, + "y": 2404.7777, "direction": 4 }, "meta": { @@ -6194,17 +6563,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.9272, - "y": 1024.4514, - "direction": 2 + "x": 643.7605333333333, + "y": 1144.4514, + "direction": 8 }, "end": { "tableId": "sgFc3Tg9sWiMm4hsEwKm9", "columnIds": [ "zG8_7CN0n4heTPXcS1V8e" ], - "x": 1168.3116, - "y": 1691.8223, + "x": 1180.0762, + "y": 2127.1164, "direction": 1 }, "meta": { @@ -6222,8 +6591,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2193.7435, - "y": 1853.2319, + "x": 2219.1847, + "y": 2350.0849, "direction": 1 }, "end": { @@ -6231,8 +6600,8 @@ "columnIds": [ "uNqzMzAALwe_V_QA41OFW" ], - "x": 1683.3116, - "y": 1691.8223, + "x": 1695.0762, + "y": 2127.1164, "direction": 2 }, "meta": { @@ -6250,7 +6619,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 427.92719999999997, + "x": 471.0938666666666, "y": 1144.4514, "direction": 8 }, @@ -6259,8 +6628,8 @@ "columnIds": [ "ywDnRAz0bbHUceo-EmLgZ" ], - "x": 1168.1696, - "y": 2169.3949, + "x": 1174.052, + "y": 2598.8066, "direction": 1 }, "meta": { @@ -6278,8 +6647,8 @@ "columnIds": [ "7fB6MgwIX6jMpD6d2Sq7k" ], - "x": 2197.4409, - "y": 2429.6242, + "x": 2215.382, + "y": 3204.1831, "direction": 1 }, "end": { @@ -6287,8 +6656,8 @@ "columnIds": [ "sn3p4UDiY4D9XJS4odHbP" ], - "x": 1683.1696, - "y": 2169.3949, + "x": 1689.052, + "y": 2598.8066, "direction": 2 }, "meta": { @@ -6306,7 +6675,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 635.1272, + "x": 298.42719999999997, "y": 1144.4514, "direction": 8 }, @@ -6315,8 +6684,8 @@ "columnIds": [ "CgGKx59wNvLpWcoBrEuvK" ], - "x": 1181.4684, - "y": 2737.1597, + "x": 1160.8801, + "y": 3048.9244, "direction": 1 }, "meta": { @@ -6334,8 +6703,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 2194.6655, - "y": 2981.8121, + "x": 2213.9302, + "y": 3792.4005, "direction": 1 }, "end": { @@ -6343,8 +6712,8 @@ "columnIds": [ "AKpf8UbHiwRJll36PQR6f" ], - "x": 1705.4684, - "y": 2737.1597, + "x": 1684.8801, + "y": 3048.9244, "direction": 2 }, "meta": { @@ -6363,7 +6732,7 @@ "nb5CGzskl3_LIRA0yyede" ], "x": 686.9272, - "y": 944.4514, + "y": 1024.4514, "direction": 2 }, "end": { @@ -6371,8 +6740,8 @@ "columnIds": [ "jw-RY9uJDPlANghUUPnJ4" ], - "x": 1170.0737, - "y": 1456.6502, + "x": 1185.9561, + "y": 1605.7679, "direction": 1 }, "meta": { @@ -6388,8 +6757,8 @@ "start": { "tableId": "ZLEpY5EjuZV21718zf-Y1", "columnIds": [], - "x": 2192.6819, - "y": 1527.3551, + "x": 2213.123, + "y": 1536.6199, "direction": 1 }, "end": { @@ -6397,8 +6766,8 @@ "columnIds": [ "fdfaSp8HaDoxD96LL1tX4" ], - "x": 1685.0737, - "y": 1456.6502, + "x": 1700.9561, + "y": 1605.7679, "direction": 2 }, "meta": { @@ -6417,7 +6786,7 @@ "nb5CGzskl3_LIRA0yyede" ], "x": 686.9272, - "y": 864.4514, + "y": 944.4514, "direction": 2 }, "end": { @@ -6425,8 +6794,8 @@ "columnIds": [ "fDS7QeP4XnANQE_qEtGsY" ], - "x": 1167.9223, - "y": 1213.6482, + "x": 1179.687, + "y": 1346.5895, "direction": 1 }, "meta": { @@ -6444,8 +6813,8 @@ "columnIds": [ "7B0zaLoZnOoMNW8OHZlrQ" ], - "x": 2193.1161, - "y": 1207.4117, + "x": 2205.6162, + "y": 1202.5589, "direction": 1 }, "end": { @@ -6453,8 +6822,8 @@ "columnIds": [ "dDoAacc03mr5Qr0bIwlN6" ], - "x": 1682.9223, - "y": 1213.6482, + "x": 1694.687, + "y": 1346.5895, "direction": 2 }, "meta": { @@ -6472,8 +6841,8 @@ "columnIds": [ "mfHtgzc_Aeocr6xkgwYWh" ], - "x": 696.2192, - "y": 2991.5555, + "x": 713.8661999999999, + "y": 3644.4966, "direction": 2 }, "end": { @@ -6481,8 +6850,8 @@ "columnIds": [ "DGl10GI58QwOHwpTu4Z1Y" ], - "x": 1166.3824, - "y": 3306.8708, + "x": 1186.9706, + "y": 3786.2826, "direction": 1 }, "meta": { @@ -6500,8 +6869,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 2715.7435, - "y": 1779.2319, + "x": 2732.1847, + "y": 2270.0849, "direction": 2 }, "end": { @@ -6509,8 +6878,8 @@ "columnIds": [ "eh3Ubc6NIftsQEbE3kq-v" ], - "x": 3154.2473, - "y": 1695.7166, + "x": 3198.8062, + "y": 1967.3342, "direction": 1 }, "meta": { @@ -6528,8 +6897,8 @@ "columnIds": [ "Id0h8QbOdlhPj9P1zTm5o" ], - "x": 2690.6819, - "y": 1527.3551, + "x": 2711.123, + "y": 1536.6199, "direction": 2 }, "end": { @@ -6537,8 +6906,8 @@ "columnIds": [ "-VaB7wQ3cQKai3peK85u8" ], - "x": 3154.2473, - "y": 1619.7166, + "x": 3198.8062, + "y": 1891.3342, "direction": 1 }, "meta": { @@ -6556,8 +6925,8 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 673.5947, - "y": 163.96893333333333, + "x": 1701.0947, + "y": 901.4689333333332, "direction": 2 }, "end": { @@ -6565,8 +6934,8 @@ "columnIds": [ "35XbdvgOzpNdasPnMcbkx" ], - "x": 1145.6795, - "y": 124.01599999999999, + "x": 2148.1795, + "y": 579.0160000000001, "direction": 1 }, "meta": { @@ -6584,18 +6953,18 @@ "columnIds": [ "_AcWUYKzNJd-V0fRHq8Cx" ], - "x": 673.5947, - "y": 270.6356, - "direction": 2 + "x": 1435.5947, + "y": 848.1356, + "direction": 4 }, "end": { "tableId": "5AUwJum9FKPCoYRMBhLnF", "columnIds": [ "PyXYmokQzpzzT08WTmtsN" ], - "x": 1149.287, - "y": 406.2737, - "direction": 1 + "x": 1460.8458, + "y": 599.2148, + "direction": 8 }, "meta": { "updateAt": 1745914916196, @@ -6612,17 +6981,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 324.32719999999995, - "y": 1144.4514, - "direction": 8 + "x": 686.9272, + "y": 1104.4514, + "direction": 2 }, "end": { "tableId": "CYHveKA03TPJiz6X5wq2L", "columnIds": [ "RtHk4GL4mwwGvwZ0UAoXQ" ], - "x": 1168.1295, - "y": 3028.7742, + "x": 1182.3246, + "y": 1870.9106, "direction": 1 }, "meta": { @@ -6640,8 +7009,8 @@ "columnIds": [ "7B0zaLoZnOoMNW8OHZlrQ" ], - "x": 2444.6161, - "y": 1343.4117, + "x": 2457.1162, + "y": 1338.5589, "direction": 8 }, "end": { @@ -6649,8 +7018,8 @@ "columnIds": [ "f7_MGvRjkwL1xkCWrAgDR" ], - "x": 2441.6819, - "y": 1415.3551, + "x": 2462.123, + "y": 1424.6199, "direction": 4 }, "meta": { @@ -6668,8 +7037,8 @@ "columnIds": [ "r7fMKgeUcNq4FhYZPN3h8" ], - "x": 2192.2604, - "y": 3259.884, + "x": 2201.231, + "y": 2016.7664, "direction": 1 }, "end": { @@ -6677,8 +7046,8 @@ "columnIds": [ "2DXZGT0BJwjeij0IKXFa1" ], - "x": 1690.1295, - "y": 3028.7742, + "x": 1704.3246, + "y": 1870.9106, "direction": 2 }, "meta": { @@ -6696,8 +7065,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 2691.6655, - "y": 2981.8121, + "x": 2710.9302, + "y": 3792.4005, "direction": 2 }, "end": { @@ -6705,8 +7074,8 @@ "columnIds": [ "dLOesaVz9GnwntiIyvxwW" ], - "x": 3153.684, - "y": 2485.611900000001, + "x": 3253.684, + "y": 3455.611900000001, "direction": 1 }, "meta": { @@ -6752,8 +7121,8 @@ "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT" ], - "x": 2694.5975, - "y": 2136.9361, + "x": 2708.7152, + "y": 2902.3776, "direction": 2 }, "end": { @@ -6761,8 +7130,8 @@ "columnIds": [ "7oTkP7etYsNgI6J6xQZVG" ], - "x": 3153.684, - "y": 2351.2119000000002, + "x": 3253.684, + "y": 3321.2119000000002, "direction": 1 }, "meta": { @@ -6780,8 +7149,8 @@ "columnIds": [ "q8oHp8wqEn6w_wOyWwvPo" ], - "x": 2693.3317, - "y": 2713.4928, + "x": 2706.7141, + "y": 3506.8752, "direction": 2 }, "end": { @@ -6789,8 +7158,8 @@ "columnIds": [ "qHwMDFU4dV5frDXsuW445" ], - "x": 3153.684, - "y": 2440.8119000000006, + "x": 3253.684, + "y": 3410.8119000000006, "direction": 1 }, "meta": { @@ -6808,17 +7177,17 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 686.9272, - "y": 1104.4514, - "direction": 2 + "x": 557.4272, + "y": 1144.4514, + "direction": 8 }, "end": { "tableId": "gYqhvNLZjWrQk8LNKH3il", "columnIds": [ "YKXKsIEJE-vmIMQd5ZUMC" ], - "x": 1169.5808, - "y": 1926.7818, + "x": 1175.4631, + "y": 2353.2524, "direction": 1 }, "meta": { @@ -6836,8 +7205,8 @@ "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT" ], - "x": 2197.5975, - "y": 2136.9361, + "x": 2211.7152, + "y": 2902.3776, "direction": 1 }, "end": { @@ -6845,8 +7214,8 @@ "columnIds": [ "ox7xu7XaYBZyB2alu2HcK" ], - "x": 1684.5808, - "y": 1926.7818, + "x": 1690.4631, + "y": 2353.2524, "direction": 2 }, "meta": { @@ -6864,7 +7233,7 @@ "columnIds": [ "nb5CGzskl3_LIRA0yyede" ], - "x": 531.5272, + "x": 384.7605333333333, "y": 1144.4514, "direction": 8 }, @@ -6873,8 +7242,8 @@ "columnIds": [ "KwM9EZ1tNuO7Pb_WD389k" ], - "x": 1168.3151, - "y": 2402.7313, + "x": 1168.315, + "y": 2832.1431, "direction": 1 }, "meta": { @@ -6892,8 +7261,8 @@ "columnIds": [ "q8oHp8wqEn6w_wOyWwvPo" ], - "x": 2196.3317, - "y": 2713.4928, + "x": 2209.7141, + "y": 3506.8752, "direction": 1 }, "end": { @@ -6901,14 +7270,182 @@ "columnIds": [ "HVYYqMWNfn6FArWDYKtbD" ], - "x": 1683.3151, - "y": 2402.7313, + "x": 1683.315, + "y": 2832.1431, "direction": 2 }, "meta": { "updateAt": 1746783975606, "createAt": 1746783975606 } + }, + "WzZmsRAw4JdkIQsi-HCOq": { + "id": "WzZmsRAw4JdkIQsi-HCOq", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "6ajvOCaGuXU9pzV0Y9jEi", + "columnIds": [ + "_AcWUYKzNJd-V0fRHq8Cx" + ], + "x": 673.5947, + "y": 398.6356, + "direction": 2 + }, + "end": { + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "columnIds": [ + "OWh0eBheafnaAraiKcG5D" + ], + "x": 1180.6871, + "y": 1209.6675, + "direction": 1 + }, + "meta": { + "updateAt": 1747031912541, + "createAt": 1747031912541 + } + }, + "LpPaH4pRUn0U836Oxn2h8": { + "id": "LpPaH4pRUn0U836Oxn2h8", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 2196.6847, + "y": 2161.5849, + "direction": 1 + }, + "end": { + "tableId": "T-aAH59sOSNr6TdUbOGNm", + "columnIds": [ + "ZxkaWAlThwzbADqyDPMeV" + ], + "x": 1681.6871, + "y": 1209.6675, + "direction": 2 + }, + "meta": { + "updateAt": 1747032014573, + "createAt": 1747032014573 + } + }, + "gZWxiGVxIRao1kOuaxdiU": { + "id": "gZWxiGVxIRao1kOuaxdiU", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "6ajvOCaGuXU9pzV0Y9jEi", + "columnIds": [ + "_AcWUYKzNJd-V0fRHq8Cx" + ], + "x": 673.5947, + "y": 334.6356, + "direction": 2 + }, + "end": { + "tableId": "itFYsEk62Kbat4LrIKmUn", + "columnIds": [ + "IKHyOxgbE7VPvy3z65PF2" + ], + "x": 1184.3248, + "y": 1012.6861, + "direction": 1 + }, + "meta": { + "updateAt": 1747032110597, + "createAt": 1747032110597 + } + }, + "I26OJ4iYBO5kLWX4g2LJV": { + "id": "I26OJ4iYBO5kLWX4g2LJV", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "xrgAG9Zc_whfxTeGQ2fqx", + "columnIds": [ + "r7fMKgeUcNq4FhYZPN3h8" + ], + "x": 2168.731, + "y": 1247.7664, + "direction": 1 + }, + "end": { + "tableId": "itFYsEk62Kbat4LrIKmUn", + "columnIds": [ + "jTgQrDoraWjifIoU8XaJU" + ], + "x": 1696.3248, + "y": 1012.6861, + "direction": 2 + }, + "meta": { + "updateAt": 1747032168094, + "createAt": 1747032168094 + } + }, + "dzvA2g0z62LPmClZ32wPE": { + "id": "dzvA2g0z62LPmClZ32wPE", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 1, + "start": { + "tableId": "6ajvOCaGuXU9pzV0Y9jEi", + "columnIds": [ + "_AcWUYKzNJd-V0fRHq8Cx" + ], + "x": 1701.0947, + "y": 1008.1355999999998, + "direction": 2 + }, + "end": { + "tableId": "xrgAG9Zc_whfxTeGQ2fqx", + "columnIds": [ + "HlUwkGDQIzvSXKilnVmeR" + ], + "x": 2201.231, + "y": 1868.7664, + "direction": 1 + }, + "meta": { + "updateAt": 1747033067366, + "createAt": 1747033067366 + } + }, + "Trklw7votg2N3SEwtuiuX": { + "id": "Trklw7votg2N3SEwtuiuX", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 1, + "start": { + "tableId": "6ajvOCaGuXU9pzV0Y9jEi", + "columnIds": [ + "_AcWUYKzNJd-V0fRHq8Cx" + ], + "x": 1701.0947, + "y": 1114.8022666666666, + "direction": 2 + }, + "end": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F6TXYV3uwRzb-aZYCmf5x" + ], + "x": 2475.6847, + "y": 2190.0849, + "direction": 4 + }, + "meta": { + "updateAt": 1747033130118, + "createAt": 1747033130118 + } } }, "indexEntities": {}, diff --git a/app/Entities/Device/NetworkEntity.php b/app/Entities/Device/NetworkEntity.php deleted file mode 100644 index 4e95063..0000000 --- a/app/Entities/Device/NetworkEntity.php +++ /dev/null @@ -1,16 +0,0 @@ -attributes['amount']; - } -} diff --git a/app/Entities/Device/RackEntity.php b/app/Entities/Device/RackEntity.php deleted file mode 100644 index 3706ed5..0000000 --- a/app/Entities/Device/RackEntity.php +++ /dev/null @@ -1,16 +0,0 @@ -attributes['amount']; - } -} diff --git a/app/Entities/Device/ServerEntity.php b/app/Entities/Device/ServerEntity.php deleted file mode 100644 index 8341c32..0000000 --- a/app/Entities/Device/ServerEntity.php +++ /dev/null @@ -1,16 +0,0 @@ -attributes['amount']; - } -} diff --git a/app/Entities/Device/DeviceEntity.php b/app/Entities/Equipment/EquipmentEntity.php similarity index 74% rename from app/Entities/Device/DeviceEntity.php rename to app/Entities/Equipment/EquipmentEntity.php index ef6ea37..d52fb07 100644 --- a/app/Entities/Device/DeviceEntity.php +++ b/app/Entities/Equipment/EquipmentEntity.php @@ -1,10 +1,10 @@ $extra_class, ...array_diff_key($extras, ['class' => ''])]); break; case 'description': - $extra_class = isset($extras['class']) ? $extras['class'] . ' calender' : 'calender'; + $extra_class = isset($extras['class']) ? $extras['class'] . ' tinymce' : 'tinymce'; $form = form_textarea($field, $value ?? "", ['id' => $field, 'class' => $extra_class, ...array_diff_key($extras, ['class' => ''])]); break; default: @@ -311,6 +312,7 @@ class CommonHelper break; case 'updated_at': case 'created_at': + case 'manufactur_at': $value = $value ? date("Y-m-d", strtotime($value)) : ""; break; default: diff --git a/app/Helpers/Device/NetworkHelper.php b/app/Helpers/Device/NetworkHelper.php deleted file mode 100644 index c0af99a..0000000 --- a/app/Helpers/Device/NetworkHelper.php +++ /dev/null @@ -1,16 +0,0 @@ -setTitleField(field: NetworkModel::TITLE); - } -} diff --git a/app/Helpers/Device/DeviceHelper.php b/app/Helpers/Equipment/EquipmentHelper.php similarity index 94% rename from app/Helpers/Device/DeviceHelper.php rename to app/Helpers/Equipment/EquipmentHelper.php index 9224126..11afc12 100644 --- a/app/Helpers/Device/DeviceHelper.php +++ b/app/Helpers/Equipment/EquipmentHelper.php @@ -1,11 +1,11 @@ setTitleField(field: NetworkModel::TITLE); + } + + // public function getListButton(string $action, array $viewDatas, array $extras = []): string + // { + // switch ($action) { + // case 'create': + // $extras = ["class" => "btn btn-outline btn-primary btn-circle", "target" => "_self", ...$extras]; + // $action = anchor( + // current_url() . '/' . $action . '?' . $this->request->getUri()->getQuery(), + // '입력', + // $extras + // ); + // break; + // default: + // $action = parent::getListButton($action, $viewDatas, $extras); + // break; + // } + // return $action; + // } +} diff --git a/app/Helpers/Device/PartHelper.php b/app/Helpers/Equipment/PartHelper.php similarity index 71% rename from app/Helpers/Device/PartHelper.php rename to app/Helpers/Equipment/PartHelper.php index 38f105e..ae729f7 100644 --- a/app/Helpers/Device/PartHelper.php +++ b/app/Helpers/Equipment/PartHelper.php @@ -1,11 +1,11 @@ "네트워크장비정보", 'label' => [ + 'clientinfo_uid' => "소유자명", 'code' => "코드", 'type' => "종류", - 'model' => "제목", + 'model' => "모델", 'price' => "금액", 'description' => "설명", 'status' => "상태", @@ -18,7 +19,9 @@ return [ "TYPE" => [ "L2" => "L2", "L3" => "L3", - "Backbone" => "Backbone", + "L4" => "L4", + "Router" => "Router", + "colocation" => "코로케이션", ], "STATUS" => [ "use" => "사용", diff --git a/app/Language/en/Equipment/Server.php b/app/Language/en/Equipment/Server.php new file mode 100644 index 0000000..e69f723 --- /dev/null +++ b/app/Language/en/Equipment/Server.php @@ -0,0 +1,34 @@ + "서버장비정보", + 'label' => [ + 'clientinfo_uid' => "소유자명", + 'code' => "코드", + 'type' => "종류", + 'model' => "모델", + 'price' => "금액", + 'description' => "설명", + 'status' => "상태", + 'manufactur_at' => "제조일", + 'updated_at' => "수정일", + 'created_at' => "작성일", + ], + 'DEFAULTS' => [ + 'type' => 'L2', + 'status' => "use" + ], + "TYPE" => [ + "normal" => "일반", + "kcs" => "KCS", + "vpc" => "VPC", + "jcs" => "JCS", + "VPN" => "VPN", + "defence" => "방어", + "colocation" => "코로케이션", + ], + "STATUS" => [ + "use" => "사용", + "pause" => "수리중", + "occupied" => "사용중", + ], +]; diff --git a/app/Models/CommonModel.php b/app/Models/CommonModel.php index b57207b..f45ff19 100644 --- a/app/Models/CommonModel.php +++ b/app/Models/CommonModel.php @@ -50,8 +50,6 @@ abstract class CommonModel extends Model { parent::__construct(); } - abstract public function getFilterFields(): array; - abstract public function getBatchJobFields(): array; final public function getTable(): string { return constant("static::TABLE"); @@ -207,6 +205,8 @@ abstract class CommonModel extends Model foreach (array_keys($formDatas) as $field) { $entity->$field = $this->convertEntityData($field, $formDatas); } + //수정일추가 + $entity->updated_at = date("Y-m-d H:i:s"); LogCollector::debug("[{$entity->getPK()}/{$entity->getTitle()}] 변경 후 내용"); LogCollector::debug(var_export($entity->toArray(), true)); return $this->save_process($entity); diff --git a/app/Models/Customer/AccountModel.php b/app/Models/Customer/AccountModel.php index ae86274..4c6843a 100644 --- a/app/Models/Customer/AccountModel.php +++ b/app/Models/Customer/AccountModel.php @@ -18,19 +18,12 @@ class AccountModel extends CustomerModel "alias", "title", "amount", + "updated_at" ]; public function __construct() { parent::__construct(); } - public function getFilterFields(): array - { - return ["clientinfo_uid", 'status']; - } - public function getBatchJobFields(): array - { - return ['status']; - } public function getFieldRule(string $action, string $field): string { if (is_array($field)) { diff --git a/app/Models/Customer/ClientModel.php b/app/Models/Customer/ClientModel.php index 4b33cfc..904d4e5 100644 --- a/app/Models/Customer/ClientModel.php +++ b/app/Models/Customer/ClientModel.php @@ -20,20 +20,13 @@ class ClientModel extends CustomerModel "account_balance", "coupon_balance", "point_balance", - "status" + "status", + "updated_at" ]; public function __construct() { parent::__construct(); } - public function getFilterFields(): array - { - return ['role', 'status']; - } - public function getBatchJobFields(): array - { - return ['status']; - } public function getFieldRule(string $action, string $field): string { if (is_array($field)) { diff --git a/app/Models/Customer/CouponModel.php b/app/Models/Customer/CouponModel.php index 287c829..3b55796 100644 --- a/app/Models/Customer/CouponModel.php +++ b/app/Models/Customer/CouponModel.php @@ -17,19 +17,12 @@ class CouponModel extends CustomerModel "status", "title", "amount", + "updated_at" ]; public function __construct() { parent::__construct(); } - public function getFilterFields(): array - { - return ["clientinfo_uid", 'status']; - } - public function getBatchJobFields(): array - { - return ['status']; - } public function getFieldRule(string $action, string $field): string { if (is_array($field)) { diff --git a/app/Models/Customer/PointModel.php b/app/Models/Customer/PointModel.php index 69e620c..1ed3f60 100644 --- a/app/Models/Customer/PointModel.php +++ b/app/Models/Customer/PointModel.php @@ -17,19 +17,12 @@ class PointModel extends CustomerModel "status", "title", "amount", + "updated_at" ]; public function __construct() { parent::__construct(); } - public function getFilterFields(): array - { - return ["clientinfo_uid", 'status']; - } - public function getBatchJobFields(): array - { - return ['status']; - } public function getFieldRule(string $action, string $field): string { if (is_array($field)) { diff --git a/app/Models/Device/DeviceModel.php b/app/Models/Equipment/EquipmentModel.php similarity index 59% rename from app/Models/Device/DeviceModel.php rename to app/Models/Equipment/EquipmentModel.php index 6f4fb98..ddefe8a 100644 --- a/app/Models/Device/DeviceModel.php +++ b/app/Models/Equipment/EquipmentModel.php @@ -1,10 +1,10 @@ field가 array 입니다.\n" . var_export($field, true)); } switch ($field) { + case "clientinfo_uid": + $rule = "if_exist|numeric"; + break; case "price": $rule = "required|numeric"; break; @@ -45,6 +42,9 @@ class NetworkModel extends DeviceModel case "model": $rule = "required|trim|string"; break; + case "type": + $rule = "required|in_list[L2,L3,L4,Router]"; + break; case "status": $rule = "required|in_list[use,pause,occupied]"; break; diff --git a/app/Models/Device/PartModel.php b/app/Models/Equipment/PartModel.php similarity index 80% rename from app/Models/Device/PartModel.php rename to app/Models/Equipment/PartModel.php index f3908d7..6d1e473 100644 --- a/app/Models/Device/PartModel.php +++ b/app/Models/Equipment/PartModel.php @@ -1,10 +1,10 @@ getEntity(['id' => $formDatas['id']]); diff --git a/app/Services/CommonService.php b/app/Services/CommonService.php index e952b8a..6b98acf 100644 --- a/app/Services/CommonService.php +++ b/app/Services/CommonService.php @@ -18,6 +18,9 @@ abstract class CommonService abstract public function getModelClass(): mixed; abstract public function getEntityClass(): mixed; abstract public function getClassName(): string; + abstract public function getFields(): array; + abstract public function getFilterFields(): array; + abstract public function getBatchJobFields(): array; final public function __get($name) { if (!array_key_exists($name, $this->_serviceDatas)) { @@ -44,18 +47,6 @@ abstract class CommonService } return $this->_model; } - public function getFields(): array - { - return $this->getModel()->getFields(); - } - public function getFilterFields(): array - { - return $this->getModel()->getFilterFields(); - } - public function getBatchJobFields(): array - { - return $this->getModel()->getBatchJobFields(); - } final public function getEntity(mixed $where, $isThrow = true): mixed { $entity = is_array($where) ? $this->getModel()->where($where)->first() : $this->getModel()->find($where); diff --git a/app/Services/Customer/AccountService.php b/app/Services/Customer/AccountService.php index ab40c65..b5111a7 100644 --- a/app/Services/Customer/AccountService.php +++ b/app/Services/Customer/AccountService.php @@ -25,4 +25,22 @@ class AccountService extends CustomerService { return new AccountEntity(); } + public function getFields(): array + { + return [ + "clientinfo_uid", + "status", + "alias", + "title", + "amount" + ]; + } + public function getFilterFields(): array + { + return ["clientinfo_uid", 'status']; + } + public function getBatchJobFields(): array + { + return ['status']; + } } diff --git a/app/Services/Customer/ClientService.php b/app/Services/Customer/ClientService.php index 6ea8f27..402e463 100644 --- a/app/Services/Customer/ClientService.php +++ b/app/Services/Customer/ClientService.php @@ -42,4 +42,16 @@ class ClientService extends CustomerService // die(var_export($formDatas, true)); return parent::modify($entity, $formDatas); } + public function getFields(): array + { + return ['name', 'email', 'phone', 'role']; + } + public function getFilterFields(): array + { + return ['role', 'status']; + } + public function getBatchJobFields(): array + { + return ['status']; + } } diff --git a/app/Services/Customer/CouponService.php b/app/Services/Customer/CouponService.php index 1b7e96a..d9e822e 100644 --- a/app/Services/Customer/CouponService.php +++ b/app/Services/Customer/CouponService.php @@ -25,4 +25,21 @@ class CouponService extends CustomerService { return new CouponEntity(); } + public function getFields(): array + { + return [ + "clientinfo_uid", + "status", + "title", + "amount", + ]; + } + public function getFilterFields(): array + { + return ["clientinfo_uid", 'status']; + } + public function getBatchJobFields(): array + { + return ['status']; + } } diff --git a/app/Services/Customer/PointService.php b/app/Services/Customer/PointService.php index 6c3f3d8..24b89b5 100644 --- a/app/Services/Customer/PointService.php +++ b/app/Services/Customer/PointService.php @@ -25,4 +25,21 @@ class PointService extends CustomerService { return new PointEntity(); } + public function getFields(): array + { + return [ + "clientinfo_uid", + "status", + "title", + "amount" + ]; + } + public function getFilterFields(): array + { + return ["clientinfo_uid", 'status']; + } + public function getBatchJobFields(): array + { + return ['status']; + } } diff --git a/app/Services/Device/NetworkService.php b/app/Services/Device/NetworkService.php deleted file mode 100644 index c176270..0000000 --- a/app/Services/Device/NetworkService.php +++ /dev/null @@ -1,28 +0,0 @@ -getModel()->getTitleField(), 'email', 'mobile', 'role']; + } + public function getFilterFields(): array + { + return ['role', 'status']; + } + public function getBatchJobFields(): array + { + return ['status']; + } + public function create(array $formDatas, mixed $entity = null): UserEntity { $formDatas['role'] = implode(DEFAULTS["DELIMITER_ROLE"], $formDatas['role']); diff --git a/app/Views/admin/create_form.php b/app/Views/admin/create_form.php index cf69583..47de885 100644 --- a/app/Views/admin/create_form.php +++ b/app/Views/admin/create_form.php @@ -1,41 +1,25 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?> - - - - -
- - -
- - - - - - - -
getFieldLabel($field, $viewDatas) ?> - getFieldForm($field, old($field), $viewDatas) ?> -
-
-
"btn btn-outline btn-primary")); ?>
- -
- has('error')): ?>
+
+ + + + +
+ + + + + + + +
getFieldLabel($field, $viewDatas) ?> + getFieldForm($field, old($field), $viewDatas) ?> + +
+
"btn btn-outline btn-primary")); ?>
+
- - - - + alert($error) ?> +
endSection() ?> \ No newline at end of file diff --git a/app/Views/admin/index.php b/app/Views/admin/index.php index 9cbd8b6..e08e0be 100644 --- a/app/Views/admin/index.php +++ b/app/Views/admin/index.php @@ -47,12 +47,12 @@
-
include("templates/common/modal_fetch"); ?>
+
include("templates/common/" . (isset($viewDatas['modal_type']) ? $viewDatas['modal_type'] : 'modal_fetch')); ?>
- + SSS alert($error) ?> diff --git a/app/Views/admin/modify_form.php b/app/Views/admin/modify_form.php index 58d6838..101e498 100644 --- a/app/Views/admin/modify_form.php +++ b/app/Views/admin/modify_form.php @@ -1,7 +1,9 @@ extend(LAYOUTS[$viewDatas['layout']]['path']) ?> section('content') ?>
+ + 'action_form', ...$viewDatas['forms']['attributes']], $viewDatas['forms']['hiddens']) ?>
@@ -18,17 +20,6 @@
"btn btn-outline btn-primary"]) ?>
- has('error')): ?>
+ alert($error) ?> -endSection() ?> \ No newline at end of file diff --git a/app/Views/layouts/admin.php b/app/Views/layouts/admin.php index 76e553f..075a89d 100644 --- a/app/Views/layouts/admin.php +++ b/app/Views/layouts/admin.php @@ -20,6 +20,7 @@ + diff --git a/app/Views/templates/common/modal_fetch.php b/app/Views/templates/common/modal_fetch.php index 71683f7..e42ea83 100644 --- a/app/Views/templates/common/modal_fetch.php +++ b/app/Views/templates/common/modal_fetch.php @@ -1,11 +1,5 @@ - - -