diff --git a/app/Database/erp2_1.vuerd.json b/app/Database/erp2_1.vuerd.json index ab813a5..439420e 100644 --- a/app/Database/erp2_1.vuerd.json +++ b/app/Database/erp2_1.vuerd.json @@ -4,9 +4,9 @@ "settings": { "width": 4000, "height": 4000, - "scrollTop": -1509.6709, - "scrollLeft": -462.1479, - "zoomLevel": 0.76, + "scrollTop": -2838.7381, + "scrollLeft": -1765.3486, + "zoomLevel": 0.82, "show": 511, "database": 4, "databaseName": "", @@ -57,7 +57,8 @@ "XywAFAP3s5Xl6G-3txHTH", "kHLWAzQmZ3CCs0KpilqZ7", "x7rn2-q2i7C6Lin0XwIR_", - "DKSom-hQqNhI1z7FqSa6Y" + "DKSom-hQqNhI1z7FqSa6Y", + "QmgAf0ZVXXxPIZ-HUgQlY" ], "relationshipIds": [ "gAVYXWnBSnCw-0ieO4Mil", @@ -84,7 +85,9 @@ "J7H72NkdPg1gZdSAur4la", "7aO23DPo-ueZ6G-9dCKXu", "2yh_-sL8npRIpX_JwH3Vl", - "c9fmyTtPkeRt6aHosMiSQ" + "c9fmyTtPkeRt6aHosMiSQ", + "U2nR5f47vV7PnW-80gxhR", + "iQCazIDeUufmN-nNXDo5I" ], "indexIds": [], "memoIds": [] @@ -264,15 +267,15 @@ "AlvBDBVGfLoVcNjd__kFZ" ], "ui": { - "x": 1192.032, - "y": 1455.8365, + "x": 1156.7379, + "y": 1717.6012, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229167728, + "updateAt": 1748244309373, "createAt": 1745819764137 } }, @@ -305,15 +308,15 @@ "8ZPjmeG3NoO6C0icGibJP" ], "ui": { - "x": 1208.9179, - "y": 2611.3424, + "x": 1167.7414, + "y": 2846.6365, "zIndex": 2, "widthName": 68, "widthComment": 89, "color": "" }, "meta": { - "updateAt": 1748229244424, + "updateAt": 1748244321138, "createAt": 1745819764138 } }, @@ -351,15 +354,15 @@ "liJON6hIBB9aS-pQgM0Q6" ], "ui": { - "x": 2523.531, - "y": 975.4882, + "x": 1781.6193, + "y": 1161.13, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229375830, + "updateAt": 1748244616364, "createAt": 1745819764138 } }, @@ -394,15 +397,15 @@ "R-UjmO-S2UeQdddVNwH5M" ], "ui": { - "x": 1182.4307, - "y": 1141.8961, + "x": 1150.0778, + "y": 1433.0726, "zIndex": 2, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229170568, + "updateAt": 1748244376705, "createAt": 1745819764138 } }, @@ -657,15 +660,15 @@ "mwVYv9PaJFpoxYvTRJ223" ], "ui": { - "x": 1197.3716, - "y": 1822.7912, + "x": 1162.0777, + "y": 2078.6735, "zIndex": 495, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229213260, + "updateAt": 1748244312026, "createAt": 1746783410914 } }, @@ -702,15 +705,15 @@ "pzEFysMFfI2J8uB8YHXxA" ], "ui": { - "x": 1206.5028, - "y": 2922.629, + "x": 1168.2675, + "y": 3160.8644, "zIndex": 796, "widthName": 64, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229254375, + "updateAt": 1748244322259, "createAt": 1747374666215 } }, @@ -740,15 +743,15 @@ "K_QGLeRYAUneRz7KBswho" ], "ui": { - "x": 1200.3245, - "y": 2082.5248, + "x": 1167.9716, + "y": 2347.2306, "zIndex": 1036, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229224412, + "updateAt": 1748244314623, "createAt": 1747808112554 } }, @@ -775,15 +778,15 @@ "ixmBlLhmVt4et6tZEwLPC" ], "ui": { - "x": 1206.5149, - "y": 2350.4325, + "x": 1168.2797, + "y": 2597.4913, "zIndex": 1118, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229235528, + "updateAt": 1748244316485, "createAt": 1747808548333 } }, @@ -853,15 +856,15 @@ "6T7sNUPqpTPJm6TI7Qbbe" ], "ui": { - "x": 1214.1526, - "y": 3284.386, + "x": 1190.6231, + "y": 3513.7977, "zIndex": 1276, "widthName": 63, "widthComment": 65, "color": "" }, "meta": { - "updateAt": 1748229267465, + "updateAt": 1748244325173, "createAt": 1748218895681 } }, @@ -891,15 +894,15 @@ "W3wh0h5zKLtV6LmBly1fv" ], "ui": { - "x": 193.0917, - "y": 1518.7496, + "x": 312.4465, + "y": 1499.3948, "zIndex": 1306, "widthName": 60, "widthComment": 60, "color": "" }, "meta": { - "updateAt": 1748229306138, + "updateAt": 1748244855192, "createAt": 1748223128194 } }, @@ -1007,15 +1010,15 @@ "Ho9aHOXhQNaQYcJdaMz98" ], "ui": { - "x": 184.6859, - "y": 1202.4731, + "x": 300.8149, + "y": 1196.0215, "zIndex": 1446, "widthName": 64, "widthComment": 74, "color": "" }, "meta": { - "updateAt": 1748229119647, + "updateAt": 1748244860938, "createAt": 1748224348554 } }, @@ -1044,15 +1047,15 @@ "0b3XIZcKMDp_3uSOXHEH4" ], "ui": { - "x": 185.3818, - "y": 887.9307, + "x": 311.1883, + "y": 875.0275, "zIndex": 1593, "widthName": 67, "widthComment": 89, "color": "" }, "meta": { - "updateAt": 1748229116873, + "updateAt": 1748244862354, "createAt": 1748226446838 } }, @@ -1073,15 +1076,15 @@ "8qAFg1S4o6WBlSMD-ehm1" ], "ui": { - "x": 2530.3659, - "y": 1320.2421, + "x": 2574.7156, + "y": 1905.5362, "zIndex": 1650, "widthName": 100, "widthComment": 65, "color": "" }, "meta": { - "updateAt": 1748229369917, + "updateAt": 1748244460026, "createAt": 1748227846189 } }, @@ -1102,15 +1105,15 @@ "HVV8J5AkMnozP0S65BeS2" ], "ui": { - "x": 2545.6855, - "y": 1632.2914, + "x": 2578.0383, + "y": 2141.1149, "zIndex": 1683, "widthName": 109, "widthComment": 77, "color": "" }, "meta": { - "updateAt": 1748229366062, + "updateAt": 1748244338061, "createAt": 1748228149005 } }, @@ -1131,15 +1134,15 @@ "kP95mIVWhIRaVVvCLTXSH" ], "ui": { - "x": 2543.5995, - "y": 1975.5922, + "x": 2584.776, + "y": 2390.2982, "zIndex": 1720, "widthName": 110, "widthComment": 81, "color": "" }, "meta": { - "updateAt": 1748229362549, + "updateAt": 1748244345309, "createAt": 1748228343657 } }, @@ -1160,15 +1163,15 @@ "5hericEusqGgI1pg0jFc1" ], "ui": { - "x": 2551.0909, - "y": 2244.407, + "x": 2592.2675, + "y": 2650.2895, "zIndex": 1741, "widthName": 111, "widthComment": 80, "color": "" }, "meta": { - "updateAt": 1748229359366, + "updateAt": 1748244351015, "createAt": 1748228440581 } }, @@ -1189,15 +1192,15 @@ "4yuH6ZQUnURnk_U6roXVl" ], "ui": { - "x": 2566.4476, - "y": 2805.6594, + "x": 2581.4628, + "y": 3241.8824, "zIndex": 1763, "widthName": 132, "widthComment": 79, "color": "" }, "meta": { - "updateAt": 1748229353582, + "updateAt": 1748244557895, "createAt": 1748228523646 } }, @@ -1218,15 +1221,15 @@ "bLPLRDM9p3TWgZqOehkRR" ], "ui": { - "x": 2570.5649, - "y": 2562.7184, + "x": 2591.1532, + "y": 2930.3654, "zIndex": 1797, "widthName": 135, "widthComment": 101, "color": "" }, "meta": { - "updateAt": 1748229356135, + "updateAt": 1748244356258, "createAt": 1748228685683 } }, @@ -1247,17 +1250,47 @@ "AWwG30rhbOSU6Euyee2Px" ], "ui": { - "x": 2562.3299, - "y": 3088.0124, + "x": 2577.0359, + "y": 3435.0712, "zIndex": 1822, "widthName": 130, "widthComment": 91, "color": "" }, "meta": { - "updateAt": 1748229350758, + "updateAt": 1748244244345, "createAt": 1748228820879 } + }, + "QmgAf0ZVXXxPIZ-HUgQlY": { + "id": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "serverinfos_lineinfos", + "comment": "서버_회선정보", + "columnIds": [ + "kvxrJ63HuwXmC2zmgeXcY", + "uBMa2GHVEzoB58E-Rcl48", + "wXfA2J6YcI6ySX_4McNS2", + "aWrqV1qsSd5-Kp5nVsyhL" + ], + "seqColumnIds": [ + "kvxrJ63HuwXmC2zmgeXcY", + "uBMa2GHVEzoB58E-Rcl48", + "wXfA2J6YcI6ySX_4McNS2", + "QEGZd3nUz4vcfEKE1xenI", + "aWrqV1qsSd5-Kp5nVsyhL" + ], + "ui": { + "x": 2574.4317, + "y": 1687.4416, + "zIndex": 1861, + "widthName": 109, + "widthComment": 79, + "color": "" + }, + "meta": { + "updateAt": 1748245019054, + "createAt": 1748244397324 + } } }, "tableColumnEntities": { @@ -7660,6 +7693,106 @@ "updateAt": 1748228901285, "createAt": 1748228892140 } + }, + "kvxrJ63HuwXmC2zmgeXcY": { + "id": "kvxrJ63HuwXmC2zmgeXcY", + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 15, + "ui": { + "keys": 1, + "widthName": 60, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1748244444356, + "createAt": 1748244414364 + } + }, + "aWrqV1qsSd5-Kp5nVsyhL": { + "id": "aWrqV1qsSd5-Kp5nVsyhL", + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "created_at", + "comment": "", + "dataType": "TIMESTAMP", + "default": "CURRENT_TIMESTAMP", + "options": 8, + "ui": { + "keys": 0, + "widthName": 60, + "widthComment": 60, + "widthDataType": 65, + "widthDefault": 122 + }, + "meta": { + "updateAt": 1748244414365, + "createAt": 1748244414365 + } + }, + "uBMa2GHVEzoB58E-Rcl48": { + "id": "uBMa2GHVEzoB58E-Rcl48", + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "serverinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 76, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1748244510684, + "createAt": 1748244473142 + } + }, + "QEGZd3nUz4vcfEKE1xenI": { + "id": "QEGZd3nUz4vcfEKE1xenI", + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "lineinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 0, + "widthName": 63, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1748244516870, + "createAt": 1748244494577 + } + }, + "wXfA2J6YcI6ySX_4McNS2": { + "id": "wXfA2J6YcI6ySX_4McNS2", + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "name": "lineinfo_uid", + "comment": "", + "dataType": "INT", + "default": "", + "options": 8, + "ui": { + "keys": 2, + "widthName": 63, + "widthComment": 60, + "widthDataType": 60, + "widthDefault": 60 + }, + "meta": { + "updateAt": 1748244634796, + "createAt": 1748244625113 + } } }, "relationshipEntities": { @@ -7785,8 +7918,8 @@ "columnIds": [ "7B0zaLoZnOoMNW8OHZlrQ" ], - "x": 2523.531, - "y": 1179.4882, + "x": 1781.6193, + "y": 1365.13, "direction": 1 }, "end": { @@ -7794,8 +7927,8 @@ "columnIds": [ "f7_MGvRjkwL1xkCWrAgDR" ], - "x": 1680.4307, - "y": 1203.8961, + "x": 1648.0778, + "y": 1495.0726, "direction": 2 }, "meta": { @@ -7822,8 +7955,8 @@ "columnIds": [ "5KRw8TtT2nLqpYfKFOBwe" ], - "x": 2523.531, - "y": 1043.4882, + "x": 1781.6193, + "y": 1229.13, "direction": 1 }, "meta": { @@ -7934,8 +8067,8 @@ "columnIds": [ "4ZPfgU2ooMQksUvTVE3DH" ], - "x": 703.0917, - "y": 1580.7496, + "x": 822.4465, + "y": 1561.3948, "direction": 2 }, "meta": { @@ -7953,9 +8086,9 @@ "columnIds": [ "DX0y0VIZ430hVZbT_pmKl" ], - "x": 448.0917, - "y": 1766.7496, - "direction": 8 + "x": 312.4465, + "y": 1623.3948, + "direction": 1 }, "end": { "tableId": "UuZoDcFNrKD0iTjVkA2Ew", @@ -7981,8 +8114,8 @@ "columnIds": [ "DX0y0VIZ430hVZbT_pmKl" ], - "x": 703.0917, - "y": 1704.7496, + "x": 822.4465, + "y": 1685.3948, "direction": 2 }, "end": { @@ -8018,8 +8151,8 @@ "columnIds": [ "s6Juv5DV5R4Yc_nxRzyQG" ], - "x": 718.6859, - "y": 1326.4731, + "x": 834.8149000000001, + "y": 1320.0215, "direction": 2 }, "meta": { @@ -8046,8 +8179,8 @@ "columnIds": [ "8TLeYhxU1ZWII8eSABTTP" ], - "x": 699.3818, - "y": 1011.9307, + "x": 825.1883, + "y": 999.0275, "direction": 2 }, "meta": { @@ -8065,8 +8198,8 @@ "columnIds": [ "Id0h8QbOdlhPj9P1zTm5o" ], - "x": 1680.4307, - "y": 1327.8961, + "x": 1648.0778, + "y": 1619.0726, "direction": 2 }, "end": { @@ -8074,8 +8207,8 @@ "columnIds": [ "woS0kjRSXcXN1L79VN2ix" ], - "x": 2530.3659, - "y": 1358.2421, + "x": 2574.7156, + "y": 1943.5362, "direction": 1 }, "meta": { @@ -8093,8 +8226,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1478.6936428571428, + "x": 1653.7379, + "y": 1777.6012, "direction": 2 }, "end": { @@ -8102,8 +8235,8 @@ "columnIds": [ "067vdUFESzj48PGB_QLjg" ], - "x": 2530.3659, - "y": 1434.2421, + "x": 2574.7156, + "y": 2019.5362, "direction": 1 }, "meta": { @@ -8121,8 +8254,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1524.4079285714286, + "x": 1653.7379, + "y": 1817.6012, "direction": 2 }, "end": { @@ -8130,8 +8263,8 @@ "columnIds": [ "B6XMwBsjXzUg7Glny_NkC" ], - "x": 2545.6855, - "y": 1670.2914, + "x": 2578.0383, + "y": 2179.1149, "direction": 1 }, "meta": { @@ -8149,8 +8282,8 @@ "columnIds": [ "Jh6e_-9QYe1Tqve0PE3kT" ], - "x": 1694.3716, - "y": 1934.7912, + "x": 1659.0777, + "y": 2190.6735, "direction": 2 }, "end": { @@ -8158,8 +8291,8 @@ "columnIds": [ "CBCTA2-9kJYGl-jsoO1w6" ], - "x": 2545.6855, - "y": 1746.2914, + "x": 2578.0383, + "y": 2255.1149, "direction": 1 }, "meta": { @@ -8177,8 +8310,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1570.1222142857143, + "x": 1653.7379, + "y": 1857.6012, "direction": 2 }, "end": { @@ -8186,8 +8319,8 @@ "columnIds": [ "0UhqQkNDg3DHug5zXFJEY" ], - "x": 2543.5995, - "y": 2013.5922, + "x": 2584.776, + "y": 2428.2982, "direction": 1 }, "meta": { @@ -8205,8 +8338,8 @@ "columnIds": [ "203b3hUKUQ_Gu5wKShBgZ" ], - "x": 1697.3245, - "y": 2194.5248, + "x": 1664.9716, + "y": 2459.2306, "direction": 2 }, "end": { @@ -8214,8 +8347,8 @@ "columnIds": [ "Bg-Tx0N2d0uSzyhPkhyck" ], - "x": 2543.5995, - "y": 2089.5922, + "x": 2584.776, + "y": 2504.2982, "direction": 1 }, "meta": { @@ -8233,8 +8366,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1615.8365000000001, + "x": 1653.7379, + "y": 1897.6012, "direction": 2 }, "end": { @@ -8242,8 +8375,8 @@ "columnIds": [ "STLYnqCG56zLLyNnfgnqR" ], - "x": 2551.0909, - "y": 2282.407, + "x": 2592.2675, + "y": 2688.2895, "direction": 1 }, "meta": { @@ -8261,8 +8394,8 @@ "columnIds": [ "WaCB3uNZYFReAPiBqQ97v" ], - "x": 1703.5149, - "y": 2462.4325, + "x": 1665.2797, + "y": 2709.4913, "direction": 2 }, "end": { @@ -8270,8 +8403,8 @@ "columnIds": [ "thCqAUxooyOoqA0o8Cr1S" ], - "x": 2551.0909, - "y": 2358.407, + "x": 2592.2675, + "y": 2764.2895, "direction": 1 }, "meta": { @@ -8289,8 +8422,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1707.2650714285717, + "x": 1653.7379, + "y": 1977.6012, "direction": 2 }, "end": { @@ -8298,8 +8431,8 @@ "columnIds": [ "PhV2kPOROFN2Paxn0Q3KK" ], - "x": 2566.4476, - "y": 2843.6594, + "x": 2581.4628, + "y": 3279.8824, "direction": 1 }, "meta": { @@ -8317,8 +8450,8 @@ "columnIds": [ "zBz4vBOZSIA8vKmfqXckO" ], - "x": 1709.5028, - "y": 3082.629, + "x": 1671.2675, + "y": 3320.8644, "direction": 2 }, "end": { @@ -8326,8 +8459,8 @@ "columnIds": [ "JVNCmWuI_UAnZEGZUbBQv" ], - "x": 2566.4476, - "y": 2919.6594, + "x": 2581.4628, + "y": 3355.8824, "direction": 1 }, "meta": { @@ -8345,8 +8478,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1661.550785714286, + "x": 1653.7379, + "y": 1937.6012, "direction": 2 }, "end": { @@ -8354,8 +8487,8 @@ "columnIds": [ "OqPMHX5b1-Qct8xqaypd1" ], - "x": 2570.5649, - "y": 2600.7184, + "x": 2591.1532, + "y": 2968.3654, "direction": 1 }, "meta": { @@ -8373,8 +8506,8 @@ "columnIds": [ "2HB01q46-mugMjuOz85YG" ], - "x": 1705.9179, - "y": 2747.3424, + "x": 1664.7414, + "y": 2982.6365, "direction": 2 }, "end": { @@ -8382,8 +8515,8 @@ "columnIds": [ "Wjix1VNvwEfcogjAdEgc2" ], - "x": 2570.5649, - "y": 2676.7184, + "x": 2591.1532, + "y": 3044.3654, "direction": 1 }, "meta": { @@ -8401,8 +8534,8 @@ "columnIds": [ "F9EPb6nsDx6Tf3GG8rvP1" ], - "x": 1689.032, - "y": 1752.9793571428575, + "x": 1653.7379, + "y": 2017.6012, "direction": 2 }, "end": { @@ -8410,8 +8543,8 @@ "columnIds": [ "CCtqlfF2lD-XJILWNJMGC" ], - "x": 2562.3299, - "y": 3126.0124, + "x": 2577.0359, + "y": 3473.0712, "direction": 1 }, "meta": { @@ -8429,8 +8562,8 @@ "columnIds": [ "XnNj7H0bnTxo_NuZm7BOs" ], - "x": 1711.1526, - "y": 3396.386, + "x": 1687.6231, + "y": 3625.7977, "direction": 2 }, "end": { @@ -8438,14 +8571,98 @@ "columnIds": [ "XRRh5KRH2WqKryhsba-KG" ], - "x": 2562.3299, - "y": 3202.0124, + "x": 2577.0359, + "y": 3549.0712, "direction": 1 }, "meta": { "updateAt": 1748228892140, "createAt": 1748228892140 } + }, + "U2nR5f47vV7PnW-80gxhR": { + "id": "U2nR5f47vV7PnW-80gxhR", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "B4qGh3KZsXHQ3_4EOgwJZ", + "columnIds": [ + "F9EPb6nsDx6Tf3GG8rvP1" + ], + "x": 1653.7379, + "y": 1737.6012, + "direction": 2 + }, + "end": { + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "columnIds": [ + "uBMa2GHVEzoB58E-Rcl48" + ], + "x": 2574.4317, + "y": 1801.4416, + "direction": 1 + }, + "meta": { + "updateAt": 1748244473142, + "createAt": 1748244473142 + } + }, + "Mr60Ap-s6BOS6MfpynPF8": { + "id": "Mr60Ap-s6BOS6MfpynPF8", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "ZLEpY5EjuZV21718zf-Y1", + "columnIds": [ + "Id0h8QbOdlhPj9P1zTm5o" + ], + "x": 1648.0778, + "y": 1557.0726000000002, + "direction": 2 + }, + "end": { + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "columnIds": [ + "QEGZd3nUz4vcfEKE1xenI" + ], + "x": 2574.4317, + "y": 1725.4416, + "direction": 1 + }, + "meta": { + "updateAt": 1748244494577, + "createAt": 1748244494577 + } + }, + "iQCazIDeUufmN-nNXDo5I": { + "id": "iQCazIDeUufmN-nNXDo5I", + "identification": false, + "relationshipType": 16, + "startRelationshipType": 2, + "start": { + "tableId": "doERb3lIVeBW_D0NtNYX8", + "columnIds": [ + "7B0zaLoZnOoMNW8OHZlrQ" + ], + "x": 2297.6193000000003, + "y": 1297.13, + "direction": 2 + }, + "end": { + "tableId": "QmgAf0ZVXXxPIZ-HUgQlY", + "columnIds": [ + "wXfA2J6YcI6ySX_4McNS2" + ], + "x": 2574.4317, + "y": 1725.4416, + "direction": 1 + }, + "meta": { + "updateAt": 1748244625114, + "createAt": 1748244625114 + } } }, "indexEntities": {}, diff --git a/app/Entities/Equipment/DomainEntity.php b/app/Entities/Equipment/DomainEntity.php new file mode 100644 index 0000000..2fc0bb1 --- /dev/null +++ b/app/Entities/Equipment/DomainEntity.php @@ -0,0 +1,11 @@ +attributes['cpuinfo_uid']; } diff --git a/app/Entities/Equipment/Link/DefenceEntity.php b/app/Entities/Equipment/Link/DefenceEntity.php new file mode 100644 index 0000000..65da760 --- /dev/null +++ b/app/Entities/Equipment/Link/DefenceEntity.php @@ -0,0 +1,15 @@ +attributes['defenceinfo_uid']; + } +} diff --git a/app/Entities/Equipment/Link/DiskEntity.php b/app/Entities/Equipment/Link/DiskEntity.php index 80718e5..1d34036 100644 --- a/app/Entities/Equipment/Link/DiskEntity.php +++ b/app/Entities/Equipment/Link/DiskEntity.php @@ -8,7 +8,7 @@ class DiskEntity extends LinkEntity { const PK = DiskModel::PK; const TITLE = DiskModel::TITLE; - public function getPartInfoUID(): string + public function getAdapterInfoUID(): string { return $this->attributes['diskinfo_uid']; } diff --git a/app/Entities/Equipment/Link/DomainEntity.php b/app/Entities/Equipment/Link/DomainEntity.php new file mode 100644 index 0000000..9e29e54 --- /dev/null +++ b/app/Entities/Equipment/Link/DomainEntity.php @@ -0,0 +1,15 @@ +attributes['domaininfo_uid']; + } +} diff --git a/app/Entities/Equipment/Link/IpEntity.php b/app/Entities/Equipment/Link/IpEntity.php new file mode 100644 index 0000000..b12d9ff --- /dev/null +++ b/app/Entities/Equipment/Link/IpEntity.php @@ -0,0 +1,15 @@ +attributes['ipinfo_uid']; + } +} diff --git a/app/Entities/Equipment/Link/LineEntity.php b/app/Entities/Equipment/Link/LineEntity.php new file mode 100644 index 0000000..43f636b --- /dev/null +++ b/app/Entities/Equipment/Link/LineEntity.php @@ -0,0 +1,15 @@ +attributes['lineinfo_uid']; + } +} diff --git a/app/Entities/Equipment/Link/LinkEntity.php b/app/Entities/Equipment/Link/LinkEntity.php index 47fac92..7e21f89 100644 --- a/app/Entities/Equipment/Link/LinkEntity.php +++ b/app/Entities/Equipment/Link/LinkEntity.php @@ -11,7 +11,7 @@ abstract class LinkEntity extends EquipmentEntity { parent::__construct($data); } - abstract public function getPartInfoUID(): string; + abstract public function getAdapterInfoUID(): string; final public function getServiceInfoUID(): string { return $this->attributes['serverinfo_uid']; diff --git a/app/Entities/Equipment/Link/RamEntity.php b/app/Entities/Equipment/Link/RamEntity.php index 6effd3c..fe64a0f 100644 --- a/app/Entities/Equipment/Link/RamEntity.php +++ b/app/Entities/Equipment/Link/RamEntity.php @@ -8,7 +8,7 @@ class RamEntity extends LinkEntity { const PK = RamModel::PK; const TITLE = RamModel::TITLE; - public function getPartInfoUID(): string + public function getAdapterInfoUID(): string { return $this->attributes['raminfo_uid']; } diff --git a/app/Entities/Equipment/Link/SoftwareEntity.php b/app/Entities/Equipment/Link/SoftwareEntity.php new file mode 100644 index 0000000..7f26324 --- /dev/null +++ b/app/Entities/Equipment/Link/SoftwareEntity.php @@ -0,0 +1,15 @@ +attributes['softwareininfo_uid']; + } +} diff --git a/app/Entities/Equipment/Part/PartEntity.php b/app/Entities/Equipment/Part/PartEntity.php index d6269b0..35e2cbc 100644 --- a/app/Entities/Equipment/Part/PartEntity.php +++ b/app/Entities/Equipment/Part/PartEntity.php @@ -11,4 +11,8 @@ abstract class PartEntity extends EquipmentEntity { parent::__construct($data); } + public function getTitle(): string + { + return parent::getTitle() . " [" . number_format($this->attributes['price']) . "원]"; + } } diff --git a/app/Helpers/Equipment/Link/DefenceHelper.php b/app/Helpers/Equipment/Link/DefenceHelper.php new file mode 100644 index 0000000..ce0bae8 --- /dev/null +++ b/app/Helpers/Equipment/Link/DefenceHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: DefenceModel::TITLE); + } +} diff --git a/app/Helpers/Equipment/Link/DomainHelper.php b/app/Helpers/Equipment/Link/DomainHelper.php new file mode 100644 index 0000000..8d8cb41 --- /dev/null +++ b/app/Helpers/Equipment/Link/DomainHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: DomainModel::TITLE); + } +} diff --git a/app/Helpers/Equipment/Link/IpHelper.php b/app/Helpers/Equipment/Link/IpHelper.php new file mode 100644 index 0000000..d8e44bb --- /dev/null +++ b/app/Helpers/Equipment/Link/IpHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: IpModel::TITLE); + } +} diff --git a/app/Helpers/Equipment/Link/LineHelper.php b/app/Helpers/Equipment/Link/LineHelper.php new file mode 100644 index 0000000..deb2602 --- /dev/null +++ b/app/Helpers/Equipment/Link/LineHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: LineModel::TITLE); + } +} diff --git a/app/Helpers/Equipment/Link/SoftwareHelper.php b/app/Helpers/Equipment/Link/SoftwareHelper.php new file mode 100644 index 0000000..80b29c8 --- /dev/null +++ b/app/Helpers/Equipment/Link/SoftwareHelper.php @@ -0,0 +1,16 @@ +setTitleField(field: SoftwareModel::TITLE); + } +} diff --git a/app/Language/en/Equipment/Link/Cpu.php b/app/Language/en/Equipment/Link/Cpu.php index a8fd2de..e0d0b1f 100644 --- a/app/Language/en/Equipment/Link/Cpu.php +++ b/app/Language/en/Equipment/Link/Cpu.php @@ -2,16 +2,8 @@ return [ 'title' => "CPU연결정보", 'label' => [ - 'billing_type' => "청구유형", - 'serviceinfo_uid' => "서비스", 'serverinfo_uid' => "서버", 'cpuinfo_uid' => "CPU", - 'amount' => "금액", - 'updated_at' => "수정일", 'created_at' => "작성일", ], - "BILLING_TYPE" => [ - "month" => "월별", - "onetime" => "일회성", - ], ]; diff --git a/app/Language/en/Equipment/Link/Defence.php b/app/Language/en/Equipment/Link/Defence.php new file mode 100644 index 0000000..89a6f51 --- /dev/null +++ b/app/Language/en/Equipment/Link/Defence.php @@ -0,0 +1,9 @@ + "방어연결정보", + 'label' => [ + 'serverinfo_uid' => "서버", + 'defenceinfo_uid' => "방어", + 'created_at' => "작성일", + ], +]; diff --git a/app/Language/en/Equipment/Link/Disk.php b/app/Language/en/Equipment/Link/Disk.php index e4bf073..59e2729 100644 --- a/app/Language/en/Equipment/Link/Disk.php +++ b/app/Language/en/Equipment/Link/Disk.php @@ -2,16 +2,8 @@ return [ 'title' => "Disk연결정보", 'label' => [ - 'billing_type' => "청구유형", - 'serviceinfo_uid' => "서비스", 'serverinfo_uid' => "서버", - 'diskinfo_uid' => "Disk", - 'amount' => "금액", - 'updated_at' => "수정일", + 'diskinfo_uid' => "DISK", 'created_at' => "작성일", ], - "BILLING_TYPE" => [ - "month" => "월별", - "onetime" => "일회성", - ], ]; diff --git a/app/Language/en/Equipment/Link/Domain.php b/app/Language/en/Equipment/Link/Domain.php new file mode 100644 index 0000000..2316434 --- /dev/null +++ b/app/Language/en/Equipment/Link/Domain.php @@ -0,0 +1,9 @@ + "Domain연결정보", + 'label' => [ + 'serverinfo_uid' => "서버", + 'domaininfo_uid' => "Domain", + 'created_at' => "작성일", + ], +]; diff --git a/app/Language/en/Equipment/Link/Ip.php b/app/Language/en/Equipment/Link/Ip.php new file mode 100644 index 0000000..95e2f01 --- /dev/null +++ b/app/Language/en/Equipment/Link/Ip.php @@ -0,0 +1,9 @@ + "IP연결정보", + 'label' => [ + 'serverinfo_uid' => "서버", + 'ipinfo_uid' => "IP", + 'created_at' => "작성일", + ], +]; diff --git a/app/Language/en/Equipment/Link/Line.php b/app/Language/en/Equipment/Link/Line.php new file mode 100644 index 0000000..6be4043 --- /dev/null +++ b/app/Language/en/Equipment/Link/Line.php @@ -0,0 +1,9 @@ + "Line연결정보", + 'label' => [ + 'serverinfo_uid' => "서버", + 'lineinfo_uid' => "회선", + 'created_at' => "작성일", + ], +]; diff --git a/app/Language/en/Equipment/Link/Ram.php b/app/Language/en/Equipment/Link/Ram.php index 31443ac..a6793c6 100644 --- a/app/Language/en/Equipment/Link/Ram.php +++ b/app/Language/en/Equipment/Link/Ram.php @@ -2,16 +2,8 @@ return [ 'title' => "Ram연결정보", 'label' => [ - 'billing_type' => "청구유형", - 'serviceinfo_uid' => "서비스", 'serverinfo_uid' => "서버", 'raminfo_uid' => "RAM", - 'amount' => "금액", - 'updated_at' => "수정일", 'created_at' => "작성일", ], - "BILLING_TYPE" => [ - "month" => "월별", - "onetime" => "일회성", - ], ]; diff --git a/app/Language/en/Equipment/Link/Software.php b/app/Language/en/Equipment/Link/Software.php new file mode 100644 index 0000000..076187a --- /dev/null +++ b/app/Language/en/Equipment/Link/Software.php @@ -0,0 +1,9 @@ + "Software연결정보", + 'label' => [ + 'serverinfo_uid' => "서버", + 'softwareinfo_uid' => "Software", + 'created_at' => "작성일", + ], +]; diff --git a/app/Models/Equipment/DomainModel.php b/app/Models/Equipment/DomainModel.php new file mode 100644 index 0000000..fdaec2c --- /dev/null +++ b/app/Models/Equipment/DomainModel.php @@ -0,0 +1,57 @@ + field가 array 입니다.\n" . var_export($field, true)); + } + switch ($field) { + case "domain": + $rule = "required|trim|string"; + break; + case "price": + $rule = "required|numeric"; + break; + default: + $rule = parent::getFieldRule($action, $field); + break; + } + return $rule; + } + protected function convertEntityData(string $field, array $formDatas, mixed $entity): mixed + { + switch ($field) { + case 'clientinfo_uid': + if (array_key_exists($field, $formDatas) && $formDatas[$field] !== '') { + $entity->$field = $formDatas[$field]; + } + break; + default: + $entity = parent::convertEntityData($field, $formDatas, $entity); + break; + } + return $entity; + } +} diff --git a/app/Models/Equipment/Link/DefenceModel.php b/app/Models/Equipment/Link/DefenceModel.php new file mode 100644 index 0000000..262f21f --- /dev/null +++ b/app/Models/Equipment/Link/DefenceModel.php @@ -0,0 +1,24 @@ +addClassName('Domain'); + } + public function getModelClass(): DomainModel + { + return new DomainModel(); + } + public function getEntityClass(): DomainEntity + { + return new DomainEntity(); + } + public function getFields(): array + { + return [ + "clientinfo_uid", + "type", + "title", + "bandwith", + "start_at", + "status", + ]; + } + public function getFilterFields(): array + { + return ["clientinfo_uid", "type", 'status',]; + } + public function getBatchJobFields(): array + { + return ['status']; + } +} diff --git a/app/Services/Equipment/Link/CpuService.php b/app/Services/Equipment/Link/CpuService.php index dc4ca52..d3bbdb7 100644 --- a/app/Services/Equipment/Link/CpuService.php +++ b/app/Services/Equipment/Link/CpuService.php @@ -6,7 +6,7 @@ use CodeIgniter\HTTP\IncomingRequest; use App\Entities\Equipment\Link\CpuEntity; use App\Models\Equipment\Link\CpuModel; -use App\Services\Equipment\Part\CpuService as PartService; +use App\Services\Equipment\Part\CpuService as AdapterService; class CpuService extends LinkService { @@ -24,23 +24,12 @@ class CpuService extends LinkService { return new CpuEntity(); } - protected function getPartService(): PartService + protected function getAdapterService(): AdapterService { - return new PartService(); + return new AdapterService(); } - public function getFields(): array + protected function getAdapterField(): string { - return [ - "serverinfo_uid", - "cpuinfo_uid", - ]; - } - public function getFilterFields(): array - { - return ["serverinfo_uid", "cpuinfo_uid"]; - } - public function getBatchJobFields(): array - { - return []; + return "cpuinfo_uid"; } } diff --git a/app/Services/Equipment/Link/DefenceService.php b/app/Services/Equipment/Link/DefenceService.php new file mode 100644 index 0000000..9cae2f2 --- /dev/null +++ b/app/Services/Equipment/Link/DefenceService.php @@ -0,0 +1,35 @@ +addClassName('Defence'); + } + public function getModelClass(): DefenceModel + { + return new DefenceModel; + } + public function getEntityClass(): DefenceEntity + { + return new DefenceEntity(); + } + protected function getAdapterService(): AdapterService + { + return new AdapterService(); + } + protected function getAdapterField(): string + { + return "defenceinfo_uid"; + } +} diff --git a/app/Services/Equipment/Link/DiskService.php b/app/Services/Equipment/Link/DiskService.php index 79ec3e4..ad8ee9c 100644 --- a/app/Services/Equipment/Link/DiskService.php +++ b/app/Services/Equipment/Link/DiskService.php @@ -6,7 +6,7 @@ use CodeIgniter\HTTP\IncomingRequest; use App\Entities\Equipment\Link\DiskEntity; use App\Models\Equipment\Link\DiskModel; -use App\Services\Equipment\Part\DiskService as PartService; +use App\Services\Equipment\Part\DiskService as AdapterService; class DiskService extends LinkService { @@ -24,25 +24,12 @@ class DiskService extends LinkService { return new DiskEntity(); } - protected function getPartService(): PartService + protected function getAdapterService(): AdapterService { - return new PartService(); + return new AdapterService(); } - - public function getFields(): array + protected function getAdapterField(): string { - return [ - "serverinfo_uid", - "diskinfo_uid", - ]; - } - - public function getFilterFields(): array - { - return ["serverinfo_uid", "diskinfo_uid"]; - } - public function getBatchJobFields(): array - { - return []; + return "diskinfo_uid"; } } diff --git a/app/Services/Equipment/Link/DomainService.php b/app/Services/Equipment/Link/DomainService.php new file mode 100644 index 0000000..07e067b --- /dev/null +++ b/app/Services/Equipment/Link/DomainService.php @@ -0,0 +1,35 @@ +addClassName('Domain'); + } + public function getModelClass(): DomainModel + { + return new DomainModel; + } + public function getEntityClass(): DomainEntity + { + return new DomainEntity(); + } + protected function getAdapterService(): AdapterService + { + return new AdapterService(); + } + protected function getAdapterField(): string + { + return "domaininfo_uid"; + } +} diff --git a/app/Services/Equipment/Link/IpService.php b/app/Services/Equipment/Link/IpService.php new file mode 100644 index 0000000..f960d72 --- /dev/null +++ b/app/Services/Equipment/Link/IpService.php @@ -0,0 +1,35 @@ +addClassName('Ip'); + } + public function getModelClass(): IpModel + { + return new IpModel; + } + public function getEntityClass(): IpEntity + { + return new IpEntity(); + } + protected function getAdapterService(): AdapterService + { + return new AdapterService(); + } + protected function getAdapterField(): string + { + return "ipinfo_uid"; + } +} diff --git a/app/Services/Equipment/Link/LineService.php b/app/Services/Equipment/Link/LineService.php new file mode 100644 index 0000000..8f010d5 --- /dev/null +++ b/app/Services/Equipment/Link/LineService.php @@ -0,0 +1,35 @@ +addClassName('Line'); + } + public function getModelClass(): LineModel + { + return new LineModel; + } + public function getEntityClass(): LineEntity + { + return new LineEntity(); + } + protected function getAdapterService(): AdapterService + { + return new AdapterService(); + } + protected function getAdapterField(): string + { + return "lineinfo_uid"; + } +} diff --git a/app/Services/Equipment/Link/LinkService.php b/app/Services/Equipment/Link/LinkService.php index 1bda5dc..3cedd43 100644 --- a/app/Services/Equipment/Link/LinkService.php +++ b/app/Services/Equipment/Link/LinkService.php @@ -15,13 +15,30 @@ abstract class LinkService extends EquipmentService parent::__construct($request); $this->addClassName('Link'); } - abstract protected function getPartService(); + abstract protected function getAdapterService(): mixed; + abstract protected function getAdapterField(): string; final public function getPartEntities(ServerEntity $serverEntity): array { $entities = []; foreach ($this->getEntities(['serverinfo_uid' => $serverEntity->getPK()]) as $entity) { - $entities[] = $this->getPartService()->getEntity($entity->getPartInfoUID()); + $entities[] = $this->getAdapterService()->getEntity($entity->getPartInfoUID()); } return $entities; } + + public function getFields(): array + { + return [ + "serverinfo_uid", + $this->getAdapterField(), + ]; + } + public function getFilterFields(): array + { + return ["serverinfo_uid", $this->getAdapterField()]; + } + public function getBatchJobFields(): array + { + return []; + } } diff --git a/app/Services/Equipment/Link/RamService.php b/app/Services/Equipment/Link/RamService.php index 7089abb..3509a52 100644 --- a/app/Services/Equipment/Link/RamService.php +++ b/app/Services/Equipment/Link/RamService.php @@ -6,7 +6,7 @@ use CodeIgniter\HTTP\IncomingRequest; use App\Entities\Equipment\Link\RamEntity; use App\Models\Equipment\Link\RamModel; -use App\Services\Equipment\Part\RamService as PartService; +use App\Services\Equipment\Part\RamService as AdapterService; class RamService extends LinkService { @@ -24,25 +24,12 @@ class RamService extends LinkService { return new RamEntity(); } - protected function getPartService(): PartService + protected function getAdapterService(): AdapterService { - return new PartService(); + return new AdapterService(); } - - public function getFields(): array + protected function getAdapterField(): string { - return [ - "serverinfo_uid", - "raminfo_uid", - ]; - } - - public function getFilterFields(): array - { - return ["serverinfo_uid", "raminfo_uid"]; - } - public function getBatchJobFields(): array - { - return []; + return "raminfo_uid"; } } diff --git a/app/Services/Equipment/Link/SoftwareService.php b/app/Services/Equipment/Link/SoftwareService.php new file mode 100644 index 0000000..eaecc54 --- /dev/null +++ b/app/Services/Equipment/Link/SoftwareService.php @@ -0,0 +1,35 @@ +addClassName('Software'); + } + public function getModelClass(): SoftwareModel + { + return new SoftwareModel; + } + public function getEntityClass(): SoftwareEntity + { + return new SoftwareEntity(); + } + protected function getAdapterService(): AdapterService + { + return new AdapterService(); + } + protected function getAdapterField(): string + { + return "softwareinfo_uid"; + } +} diff --git a/app/Views/templates/common/modal_iframe.php b/app/Views/templates/common/modal_iframe.php index b576bf2..64c247a 100644 --- a/app/Views/templates/common/modal_iframe.php +++ b/app/Views/templates/common/modal_iframe.php @@ -35,13 +35,25 @@ function closeBootstrapModal() { var modalElement = document.getElementById('index_action_form'); // 모달의 실제 DOM 요소 가져오기 var modalInstance = bootstrap.Modal.getInstance(modalElement); // 모달 인스턴스 가져오기 - // 먼저 모달을 호출한 페이지를 리로드 - // window.location.reload(); if (modalInstance) { modalInstance.hide(); // 모달 닫기 (hide() 메서드 사용) } else { console.error("Modal instance not found."); } + // iframe src를 초기화하거나 완전히 제거 + const iframe = document.getElementById('form-container'); + iframe.remove(); // DOM에서 완전히 제거 + // 새 iframe 다시 생성 (깨끗한 상태로 초기화) + const newIframe = document.createElement('iframe'); + newIframe.id = 'form-container'; + newIframe.src = 'about:blank'; + newIframe.width = '100%'; + newIframe.frameBorder = '0'; + newIframe.allowFullscreen = true; + // body에 다시 추가 + document.querySelector('#index_action_form .modal-body').appendChild(newIframe); + // 부모창만 리로드 + window.location.reload(); } var index_action_form = document.getElementById('index_action_form');