feat
This commit is contained in:
@@ -35,8 +35,12 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item field="server_identity" label="服务器标识">
|
<a-form-item field="server_identity" label="服务器">
|
||||||
<a-input v-model="formData.server_identity" placeholder="请输入关联服务器标识" />
|
<a-select v-model="formData.server_identity" placeholder="请选择服务器" allow-search allow-clear>
|
||||||
|
<a-option v-for="server in serverOptions" :key="server.server_identity" :value="server.server_identity">
|
||||||
|
{{ server.name }} ({{ server.server_identity }})
|
||||||
|
</a-option>
|
||||||
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
@@ -143,11 +147,12 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref, reactive, computed, watch } from 'vue'
|
import { ref, reactive, computed, watch, onMounted } from 'vue'
|
||||||
import { Message } from '@arco-design/web-vue'
|
import { Message } from '@arco-design/web-vue'
|
||||||
import type { FormInstance } from '@arco-design/web-vue'
|
import type { FormInstance } from '@arco-design/web-vue'
|
||||||
import { createStorage, updateStorage } from '@/api/ops/storage'
|
import { createStorage, updateStorage } from '@/api/ops/storage'
|
||||||
import type { StorageCreateData, StorageItem } from '@/api/ops/storage'
|
import type { StorageCreateData, StorageItem } from '@/api/ops/storage'
|
||||||
|
import { fetchServerList, type ServerItem } from '@/api/ops/server'
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
visible: boolean
|
visible: boolean
|
||||||
@@ -162,6 +167,7 @@ const emit = defineEmits(['update:visible', 'success'])
|
|||||||
|
|
||||||
const formRef = ref<FormInstance>()
|
const formRef = ref<FormInstance>()
|
||||||
const confirmLoading = ref(false)
|
const confirmLoading = ref(false)
|
||||||
|
const serverOptions = ref<ServerItem[]>([])
|
||||||
|
|
||||||
const isEdit = computed(() => !!props.record?.id)
|
const isEdit = computed(() => !!props.record?.id)
|
||||||
|
|
||||||
@@ -329,4 +335,22 @@ const handleCancel = () => {
|
|||||||
emit('update:visible', false)
|
emit('update:visible', false)
|
||||||
formRef.value?.resetFields()
|
formRef.value?.resetFields()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const loadServerOptions = async () => {
|
||||||
|
try {
|
||||||
|
const response: any = await fetchServerList({ page: 1, size: 1000 })
|
||||||
|
if (response && response.details) {
|
||||||
|
serverOptions.value = response.details.data || []
|
||||||
|
} else {
|
||||||
|
serverOptions.value = []
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('加载服务器列表失败:', error)
|
||||||
|
serverOptions.value = []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
loadServerOptions()
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user