From 4ae8f548dfc78ef565ecac6d81b61f43bb742eb6 Mon Sep 17 00:00:00 2001 From: "choi.jh" Date: Tue, 21 Oct 2025 17:23:38 +0900 Subject: [PATCH] dbmsv3 init...1 --- app/Config/Constants.php | 1 - app/Language/en/Board.php | 1 - app/Models/Customer/AccountModel.php | 8 ------- app/Models/Customer/ClientModel.php | 7 ------ app/Models/Customer/CouponModel.php | 7 ------ app/Models/Customer/PointModel.php | 7 ------ app/Models/Customer/ServiceModel.php | 7 ------ app/Models/Equipment/ServerModel.php | 10 ++++++++ app/Models/MyLogModel.php | 11 +++++++-- app/Models/PaymentModel.php | 7 ------ app/Services/CommonService.php | 13 +++++++++-- app/Services/Customer/AccountService.php | 15 ++++-------- app/Services/Customer/CouponService.php | 5 +++- app/Services/Customer/PointService.php | 13 ++++------- app/Services/Customer/ServiceService.php | 12 ++++++++-- app/Services/Equipment/ServerPartService.php | 6 +++++ app/Services/Equipment/ServerService.php | 9 +++++++- app/Services/MyLogService.php | 24 -------------------- app/Services/PaymentService.php | 11 ++++++--- 19 files changed, 75 insertions(+), 99 deletions(-) diff --git a/app/Config/Constants.php b/app/Config/Constants.php index ec2d3c1..15f3e5e 100644 --- a/app/Config/Constants.php +++ b/app/Config/Constants.php @@ -467,7 +467,6 @@ define("PAYMENT", [ define("BOARD", [ 'CATEGORY' => [ 'NOTICE' => 'notice', - 'WORKING' => 'working', 'REQUESTTASK' => 'requesttask' ], ]); diff --git a/app/Language/en/Board.php b/app/Language/en/Board.php index e8956aa..2c6c936 100644 --- a/app/Language/en/Board.php +++ b/app/Language/en/Board.php @@ -15,7 +15,6 @@ return [ ], "CATEGORY" => [ BOARD['CATEGORY']['NOTICE'] => '공지사항', - BOARD['CATEGORY']['WORKING'] => '작업일지', BOARD['CATEGORY']['REQUESTTASK'] => '요청업무', ], "STATUS" => [ diff --git a/app/Models/Customer/AccountModel.php b/app/Models/Customer/AccountModel.php index 57ed813..a6f2064 100644 --- a/app/Models/Customer/AccountModel.php +++ b/app/Models/Customer/AccountModel.php @@ -65,12 +65,4 @@ class AccountModel extends CustomerModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): AccountEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - // dd($formDatas); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Models/Customer/ClientModel.php b/app/Models/Customer/ClientModel.php index ca6b781..39fb045 100644 --- a/app/Models/Customer/ClientModel.php +++ b/app/Models/Customer/ClientModel.php @@ -76,11 +76,4 @@ class ClientModel extends CustomerModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): ClientEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Models/Customer/CouponModel.php b/app/Models/Customer/CouponModel.php index 7029da6..325853b 100644 --- a/app/Models/Customer/CouponModel.php +++ b/app/Models/Customer/CouponModel.php @@ -56,11 +56,4 @@ class CouponModel extends CustomerModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): CouponEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Models/Customer/PointModel.php b/app/Models/Customer/PointModel.php index ec4296e..e5c115c 100644 --- a/app/Models/Customer/PointModel.php +++ b/app/Models/Customer/PointModel.php @@ -56,11 +56,4 @@ class PointModel extends CustomerModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): PointEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Models/Customer/ServiceModel.php b/app/Models/Customer/ServiceModel.php index 28a8177..6ecc488 100644 --- a/app/Models/Customer/ServiceModel.php +++ b/app/Models/Customer/ServiceModel.php @@ -85,11 +85,4 @@ class ServiceModel extends CustomerModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): ServiceEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Models/Equipment/ServerModel.php b/app/Models/Equipment/ServerModel.php index 4574c7f..3e87651 100644 --- a/app/Models/Equipment/ServerModel.php +++ b/app/Models/Equipment/ServerModel.php @@ -15,6 +15,7 @@ class ServerModel extends EquipmentModel protected $returnType = ServerEntity::class; protected $allowedFields = [ "uid", + "user_uid", "clientinfo_uid", "serviceinfo_uid", "code", @@ -39,6 +40,7 @@ class ServerModel extends EquipmentModel throw new \Exception(__FUNCTION__ . "=> field가 array 입니다.\n" . var_export($field, true)); } switch ($field) { + case "user_uid": case "clientinfo_uid": case "serviceinfo_uid": $rule = "permit_empty|numeric"; @@ -95,4 +97,12 @@ class ServerModel extends EquipmentModel return $value; } //기본기능 + //입력전 코드처리 + final public function create(array $formDatas): ServerEntity + { + $formDatas['code'] = $formDatas['site'] . "_s" . uniqid(); + // 관리자 UID는 현재 인증된 사용자로 설정 + $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); + return parent::create($formDatas); + } } diff --git a/app/Models/MyLogModel.php b/app/Models/MyLogModel.php index d925076..578d633 100644 --- a/app/Models/MyLogModel.php +++ b/app/Models/MyLogModel.php @@ -6,7 +6,7 @@ use App\Entities\MyLogEntity; class MyLogModel extends CommonModel { - const TABLE = "user_history"; + const TABLE = "mylog"; const PK = "uid"; const TITLE = "title"; protected $table = self::TABLE; @@ -31,7 +31,7 @@ class MyLogModel extends CommonModel } switch ($field) { case "user_uid": - $rule = "permit_empty|numeric"; + $rule = "required|numeric"; break; case 'titler': $rule = "required|trim|string"; @@ -48,4 +48,11 @@ class MyLogModel extends CommonModel } return $rule; } + + final public function create(array $formDatas): MylogEntity + { + // 관리자 UID는 현재 인증된 사용자로 설정 + $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); + return parent::create($formDatas); + } } diff --git a/app/Models/PaymentModel.php b/app/Models/PaymentModel.php index ee9324f..39655f3 100644 --- a/app/Models/PaymentModel.php +++ b/app/Models/PaymentModel.php @@ -71,11 +71,4 @@ class PaymentModel extends CommonModel $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); return parent::create($formDatas); } - //수정 - final public function modify(mixed $entity, array $formDatas): PaymentEntity - { - // 관리자 UID는 현재 인증된 사용자로 설정 - $formDatas['user_uid'] = $this->getMyAuth()->getUIDByAuthInfo(); - return parent::modify($entity, $formDatas); - } } diff --git a/app/Services/CommonService.php b/app/Services/CommonService.php index 98e1798..99ee67c 100644 --- a/app/Services/CommonService.php +++ b/app/Services/CommonService.php @@ -6,6 +6,7 @@ use App\Helpers\CommonHelper; use App\Models\CommonModel; use App\Services\Customer\ClientService; use App\Services\UserService; +use App\Services\MyLogService; abstract class CommonService { @@ -13,8 +14,9 @@ abstract class CommonService private $_helper = null; private $_classNames = []; private $_control = []; - private $_userService = null; - private $_clientService = null; + private ?UserService $_userService = null; + private ?ClientService $_clientService = null; + private ?MyLogService $_mylogService = null; protected function __construct(CommonModel $model, CommonHelper $helper) { $this->_model = $model; @@ -205,6 +207,13 @@ abstract class CommonService } return $this->_clientService; } + final public function getMylogService(): MyLogService + { + if (!$this->_mylogService) { + $this->_mylogService = new MyLogService(); + } + return $this->_mylogService; + } final public function getLatestPK(): int { $row = $this->getModel()->selectMax($this->getModel()->getPKField())->get()->getRow(); diff --git a/app/Services/Customer/AccountService.php b/app/Services/Customer/AccountService.php index 9d3ba39..55f1357 100644 --- a/app/Services/Customer/AccountService.php +++ b/app/Services/Customer/AccountService.php @@ -11,7 +11,6 @@ use App\Models\Customer\AccountModel; class AccountService extends CustomerService implements PaymentInterface { - private ?ClientService $_clientService = null; public function __construct() { parent::__construct(new AccountModel(), new AccountHelper()); @@ -42,13 +41,6 @@ class AccountService extends CustomerService implements PaymentInterface { return ['status']; } - final public function getClientService(): ClientService - { - if (!$this->_clientService) { - $this->_clientService = new ClientService(); - } - return $this->_clientService; - } //고객예치금처리 private function setBalance(array $formDatas): ClientEntity { @@ -75,7 +67,7 @@ class AccountService extends CustomerService implements PaymentInterface 'status' => STATUS['WITHDRAWAL'], ]; $this->setBalance($formDatas); - $this->create($formDatas); + parent::create($formDatas); break; // case 'modify': // case 'delete': @@ -89,7 +81,10 @@ class AccountService extends CustomerService implements PaymentInterface public function create(array $formDatas): AccountEntity { $this->setBalance($formDatas); - return parent::create($formDatas); + $entity = parent::create($formDatas); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 예치금 처리", ['status'] => $entity->getStatus()]); + return $entity; } //List 검색용 public function index_condition_filterWord(string $word): void diff --git a/app/Services/Customer/CouponService.php b/app/Services/Customer/CouponService.php index 69446a4..8ffdf08 100644 --- a/app/Services/Customer/CouponService.php +++ b/app/Services/Customer/CouponService.php @@ -52,6 +52,9 @@ class CouponService extends CustomerService { // dd($formDatas); $this->setBalance($formDatas); - return parent::create($formDatas); + $entity = parent::create($formDatas); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 쿠폰 처리", ['status'] => $entity->getStatus()]); + return $entity; } } diff --git a/app/Services/Customer/PointService.php b/app/Services/Customer/PointService.php index a421551..7834869 100644 --- a/app/Services/Customer/PointService.php +++ b/app/Services/Customer/PointService.php @@ -9,7 +9,6 @@ use App\Models\Customer\PointModel; class PointService extends CustomerService { - private ?ClientService $_clientService = null; public function __construct() { parent::__construct(new PointModel(), new PointHelper()); @@ -36,13 +35,6 @@ class PointService extends CustomerService { return ['status']; } - final public function getClientService(): ClientService - { - if (!$this->_clientService) { - $this->_clientService = new ClientService(); - } - return $this->_clientService; - } //고객 포인트 처리 private function setBalance(array $formDatas): ClientEntity { @@ -59,6 +51,9 @@ class PointService extends CustomerService public function create(array $formDatas): PointEntity { $this->setBalance($formDatas); - return parent::create($formDatas); + $entity = parent::create($formDatas); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 포인트 처리", ['status'] => $entity->getStatus()]); + return $entity; } } diff --git a/app/Services/Customer/ServiceService.php b/app/Services/Customer/ServiceService.php index 0b3a292..238ca66 100644 --- a/app/Services/Customer/ServiceService.php +++ b/app/Services/Customer/ServiceService.php @@ -240,6 +240,8 @@ class ServiceService extends CustomerService //전체 서비스금액 설정 $entity = $this->getPaymentService()->setService('create', $entity, $formDatas); $entity = parent::modify($entity, ['paymentifo_uid' => $entity->getPaymentEntity()->getPK()]); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서비스정보 추가", ['status'] => $entity->getStatus()]); return $entity; } //수정 @@ -257,7 +259,10 @@ class ServiceService extends CustomerService $entity = $this->getServerService()->setService('create', $entity, $formDatas); } //전체 서비스 금액 재계산 후 설정 - return $this->setAmount($entity); + $entity = $this->setAmount($entity); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서비스 수정", ['status'] => $entity->getStatus()]); + return $entity; } //삭제 public function delete(mixed $entity): ServiceEntity @@ -266,7 +271,10 @@ class ServiceService extends CustomerService foreach ($this->getServerService()->getEntities(['serviceinfo_uid' => $entity->getPK()]) as $serverEntity) { $this->getServerService()->setService('delete', $entity, ['serverinfo_uid' => $serverEntity->getPK()]); } - return parent::delete($entity); + $entity = parent::delete($entity); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서비스 해지", ['status'] => $entity->getStatus()]); + return $entity; } //비고(History)설정 public function history(mixed $entity, array $formDatas): ServiceEntity diff --git a/app/Services/Equipment/ServerPartService.php b/app/Services/Equipment/ServerPartService.php index f4d285c..68b9f14 100644 --- a/app/Services/Equipment/ServerPartService.php +++ b/app/Services/Equipment/ServerPartService.php @@ -330,6 +330,8 @@ class ServerPartService extends EquipmentService implements ServerInterface throw new \Exception(__METHOD__ . "에서 오류발생:{$entity->getBilling()}은 지정되지 않은 결제방식입니다."); // break; } + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버파트정보 추가"]); return $entity; } //수정 @@ -377,6 +379,8 @@ class ServerPartService extends EquipmentService implements ServerInterface throw new \Exception(__METHOD__ . "에서 오류발생:{$entity->getBilling()}은 지정되지 않은 결제방식입니다."); // break; } + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버파트정보 수정"]); return $entity; } //삭제 @@ -406,6 +410,8 @@ class ServerPartService extends EquipmentService implements ServerInterface throw new \Exception(__METHOD__ . "에서 오류발생:{$entity->getBilling()}은 지정되지 않은 결제방식입니다."); // break; } + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버파트정보 삭제"]); return $entity; } } diff --git a/app/Services/Equipment/ServerService.php b/app/Services/Equipment/ServerService.php index dc0237e..cd467b2 100644 --- a/app/Services/Equipment/ServerService.php +++ b/app/Services/Equipment/ServerService.php @@ -274,6 +274,8 @@ class ServerService extends EquipmentService implements ServiceInterface if ($entity->getIP() !== null) { //IP가 정의되어 있으면 $entity = $this->getIPService()->setServer('create', $entity, []); } + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버 추가", ['status'] => $entity->getStatus()]); return $entity; } //수정 @@ -305,6 +307,8 @@ class ServerService extends EquipmentService implements ServiceInterface if ($entity->getIP() !== null) { //IP가 정의되어 있으면 $entity = $this->getIPService()->setServer('create', $entity, []); } + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버 수정", ['status'] => $entity->getStatus()]); return $entity; } //삭제 @@ -316,7 +320,10 @@ class ServerService extends EquipmentService implements ServiceInterface } //서버파트정보해지 $entity = $this->getServerPartService()->setServer('delete', $entity, []); - return parent::delete($entity); + $entity = parent::delete($entity); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 서버 삭제", ['status'] => $entity->getStatus()]); + return $entity; } //List 검색용 //OrderBy 처리 diff --git a/app/Services/MyLogService.php b/app/Services/MyLogService.php index 0246248..4a3b7f0 100644 --- a/app/Services/MyLogService.php +++ b/app/Services/MyLogService.php @@ -2,16 +2,12 @@ namespace App\Services; -use App\Entities\MyLogEntity; use App\Helpers\MyLogHelper; -use App\Libraries\LogCollector; use App\Models\MyLogModel; use App\Services\CommonService; -use App\Services\UserService; class MyLogService extends CommonService { - private $_userService = null; public function __construct() { parent::__construct(new MyLogModel(), new MyLogHelper()); @@ -20,7 +16,6 @@ class MyLogService extends CommonService public function getFormFields(): array { return [ - "user_uid", "title", "content", "status", @@ -37,27 +32,8 @@ class MyLogService extends CommonService { return ['status']; } - public function getUserService(): UserService - { - if (!$this->_userService) { - $this->_userService = new UserService(); - } - return $this->_userService; - } //기본 기능부분 //FieldForm관련용 - public function save(string $class, string $method, string $title, int $user_uid): MyLogEntity - { - $formDatas = [ - 'user_uid' => $user_uid, - 'title' => sprintf("%s->%s %s", $class, $method, $title), - 'content' => LogCollector::dump(), - 'status' => MyLogEntity::DEFAULT_STATUS - ]; - // dd($formDatas); - LogCollector::clear(); - return $this->create($formDatas); - } //List 검색용 public function index_condition_filterWord(string $word): void { diff --git a/app/Services/PaymentService.php b/app/Services/PaymentService.php index 928ddf8..f4bffbb 100644 --- a/app/Services/PaymentService.php +++ b/app/Services/PaymentService.php @@ -274,7 +274,7 @@ class PaymentService extends CommonService implements ServiceInterface, ServerPa return $options; } //Action 기능 - //일회성등록(일회성은 예치금에 관련된것만 등록한다.) + //일회성용 결제처리 등록(일회성은 예치금에 관련된것만 등록한다.) public function create(array $formDatas): PaymentEntity { if (!array_key_exists('serviceinfo_uid', $formDatas)) { @@ -287,14 +287,19 @@ class PaymentService extends CommonService implements ServiceInterface, ServerPa } //결제 완료 처리 후 추가정보 처리 $formDatas['clientinfo_uid'] = $serviceEntity->getClientInfoUID(); - return parent::create($formDatas); + $entity = parent::create($formDatas); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 일회성 결제", ['status'] => $entity->getStatus()]); + return $entity; } - //일괄결제처리(결제는 무조건 예치금으로만 처리) + //월과금용 일괄결제처리(결제는 무조건 예치금으로만 처리) public function batchjob(mixed $entity, array $formDatas): mixed { //결제 완료 처리 후 추가정보 처리 $formDatas['status'] = STATUS['PAID']; $entity = parent::batchjob($entity, $formDatas); + //Log처리 + $this->getMylogService()->create(['title' => "[{$entity->getTitle()}] 월과금 결제", ['status'] => $entity->getStatus()]); //예치금처리 return $this->getAccountService()->setPayment('create', $entity, []); }