feat: bật/tắt yêu cầu hoàn tất hồ sơ, xoá dịch vụ kèm đơn/hoá đơn, sync tên VM đã gán
- setting.require_complete_profile (mặc định bật), trả qua GET v1/setting - bulkDeleteServices xoá mềm invoice nâng cấp + order mồ côi (ServiceOrderRecorder::discardOrder) - createService trỏ dịch vụ sang order mới thì bỏ order cũ - SyncVirtualMachine cập nhật name + gắn virtual_machine_id cho module_vmware Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
bf78f3b810
commit
0bd15f6018
@@ -6,6 +6,7 @@ use App\Http\Services\Telegram;
|
||||
use App\Http\Services\vCenter as ServiceVCenter;
|
||||
use App\Models\ModuleDatacenter;
|
||||
use App\Models\ModuleHost;
|
||||
use App\Models\ModuleVmware;
|
||||
use App\Models\VirtualMachines;
|
||||
use App\Models\vCenter;
|
||||
use Illuminate\Bus\Queueable;
|
||||
@@ -178,12 +179,26 @@ class SyncVirtualMachine implements ShouldQueue
|
||||
$vmObj->last_synced_at = now();
|
||||
|
||||
$vmObj->save();
|
||||
$this->syncAssignedVm($vmObj);
|
||||
$syncedVmIds[] = $vmData['vm'];
|
||||
$count++;
|
||||
}
|
||||
return $count;
|
||||
}
|
||||
|
||||
private function syncAssignedVm(VirtualMachines $vm): void
|
||||
{
|
||||
ModuleVmware::query()
|
||||
->where(fn ($query) => $query
|
||||
->where('virtual_machine_id', $vm->id)
|
||||
->orWhere(fn ($legacy) => $legacy->whereNull('virtual_machine_id')->where('vmware_id', $vm->vm_id)))
|
||||
->where(fn ($query) => $query
|
||||
->whereNull('virtual_machine_id')
|
||||
->orWhereNull('name')
|
||||
->orWhere('name', '!=', $vm->name))
|
||||
->update(['name' => $vm->name, 'virtual_machine_id' => $vm->id]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete VMs in DB that belong to the given vCenter but no longer exist on vCenter.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user