dbmsv2 init...1
This commit is contained in:
parent
ab79f8391b
commit
cb92efa856
@ -4,7 +4,7 @@ namespace App\Controllers\Admin;
|
||||
|
||||
use App\Helpers\HomeHelper;
|
||||
use App\Services\Customer\ServiceService;
|
||||
use App\Services\Customer\ServicePaymentService;
|
||||
use App\Services\Customer\PaymentService;
|
||||
use CodeIgniter\HTTP\RedirectResponse;
|
||||
use CodeIgniter\HTTP\RequestInterface;
|
||||
use CodeIgniter\HTTP\ResponseInterface;
|
||||
@ -13,7 +13,7 @@ use Psr\Log\LoggerInterface;
|
||||
class Home extends AdminController
|
||||
{
|
||||
private $_service = null;
|
||||
private ?ServicePaymentService $_servicePaymentService = null;
|
||||
private ?PaymentService $_PaymentService = null;
|
||||
public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger)
|
||||
{
|
||||
parent::initController($request, $response, $logger);
|
||||
@ -37,12 +37,12 @@ class Home extends AdminController
|
||||
}
|
||||
return $this->_helper;
|
||||
}
|
||||
final public function getServicePaymentService(): ServicePaymentService
|
||||
final public function getPaymentService(): PaymentService
|
||||
{
|
||||
if (!$this->_servicePaymentService) {
|
||||
$this->_servicePaymentService = new ServicePaymentService();
|
||||
if (!$this->_PaymentService) {
|
||||
$this->_PaymentService = new PaymentService();
|
||||
}
|
||||
return $this->_servicePaymentService;
|
||||
return $this->_PaymentService;
|
||||
}
|
||||
protected function getResultSuccess(string $message = MESSAGES["SUCCESS"], ?string $actionTemplate = null): RedirectResponse|string
|
||||
{
|
||||
@ -71,16 +71,12 @@ class Home extends AdminController
|
||||
$this->initAction(__FUNCTION__);
|
||||
//Total 서버 현황
|
||||
$this->totalCounts = $this->getService()->getTotalCountsByType();
|
||||
//LINE,IP,SERVER등 추가 FilterOption 셋팅용
|
||||
foreach (SERVICE_ITEM_TYPES as $item_type => $label) {
|
||||
$this->setFilterFieldOption($item_type, $this->getService()->getFilterOptionsByItemType($item_type));
|
||||
}
|
||||
//interval을 기준으로 최근 신규 서비스정보 가져오기
|
||||
$this->interval = intval($this->request->getVar('interval') ?? SERVICE_NEW_INTERVAL);
|
||||
$this->newServiceEntities = $this->getService()->getEntitiesByNewService($this->interval);
|
||||
$this->newServiceCount = count($this->newServiceEntities);
|
||||
//서비스별 미납 Count
|
||||
$this->unPaids = $this->getServicePaymentService()->getUnPaidCountByService();
|
||||
$this->unPaids = $this->getPaymentService()->getUnPaidCount();
|
||||
$this->unPaidCount = count($this->unPaids);
|
||||
helper(['form']);
|
||||
return $this->getResultSuccess();
|
||||
|
||||
@ -4,8 +4,8 @@
|
||||
"settings": {
|
||||
"width": 3000,
|
||||
"height": 3000,
|
||||
"scrollTop": -922,
|
||||
"scrollLeft": -856,
|
||||
"scrollTop": 0,
|
||||
"scrollLeft": -690,
|
||||
"zoomLevel": 1,
|
||||
"show": 511,
|
||||
"database": 4,
|
||||
@ -164,15 +164,15 @@
|
||||
"JEk5AASiK6MpT9QBRWjMX"
|
||||
],
|
||||
"ui": {
|
||||
"x": 791.2462,
|
||||
"y": 870.1267,
|
||||
"x": 865.9298,
|
||||
"y": 818.2277,
|
||||
"zIndex": 2,
|
||||
"widthName": 60,
|
||||
"widthComment": 60,
|
||||
"color": ""
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755584376751,
|
||||
"updateAt": 1755592426935,
|
||||
"createAt": 1745819764137
|
||||
}
|
||||
},
|
||||
@ -237,6 +237,7 @@
|
||||
"m77kSp3scTgMhInPBjsc3",
|
||||
"9F6QpQqxeEggZ0FHM81O1",
|
||||
"tsDqk1dzwzUtvBzpjmarJ",
|
||||
"IiWPO22p9r3zajF_EcPpe",
|
||||
"bh-W1plz0vCW2rURDnfDR",
|
||||
"hmZlcR-Pw2C_ife1zzo5o",
|
||||
"AGBQ4FnuIDU-Dy5QoS0Fu",
|
||||
@ -285,6 +286,7 @@
|
||||
"Djbw3B6xZWKAvwJDto9xl",
|
||||
"5LbBaqufhFMN2X15ksCbZ",
|
||||
"gf3QFUo-9exbygXX3-0H0",
|
||||
"IiWPO22p9r3zajF_EcPpe",
|
||||
"bh-W1plz0vCW2rURDnfDR",
|
||||
"hmZlcR-Pw2C_ife1zzo5o",
|
||||
"AGBQ4FnuIDU-Dy5QoS0Fu",
|
||||
@ -308,7 +310,7 @@
|
||||
"color": ""
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755584140872,
|
||||
"updateAt": 1755593063862,
|
||||
"createAt": 1745819764137
|
||||
}
|
||||
},
|
||||
@ -971,15 +973,15 @@
|
||||
"2fzVlWt1Skh-391N_z9Ci"
|
||||
],
|
||||
"ui": {
|
||||
"x": 1521.217,
|
||||
"y": 1019.8959,
|
||||
"x": 1527.5462,
|
||||
"y": 951.5417,
|
||||
"zIndex": 2395,
|
||||
"widthName": 60,
|
||||
"widthComment": 62,
|
||||
"color": ""
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755584468390,
|
||||
"updateAt": 1755592449163,
|
||||
"createAt": 1748485662214
|
||||
}
|
||||
},
|
||||
@ -1887,7 +1889,7 @@
|
||||
"comment": "",
|
||||
"dataType": "VARCHAR(20)",
|
||||
"default": "'normal'",
|
||||
"options": 0,
|
||||
"options": 8,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
@ -1896,7 +1898,7 @@
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755581807230,
|
||||
"updateAt": 1755592729455,
|
||||
"createAt": 1745819764137
|
||||
}
|
||||
},
|
||||
@ -3747,7 +3749,7 @@
|
||||
"comment": "",
|
||||
"dataType": "VARCHAR(20)",
|
||||
"default": "'normal'",
|
||||
"options": 0,
|
||||
"options": 8,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
@ -3756,7 +3758,7 @@
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755581848746,
|
||||
"updateAt": 1755592723719,
|
||||
"createAt": 1746409047865
|
||||
}
|
||||
},
|
||||
@ -9944,19 +9946,19 @@
|
||||
"id": "ptLUIGfIqm89XGRz_V2ww",
|
||||
"tableId": "B8haiEbPc1lRBWTv1g25G",
|
||||
"name": "location",
|
||||
"comment": "지역코드(chiba,tokyo,3center)",
|
||||
"comment": "지역코드(chiba,tokyo,3center등)",
|
||||
"dataType": "VARCHAR(20)",
|
||||
"default": "",
|
||||
"options": 0,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
"widthComment": 160,
|
||||
"widthComment": 172,
|
||||
"widthDataType": 75,
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755478773346,
|
||||
"updateAt": 1755593517165,
|
||||
"createAt": 1755237587825
|
||||
}
|
||||
},
|
||||
@ -9964,19 +9966,19 @@
|
||||
"id": "50a08OnwVq9SXAXX5pq6s",
|
||||
"tableId": "B8haiEbPc1lRBWTv1g25G",
|
||||
"name": "type",
|
||||
"comment": "서비스형식((일발, 방어,전용,VPN,대체,,테스트,자사,코로케이션)",
|
||||
"comment": "서비스형식((일반, 자사,코로케이션 등)",
|
||||
"dataType": "VARCHAR(20)",
|
||||
"default": "",
|
||||
"options": 8,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
"widthComment": 336,
|
||||
"widthComment": 205,
|
||||
"widthDataType": 75,
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755240220489,
|
||||
"updateAt": 1755593455555,
|
||||
"createAt": 1755240220488
|
||||
}
|
||||
},
|
||||
@ -10364,19 +10366,19 @@
|
||||
"id": "hK2hK1Xs1GrDW5nUTroIR",
|
||||
"tableId": "B8haiEbPc1lRBWTv1g25G",
|
||||
"name": "amount",
|
||||
"comment": "서비스금액(IP+월별ITEM+CS의 서비스금액의 총합금액)",
|
||||
"comment": "서비스금액(<=서버 최종금액)",
|
||||
"dataType": "INT",
|
||||
"default": "0",
|
||||
"options": 8,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
"widthComment": 298,
|
||||
"widthComment": 161,
|
||||
"widthDataType": 60,
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755245428350,
|
||||
"updateAt": 1755593484931,
|
||||
"createAt": 1755245428349
|
||||
}
|
||||
},
|
||||
@ -12664,19 +12666,19 @@
|
||||
"id": "ImCmrkHrB4nfB35PilQnf",
|
||||
"tableId": "ZLEpY5EjuZV21718zf-Y1",
|
||||
"name": "clientinfo_code",
|
||||
"comment": "고객코드(이전사용자)",
|
||||
"comment": "고객코드(직전고객)",
|
||||
"dataType": "VARCHAR(20)",
|
||||
"default": "",
|
||||
"options": 0,
|
||||
"ui": {
|
||||
"keys": 2,
|
||||
"widthName": 82,
|
||||
"widthComment": 117,
|
||||
"widthComment": 105,
|
||||
"widthDataType": 75,
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755566148910,
|
||||
"updateAt": 1755593539759,
|
||||
"createAt": 1755566111980
|
||||
}
|
||||
},
|
||||
@ -12759,6 +12761,26 @@
|
||||
"updateAt": 1755584368408,
|
||||
"createAt": 1755584368408
|
||||
}
|
||||
},
|
||||
"IiWPO22p9r3zajF_EcPpe": {
|
||||
"id": "IiWPO22p9r3zajF_EcPpe",
|
||||
"tableId": "B4qGh3KZsXHQ3_4EOgwJZ",
|
||||
"name": "total_price",
|
||||
"comment": "최종금액(PART+IP+CS)",
|
||||
"dataType": "INT",
|
||||
"default": "0",
|
||||
"options": 8,
|
||||
"ui": {
|
||||
"keys": 0,
|
||||
"widthName": 60,
|
||||
"widthComment": 124,
|
||||
"widthDataType": 60,
|
||||
"widthDefault": 60
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755593253840,
|
||||
"createAt": 1755593061849
|
||||
}
|
||||
}
|
||||
},
|
||||
"relationshipEntities": {
|
||||
@ -12781,7 +12803,7 @@
|
||||
"columnIds": [
|
||||
"f7_MGvRjkwL1xkCWrAgDR"
|
||||
],
|
||||
"x": 2091.7956,
|
||||
"x": 2079.7956,
|
||||
"y": 1600.8948,
|
||||
"direction": 2
|
||||
},
|
||||
@ -12809,8 +12831,8 @@
|
||||
"columnIds": [
|
||||
"Vf3bNvvEPfu1zCs4rcHTU"
|
||||
],
|
||||
"x": 1917.717,
|
||||
"y": 1019.8959,
|
||||
"x": 1858.5462,
|
||||
"y": 951.5417,
|
||||
"direction": 4
|
||||
},
|
||||
"meta": {
|
||||
@ -12838,7 +12860,7 @@
|
||||
"s1Az-lXWK0NlVQqFEEK8o"
|
||||
],
|
||||
"x": 2294.4072,
|
||||
"y": 559.0364999999999,
|
||||
"y": 528.3698333333333,
|
||||
"direction": 1
|
||||
},
|
||||
"meta": {
|
||||
@ -13089,8 +13111,8 @@
|
||||
"columnIds": [
|
||||
"hrPg0uHAdEjamOj--BVzO"
|
||||
],
|
||||
"x": 1190.9962,
|
||||
"y": 870.1267,
|
||||
"x": 1265.6798,
|
||||
"y": 818.2277,
|
||||
"direction": 4
|
||||
},
|
||||
"meta": {
|
||||
@ -14284,8 +14306,8 @@
|
||||
"columnIds": [
|
||||
"1ZM86qoxmCcoKnqOpE2oj"
|
||||
],
|
||||
"x": 2314.217,
|
||||
"y": 1215.8959,
|
||||
"x": 2189.5461999999998,
|
||||
"y": 1147.5417,
|
||||
"direction": 2
|
||||
},
|
||||
"end": {
|
||||
@ -14293,9 +14315,9 @@
|
||||
"columnIds": [
|
||||
"LRN5qjIRZ18UOhqFbBLuo"
|
||||
],
|
||||
"x": 2609.4072,
|
||||
"y": 835.0364999999999,
|
||||
"direction": 8
|
||||
"x": 2294.4072,
|
||||
"y": 773.7031666666666,
|
||||
"direction": 1
|
||||
},
|
||||
"meta": {
|
||||
"updateAt": 1755479838515,
|
||||
@ -14312,8 +14334,8 @@
|
||||
"columnIds": [
|
||||
"34psXzS7RLX0sWXZyDGGf"
|
||||
],
|
||||
"x": 1297.179,
|
||||
"y": 1828.520766666667,
|
||||
"x": 1328.179,
|
||||
"y": 1848.520766666667,
|
||||
"direction": 2
|
||||
},
|
||||
"end": {
|
||||
@ -14397,7 +14419,7 @@
|
||||
"34psXzS7RLX0sWXZyDGGf"
|
||||
],
|
||||
"x": 740.179,
|
||||
"y": 1627.8541,
|
||||
"y": 1633.8541,
|
||||
"direction": 1
|
||||
},
|
||||
"end": {
|
||||
@ -14480,8 +14502,8 @@
|
||||
"columnIds": [
|
||||
"1ZM86qoxmCcoKnqOpE2oj"
|
||||
],
|
||||
"x": 1521.217,
|
||||
"y": 1313.8959,
|
||||
"x": 1527.5462,
|
||||
"y": 1245.5417,
|
||||
"direction": 1
|
||||
},
|
||||
"end": {
|
||||
@ -14489,8 +14511,8 @@
|
||||
"columnIds": [
|
||||
"3fZMQ9qB1DO8y44eJRKdt"
|
||||
],
|
||||
"x": 1297.179,
|
||||
"y": 1599.1874333333335,
|
||||
"x": 1328.179,
|
||||
"y": 1603.1874333333335,
|
||||
"direction": 2
|
||||
},
|
||||
"meta": {
|
||||
@ -14620,8 +14642,8 @@
|
||||
"columnIds": [
|
||||
"34psXzS7RLX0sWXZyDGGf"
|
||||
],
|
||||
"x": 1297.179,
|
||||
"y": 1713.8541000000002,
|
||||
"x": 1328.179,
|
||||
"y": 1725.8541000000002,
|
||||
"direction": 2
|
||||
},
|
||||
"end": {
|
||||
@ -14648,8 +14670,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 1324.2462,
|
||||
"y": 1066.1267,
|
||||
"x": 1398.9298,
|
||||
"y": 1112.2277,
|
||||
"direction": 2
|
||||
},
|
||||
"end": {
|
||||
@ -14657,8 +14679,8 @@
|
||||
"columnIds": [
|
||||
"0LanT5cVJX_uBb0Foh2NM"
|
||||
],
|
||||
"x": 1521.217,
|
||||
"y": 1117.8959,
|
||||
"x": 1527.5462,
|
||||
"y": 1049.5417,
|
||||
"direction": 1
|
||||
},
|
||||
"meta": {
|
||||
@ -14676,8 +14698,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 1324.2462,
|
||||
"y": 935.4600333333333,
|
||||
"x": 1398.9298,
|
||||
"y": 916.2277,
|
||||
"direction": 2
|
||||
},
|
||||
"end": {
|
||||
@ -14686,7 +14708,7 @@
|
||||
"QwfRq6xU7Vy-QoenynjXR"
|
||||
],
|
||||
"x": 2294.4072,
|
||||
"y": 743.0364999999999,
|
||||
"y": 651.0364999999999,
|
||||
"direction": 1
|
||||
},
|
||||
"meta": {
|
||||
@ -14732,8 +14754,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 924.4962,
|
||||
"y": 870.1267,
|
||||
"x": 999.1798,
|
||||
"y": 818.2277,
|
||||
"direction": 4
|
||||
},
|
||||
"end": {
|
||||
@ -14760,8 +14782,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 791.2462,
|
||||
"y": 968.1267,
|
||||
"x": 865.9298,
|
||||
"y": 916.2277,
|
||||
"direction": 1
|
||||
},
|
||||
"end": {
|
||||
@ -14789,7 +14811,7 @@
|
||||
"34psXzS7RLX0sWXZyDGGf"
|
||||
],
|
||||
"x": 740.179,
|
||||
"y": 1799.8541,
|
||||
"y": 1817.8541,
|
||||
"direction": 1
|
||||
},
|
||||
"end": {
|
||||
@ -14872,8 +14894,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 791.2462,
|
||||
"y": 1164.1267,
|
||||
"x": 865.9298,
|
||||
"y": 1112.2277,
|
||||
"direction": 1
|
||||
},
|
||||
"end": {
|
||||
@ -14900,8 +14922,8 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 1057.7462,
|
||||
"y": 1262.1267,
|
||||
"x": 999.1798,
|
||||
"y": 1210.2277,
|
||||
"direction": 8
|
||||
},
|
||||
"end": {
|
||||
@ -14909,7 +14931,7 @@
|
||||
"columnIds": [
|
||||
"hPz83FX0cU7HIyVRRr5sl"
|
||||
],
|
||||
"x": 1018.679,
|
||||
"x": 1034.179,
|
||||
"y": 1541.8541,
|
||||
"direction": 4
|
||||
},
|
||||
@ -14928,9 +14950,9 @@
|
||||
"columnIds": [
|
||||
"n7IyDCZLDqfEo49XRYtYR"
|
||||
],
|
||||
"x": 1324.2462,
|
||||
"y": 1196.7933666666668,
|
||||
"direction": 2
|
||||
"x": 1265.6798,
|
||||
"y": 1210.2277,
|
||||
"direction": 8
|
||||
},
|
||||
"end": {
|
||||
"tableId": "ZLEpY5EjuZV21718zf-Y1",
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -10,7 +10,7 @@ class MyLogEntity extends CommonEntity
|
||||
const PK = Model::PK;
|
||||
const TITLE = Model::TITLE;
|
||||
const STATUS_SUCCESS = "success";
|
||||
const STATUS_FAILED = "error";
|
||||
const STATUS_FAILED = "fail";
|
||||
const DEFAULT_STATUS = self::STATUS_SUCCESS;
|
||||
//공통부분
|
||||
//Common Function
|
||||
|
||||
@ -2,14 +2,14 @@
|
||||
|
||||
namespace App\Helpers;
|
||||
|
||||
use App\Models\Customer\ServicePaymentModel;
|
||||
use App\Models\Customer\PaymentModel;
|
||||
|
||||
class HomeHelper extends CommonHelper
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->setTitleField(field: ServicePaymentModel::TITLE);
|
||||
$this->setTitleField(field: PaymentModel::TITLE);
|
||||
}
|
||||
|
||||
public function getFieldView(string $field, mixed $value, array $viewDatas, array $extras = []): string|null
|
||||
|
||||
@ -11,9 +11,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'deposit',
|
||||
],
|
||||
"STATUS" => [
|
||||
'deposit' => "입금",
|
||||
"withdrawal" => "출금",
|
||||
|
||||
@ -15,10 +15,6 @@ return [
|
||||
'created_at' => "등록일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'role' => "user",
|
||||
'status' => 'normal',
|
||||
],
|
||||
"ROLE" => [
|
||||
"user" => "일반회원",
|
||||
"vip" => "VIP회원",
|
||||
|
||||
@ -10,9 +10,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'deposit'
|
||||
],
|
||||
"STATUS" => [
|
||||
'deposit' => "추가",
|
||||
"withdrawal" => "사용",
|
||||
|
||||
@ -15,12 +15,6 @@ return [
|
||||
'deleted_at' => "삭제일",
|
||||
'countdown' => "납부기한",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'item_type' => "server",
|
||||
'billing_method' => "month",
|
||||
'pay_method' => "account",
|
||||
'status' => 'unpaid'
|
||||
],
|
||||
"BILLING_METHOD" => [
|
||||
"month" => "매월",
|
||||
"onetime" => "일회성",
|
||||
|
||||
@ -10,9 +10,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'deposit'
|
||||
],
|
||||
"STATUS" => [
|
||||
'deposit' => "입금",
|
||||
"withdrawal" => "출금",
|
||||
|
||||
@ -4,9 +4,11 @@ return [
|
||||
'label' => [
|
||||
'user_uid' => "관리자",
|
||||
'clientinfo_code' => "고객",
|
||||
'serverinfo_code' => "서버",
|
||||
'type' => "서비스형식",
|
||||
'location' => "위치",
|
||||
'billing_at' => "결제일",
|
||||
'amount' => "서비스금액",
|
||||
'start_at' => "시작일",
|
||||
'end_at' => "해지일",
|
||||
'history' => "사용이력",
|
||||
@ -15,11 +17,6 @@ return [
|
||||
'created_at' => "신청일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'location' => "chiba",
|
||||
'type' => "normal",
|
||||
'status' => 'normal'
|
||||
],
|
||||
"LOCATION" => [
|
||||
"chiba" => "치바",
|
||||
"tokyo" => "도쿄",
|
||||
|
||||
@ -13,10 +13,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'type' => 'VPC-CS',
|
||||
'status' => 'available'
|
||||
],
|
||||
"TYPE" => [
|
||||
"VPC-CS" => "VPC-CS",
|
||||
"KT-CS" => "KT-CS",
|
||||
|
||||
@ -14,9 +14,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'available',
|
||||
],
|
||||
"STATUS" => [
|
||||
'available' => "사용가능",
|
||||
'occupied' => "서비스중",
|
||||
|
||||
@ -13,10 +13,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'type' => 'normal',
|
||||
'status' => 'available'
|
||||
],
|
||||
"TYPE" => [
|
||||
"normal" => "일반",
|
||||
"dedicated" => "전용",
|
||||
|
||||
@ -16,10 +16,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'type' => 'hp',
|
||||
'status' => 'available',
|
||||
],
|
||||
"TYPE" => [
|
||||
'hp' => "HP",
|
||||
"del" => "DELL",
|
||||
|
||||
@ -8,9 +8,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'available',
|
||||
],
|
||||
"STATUS" => [
|
||||
'available' => "사용가능",
|
||||
'occupied' => "서비스중",
|
||||
|
||||
@ -3,21 +3,16 @@ return [
|
||||
'title' => "Log 정보",
|
||||
'label' => [
|
||||
'uid' => "번호",
|
||||
'class_name' => "클래스",
|
||||
'method_name' => "함수",
|
||||
'title' => "제목",
|
||||
'user_uid' => "사용자",
|
||||
'title' => "제목",
|
||||
'content' => "내용",
|
||||
'status' => "상태",
|
||||
'updated_at' => "수정일",
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'status' => 'success'
|
||||
],
|
||||
"STATUS" => [
|
||||
'success' => "완료",
|
||||
'success' => "성공",
|
||||
"fail" => "실패",
|
||||
],
|
||||
];
|
||||
|
||||
@ -15,10 +15,6 @@ return [
|
||||
'created_at' => "작성일",
|
||||
'deleted_at' => "삭제일",
|
||||
],
|
||||
'DEFAULTS' => [
|
||||
'role' => "manager",
|
||||
'status' => 'normal'
|
||||
],
|
||||
"ROLE" => [
|
||||
"manager" => "관리자",
|
||||
"cloudflare" => "Cloudflare관리자",
|
||||
|
||||
@ -15,6 +15,7 @@ class ServiceModel extends CustomerModel
|
||||
protected $allowedFields = [
|
||||
"user_uid",
|
||||
"clientinfo_code",
|
||||
"serverinfo_code",
|
||||
"type",
|
||||
"location",
|
||||
"billing_at",
|
||||
@ -35,10 +36,12 @@ class ServiceModel extends CustomerModel
|
||||
}
|
||||
switch ($field) {
|
||||
case "user_uid":
|
||||
case "serverinfo_code":
|
||||
case "amount":
|
||||
$rule = "required|numeric";
|
||||
break;
|
||||
case "clientinfo_code":
|
||||
case "type":
|
||||
case "location":
|
||||
case "status":
|
||||
$rule = "required|trim|string";
|
||||
|
||||
@ -6,7 +6,7 @@ use App\Entities\MyLogEntity;
|
||||
|
||||
class MyLogModel extends CommonModel
|
||||
{
|
||||
const TABLE = "logger";
|
||||
const TABLE = "user_history";
|
||||
const PK = "uid";
|
||||
const TITLE = "title";
|
||||
protected $table = self::TABLE;
|
||||
@ -14,8 +14,6 @@ class MyLogModel extends CommonModel
|
||||
protected $returnType = MyLogEntity::class;
|
||||
protected $allowedFields = [
|
||||
"user_uid",
|
||||
"class_name",
|
||||
"method_name",
|
||||
"title",
|
||||
"content",
|
||||
"status",
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
namespace App\Services\Customer;
|
||||
|
||||
use App\Entities\Customer\ServiceEntity;
|
||||
use App\Entities\Equipment\ServerEntity;
|
||||
use App\Models\Customer\ServiceModel;
|
||||
|
||||
class ServiceService extends CustomerService
|
||||
@ -17,6 +18,7 @@ class ServiceService extends CustomerService
|
||||
{
|
||||
return [
|
||||
"clientinfo_code",
|
||||
"serverinfo_code",
|
||||
"type",
|
||||
"location",
|
||||
"billing_at",
|
||||
@ -28,7 +30,7 @@ class ServiceService extends CustomerService
|
||||
}
|
||||
public function getFilterFields(): array
|
||||
{
|
||||
return ['clientinfo_code', 'type', 'location', 'status'];
|
||||
return ['clientinfo_code', 'serverinfo_code', 'type', 'location', 'status'];
|
||||
}
|
||||
public function getBatchJobFields(): array
|
||||
{
|
||||
@ -36,7 +38,7 @@ class ServiceService extends CustomerService
|
||||
}
|
||||
public function getIndexFields(): array
|
||||
{
|
||||
return ['clientinfo_code', 'type', 'location', 'billing_at', 'amount', 'start_at', 'end_at', 'updated_at', 'status', 'user_uid'];
|
||||
return ['clientinfo_code', 'type', 'location', 'serverinfo_code', 'billing_at', 'amount', 'start_at', 'end_at', 'updated_at', 'status', 'user_uid'];
|
||||
}
|
||||
//Entity의 관련객체정의용
|
||||
public function setSearchIp(string $ip): void
|
||||
@ -70,6 +72,9 @@ class ServiceService extends CustomerService
|
||||
case 'clientinfo_code':
|
||||
$options = $this->getClientService()->getEntities();
|
||||
break;
|
||||
case 'serverinfo_code':
|
||||
$options = $this->getServerService()->getEntities(['status' => ServerEntity::DEFAULT_STATUS]);
|
||||
break;
|
||||
default:
|
||||
$options = parent::getFormFieldOption($field, $options);
|
||||
break;
|
||||
@ -84,13 +89,21 @@ class ServiceService extends CustomerService
|
||||
//서비스 방식에 따른 서비스별 Count
|
||||
final public function getTotalCountsByType(): array
|
||||
{
|
||||
$totalCounts = [
|
||||
'chiba_total' => 0,
|
||||
'tokyo_total' => 0,
|
||||
'all_total' => 0,
|
||||
'normal' => ['chiba' => 0, 'tokyo' => 0, 'total' => 0],
|
||||
'defence' => ['chiba' => 0, 'tokyo' => 0, 'total' => 0],
|
||||
'dedicated' => ['chiba' => 0, 'tokyo' => 0, 'total' => 0],
|
||||
'alternative' => ['chiba' => 0, 'tokyo' => 0, 'total' => 0],
|
||||
'test' => ['chiba' => 0, 'tokyo' => 0, 'total' => 0],
|
||||
];
|
||||
$sql = "SELECT type,
|
||||
COUNT(CASE WHEN location = 'default' THEN 1 END) AS chiba,
|
||||
COUNT(CASE WHEN location = 'chiba' THEN 1 END) AS chiba,
|
||||
COUNT(CASE WHEN location = 'tokyo' THEN 1 END) AS tokyo,
|
||||
COUNT(CASE WHEN location IN ('default', 'tokyo') THEN 1 END) AS total
|
||||
FROM serviceinfo GROUP BY type;";
|
||||
|
||||
$totalCounts = ['chiba_total' => 0, 'tokyo_total' => 0, 'all_total' => 0];
|
||||
COUNT(CASE WHEN location IN ('chiba', 'tokyo') THEN 1 END) AS total
|
||||
FROM serviceinfo GROUP BY type";
|
||||
foreach ($this->getModel()->query($sql)->getResult() as $row) {
|
||||
$totalCounts[$row->type] = [
|
||||
'chiba' => $row->chiba,
|
||||
|
||||
@ -4,7 +4,6 @@ namespace App\Services;
|
||||
|
||||
use App\Entities\MyLogEntity;
|
||||
use App\Models\MyLogModel;
|
||||
use App\Services\Auth\AuthService;
|
||||
use App\Libraries\LogCollector;
|
||||
use App\Services\UserService;
|
||||
|
||||
@ -20,8 +19,6 @@ class MyLogService extends CommonService
|
||||
{
|
||||
return [
|
||||
"user_uid",
|
||||
"class_name",
|
||||
"method_name",
|
||||
"title",
|
||||
"content",
|
||||
"status",
|
||||
@ -37,7 +34,7 @@ class MyLogService extends CommonService
|
||||
}
|
||||
public function getIndexFields(): array
|
||||
{
|
||||
return ['user_uid', 'class_name', 'method_name', 'title', 'status', 'created_at'];
|
||||
return ['user_uid', 'title', 'status', 'created_at'];
|
||||
}
|
||||
public function getUserService(): UserService
|
||||
{
|
||||
@ -64,9 +61,7 @@ class MyLogService extends CommonService
|
||||
{
|
||||
$formDatas = [
|
||||
'user_uid' => $user_uid,
|
||||
'class_name' => $class,
|
||||
'method_name' => $method,
|
||||
'title' => $title,
|
||||
'title' => sprintf("%s->%s %s", $class, $method, $title),
|
||||
'content' => LogCollector::dump(),
|
||||
];
|
||||
LogCollector::clear();
|
||||
|
||||
@ -11,14 +11,14 @@
|
||||
<table class="table table-bordered table-hover align-middle">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th>서비스코드</th>
|
||||
<th>업체명</th>
|
||||
<th>구분</th>
|
||||
<th>장비번호</th>
|
||||
<th>스위치정보</th>
|
||||
<th>IP정보</th>
|
||||
<th>CS</th>
|
||||
<th>등록자</th>
|
||||
<th class="text-center">서비스코드</th>
|
||||
<th class="text-center">업체명</th>
|
||||
<th class="text-center">구분</th>
|
||||
<th class="text-center">장비번호</th>
|
||||
<th class="text-center">스위치정보</th>
|
||||
<th class="text-center">IP정보</th>
|
||||
<th class="text-center">CS</th>
|
||||
<th class="text-center">등록자</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@ -11,36 +11,36 @@
|
||||
<table class="table table-bordered table-hover align-middle">
|
||||
<thead>
|
||||
<tr>
|
||||
<th rowspan="2">고객명</th>
|
||||
<th colspan="2">일반</th>
|
||||
<th colspan="2">방어</th>
|
||||
<th colspan="2">전용</th>
|
||||
<th colspan="2">대체</th>
|
||||
<th colspan="3">테스트</th>
|
||||
<th colspan="3">합계</th>
|
||||
<th rowspan="2" class="text-center">고객명</th>
|
||||
<th colspan="2" class="text-center">일반</th>
|
||||
<th colspan="2" class="text-center">방어</th>
|
||||
<th colspan="2" class="text-center">전용</th>
|
||||
<th colspan="2" class="text-center">대체</th>
|
||||
<th colspan="3" class="text-center">테스트</th>
|
||||
<th colspan="3" class="text-center">합계</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>합계</th>
|
||||
<th>도쿄</th>
|
||||
<th>치바</th>
|
||||
<th>합계</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">합계</th>
|
||||
<th class="text-center">도쿄</th>
|
||||
<th class="text-center">치바</th>
|
||||
<th class="text-center">합계</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>PRIME</td>
|
||||
<td><?= $viewDatas['totalCounts']['default']['tokyo'] ?></td>
|
||||
<td><?= $viewDatas['totalCounts']['default']['chiba'] ?></td>
|
||||
<td class="text-center">PRIME</td>
|
||||
<td><?= $viewDatas['totalCounts']['normal']['tokyo'] ?></td>
|
||||
<td><?= $viewDatas['totalCounts']['normal']['chiba'] ?></td>
|
||||
<td><?= $viewDatas['totalCounts']['defence']['tokyo'] ?></td>
|
||||
<td><?= $viewDatas['totalCounts']['defence']['chiba'] ?></td>
|
||||
<td><?= $viewDatas['totalCounts']['dedicated']['tokyo'] ?></td>
|
||||
@ -55,23 +55,23 @@
|
||||
<td><?= $viewDatas['totalCounts']['all_total'] ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tfoot class="table-light fw-bold">
|
||||
<tfoot class=" table-light fw-bold">
|
||||
<tr>
|
||||
<td>총합계</td>
|
||||
<td>31</td>
|
||||
<td>557</td>
|
||||
<td>6</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>19</td>
|
||||
<td class="text-center">총합계</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>0</td>
|
||||
<td>7</td>
|
||||
<td>7</td>
|
||||
<td>37</td>
|
||||
<td>576</td>
|
||||
<td>613</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user