{{-- resources/views/scans/create.blade.php --}} @extends('layouts.app1') @section('content')
{{-- 返回列表 --}}
← 回任務列表

新增掃描

{{-- 全域警示(例如:Nessus 尚未就緒) --}} @if (!empty($warning))
{{ $warning }}
@endif {{-- 驗證錯誤 --}} @if ($errors->any())
請修正以下欄位:
@endif @php // 確保不為 null,避免 foreach/forelse 當掉 $policies = $policies ?? [] ?: []; $templates = $templates ?? [] ?: []; // 若 Controller 回的是原始結構,這裡再保險壓平成統一格式 $policies = collect($policies) ->map(function ($p) { if (is_object($p)) { $p = (array) $p; } return [ 'id' => $p['id'] ?? ($p['policy_id'] ?? null), 'name' => $p['name'] ?? 'policy', ]; }) ->filter(fn($x) => !empty($x['id'])) ->values() ->all(); $templates = collect($templates) ->map(function ($t) { if (is_object($t)) { $t = (array) $t; } return [ 'uuid' => $t['uuid'] ?? null, 'name' => $t['name'] ?? ($t['title'] ?? 'template'), ]; }) ->filter(fn($x) => !empty($x['uuid'])) ->values() ->all(); @endphp
@csrf {{-- 名稱 --}}
{{-- 擇一必填:Policy 或 Template UUID --}}
@error('policy_id')

{{ $message }}

@enderror
@error('template_uuid')

{{ $message }}

@enderror
{{-- 目標清單 --}}
每行一個:IP / 網域 / CIDR
@error('targets')

{{ $message }}

@enderror
{{-- 提示:擇一必填邏輯 --}}
提示:PolicyTemplate UUID 擇一必填; 若兩者皆未選,後端會回 422 驗證錯誤。
@endsection