diff --git a/extdbms/lib/Configs/Route.php b/extdbms/lib/Configs/Route.php
index 3c64730..eca3727 100644
--- a/extdbms/lib/Configs/Route.php
+++ b/extdbms/lib/Configs/Route.php
@@ -5,6 +5,7 @@ namespace lib\Configs;
use extra;
use lib\Controllers\DBMS\Client\MemoController;
use lib\Controllers\DBMS\DashboardController;
+use lib\Controllers\DBMS\DefenceController;
use lib\Controllers\DBMS\NavigatorController;
use lib\Controllers\DBMS\ServiceController;
use lib\Core\Response;
@@ -40,6 +41,16 @@ $router->group('dbms/dashboard', function (Router $router) {
return $controller->latest_history($params);
// Response::view($result);
});
+ $router->add('GET', 'cscount', function ($params) {
+ $controller = new DashboardController();
+ return $controller->cscount($params);
+ // Response::view($result);
+ });
+ $router->add('GET', 'coupon', function ($params) {
+ $controller = new DashboardController();
+ return $controller->coupon($params);
+ // Response::view($result);
+ });
});
$router->group('dbms/navigator', function (Router $router) {
@@ -51,6 +62,15 @@ $router->group('dbms/navigator', function (Router $router) {
});
});
+$router->group('dbms/defence', function (Router $router) {
+ // 동적 파라미터 없이 기본 path에 추가 파라미터를 받아 key/value 형식으로 처리
+ $router->add('GET', 'mk', function ($params) {
+ $controller = new DefenceController();
+ return $controller->mk($params);
+ // Response::view($result);
+ });
+});
+
$router->group('dbms/service', function (Router $router) {
// 동적 파라미터 없이 기본 path에 추가 파라미터를 받아 key/value 형식으로 처리
$router->add('GET', 'extra', function ($params) {
diff --git a/extdbms/lib/Controllers/DBMS/DashboardController.php b/extdbms/lib/Controllers/DBMS/DashboardController.php
index 526e5b7..6e89c54 100644
--- a/extdbms/lib/Controllers/DBMS/DashboardController.php
+++ b/extdbms/lib/Controllers/DBMS/DashboardController.php
@@ -164,4 +164,47 @@ class DashboardController extends DBMSController
$this->clients = $this->getClientService()->getEntities();
return $this->render(__FUNCTION__);
}
+ //service_list_cs_count.php
+ //CLI 접속방법 : php index.php site/dashboard/cscount/service_code/서비스코드/client_code/고객코드
+ //WEB 접속방법 : http://localhost/site/dashboard/cscount/service_code/서비스코드/client_code/고객코드
+ public function cscount(array $params): string
+ {
+ if (!array_key_exists('service_code', $params)) {
+ throw new \Exception("service_code 값이 정의되지 않았습니다.");
+ }
+ if (!array_key_exists('client_code', $params)) {
+ throw new \Exception("client_code 값이 정의되지 않았습니다.");
+ }
+ $serviceCode = $params['service_code'];
+ $clientCode = $params['client_code'];
+ $this->service_code = $serviceCode;
+ $this->client_code = $clientCode;
+ //VPC정보갯수
+ $this->vpc = $this->getVPCService()->getCountByServiceCode($serviceCode);
+ //KCS정보갯수
+ $this->kcs = $this->getKCSService()->getCountByServiceCode($serviceCode);
+ return $this->render(__FUNCTION__);
+ }
+ //service_list_cs_count.php
+ //CLI 접속방법 : php index.php site/dashboard/cscount/service_code/서비스코드/client_code/고객코드
+ //WEB 접속방법 : http://localhost/site/dashboard/cscount/service_code/서비스코드/client_code/고객코드
+ public function coupon(array $params): string
+ {
+ if (!array_key_exists('service_code', $params)) {
+ throw new \Exception("service_code 값이 정의되지 않았습니다.");
+ }
+ if (!array_key_exists('client_code', $params)) {
+ throw new \Exception("client_code 값이 정의되지 않았습니다.");
+ }
+ $serviceCode = $params['service_code'];
+ $clientCode = $params['client_code'];
+ $entity = $this->getServiceService()->getEntityByCode($serviceCode);
+ if (!$entity) {
+ throw new \Exception("{$serviceCode}에 해당하는 서비스정보가 존재하지 않습니다.");
+ }
+ $this->entity = $entity;
+ $this->service_code = $serviceCode;
+ $this->client_code = $clientCode;
+ return $this->render(__FUNCTION__);
+ }
} //Class
diff --git a/extdbms/lib/Controllers/DBMS/DefenceController.php b/extdbms/lib/Controllers/DBMS/DefenceController.php
index adce951..e0d9448 100644
--- a/extdbms/lib/Controllers/DBMS/DefenceController.php
+++ b/extdbms/lib/Controllers/DBMS/DefenceController.php
@@ -23,10 +23,14 @@ class DefenceController extends DBMSController
//방어 defense_index.php
//CLI 접속방법 : php index.php site/defence/mk/zone/존/parent/부모키/child/자식키
//WEB 접속방법 : http://localhostsite/defence/mk/zone/존/parent/부모키/child/자식키
- public function mk(): string
+ public function mk(array $params): string
{
- $this->request = $this->getRequest();
- $this->entities = $this->getDefenceService()->getMKList($this->getRequest('zone'));
+ if (!array_key_exists('zone', $params)) {
+ throw new \Exception("zone 값이 정의되지 않았습니다.");
+ }
+ $zone = $params['szone'];
+ $this->entities = $this->getDefenceService()->getMKList($zone);
+ $this->zone = $zone;
return $this->render(__FUNCTION__);
}
} //Class
diff --git a/extdbms/lib/Controllers/DBMS/ServerController.php b/extdbms/lib/Controllers/DBMS/ServerController.php
new file mode 100644
index 0000000..403d6c7
--- /dev/null
+++ b/extdbms/lib/Controllers/DBMS/ServerController.php
@@ -0,0 +1,36 @@
+getView()->setPath('server');
+ } //
+ public function getServerService(): ServerService
+ {
+ if ($this->_serverService === null) {
+ $this->_serverService = new ServerService();
+ }
+ return $this->_serverService;
+ }
+
+ //방어 defense_index.php
+ //CLI 접속방법 : php index.php site/defence/mk/zone/존/parent/부모키/child/자식키
+ //WEB 접속방법 : http://localhostsite/defence/mk/zone/존/parent/부모키/child/자식키
+ public function use(array $params): string
+ {
+ if (!array_key_exists('zone', $params)) {
+ throw new \Exception("zone 값이 정의되지 않았습니다.");
+ }
+ $zone = $params['szone'];
+ $this->entities = $this->getServerService()->getMKList($zone);
+ $this->zone = $zone;
+ return $this->render(__FUNCTION__);
+ }
+} //Class
diff --git a/extdbms/lib/Views/dbms/dashboard/coupon.php b/extdbms/lib/Views/dbms/dashboard/coupon.php
new file mode 100644
index 0000000..2b5fa52
--- /dev/null
+++ b/extdbms/lib/Views/dbms/dashboard/coupon.php
@@ -0,0 +1 @@
+= $this->entity->coupon ?>개
\ No newline at end of file
diff --git a/extdbms/lib/Views/dbms/dashboard/cscount.php b/extdbms/lib/Views/dbms/dashboard/cscount.php
new file mode 100644
index 0000000..f9a41da
--- /dev/null
+++ b/extdbms/lib/Views/dbms/dashboard/cscount.php
@@ -0,0 +1,2 @@
+client_code ?>&csInfoFlag=true&service_code== $this->service_code ?>">= $this->vpc ?>
+client_code ?>&csInfoFlag=false&service_code== $this->service_code ?>">= $this->kcs ?>
\ No newline at end of file
diff --git a/extdbms/lib/Views/dbms/server/use.php b/extdbms/lib/Views/dbms/server/use.php
new file mode 100644
index 0000000..5da882d
--- /dev/null
+++ b/extdbms/lib/Views/dbms/server/use.php
@@ -0,0 +1,244 @@
+
+// 기본 설정 로딩
+require_once('config.php');
+require_once('function.php');
+require_once('lib.php');
+
+//HTML 시작
+/*
+$lineup_data=@mysql_query("select * from serverdb where
+server_cpuname not in ('X4-Q','X6-Q','A1.6','CN2.','C2800','C2600','COL','CUS','NX227','NX20','NX21','DQ28','DQ26','DQ31','DQ18','DQ23','DQ20','DX34','DX38','DX28','DX32','DX36',
+'DX30','MD32','MD30','Q16R','Q316','Q310','Q283','Q266','Q25R','Q213','Q20R','Q186','Q24','Q20','Q240','DX3','DQ233')
+and server_process not in ('COLOCATION','CELERON','INTEL i5','INTEL i3','INTEL i7','ATOM','AMD','XEON Single','CUSTOM','INS-일회성','','','')
+and server_spec not in ('DQ266','DQ240','DQ213','Q2.130','Q2.4','Q16','DQ20R12','Q330','i3-3.30','i5-3.20','i7-3.4','i7-3.33','X36','X24','X30','NX213','i7-4790','DQ316','MQ23',
+'DQ183','DQ283','Q25','A1.66','','','','','','')
+#and server_spec like 'DH266'
+group by server_cpuname
+order by server_process,server_cpuname asc" , $db_connect) or die($db_q_error);
+*/
+
+
+$lineup_data = @mysql_query("select * from gearlist where process not in
+('COLOCATION','','','','','','','XEON Single','CUSTOM','INS-일회성','NEHALEM','Cisco Router','')
+and cpuname not in
+('','X6-Q','','','C2800','C2600','COL','CUS','NX227','NX20','NX21','DQ28','DQ26','DQ31','DQ18','DQ23','DQ20','DX34','DX38','DX28','DX32','DX36',
+'DX30','MD32','MD30','Q16R','Q316','Q310','Q283','Q266','Q25R','Q213','Q20R','Q186','Q24','Q20','Q240','DX3','DQ233')
+order by process,price,cpuname asc", $db_connect) or die($db_q_error);
+
+/* 2015년 8월 이후 신장비만 적용
+$lineup_data=@mysql_query("select * from gearlist where process not in
+('COLOCATION','CELERON','INTEL i5','INTEL i3','INTEL i7','ATOM','AMD','XEON Single','CUSTOM','INS-일회성','NEHALEM','Cisco Router','')
+and cpuname not in
+('X4-Q','X6-Q','A1.6','CN2.','C2800','C2600','COL','CUS','NX227','NX20','NX21','DQ28','DQ26','DQ31','DQ18','DQ23','DQ20','DX34','DX38','DX28','DX32','DX36',
+'DX30','MD32','MD30','Q16R','Q316','Q310','Q283','Q266','Q25R','Q213','Q20R','Q186','Q24','Q20','Q240','DX3','DQ233')
+order by cpuname,spec desc" , $db_connect) or die($db_q_error);
+*/
+$lineup_total = mysql_num_rows($lineup_data);
+
+/*
+$query="select * from serverdb where
+server_cpuname not in ('X4-Q','X6-Q','A1.6','CN2.','C2800','C2600','COL','CUS','NX227','NX20','NX21','DQ28','DQ26','DQ31','DQ18','DQ23','DQ20','DX34','DX38','DX28','DX32','DX36',
+'DX30','MD32','MD30','Q16R','Q316','Q310','Q283','Q266','Q25R','Q213','Q20R','Q186','Q24','Q20','Q240','DX3','DQ233')
+and server_process not in ('COLOCATION','CELERON','INTEL i5','INTEL i3','INTEL i7','ATOM','AMD','XEON Single','CUSTOM','INS-일회성','','','')
+and server_spec not in ('DQ266','DQ240','DQ213','Q2.130','Q2.4','Q16','DQ20R12','Q330','i3-3.30','i5-3.20','i7-3.4','i7-3.33','X36','X24','X30','NX213','i7-4790','DQ316','MQ23',
+'DQ183','DQ283','Q25','A1.66','','','','','','')
+and server_spec like 'DH266'
+order by server_process,server_cpuname asc";
+$DH266_all_data = @mysql_query($query , $db_connect) or die($db_q_error);
+$DH266_all=mysql_fetch_assoc($server_data);
+mysql_num_rows($DH266_all_data);
+
+
+$query="select * from serverdb where
+server_cpuname not in ('X4-Q','X6-Q','A1.6','CN2.','C2800','C2600','COL','CUS','NX227','NX20','NX21','DQ28','DQ26','DQ31','DQ18','DQ23','DQ20','DX34','DX38','DX28','DX32','DX36',
+'DX30','MD32','MD30','Q16R','Q316','Q310','Q283','Q266','Q25R','Q213','Q20R','Q186','Q24','Q20','Q240','DX3','DQ233')
+and server_process not in ('COLOCATION','CELERON','INTEL i5','INTEL i3','INTEL i7','ATOM','AMD','XEON Single','CUSTOM','INS-일회성','','','')
+and server_spec not in ('DQ266','DQ240','DQ213','Q2.130','Q2.4','Q16','DQ20R12','Q330','i3-3.30','i5-3.20','i7-3.4','i7-3.33','X36','X24','X30','NX213','i7-4790','DQ316','MQ23',
+'DQ183','DQ283','Q25','A1.66','','','','','','')
+and server_spec like 'DH266' and server_use_status like 'y'
+order by server_process,server_cpuname asc";
+$server_data = @mysql_query($query , $db_connect) or die($db_q_error);
+$server_count=mysql_fetch_assoc($server_data);
+echo mysql_num_rows($server_data);
+*/
+?>
+
+* CPU 명칭 :
+싱글 코어 = 1개 코어 /
+듀얼 코어 = 2개 코어 /
+트리플 코어 = 3개 코어 /
+쿼드 코어(Q) = 4개 코어 /
+헥사 코어(H) = 6개 코어 /
+옥타 코어(O) = 8개 코어 /
+도데카(D) = 12개 코어 /
+헥사데시멀 코어 = 16개코어
+* 도쿄 회선 + 1U상면비 : 60만원 (50+10) / 치바 회선 + 1U상면비 : 40만원 (30+10)
+* HDD : 1단위당 일회성 10만원 / 메모리 : 2G당 1회성 5만원 / 방어서비스 : CS방어 40만원 , BL상시 60만원 , CS-Pre상시 300만원 , CF방어 도메인당 40만원 , 인증방어 사이트당 80만원(+유동CS4개 기본)
+
| 구분 | +장비사양 | +CPU모델명 | +임대가격 | +전체서버 | +임대중 | +사용가능 | +포맷보류 | +
| = $lineup['process'] ?> | += $lineup['spec'] ?> | += $lineup['cpuname'] ?> | += $lineup['price'] ?> 만원 | += $all['count(*)'] ?> 대 | += $use['count(*)'] ?> 대 | ++ = $empty['count(*)'] ?> 대 + | += $format['count(*)'] ?> 대 | +
| INTEL i5(구세대) | +i5-2.xx | +i5-2 | +23 만원 | += $all['count(*)'] ?> 대 | += $use['count(*)'] ?> 대 | ++ = $empty['count(*)'] ?> 대 + | += $format['count(*)'] ?> 대 | +
| INTEL i7(구세대) | +i7-2.xx | +i7-2 | +45 만원 | += $all['count(*)'] ?> 대 | += $use['count(*)'] ?> 대 | ++ = $empty['count(*)'] ?> 대 + | += $format['count(*)'] ?> 대 | +
| INTEL i7(4세대) | +i7-4.xx | +i7-4 | +45 만원 | += $all['count(*)'] ?> 대 | += $use['count(*)'] ?> 대 | ++ = $empty['count(*)'] ?> 대 + | += $format['count(*)'] ?> 대 | +
| 합계 | ++ | + | + | + | + | + | + |