소스 수정

This commit is contained in:
2025-12-28 17:16:00 +09:00
parent 383e24ba1c
commit 4312a942dc
3 changed files with 36 additions and 17 deletions

View File

@@ -71,6 +71,9 @@
style="width: 80px;"
min="10"
/>
<select v-model="newTarget.physical_location" class="input-field" style="width: 110px;">
<option v-for="loc in locationOptions" :key="loc" :value="loc">{{ loc }}</option>
</select>
<label class="checkbox-label">
<input type="checkbox" v-model="newTarget.is_active" />
활성
@@ -93,7 +96,8 @@
<th style="width: 100px;">서버명</th>
<th style="width: 120px;">IP</th>
<th>Glances URL</th>
<th style="width: 70px;">주기()</th>
<th style="width: 70px;">주기</th>
<th style="width: 100px;">위치</th>
<th style="width: 50px;">상태</th>
<th style="width: 120px;">관리</th>
</tr>
@@ -117,6 +121,12 @@
<input v-if="editingId === target.target_id" v-model.number="editTarget.collect_interval" type="number" class="edit-input" min="10" />
<span v-else>{{ target.collect_interval }}</span>
</td>
<td>
<select v-if="editingId === target.target_id" v-model="editTarget.physical_location" class="edit-input">
<option v-for="loc in locationOptions" :key="loc" :value="loc">{{ loc }}</option>
</select>
<span v-else>{{ target.physical_location || '운영서버실' }}</span>
</td>
<td>
<label v-if="editingId === target.target_id" class="checkbox-label">
<input type="checkbox" v-model="editTarget.is_active" />
@@ -151,6 +161,7 @@ interface ServerTarget {
glances_url: string
is_active: number
collect_interval: number
physical_location: string
}
interface SchedulerStatus {
@@ -159,6 +170,11 @@ interface SchedulerStatus {
total_targets: number
}
const locationOptions = [
'운영서버실', '개발서버실', '터보사무실', '백업실',
'기타1', '기타2', '기타3', '기타4'
]
const targets = ref<ServerTarget[]>([])
const currentTime = ref('')
const editingId = ref<number | null>(null)
@@ -173,7 +189,8 @@ const newTarget = ref({
server_ip: '',
glances_url: '',
is_active: true,
collect_interval: 60
collect_interval: 60,
physical_location: '운영서버실'
})
const editTarget = ref({
@@ -181,7 +198,8 @@ const editTarget = ref({
server_ip: '',
glances_url: '',
is_active: true,
collect_interval: 60
collect_interval: 60,
physical_location: '운영서버실'
})
const canAdd = computed(() =>
@@ -243,7 +261,7 @@ async function addTarget() {
method: 'POST',
body: newTarget.value
})
newTarget.value = { server_name: '', server_ip: '', glances_url: '', is_active: true, collect_interval: 60 }
newTarget.value = { server_name: '', server_ip: '', glances_url: '', is_active: true, collect_interval: 60, physical_location: '운영서버실' }
await fetchTargets()
await fetchSchedulerStatus()
} catch (err) {
@@ -258,7 +276,8 @@ function startEdit(target: ServerTarget) {
server_ip: target.server_ip,
glances_url: target.glances_url,
is_active: !!target.is_active,
collect_interval: target.collect_interval || 60
collect_interval: target.collect_interval || 60,
physical_location: target.physical_location || '운영서버실'
}
}