|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="app-container" ref="appContainer">
|
|
|
<ServerPropTable :loading="loading" @selection-change="selectionChange" :columns="column" :data="list" @reset="reset"
|
|
|
- @onSubmit="onSubmit">
|
|
|
+ @onSubmit="onSubmit" @onUpdate="onUpdate">
|
|
|
<template v-slot:btn>
|
|
|
<div style="display: flex; justify-content: flex-end">
|
|
|
<el-button type="danger" @click="batchDelete"><el-icon>
|
|
@@ -10,6 +10,7 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<template v-slot:state="scope">{{getStateLabel(scope.row.state)}}</template>
|
|
|
+ <template v-slot:openTime="scope">{{getDate(scope.row.openTime)}}</template>
|
|
|
<template v-slot:operation="scope">
|
|
|
<el-button type="primary" size="small" icon="Edit" @click="edit(scope.row)">
|
|
|
编辑
|
|
@@ -58,7 +59,7 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<script lang="ts" setup name="comprehensive">
|
|
|
-import { ref, reactive, onMounted, nextTick } from 'vue'
|
|
|
+import { ref, reactive, onMounted, nextTick, onBeforeMount } from 'vue'
|
|
|
import * as dayjs from 'dayjs'
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
import type { FormInstance } from 'element-plus'
|
|
@@ -81,20 +82,37 @@ import ServerPropTable from '@/components/Table/ServerPropTable/index.vue'
|
|
|
// }
|
|
|
|
|
|
const data = ref([])
|
|
|
+const serverName = "game"
|
|
|
|
|
|
-onBeforeMount(()=> {
|
|
|
- serverApi.getAll("game").then(res => {
|
|
|
+// 时间戳转日期
|
|
|
+const getDate = (val) => {
|
|
|
+ if (!val) {
|
|
|
+ return ""
|
|
|
+ }
|
|
|
+ let now = new Date(val),
|
|
|
+ y = now.getFullYear(),
|
|
|
+ m = now.getMonth() + 1,
|
|
|
+ d = now.getDate()
|
|
|
+ return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);
|
|
|
+}
|
|
|
+
|
|
|
+onBeforeMount(() => {
|
|
|
+ loadServerInfo()
|
|
|
+})
|
|
|
+
|
|
|
+const loadServerInfo = () => {
|
|
|
+ serverApi.getAll(serverName).then(res => {
|
|
|
data.value = res.data.result;
|
|
|
console.log(data)
|
|
|
})
|
|
|
-})
|
|
|
+}
|
|
|
|
|
|
const column = [
|
|
|
{ type: 'selection', width: 60, fixed: 'left' },
|
|
|
- { name: '_id', label: 'ID', inSearch: true, valueType: 'input', width: 80 },
|
|
|
+ { name: '_id', label: 'ID', inSearch: true, valueType: 'inputNumber', width: 80 },
|
|
|
{ name: 'name', label: '名称'},
|
|
|
{ name: 'gmAddr', label: 'GM地址'},
|
|
|
- { name: 'weight', label: '推荐权重', inSearch: true, valueType: 'input'},
|
|
|
+ { name: 'weight', label: '推荐权重', inSearch: true, valueType: 'inputNumber'},
|
|
|
{ name: 'gatewayId', label: '连接网关服'},
|
|
|
{
|
|
|
name: 'state',
|
|
@@ -161,15 +179,16 @@ const handleClose = async (done: () => void) => {
|
|
|
if (valid) {
|
|
|
list.value.forEach((item) => {
|
|
|
let updateParams = reactive({
|
|
|
- serverName: "game",
|
|
|
- serverId: ruleForm._id,
|
|
|
+ serverName: serverName,
|
|
|
+ _id: ruleForm._id,
|
|
|
update: ruleForm
|
|
|
})
|
|
|
serverApi.update(updateParams).then(res=>{
|
|
|
- if (res.data.result > 0) {
|
|
|
- item.weight = ruleForm.weight
|
|
|
- item.state = ruleForm.state
|
|
|
- item.openTime = ruleForm.openTime
|
|
|
+ if (res.data.code = 200) {
|
|
|
+ // item.weight = ruleForm.weight
|
|
|
+ // item.state = ruleForm.state
|
|
|
+ // item.openTime = ruleForm.openTime
|
|
|
+ loadServerInfo()
|
|
|
return ElMessage.success('修改成功')
|
|
|
} else {
|
|
|
return ElMessage.error('修改失败')
|
|
@@ -195,7 +214,18 @@ const batchDelete = () => {
|
|
|
draggable: true,
|
|
|
})
|
|
|
.then(() => {
|
|
|
- ElMessage.success('批量删除成功')
|
|
|
+ let selectServerIds = reactive([])
|
|
|
+ for (let value of selectObj.value) {
|
|
|
+ selectServerIds.push(value._id)
|
|
|
+ }
|
|
|
+ let deleteParams = reactive({
|
|
|
+ serverName: serverName,
|
|
|
+ serverIds: selectServerIds
|
|
|
+ })
|
|
|
+ serverApi.deleteBatch(deleteParams).then(res => {
|
|
|
+ loadServerInfo()
|
|
|
+ ElMessage.success('批量删除成功')
|
|
|
+ })
|
|
|
list.value = list.value.concat([])
|
|
|
})
|
|
|
.catch(() => { })
|
|
@@ -222,13 +252,15 @@ const del = (row) => {
|
|
|
draggable: true,
|
|
|
})
|
|
|
.then(() => {
|
|
|
- list.value = list.value.filter((item) => item._id !== row._id)
|
|
|
+ // list.value = list.value.filter((item) => item._id !== row._id)
|
|
|
let deleteParams = reactive({
|
|
|
- serverName: "game",
|
|
|
+ serverName: serverName,
|
|
|
serverId: row._id
|
|
|
})
|
|
|
- serverApi.delete(deleteParams)
|
|
|
- ElMessage.success('删除成功')
|
|
|
+ serverApi.delete(deleteParams).then(res => {
|
|
|
+ loadServerInfo()
|
|
|
+ ElMessage.success('删除成功')
|
|
|
+ })
|
|
|
loading.value = true
|
|
|
setTimeout(() => {
|
|
|
loading.value = false
|
|
@@ -242,12 +274,30 @@ const reset = () => {
|
|
|
setTimeout(() => {
|
|
|
loading.value = false
|
|
|
}, 500)
|
|
|
- ElMessage.success('触发重置方法')
|
|
|
+ ElMessage.success('重置成功')
|
|
|
}
|
|
|
|
|
|
const onSubmit = (val) => {
|
|
|
- console.log('val===', val)
|
|
|
- ElMessage.success('触发查询方法')
|
|
|
+ if (!val._id && val.state == null && !val.weight) {
|
|
|
+ ElMessage.warning('请输入查询条件')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let queryParams = reactive({
|
|
|
+ serverName: serverName
|
|
|
+ })
|
|
|
+ if (val._id) {
|
|
|
+ queryParams._id = parseInt(val._id)
|
|
|
+ }
|
|
|
+ if (val.state != null) {
|
|
|
+ queryParams.state = val.state
|
|
|
+ }
|
|
|
+ if (!val.weight) {
|
|
|
+ queryParams.weight = val.weight
|
|
|
+ }
|
|
|
+ serverApi.query(queryParams).then(res => {
|
|
|
+ data.value = res.data.result;
|
|
|
+ console.log(data.value)
|
|
|
+ })
|
|
|
loading.value = true
|
|
|
setTimeout(() => {
|
|
|
loading.value = false
|
|
@@ -255,8 +305,34 @@ const onSubmit = (val) => {
|
|
|
}
|
|
|
|
|
|
const onUpdate = (val) => {
|
|
|
- console.log('val===', val)
|
|
|
- ElMessage.success('触发修改方法')
|
|
|
+ if (val.state == null && !val.weight && !val.openTime) {
|
|
|
+ ElMessage.warning('请输入编辑内容')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let updateParams = reactive({
|
|
|
+ serverName: serverName,
|
|
|
+ updateValue: reactive({})
|
|
|
+ })
|
|
|
+ if (val._id) {
|
|
|
+ updateParams._id = parseInt(val._id)
|
|
|
+ }
|
|
|
+ if (val.state != null) {
|
|
|
+ updateParams.updateValue.state = val.stage
|
|
|
+ }
|
|
|
+ if (!val.weight) {
|
|
|
+ updateParams.updateValue.weight = val.weight
|
|
|
+ }
|
|
|
+ if (!val.openTime) {
|
|
|
+ updateParams.updateValue.openTime = val.openTime.getTime()
|
|
|
+ }
|
|
|
+ serverApi.updateBatch(updateParams).then(res => {
|
|
|
+ if (res.data.code = 200) {
|
|
|
+ loadServerInfo()
|
|
|
+ return ElMessage.success('修改成功')
|
|
|
+ } else {
|
|
|
+ return ElMessage.error('修改失败')
|
|
|
+ }
|
|
|
+ })
|
|
|
loading.value = true
|
|
|
setTimeout(() => {
|
|
|
loading.value = false
|