Refactor VM resource specs resolution and enhance order payment success email with addon summary; add UpdateVmConfigJob for CPU/RAM updates
This commit is contained in:
@@ -7,6 +7,7 @@ use App\Enums\Order\OrderStatus;
|
||||
use App\Enums\TransactionStatus;
|
||||
use App\Jobs\VirtualMachine\Action\VMJobs;
|
||||
use App\Jobs\VirtualMachine\Create\CreateVirtualMachineJob;
|
||||
use App\Models\Addon;
|
||||
use App\Models\Customer;
|
||||
use App\Models\Invoice;
|
||||
use App\Models\Log as CustomerActivityLog;
|
||||
@@ -210,6 +211,23 @@ class InvoicePaymentService
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$addonsMeta = is_array($item->addons_meta)
|
||||
? $item->addons_meta
|
||||
: json_decode($item->addons_meta ?? '[]', true);
|
||||
|
||||
foreach ((array) $addonsMeta as $meta) {
|
||||
$addon = Addon::find($meta['addon_id'] ?? null);
|
||||
if (!$addon) {
|
||||
continue;
|
||||
}
|
||||
ServiceAddon::create([
|
||||
'service_id' => $service->id,
|
||||
'addon_type' => strtolower((string) $addon->code),
|
||||
'addon_value' => (string) ($meta['qty'] ?? 1),
|
||||
'price' => (int) ($meta['price'] ?? $addon->price),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
private function cycleToMonths(?string $cycle): int
|
||||
|
||||
Reference in New Issue
Block a user