attributes['serverEntity'] = $entity; return $this; } final public function getServerEntity(): ServerEntity|null { return $this->attributes['serverEntity'] ?? null; } final public function setPaymentEntity(PaymentEntity $entity): self { $this->attributes['paymentEntity'] = $entity; return $this; } final public function getPaymentEntity(): PaymentEntity|null { return $this->attributes['paymentEntity'] ?? null; } final public function getUserUID(): string { return $this->attributes['user_uid']; } final public function getClientInfoUID(): string { return $this->attributes['clientinfo_uid']; } final public function getServerInfoUID(): string { return $this->attributes['serverinfo_uid']; } final public function getPaymentUID(): string|null { return $this->attributes['payment_uid'] ?? null; } //기본기능용 public function getCustomTitle(): string { return sprintf("[%s] %s", $this->getCode(), $this->getServerEntity()->getTitle()); } final public function getSite(): string { return $this->attributes['site'] ?? ""; } final public function getLocation(): string { return $this->attributes['location'] ?? ""; } final public function getBillingAt(): string { return $this->attributes['billing_at'] ?? ""; } //청구금액->기본:상면비+회선비+서버금액(price)+서버파트연결(월비용)-할인액 final public function getSale(): int { return $this->attributes['sale'] ?? 0; } final public function getAmount(): int { return $this->attributes['amount'] ?? 0; } //상면비 final public function getRack(): int { return $this->attributes['rack'] ?? 0; } //회선비 final public function getLine(): int { return $this->attributes['line'] ?? 0; } final public function getStartAt(): string { return $this->attributes['start_at'] ?? ""; } public function getHistory(): string { return $this->attributes['history'] ?? ""; } }