ARKDinoListView.vue 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. <template>
  2. <div style="margin: 10px;padding: 10px">
  3. <!-- <ArkItemSelect v-model="demo"/>-->
  4. <el-form :model="searchForm" label-width="80px">
  5. <el-row>
  6. <el-col :span="4">
  7. <el-form-item label="名称">
  8. <el-input v-model="searchForm.name"></el-input>
  9. </el-form-item>
  10. </el-col>
  11. <el-col :span="4">
  12. <el-form-item label="标签">
  13. <el-input v-model="searchForm.label"></el-input>
  14. </el-form-item>
  15. </el-col>
  16. <el-col :span="4">
  17. <el-form-item label="全部">
  18. <el-input v-model="searchForm.allLike"></el-input>
  19. </el-form-item>
  20. </el-col>
  21. <el-col :span="4">
  22. <el-form-item label="分类">
  23. <el-select>
  24. <el-option :key="'Ammunition'" :value="'Ammunition'" :label="'弹药(Ammunition)'"></el-option>
  25. <el-option :key="'Armor'" :value="'Armor'" :label="'护甲(Armor)'"></el-option>
  26. <el-option :key="'Artifacts'" :value="'Artifacts'" :label="'遗物(Artifacts)'"></el-option>
  27. <el-option :key="'Attachments'" :value="'Attachments'" :label="'附件(Attachments)'"></el-option>
  28. <el-option :key="'Chibi-pets'" :value="'Chibi-pets'" :label="'小宠物(Chibi-pets)'"></el-option>
  29. <el-option :key="'Consumables'" :value="'Consumables'" :label="'消耗品(Consumables)'"></el-option>
  30. <el-option :key="'Dye'" :value="'Dye'" :label="'染料(Dye)'"></el-option>
  31. <el-option :key="'Eggs'" :value="'Eggs'" :label="'蛋(Eggs)'"></el-option>
  32. <el-option :key="'Farming'" :value="'Farming'" :label="'农业(Farming)'"></el-option>
  33. <el-option :key="'Recipes'" :value="'Recipes'" :label="'配方(Recipes)'"></el-option>
  34. <el-option :key="'Resources'" :value="'Resources'" :label="'资源(Resources)'"></el-option>
  35. <el-option :key="'Saddles'" :value="'Saddles'" :label="'鞍(Saddles)'"></el-option>
  36. <el-option :key="'Seeds'" :value="'Seeds'" :label="'种子(Seeds)'"></el-option>
  37. <el-option :key="'Skins'" :value="'Skins'" :label="'皮肤(Skins)'"></el-option>
  38. <el-option :key="'Structures'" :value="'Structures'" :label="'结构(Structures)'"></el-option>
  39. <el-option :key="'Tools'" :value="'Tools'" :label="'工具(Tools)'"></el-option>
  40. <el-option :key="'Trophies'" :value="'Trophies'" :label="'奖杯(Trophies)'"></el-option>
  41. <el-option :key="'Weapons'" :value="'Weapons'" :label="'武器(Weapons)'"></el-option>
  42. </el-select>
  43. </el-form-item>
  44. </el-col>
  45. <el-col :span="1"></el-col>
  46. <el-col :span="1.5">
  47. <el-button class="el-btn-margin" type="primary" @click="replay()">查询</el-button>
  48. </el-col>
  49. <el-col :span="1.5">
  50. <el-button class="el-btn-margin" type="primary" @click="replay()">重置</el-button>
  51. </el-col>
  52. </el-row>
  53. </el-form>
  54. <el-table :data="items" style="width: 100%">
  55. <el-table-column prop="id" label="ID" width="100"></el-table-column>
  56. <el-table-column prop="name" label="名称"></el-table-column>
  57. <el-table-column prop="label" label="标签"></el-table-column>
  58. <el-table-column prop="imgUrl" label="图片">
  59. <template #default="scope">
  60. <el-image :src="GetImg(scope.row.imgUrl)" loading="lazy" style="max-width: 45px;max-height: 45px"></el-image>
  61. </template>
  62. </el-table-column>
  63. <el-table-column prop="nameTag" label="类名"></el-table-column>
  64. <el-table-column prop="category" label="分类"></el-table-column>
  65. <el-table-column prop="blueprint" label="功能" fixed="right">
  66. <template #default="scope">
  67. <el-link type="info">复制蓝图</el-link>&nbsp;
  68. <el-link type="primary">复制代码</el-link>&nbsp;
  69. <el-link type="primary">详情</el-link>
  70. </template>
  71. </el-table-column>
  72. <el-table-column prop="blueprint" label="操作" fixed="right">
  73. <template #default="scope">
  74. <el-button link type="info" @click="open=true">修改</el-button>
  75. <el-button linktype="primary">删除</el-button>
  76. </template>
  77. </el-table-column>
  78. </el-table>
  79. <el-pagination
  80. v-model:current-page="pageNum"
  81. v-model:page-size="pageSize"
  82. :page-sizes="[10, 20, 50, 100]"
  83. layout="total, sizes, prev, pager, next, jumper"
  84. :total="total"
  85. @size-change="handleSizeChange"
  86. @current-change="handleCurrentChange"/>
  87. <el-dialog v-model="open">
  88. <el-form :model="arkDinoForm" label-width="80px">
  89. <el-form-item label="名称">
  90. <el-input v-model="arkDinoForm.name"></el-input>
  91. </el-form-item>
  92. <el-form-item label="标签">
  93. <el-input v-model="arkDinoForm.label"></el-input>
  94. </el-form-item>
  95. <el-form-item label="分类">
  96. <el-select v-model="arkDinoForm.category">
  97. <el-option :key="'Ammunition'" :value="'Ammunition'" :label="'弹药(Ammunition)'"></el-option>
  98. <el-option :key="'Armor'" :value="'Armor'" :label="'护甲(Armor)'"></el-option>
  99. <el-option :key="'Artifacts'" :value="'Artifacts'" :label="'遗物(Artifacts)'"></el-option>
  100. </el-select>
  101. </el-form-item>
  102. <el-form-item label="图片">
  103. <el-input v-model="arkDinoForm.imgUrl"></el-input>
  104. </el-form-item>
  105. <el-form-item label="实体ID">
  106. <el-input v-model="arkDinoForm.entityId"></el-input>
  107. </el-form-item>
  108. <el-form-item label="蓝图">
  109. <el-input v-model="arkDinoForm.blueprint"></el-input>
  110. </el-form-item>
  111. <el-form-item label="蓝图">
  112. <el-input v-model="arkDinoForm.nameTag"></el-input>
  113. </el-form-item>
  114. </el-form>
  115. </el-dialog>
  116. </div>
  117. </template>
  118. <script setup lang="ts">
  119. import {ArkDinoInfo, PostDinoList, ReqArkItem} from "../../api/ARKItemsApi";
  120. import {ref} from "vue";
  121. let items = ref<ArkDinoInfo[]>([])
  122. let total = ref<number>(0)
  123. let pageNum = ref<number>(1)
  124. let pageSize = ref<number>(10)
  125. let arkDinoForm = ref<ArkDinoInfo>(new ArkDinoInfo(0, "", "", "", "", "", "", ""))
  126. let open = ref<boolean>(false)
  127. let searchForm = ref<ReqArkItem>(new ReqArkItem(pageNum.value, pageSize.value, "", "", "", ""))
  128. function replay() {
  129. items.value = []
  130. PostDinoList(searchForm.value, pageNum.value, pageSize.value).then((res) => {
  131. if (res.code == 200) {
  132. items.value = res.data.list
  133. total.value = res.data.total
  134. }
  135. })
  136. }
  137. const handleSizeChange = (val: number) => {
  138. pageSize.value = val
  139. }
  140. const handleCurrentChange = (val: number) => {
  141. pageNum.value = val
  142. replay()
  143. }
  144. function GetImg(url: string): string {
  145. return url
  146. }
  147. replay()
  148. </script>
  149. <style scoped lang="scss">
  150. </style>