Browse Source

创建怪物的时候应该选择境界,而不是手动输入等级

master
hanqin 3 weeks ago
parent
commit
619abaf861
  1. 32
      Build_God_Admin_Frontend/Frontend/src/views/admin/MonstersView.vue

32
Build_God_Admin_Frontend/Frontend/src/views/admin/MonstersView.vue

@ -20,6 +20,7 @@ import { GetPillList, type Pill } from '@/api/pill'
import { GetEquipmentTemplateList, type EquipmentTemplate } from '@/api/equipment'
import { Plus, Edit, Delete, Close } from '@element-plus/icons-vue'
import { ICONS } from '@/constants/theme'
import { GetLevelList, type Level } from '@/api/level'
const monsters = ref<Monster[]>([])
@ -27,6 +28,8 @@ const monsterTypes = ref<EnumInfoDto[]>([])
const rewardTypes = ref<EnumInfoDto[]>([])
const pillData = ref<Pill[]>([])
const equipmentData = ref<EquipmentTemplate[]>([])
//
const levels = ref<Level[]>([])
const currentPage = ref(1)
const pageSize = ref(10)
@ -89,6 +92,15 @@ const translateMonsterType = (typeId: number) => {
return type ? type.description : '未知类型'
}
const translateLevel = (id: number) => {
console.log(levels)
var item = levels.value.find(x => x.levelId == id);
if (item) {
return item.name
}
return '未知'
}
const getMonsterTypeClass = (typeId: number) => {
switch (typeId) {
case 1:
@ -321,6 +333,7 @@ onMounted(async () => {
await refreshMonsters()
await fetchTypes()
await fetchRewardTypes()
await fetchLevels()
})
const refreshMonsters = async (page?: number) => {
@ -355,6 +368,10 @@ const fetchRewardTypes = async () => {
var data = await GetRewardTypes()
rewardTypes.value = data
}
const fetchLevels = async () => {
levels.value = await GetLevelList()
}
</script>
<template>
@ -404,8 +421,14 @@ const fetchRewardTypes = async () => {
</template>
</el-table-column>
<el-table-column label="名称" prop="name" width="150"></el-table-column>
<el-table-column label="等级" prop="levelId" width="80"></el-table-column>
<el-table-column label="类型">
<el-table-column label="等级" prop="levelId" width="80">
<template #default="scoped">
<span>
{{ translateLevel(scoped.row.levelId) }}
</span>
</template>
</el-table-column>
<el-table-column label="类型" width="100">
<template #default="scoped">
<span class="monster-type" :class="getMonsterTypeClass(scoped.row.type)">
{{ translateMonsterType(scoped.row.type) }}
@ -477,7 +500,10 @@ const fetchRewardTypes = async () => {
<el-input v-model="formData.name" placeholder="怪兽名称" clearable />
</el-form-item>
<el-form-item label="等级">
<el-input-number v-model="formData.levelId" />
<el-select v-model="formData.levelId">
<el-option v-for="(value, index) in levels" :key="index" :value="value.levelId" :label="value.name">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="类型">
<el-select v-model="formData.type">

Loading…
Cancel
Save