feat(vm): hoàn tiền khi cấp VM lỗi, theo dõi job queue, uuid dịch vụ cho ticket, chuẩn hoá RAM addon

- VmProvisionException/VmProvisionRefund xử lý lỗi cấp phát VM
- QueueJobInspector + QueueMonitorController xem chi tiết job
- Thêm service uuid cho ticket, thời lượng cho activity_logs
- Migration chuẩn hoá RAM addon sang MB, trạng thái deleting cho snapshot

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
baodev0
2026-10-30 11:54:05 +07:00
co-authored by Claude Sonnet 5.5
parent 7136bec265
commit 62596d9063
32 changed files with 514 additions and 107 deletions
@@ -3,6 +3,7 @@
namespace App\Http\Resources\Api\Service;
use App\Models\Product;
use App\Models\Ticket;
use App\Support\ServiceGroup;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;
@@ -45,6 +46,9 @@ class VpsServiceResource extends JsonResource
'order_num' => $order?->order_num,
'status' => $this->status,
'status_label' => $this->status_label,
'failure_ticket' => $this->status === 'failed'
? Ticket::where('service_uuid', $this->uuid)->latest('id')->first(['ticket_num', 'status'])
: null,
'auto_renew' => (bool) $this->auto_renew,
'cancel_at_expiry' => (bool) $this->cancel_at_expiry,
'started_at' => $this->started_at?->toISOString(),