dbmsv4 init...1
This commit is contained in:
parent
b6690d72d0
commit
48464e565f
@ -43,8 +43,7 @@ abstract class AbstractCRUDController extends AbstractWebController
|
|||||||
protected function create_process(): CommonEntity
|
protected function create_process(): CommonEntity
|
||||||
{
|
{
|
||||||
// POST 데이터를 DTO 객체로 변환 (getPost()는 POST 요청 본문만 가져옵니다.)
|
// POST 데이터를 DTO 객체로 변환 (getPost()는 POST 요청 본문만 가져옵니다.)
|
||||||
$dto = $this->service->createDTO($this->request->getPost());
|
return $this->service->create($this->service->createDTO($this->request->getPost()));
|
||||||
return $this->service->create($dto);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function create_result_process(CommonEntity $entity, ?string $redirect_url = null): string|RedirectResponse
|
protected function create_result_process(CommonEntity $entity, ?string $redirect_url = null): string|RedirectResponse
|
||||||
@ -103,10 +102,8 @@ abstract class AbstractCRUDController extends AbstractWebController
|
|||||||
|
|
||||||
protected function modify_process($uid): CommonEntity
|
protected function modify_process($uid): CommonEntity
|
||||||
{
|
{
|
||||||
$entity = $this->service->getEntity($uid);
|
|
||||||
// POST 데이터를 DTO 객체로 변환
|
// POST 데이터를 DTO 객체로 변환
|
||||||
$dto = $this->service->createDTO($this->request->getPost());
|
return $this->service->modify($uid, $this->service->createDTO($this->request->getPost()));
|
||||||
return $this->service->modify($uid, $dto);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function modify_result_process(CommonEntity $entity, ?string $redirect_url = null): string|RedirectResponse
|
protected function modify_result_process(CommonEntity $entity, ?string $redirect_url = null): string|RedirectResponse
|
||||||
|
|||||||
@ -77,7 +77,7 @@ class ServiceController extends CustomerController
|
|||||||
//서비스정보 가져오기
|
//서비스정보 가져오기
|
||||||
$entity = $this->service->getEntity($uid);
|
$entity = $this->service->getEntity($uid);
|
||||||
//대체서버 추가
|
//대체서버 추가
|
||||||
service('equipment_server')->attachToService($entity, $this->request->getPost());
|
service('equipment_serverservice')->attachToService($entity, $this->request->getPost());
|
||||||
return $this->action_redirect_process('info', "{$this->getTitle()}에서 대체서버추가가 완료되었습니다");
|
return $this->action_redirect_process('info', "{$this->getTitle()}에서 대체서버추가가 완료되었습니다");
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return $this->action_redirect_process('error', "{$this->getTitle()}에서 대체서버추가 오류:" . $e->getMessage());
|
return $this->action_redirect_process('error', "{$this->getTitle()}에서 대체서버추가 오류:" . $e->getMessage());
|
||||||
@ -92,12 +92,8 @@ class ServiceController extends CustomerController
|
|||||||
$fields = ['serverinfo_uid'];
|
$fields = ['serverinfo_uid'];
|
||||||
$this->service->getFormService()->setFormFields($fields);
|
$this->service->getFormService()->setFormFields($fields);
|
||||||
$this->service->getFormService()->setFormRules($action, $fields);
|
$this->service->getFormService()->setFormRules($action, $fields);
|
||||||
//서비스정보 가져오기
|
|
||||||
$entity = $this->service->getEntity($uid);
|
|
||||||
//메인서버 해지
|
|
||||||
service('equipment_server')->detachFromService($entity, ['serverinfo_uid' => $entity->getServerInfoUID()]);
|
|
||||||
//대체서버를 메인서버로 설정
|
//대체서버를 메인서버로 설정
|
||||||
service('equipment_server')->attachToService($entity, $this->request->getGet());
|
$this->service->modify($uid, $this->service->createDTO($this->request->getGet()));
|
||||||
return $this->action_redirect_process('info', "{$this->getTitle()}에서 메인서버설정이 완료되었습니다");
|
return $this->action_redirect_process('info', "{$this->getTitle()}에서 메인서버설정이 완료되었습니다");
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return $this->action_redirect_process('error', "{$this->getTitle()}에서 메인서버설정 오류:" . $e->getMessage());
|
return $this->action_redirect_process('error', "{$this->getTitle()}에서 메인서버설정 오류:" . $e->getMessage());
|
||||||
@ -113,7 +109,7 @@ class ServiceController extends CustomerController
|
|||||||
//서비스정보 가져오기
|
//서비스정보 가져오기
|
||||||
$entity = $this->service->getEntity($uid);
|
$entity = $this->service->getEntity($uid);
|
||||||
//대체서버 해지
|
//대체서버 해지
|
||||||
service('equipment_server')->attachToService($entity, $this->request->getGet());
|
service('equipment_serverservice')->detachFromService($entity, $this->request->getGet());
|
||||||
return $this->action_redirect_process('info', "{$this->getTitle()}에서 대체서버해지가 완료되었습니다");
|
return $this->action_redirect_process('info', "{$this->getTitle()}에서 대체서버해지가 완료되었습니다");
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return $this->action_redirect_process('error', "{$this->getTitle()}에서 대체서버 해지 오류:" . $e->getMessage());
|
return $this->action_redirect_process('error', "{$this->getTitle()}에서 대체서버 해지 오류:" . $e->getMessage());
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -225,15 +225,15 @@ abstract class CommonService
|
|||||||
if (!$this->getFormService()->validate($formDatas)) {
|
if (!$this->getFormService()->validate($formDatas)) {
|
||||||
throw new ValidationException(implode("\n", service('validation')->getErrors()));
|
throw new ValidationException(implode("\n", service('validation')->getErrors()));
|
||||||
}
|
}
|
||||||
$pkField = $this->model->getPKField();
|
//관리자 정보추가용
|
||||||
|
$formDatas['user_uid'] = $this->getAuthContext()->getUID();
|
||||||
// DTO 데이터에서 PK 필드가 있다면 제거하여, fill()에서 기존 PK를 덮어쓰지 않도록 합니다.
|
// DTO 데이터에서 PK 필드가 있다면 제거하여, fill()에서 기존 PK를 덮어쓰지 않도록 합니다.
|
||||||
|
$pkField = $this->model->getPKField();
|
||||||
if (isset($formDatas[$pkField])) {
|
if (isset($formDatas[$pkField])) {
|
||||||
unset($formDatas[$pkField]);
|
unset($formDatas[$pkField]);
|
||||||
}
|
}
|
||||||
// 1. 데이터를 Entity에 채웁니다.
|
$entity->merge($formDatas);
|
||||||
$entity->fill($formDatas);
|
dd($entity);
|
||||||
//관리자 정보추가용
|
|
||||||
$formDatas['user_uid'] = $this->getAuthContext()->getUID();
|
|
||||||
return $this->save_process($entity);
|
return $this->save_process($entity);
|
||||||
}
|
}
|
||||||
final public function modify(string|int $uid, object $dto): CommonEntity
|
final public function modify(string|int $uid, object $dto): CommonEntity
|
||||||
|
|||||||
@ -216,16 +216,14 @@ class ServiceService extends CustomerService
|
|||||||
}
|
}
|
||||||
//수정전 서비스정보를 currentEntity 복사해준다.
|
//수정전 서비스정보를 currentEntity 복사해준다.
|
||||||
if ($entity->getServerInfoUID() !== $formDatas['serverinfo_uid']) {
|
if ($entity->getServerInfoUID() !== $formDatas['serverinfo_uid']) {
|
||||||
//서버정보 해지처리
|
|
||||||
service('equipment_serverservice')->detachFromService($entity);
|
|
||||||
//결제정보 해지(삭제)처리
|
//결제정보 해지(삭제)처리
|
||||||
service('paymentservice')->detachFromService($entity);
|
service('paymentservice')->detachFromService($entity);
|
||||||
//서비스 전체금액 구하기
|
//서비스 전체금액 구하기
|
||||||
$formDatas['amount'] = $this->getCalculatedAmount(
|
$formDatas['amount'] = $this->getCalculatedAmount(
|
||||||
(int)$formDatas['serverinfo_uid'],
|
(int)$formDatas['serverinfo_uid'],
|
||||||
(int)$formDatas['rack'],
|
(int)$entity->getRack(),
|
||||||
(int)$formDatas['line'],
|
(int)$entity->getLine(),
|
||||||
(int)$formDatas['sale']
|
(int)$entity->getSale()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
//서비스 수정
|
//서비스 수정
|
||||||
@ -233,8 +231,6 @@ class ServiceService extends CustomerService
|
|||||||
if (!$entity instanceof ServiceEntity) {
|
if (!$entity instanceof ServiceEntity) {
|
||||||
throw new RuntimeException(__METHOD__ . "에서 오류발생:Return Type은 ServiceEntity만 가능");
|
throw new RuntimeException(__METHOD__ . "에서 오류발생:Return Type은 ServiceEntity만 가능");
|
||||||
}
|
}
|
||||||
//서버정보 연결
|
|
||||||
service('equipment_serverservice')->attachToService($entity);
|
|
||||||
//결제정보 연결
|
//결제정보 연결
|
||||||
service('paymentservice')->attachToService($entity);
|
service('paymentservice')->attachToService($entity);
|
||||||
return $entity;
|
return $entity;
|
||||||
|
|||||||
@ -263,8 +263,8 @@ class ServerService extends EquipmentService
|
|||||||
$this->getFormService()->setFormRules('modify', $fields);
|
$this->getFormService()->setFormRules('modify', $fields);
|
||||||
parent::modify_process($entity, $formDatas);
|
parent::modify_process($entity, $formDatas);
|
||||||
//서버파트정보처리
|
//서버파트정보처리
|
||||||
service('part_ipservice')->attachToServer($entity);
|
service('part_ipservice')->detachFromService($entity);
|
||||||
service('part_switchservice')->attachToServer($entity);
|
service('part_switchservice')->detachFromService($entity);
|
||||||
service('equipment_serverpartservice')->detachFromServer($entity);
|
service('equipment_serverpartservice')->detachFromService($entity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,7 +16,7 @@ abstract class PartService extends CommonService
|
|||||||
}
|
}
|
||||||
abstract public function attachToServerPart(ServerPartEntity $serverPartEntity, array $formDatas = []): PartEntity;
|
abstract public function attachToServerPart(ServerPartEntity $serverPartEntity, array $formDatas = []): PartEntity;
|
||||||
abstract public function detachFromServerPart(ServerPartEntity $serverPartEntity, array $formDatas = []): PartEntity;
|
abstract public function detachFromServerPart(ServerPartEntity $serverPartEntity, array $formDatas = []): PartEntity;
|
||||||
final protected function updatePart(PartEntity $entity, array $formDatas): PartEntity
|
final protected function updatePart($entity, array $formDatas): PartEntity
|
||||||
{
|
{
|
||||||
$updateResult = $this->model->update($entity->getPK(), $formDatas);
|
$updateResult = $this->model->update($entity->getPK(), $formDatas);
|
||||||
if ($updateResult === false || $updateResult === 0) {
|
if ($updateResult === false || $updateResult === 0) {
|
||||||
@ -25,7 +25,7 @@ abstract class PartService extends CommonService
|
|||||||
$errorMsg = is_array($errors) ? implode(", ", $errors) : "DB 업데이트 실패 또는 변경된 행 없음.";
|
$errorMsg = is_array($errors) ? implode(", ", $errors) : "DB 업데이트 실패 또는 변경된 행 없음.";
|
||||||
throw new \Exception(__METHOD__ . ": " . $errorMsg);
|
throw new \Exception(__METHOD__ . ": " . $errorMsg);
|
||||||
}
|
}
|
||||||
$entity->fill($formDatas);
|
$entity->merge($formDatas);
|
||||||
return $entity;
|
return $entity;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -233,7 +233,7 @@ class PaymentService extends CommonService
|
|||||||
public function detachFromService(ServiceEntity $serviceEntity): void
|
public function detachFromService(ServiceEntity $serviceEntity): void
|
||||||
{
|
{
|
||||||
//서비스정보의 지급기한일과 같은 결제정보 가져오기
|
//서비스정보의 지급기한일과 같은 결제정보 가져오기
|
||||||
$entity = $this->getEntity(['serviceinifo_uid' => $serviceEntity->getPK(), 'billing_at' => $serviceEntity->getBillingAt()]);
|
$entity = $this->getEntity(['serviceinfo_uid' => $serviceEntity->getPK(), 'billing_at' => $serviceEntity->getBillingAt()]);
|
||||||
if (!$entity) {
|
if (!$entity) {
|
||||||
throw new \Exception(__METHOD__ . "에서 오류발생: 해당하는 결제정보을 찾을수 없습니다.");
|
throw new \Exception(__METHOD__ . "에서 오류발생: 해당하는 결제정보을 찾을수 없습니다.");
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user