Refactor VM creation and configuration process

- Updated VpsServiceResource to return product UUID instead of ID.
- Modified VirtualMachineService to utilize product data for CPU, RAM, and disk settings.
- Replaced AssignIpToGuestJob with UpdateVmConfigJob in CreateVirtualMachineJob to streamline VM configuration after cloning.
- Adjusted AssignIpToGuestJob to remove unnecessary UpdateVmConfigJob dispatch and focus on IP assignment.
- Enhanced UpdateVmConfigJob to handle CPU/RAM configuration and power cycling more effectively.
- Introduced ChangeIpVMJob for handling customer-initiated IP changes asynchronously.
- Updated InvoiceRepository to set invoice due date based on maximum months instead of a fixed 7 days.
- Improved web design quote PDF layout for better readability.
- Added Times-Roman font metrics for PDF generation.
This commit is contained in:
baodev0
2026-07-24 09:29:43 +07:00
parent ccf95114f6
commit 3ed33ea7e4
10 changed files with 767 additions and 127 deletions
@@ -39,10 +39,8 @@ class VpsServiceResource extends JsonResource
$product = $orderItem?->product ?? $this->product;
return [
'id' => $this->id,
'uuid' => $this->uuid,
'server_name' => $this->server_name,
'invoice_id' => $this->invoice_id,
'invoice_num' => $invoice?->invoice_number,
'order_item_id' => $this->order_item_id,
'order_num' => $order?->order_num,
@@ -56,7 +54,7 @@ class VpsServiceResource extends JsonResource
'group' => $orderItem?->os?->osGroup?->name,
],
'product' => $product ? [
'id' => $product->id,
'uuid' => $product->uuid,
'name' => $product->name,
'slug' => $product->slug,
'product_type' => $product->product_type,