diff --git a/app/Cells/Equipment/ServerCell.php b/app/Cells/Equipment/ServerCell.php index 920df61..05bc356 100644 --- a/app/Cells/Equipment/ServerCell.php +++ b/app/Cells/Equipment/ServerCell.php @@ -58,4 +58,20 @@ class ServerCell extends EquipmentCell ] ]); } + public function stock(array $params): string + { + $this->getService()->setAction(__FUNCTION__); + $this->getService()->setFormFields(); + $this->getService()->setFormFilters(); + $this->getService()->setFormRules(); + $this->getService()->setFormOptions(); + $template = array_key_exists('template', $params) ? $params['template'] : 'stock'; + return view('cells/server/' . $template, [ + 'partCellDatas' => [ + 'control' => $this->getService()->getControlDatas(), + 'service' => $this->getService(), + 'entities' => $this->getService()->getEntities(), + ], + ]); + } } diff --git a/app/Config/Constants.php b/app/Config/Constants.php index c065d0c..895b0a0 100644 --- a/app/Config/Constants.php +++ b/app/Config/Constants.php @@ -454,3 +454,11 @@ define("PAYMENT", [ 'POINT' => 'point' ] ]); +//게시판 관련 +define("BOARD", [ + 'CATEGORY' => [ + 'NOTICE' => 'notice', + 'WORKING' => 'working', + 'REQUESTTASK' => 'requesttask' + ], +]); diff --git a/app/Database/dbmsv3_test1.sql b/app/Database/dbmsv3_test1.sql index c63c29e..44dfafb 100644 --- a/app/Database/dbmsv3_test1.sql +++ b/app/Database/dbmsv3_test1.sql @@ -72,7 +72,7 @@ CREATE TABLE `boardinfo` ( `created_at` datetime DEFAULT current_timestamp(), `deleted_at` datetime DEFAULT NULL, PRIMARY KEY (`uid`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -81,6 +81,7 @@ CREATE TABLE `boardinfo` ( LOCK TABLES `boardinfo` WRITE; /*!40000 ALTER TABLE `boardinfo` DISABLE KEYS */; +INSERT INTO `boardinfo` VALUES (1,1,'notice','테스트공지2222','<p>테스트공지2222<br>테스트공지2222<br>테스트공지2222</p>','available',NULL,'2025-10-20 14:55:36',NULL),(2,1,'notice','테스트공지333','<p>테스트공지333<br><span style="color: #e03e2d;">테스트공지333</span><br>테스트공지333</p>','available',NULL,'2025-10-20 14:56:20',NULL); /*!40000 ALTER TABLE `boardinfo` ENABLE KEYS */; UNLOCK TABLES; @@ -382,7 +383,7 @@ CREATE TABLE `payment` ( LOCK TABLES `payment` WRITE; /*!40000 ALTER TABLE `payment` DISABLE KEYS */; -INSERT INTO `payment` VALUES (17,1,820,52,'prime_s68d4e145a474d',NULL,950000,'month','2025-09-25','account','paid','2025-10-16 00:57:48','2025-09-25 06:29:25',NULL),(18,1,1161,53,'itsolution_s68d4e1b6',NULL,800000,'month','2025-11-14',NULL,'unpaid','2025-10-16 00:58:10','2025-09-25 06:31:18',NULL),(19,1,820,52,'2G',NULL,40000,'onetime','2025-09-25',NULL,'unpaid','2025-09-25 08:27:17','2025-09-25 08:15:08',NULL),(20,1,1087,54,'gdidc_s68d4ff1b03fab',NULL,1800000,'month','2025-09-25',NULL,'unpaid','2025-10-16 00:58:28','2025-09-25 08:36:43',NULL),(21,1,820,52,'16G',NULL,300000,'onetime','2025-09-26',NULL,'unpaid',NULL,'2025-09-26 07:03:50',NULL),(22,1,820,52,'NVME 512G',NULL,120000,'onetime','2025-09-30','account','paid','2025-10-02 05:07:08','2025-09-30 00:56:19',NULL),(23,1,820,52,'NVME 512G',NULL,240000,'onetime','2025-09-30','account','paid','2025-10-02 05:07:08','2025-09-30 01:02:43',NULL),(24,1,820,52,'NVME 1T',NULL,150000,'onetime','2025-09-30',NULL,'unpaid',NULL,'2025-09-30 01:50:08',NULL),(28,1,820,52,'SSD 256G',NULL,160000,'onetime','2025-09-30',NULL,'unpaid',NULL,'2025-09-30 05:35:30',NULL),(29,1,820,56,'gdidc_s68dc70e2edb68',NULL,1550000,'month','2025-10-01',NULL,'unpaid','2025-10-16 06:45:46','2025-10-01 00:08:02',NULL),(32,1,819,57,'prime_s68dce40dd65df',NULL,650000,'month','2025-10-01',NULL,'unpaid','2025-10-16 01:04:24','2025-10-01 08:19:25',NULL),(33,1,820,52,'NVME 2T',NULL,180000,'onetime','2025-10-02',NULL,'unpaid',NULL,'2025-10-02 00:07:28',NULL),(34,1,711,58,'prime_s68ddf9a191864',NULL,1100000,'month','2025-10-02',NULL,'unpaid','2025-10-16 01:48:27','2025-10-02 04:03:45',NULL),(35,1,1185,59,'itsolution_s68e30467',NULL,900000,'month','2025-10-06','account','unpaid','2025-10-16 01:53:30','2025-10-05 23:51:03',NULL),(36,45,1185,59,'서버비',NULL,600000,'month','2025-11-06',NULL,'paid','2025-10-05 23:54:41','2025-10-05 23:53:43',NULL),(37,45,1185,59,'서버비',NULL,400000,'month','2025-11-06','account','paid','2025-10-05 23:57:23','2025-10-05 23:56:03',NULL),(38,45,1185,59,'도메인','도메인 구매',40000,'onetime','2025-10-06','account','paid','2025-10-05 23:57:23','2025-10-05 23:56:59',NULL),(39,45,1185,59,'서버비',NULL,400000,'month','2025-10-06','account','paid','2025-10-06 00:51:24','2025-10-06 00:48:36',NULL),(40,45,1185,59,'도메인',NULL,1000000,'onetime','2025-10-06','account','paid','2025-10-06 01:02:46','2025-10-06 00:54:59',NULL),(41,1,1186,60,'prime_s68e37906ad1bd',NULL,1100000,'month','2025-10-06','account','unpaid','2025-10-16 01:53:52','2025-10-06 08:08:38',NULL),(42,1,1186,61,'prime_s68e37b9e918a2',NULL,1300000,'month','2025-10-06','account','unpaid','2025-10-16 01:54:10','2025-10-06 08:19:42',NULL),(43,11,1186,60,'SSD 2T',NULL,600000,'onetime','2025-10-06','account','paid','2025-10-06 08:36:38','2025-10-06 08:25:57',NULL),(44,11,1186,60,'SSD 1T',NULL,400000,'onetime','2025-10-06','account','paid','2025-10-06 08:36:38','2025-10-06 08:31:15',NULL),(45,11,1186,61,'8G',NULL,50000,'onetime','2025-10-06','account','paid','2025-10-06 08:38:35','2025-10-06 08:34:46',NULL),(46,1,1186,61,'test.co.kr 도메인','test.co.kr 도메인',50000,'onetime','2025-10-14',NULL,'unpaid',NULL,'2025-10-14 02:24:26',NULL),(50,NULL,1161,53,'itsolution_s68d4e1b6',NULL,800000,'month','2025-10-14',NULL,'unpaid',NULL,'2025-10-14 08:28:35',NULL),(51,1,819,57,'테스트','테스트\r\n테스트\r\n테스트\r\n테스트',100000,'onetime','2025-10-15',NULL,'unpaid',NULL,'2025-10-15 03:35:39',NULL),(52,1,842,62,'prime_s68ef4901c563f',NULL,800000,'month','2025-10-15',NULL,'unpaid','2025-10-16 07:52:10','2025-10-15 07:10:57',NULL),(53,1,842,63,'itsolution_s68ef4cbd',NULL,400000,'month','2025-10-15',NULL,'unpaid','2025-10-16 01:54:36','2025-10-15 07:26:53',NULL),(54,1,820,56,'fffff','ffdgdfgdf',430000,'onetime','2025-10-15',NULL,'unpaid',NULL,'2025-10-15 07:33:28',NULL),(55,1,1155,64,'[2543E-M32/13.220.20.25] 2025년 10월 서비스비용',NULL,900000,'month','2025-10-17',NULL,'unpaid',NULL,'2025-10-17 06:22:15',NULL); +INSERT INTO `payment` VALUES (17,1,820,52,'prime_s68d4e145a474d',NULL,950000,'month','2025-09-25','account','paid','2025-10-16 00:57:48','2025-09-25 06:29:25',NULL),(18,1,1161,53,'itsolution_s68d4e1b6',NULL,800000,'month','2025-11-14',NULL,'unpaid','2025-10-16 00:58:10','2025-09-25 06:31:18',NULL),(19,1,820,52,'2G',NULL,40000,'onetime','2025-09-25',NULL,'unpaid','2025-09-25 08:27:17','2025-09-25 08:15:08',NULL),(20,1,1087,54,'gdidc_s68d4ff1b03fab',NULL,1800000,'month','2025-09-25',NULL,'unpaid','2025-10-16 00:58:28','2025-09-25 08:36:43',NULL),(21,1,820,52,'16G',NULL,300000,'onetime','2025-09-26',NULL,'unpaid',NULL,'2025-09-26 07:03:50',NULL),(22,1,820,52,'NVME 512G',NULL,120000,'onetime','2025-09-30','account','paid','2025-10-02 05:07:08','2025-09-30 00:56:19',NULL),(23,1,820,52,'NVME 512G',NULL,240000,'onetime','2025-09-30','account','paid','2025-10-02 05:07:08','2025-09-30 01:02:43',NULL),(24,1,820,52,'NVME 1T',NULL,150000,'onetime','2025-09-30',NULL,'unpaid',NULL,'2025-09-30 01:50:08',NULL),(28,1,820,52,'SSD 256G',NULL,160000,'onetime','2025-09-30',NULL,'unpaid',NULL,'2025-09-30 05:35:30',NULL),(29,1,820,56,'gdidc_s68dc70e2edb68',NULL,1550000,'month','2025-10-01',NULL,'unpaid','2025-10-16 06:45:46','2025-10-01 00:08:02',NULL),(32,1,819,57,'prime_s68dce40dd65df',NULL,650000,'month','2025-10-01',NULL,'unpaid','2025-10-16 01:04:24','2025-10-01 08:19:25',NULL),(33,1,820,52,'NVME 2T',NULL,180000,'onetime','2025-10-02',NULL,'unpaid',NULL,'2025-10-02 00:07:28',NULL),(34,1,711,58,'prime_s68ddf9a191864',NULL,1100000,'month','2025-10-02',NULL,'unpaid','2025-10-16 01:48:27','2025-10-02 04:03:45',NULL),(35,1,1185,59,'itsolution_s68e30467',NULL,900000,'month','2025-10-06','account','unpaid','2025-10-16 01:53:30','2025-10-05 23:51:03',NULL),(36,45,1185,59,'서버비',NULL,600000,'month','2025-11-06',NULL,'paid','2025-10-05 23:54:41','2025-10-05 23:53:43',NULL),(37,45,1185,59,'서버비',NULL,400000,'month','2025-11-06','account','paid','2025-10-05 23:57:23','2025-10-05 23:56:03',NULL),(38,45,1185,59,'도메인','도메인 구매',40000,'onetime','2025-10-06','account','paid','2025-10-05 23:57:23','2025-10-05 23:56:59',NULL),(39,45,1185,59,'서버비',NULL,400000,'month','2025-10-06','account','paid','2025-10-06 00:51:24','2025-10-06 00:48:36',NULL),(40,45,1185,59,'도메인',NULL,1000000,'onetime','2025-10-06','account','paid','2025-10-06 01:02:46','2025-10-06 00:54:59',NULL),(41,1,1186,60,'prime_s68e37906ad1bd',NULL,1100000,'month','2025-10-06','account','unpaid','2025-10-16 01:53:52','2025-10-06 08:08:38',NULL),(42,1,1186,61,'prime_s68e37b9e918a2',NULL,1300000,'month','2025-10-06','account','unpaid','2025-10-16 01:54:10','2025-10-06 08:19:42',NULL),(43,11,1186,60,'SSD 2T',NULL,600000,'onetime','2025-10-06','account','paid','2025-10-06 08:36:38','2025-10-06 08:25:57',NULL),(44,11,1186,60,'SSD 1T',NULL,400000,'onetime','2025-10-06','account','paid','2025-10-06 08:36:38','2025-10-06 08:31:15',NULL),(45,11,1186,61,'8G',NULL,50000,'onetime','2025-10-06','account','paid','2025-10-06 08:38:35','2025-10-06 08:34:46',NULL),(46,1,1186,61,'test.co.kr 도메인','test.co.kr 도메인',50000,'onetime','2025-10-14',NULL,'unpaid',NULL,'2025-10-14 02:24:26',NULL),(50,NULL,1161,53,'itsolution_s68d4e1b6',NULL,800000,'month','2025-10-14',NULL,'unpaid',NULL,'2025-10-14 08:28:35',NULL),(51,1,819,57,'테스트','테스트\r\n테스트\r\n테스트\r\n테스트',100000,'onetime','2025-10-15',NULL,'unpaid',NULL,'2025-10-15 03:35:39',NULL),(52,1,842,62,'prime_s68ef4901c563f',NULL,800000,'month','2025-10-15',NULL,'unpaid','2025-10-16 07:52:10','2025-10-15 07:10:57',NULL),(53,1,842,63,'itsolution_s68ef4cbd',NULL,400000,'month','2025-10-15',NULL,'unpaid','2025-10-16 01:54:36','2025-10-15 07:26:53',NULL),(54,1,820,56,'fffff','ffdgdfgdf',430000,'onetime','2025-10-15',NULL,'unpaid',NULL,'2025-10-15 07:33:28',NULL),(55,1,1155,64,'[2543E-M32/13.220.20.25] 2025년 10월 서비스비용',NULL,900000,'month','2025-10-22',NULL,'unpaid','2025-10-21 00:15:04','2025-10-17 06:22:15',NULL); /*!40000 ALTER TABLE `payment` ENABLE KEYS */; UNLOCK TABLES; @@ -586,7 +587,7 @@ CREATE TABLE `serviceinfo` ( LOCK TABLES `serviceinfo` WRITE; /*!40000 ALTER TABLE `serviceinfo` DISABLE KEYS */; -INSERT INTO `serviceinfo` VALUES (52,1,820,20,17,'prime_s68d4e145a474d','prime','chiba',100000,300000,'2025-09-25',100000,950000,'2025-09-25',NULL,'test1234\r\ntesst2123','available','2025-10-16 00:57:48','2025-09-25 06:29:25',NULL),(53,1,1161,18,18,'itsolution_s68d4e1b6','itsolution','chiba',100000,300000,'2025-11-14',0,800000,'2025-09-25',NULL,NULL,'available','2025-10-16 00:58:10','2025-09-25 06:31:18',NULL),(54,1,1087,19,20,'gdidc_s68d4ff1b03fab','gdidc','chiba',300000,300000,'2025-09-25',100000,1800000,'2025-09-25',NULL,NULL,'available','2025-10-16 00:58:28','2025-09-25 08:36:43',NULL),(56,1,820,22,29,'gdidc_s68dc70e2edb68','gdidc','chiba',100000,300000,'2025-10-01',0,1550000,'2025-10-01',NULL,NULL,'available','2025-10-16 06:45:46','2025-10-01 00:08:02',NULL),(57,1,819,23,32,'prime_s68dce40dd65df','prime','chiba',100000,300000,'2025-10-01',100000,650000,'2025-10-01',NULL,NULL,'available','2025-10-16 01:04:24','2025-10-01 08:19:25',NULL),(58,1,711,27,34,'prime_s68ddf9a191864','prime','chiba',100000,300000,'2025-10-02',200000,1100000,'2025-10-02',NULL,NULL,'available','2025-10-16 01:48:27','2025-10-02 04:03:45',NULL),(59,1,1185,31,35,'itsolution_s68e30467','itsolution','chiba',100000,300000,'2025-10-06',0,900000,'2025-10-06',NULL,NULL,'available','2025-10-16 01:53:30','2025-10-05 23:51:03',NULL),(60,1,1186,21,41,'prime_s68e37906ad1bd','prime','chiba',100000,300000,'2025-10-06',0,1100000,'2025-10-06',NULL,'test / test\r\n','available','2025-10-16 01:53:52','2025-10-06 08:08:38',NULL),(61,1,1186,17,42,'prime_s68e37b9e918a2','prime','chiba',100000,300000,'2025-10-06',100000,1300000,'2025-10-06',NULL,NULL,'available','2025-10-16 01:54:10','2025-10-06 08:19:42',NULL),(62,1,842,63,52,'prime_s68ef4901c563f','prime','chiba',100000,300000,'2025-10-15',0,800000,'2025-10-15',NULL,NULL,'available','2025-10-16 07:52:10','2025-10-15 07:10:57',NULL),(63,1,842,64,53,'itsolution_s68ef4cbd','itsolution','chiba',100000,300000,'2025-10-15',400000,400000,'2025-10-15',NULL,NULL,'available','2025-10-16 01:54:36','2025-10-15 07:26:53',NULL),(64,1,1155,32,NULL,'gdidc_s68f1e0977ed19','gdidc','chiba',100000,300000,'2025-10-17',0,900000,'2025-10-17',NULL,NULL,'available','2025-10-17 06:22:15','2025-10-17 06:22:15',NULL); +INSERT INTO `serviceinfo` VALUES (52,1,820,20,17,'prime_s68d4e145a474d','prime','chiba',100000,300000,'2025-09-25',100000,950000,'2025-09-25',NULL,'test1234\r\ntesst2123','available','2025-10-16 00:57:48','2025-09-25 06:29:25',NULL),(53,1,1161,18,18,'itsolution_s68d4e1b6','itsolution','chiba',100000,300000,'2025-11-14',0,800000,'2025-09-25',NULL,NULL,'available','2025-10-16 00:58:10','2025-09-25 06:31:18',NULL),(54,1,1087,19,20,'gdidc_s68d4ff1b03fab','gdidc','chiba',300000,300000,'2025-09-25',100000,1800000,'2025-09-25',NULL,NULL,'available','2025-10-16 00:58:28','2025-09-25 08:36:43',NULL),(56,1,820,22,29,'gdidc_s68dc70e2edb68','gdidc','chiba',100000,300000,'2025-10-01',0,1550000,'2025-10-01',NULL,NULL,'available','2025-10-16 06:45:46','2025-10-01 00:08:02',NULL),(57,1,819,23,32,'prime_s68dce40dd65df','prime','chiba',100000,300000,'2025-10-01',100000,650000,'2025-10-01',NULL,NULL,'available','2025-10-16 01:04:24','2025-10-01 08:19:25',NULL),(58,1,711,27,34,'prime_s68ddf9a191864','prime','chiba',100000,300000,'2025-10-02',200000,1100000,'2025-10-02',NULL,NULL,'available','2025-10-16 01:48:27','2025-10-02 04:03:45',NULL),(59,1,1185,31,35,'itsolution_s68e30467','itsolution','chiba',100000,300000,'2025-10-06',0,900000,'2025-10-06',NULL,NULL,'available','2025-10-16 01:53:30','2025-10-05 23:51:03',NULL),(60,1,1186,21,41,'prime_s68e37906ad1bd','prime','chiba',100000,300000,'2025-10-06',0,1100000,'2025-10-06',NULL,'test / test\r\n','available','2025-10-16 01:53:52','2025-10-06 08:08:38',NULL),(61,1,1186,17,42,'prime_s68e37b9e918a2','prime','chiba',100000,300000,'2025-10-06',100000,1300000,'2025-10-06',NULL,NULL,'available','2025-10-16 01:54:10','2025-10-06 08:19:42',NULL),(62,1,842,63,52,'prime_s68ef4901c563f','prime','chiba',100000,300000,'2025-10-15',0,800000,'2025-10-15',NULL,NULL,'available','2025-10-16 07:52:10','2025-10-15 07:10:57',NULL),(63,1,842,64,53,'itsolution_s68ef4cbd','itsolution','chiba',100000,300000,'2025-10-15',400000,400000,'2025-10-15',NULL,NULL,'available','2025-10-16 01:54:36','2025-10-15 07:26:53',NULL),(64,1,1155,32,55,'gdidc_s68f1e0977ed19','gdidc','chiba',100000,300000,'2025-10-22',0,900000,'2025-10-17',NULL,'','available','2025-10-21 00:15:04','2025-10-17 06:22:15',NULL); /*!40000 ALTER TABLE `serviceinfo` ENABLE KEYS */; UNLOCK TABLES; @@ -735,4 +736,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-10-20 13:32:57 +-- Dump completed on 2025-10-21 9:15:22 diff --git a/app/Language/en/Board.php b/app/Language/en/Board.php index d226b25..3b3140c 100644 --- a/app/Language/en/Board.php +++ b/app/Language/en/Board.php @@ -4,6 +4,7 @@ return [ 'label' => [ 'uid' => "번호", 'user_uid' => "작성자", + 'worker_uid' => "작업자", 'category' => "구분", 'title' => "제목", 'content' => "내용", @@ -12,8 +13,15 @@ return [ 'created_at' => "작성일", 'deleted_at' => "삭제일", ], + // "CATEGORY" => [ + // BOARD['CATEGORY']['NOTICE'] => '공지사항', + // BOARD['CATEGORY']['WORKING'] => '작업일지', + // BOARD['CATEGORY']['REQUESTTASK'] => '요청업무', + // ], "CATEGORY" => [ - "notice" => "공지사항", + 'notice' => '공지사항', + 'working' => '작업일지', + 'requesttask' => '요청업무', ], "STATUS" => [ STATUS['AVAILABLE'] => "사용중", diff --git a/app/Models/BoardModel.php b/app/Models/BoardModel.php index 637ade8..80564c8 100644 --- a/app/Models/BoardModel.php +++ b/app/Models/BoardModel.php @@ -15,6 +15,7 @@ class BoardModel extends CommonModel protected $allowedFields = [ "uid", "user_uid", + "worker_uid", "category", "title", "content", @@ -38,6 +39,9 @@ class BoardModel extends CommonModel case "user_uid": $rule = "required|number"; break; + case "worker_uid": + $rule = "permit_empty|number"; + break; case "content": $rule = "permit_empty|string"; break; diff --git a/app/Services/BoardService.php b/app/Services/BoardService.php index 36874ad..91026d8 100644 --- a/app/Services/BoardService.php +++ b/app/Services/BoardService.php @@ -16,15 +16,17 @@ class BoardService extends CommonService { return [ 'category', + 'worker_uid', 'title', - 'content', 'status', + 'content', ]; } public function getFormFilters(): array { return [ 'user_uid', + 'worker_uid', 'category', 'status', ]; @@ -34,6 +36,7 @@ class BoardService extends CommonService return [ 'category', 'title', + 'worker_uid', 'user_uid', 'status', 'created_at', diff --git a/app/Services/Equipment/ServerService.php b/app/Services/Equipment/ServerService.php index 04ee29c..79bd455 100644 --- a/app/Services/Equipment/ServerService.php +++ b/app/Services/Equipment/ServerService.php @@ -233,6 +233,9 @@ class ServerService extends EquipmentService implements ServiceInterface throw new \Exception(__METHOD__ . "에서 오류발생:{$action}은 정의되지 않은 작업입니다."); // break; } + if (!$entity instanceof ServerEntity) { + throw new \Exception(__METHOD__ . "에서 {$action}->setServerEntity오류발생:결제정보를 찾을수 없습니다."); + } return $serviceEntity->setServerEntity($entity); } //기본 기능부분 diff --git a/app/Services/PaymentService.php b/app/Services/PaymentService.php index b994e91..9e0611b 100644 --- a/app/Services/PaymentService.php +++ b/app/Services/PaymentService.php @@ -176,6 +176,9 @@ class PaymentService extends CommonService implements ServiceInterface, ServerPa throw new \Exception(__METHOD__ . "에서 오류발생:{$action}은 정의되지 않은 작업입니다."); // break; } + if (!$entity instanceof PaymentEntity) { + throw new \Exception(__METHOD__ . "에서 {$action}->setPaymentEntity오류발생:결제정보를 찾을수 없습니다."); + } return $serviceEntity->setPaymentEntity($entity); } final public function setServerPart(string $action, ServerPartEntity $serverPartEntity, array $servicePartFormDatas): ServerPartEntity @@ -232,6 +235,9 @@ class PaymentService extends CommonService implements ServiceInterface, ServerPa throw new \Exception(__METHOD__ . "에서 오류발생:{$action}은 정의되지 않은 작업입니다."); // break; } + if (!$entity instanceof PaymentEntity) { + throw new \Exception(__METHOD__ . "에서 {$action}->setPaymentEntity오류발생:결제정보를 찾을수 없습니다."); + } return $serverPartEntity->setPaymentEntity($entity); } //Invoice 관련 diff --git a/app/Views/admin/server/modify_form.php b/app/Views/admin/server/modify_form.php index 4c39ae6..0267e52 100644 --- a/app/Views/admin/server/modify_form.php +++ b/app/Views/admin/server/modify_form.php @@ -48,7 +48,7 @@
include("templates/{$viewDatas['layout']}/form_content_top"); ?>
- + diff --git a/app/Views/admin/server/view.php b/app/Views/admin/server/view.php index 2520dd2..3f55930 100644 --- a/app/Views/admin/server/view.php +++ b/app/Views/admin/server/view.php @@ -5,7 +5,7 @@
include("templates/{$viewDatas['layout']}/form_content_top"); ?>
서버정보서버정보[getCode() ?>] 추가정보
- + diff --git a/app/Views/admin/service/modify_form.php b/app/Views/admin/service/modify_form.php index 6860abf..d0a8d2f 100644 --- a/app/Views/admin/service/modify_form.php +++ b/app/Views/admin/service/modify_form.php @@ -5,7 +5,7 @@
include("templates/{$viewDatas['layout']}/form_content_top"); ?>
서버정보서버정보[getCode() ?>] 추가정보
- + diff --git a/app/Views/admin/service/view.php b/app/Views/admin/service/view.php index a20a420..8214eef 100644 --- a/app/Views/admin/service/view.php +++ b/app/Views/admin/service/view.php @@ -5,7 +5,7 @@
include("templates/{$viewDatas['layout']}/form_content_top"); ?>
서비스정보서비스정보[getCode() ?>] 추가정보
- + diff --git a/app/Views/cells/server/stock.php b/app/Views/cells/server/stock.php new file mode 100644 index 0000000..718e7fc --- /dev/null +++ b/app/Views/cells/server/stock.php @@ -0,0 +1,14 @@ +
서버정보서버정보[getCode() ?>] 추가정보
+ + + + + + + + + + + + +
항목갯수
getHelper()->getFieldView($field, $entity->$field, $partCellDatas) ?>
\ No newline at end of file diff --git a/billing.sh b/billing.sh new file mode 100644 index 0000000..23ddcd3 --- /dev/null +++ b/billing.sh @@ -0,0 +1,2 @@ +#!/usr/bin/bash +/usr/bin/php /home/donfig/dbmsv3/public/index.php cli/billing