CN-119 feat: 完成interface页面

This commit is contained in:
chenjinsong
2021-09-02 17:12:27 +08:00
parent 5973ca1b6e
commit cbcf111ccf
20 changed files with 496 additions and 130 deletions

View File

@@ -0,0 +1,79 @@
<template>
<div>
<cn-data-list
ref="dataList"
:tableId="tableId"
v-model:custom-table-title="tools.customTableTitle"
:api="url"
:from="fromRoute.galaxyProxy"
:layout="['columnCustomize','elementSet','searchInput']"
@search="search"
>
<template v-slot:top-tool-right>
<button id="galaxy-proxy-add" class="top-tool-btn margin-r-10"
type="button" @click="add">
<i class="cn-icon-add cn-icon"></i>
</button>
</template>
<template v-slot:default>
<galaxy-proxy-table
ref="dataTable"
v-loading="tools.loading"
:api="url"
:custom-table-title="tools.customTableTitle"
:height="mainTableHeight"
:table-data="tableData"
@delete="del"
@edit="edit"
@orderBy="tableDataSort"
@reload="getTableData"
@selectionChange="selectionChange"
@copy="copy"
></galaxy-proxy-table>
</template>
<!-- 分页组件 -->
<template #pagination>
<pagination ref="pagination" :page-obj="pageObj" :table-id="tableId" @pageNo='pageNo' @pageSize='pageSize'></pagination>
</template>
</cn-data-list>
<el-drawer
v-model="rightBox.show"
direction="rtl"
:size="700"
:with-header="false"
destroy-on-close>
<galaxy-proxy-box :object="object" @close="closeRightBox"></galaxy-proxy-box>
</el-drawer>
</div>
</template>
<script>
import cnDataList from '@/components/table/CnDataList'
import galaxyProxyBox from '@/components/rightBox/settings/GalaxyProxyBox'
import galaxyProxyTable from '@/components/table/settings/GalaxyProxyTable'
import dataListMixin from '@/mixins/dataList'
import { api } from '@/utils/api'
export default {
name: 'GalaxyProxy',
components: {
cnDataList,
galaxyProxyBox,
galaxyProxyTable
},
mixins: [dataListMixin],
data () {
return {
url: api.galaxyProxy,
tableId: 'galaxySettingTable', // 需要分页的table的id用于记录每页数量
blankObject: { // 空白对象
name: ''
}
}
}
}
</script>
<style>
</style>

View File

@@ -7,8 +7,7 @@
:layout="['searchInput', 'elementSet','searchInput']"
v-model:custom-table-title="tools.customTableTitle"
:from="fromRoute.operationLog"
@search="search"
:search-msg="searchMsg">
@search="search">
<template v-slot:default>
<operation-log-table
ref="dataTable"
@@ -36,6 +35,7 @@
import cnDataList from '@/components/table/CnDataList'
import dataListMixin from '@/mixins/dataList'
import operationLogTable from '@/components/table/settings/OperationLogTable'
import { api } from '@/utils/api'
export default {
name: 'operationLog',
@@ -46,49 +46,8 @@ export default {
mixins: [dataListMixin],
data () {
return {
url: 'sys/log',
tableId: 'operationLogTable', // 需要分页的table的id用于记录每页数量
searchMsg: { // 给搜索框子组件传递的信息
searchLabelList: [
{
id: 11,
name: this.$t('config.operationlog.type'),
type: 'input',
label: 'type',
disabled: false
}, {
id: 12,
name: this.$t('config.operationlog.username'),
type: 'input',
label: 'username',
disabled: false
}, {
id: 13,
name: this.$t('config.operationlog.operation'),
type: 'selectString',
label: 'operation',
disabled: false
}, {
id: 14,
name: this.$t('config.operationlog.operaId'),
type: 'input',
label: 'operaId',
disabled: false
}, {
id: 16,
name: this.$t('config.operationlog.state'),
type: 'selectString',
label: 'state',
disabled: false
}, {
id: 17,
name: this.$t('config.operationlog.params'),
type: 'input',
label: 'params',
disabled: false
}
]
}
url: api.operationLog,
tableId: 'operationLogTable' // 需要分页的table的id用于记录每页数量
}
}
}

View File

@@ -10,11 +10,11 @@
@search="search"
>
<template v-slot:top-tool-right>
<button id="roles-add" v-has="'role_add'" :title="$t('overall.createRole')" class="top-tool-btn margin-r-10"
<button id="roles-add" :title="$t('overall.createRole')" class="top-tool-btn margin-r-10"
type="button" @click="add">
<i class="cn-icon-add cn-icon"></i>
</button>
<delete-button id="role-list-batch-delete" v-has="'role_delete'" :api="url" :delete-objs="batchDeleteObjs" @after="getTableData" @before="delFlag=true"></delete-button>
<delete-button id="role-list-batch-delete" :api="url" :delete-objs="batchDeleteObjs" @after="getTableData" @before="delFlag=true"></delete-button>
</template>
<template v-slot:default>
<roles-table
@@ -29,7 +29,7 @@
@orderBy="tableDataSort"
@reload="getTableData"
@selectionChange="selectionChange"
@showBottomBox="(targetTab) => { $refs.dataList.showBottomBox(targetTab, object) }"></roles-table>
></roles-table>
</template>
<!-- 分页组件 -->
<template #pagination>
@@ -51,6 +51,7 @@ import cnDataList from '@/components/table/CnDataList'
import dataListMixin from '@/mixins/dataList'
import rolesTable from '@/components/table/settings/RoleTable'
import roleBox from '@/components/rightBox/settings/RoleBox'
import { api } from '@/utils/api'
export default {
name: 'roles',
@@ -62,28 +63,12 @@ export default {
mixins: [dataListMixin],
data () {
return {
url: 'sys/role',
url: api.role,
tableId: 'rolesTable', // 需要分页的table的id用于记录每页数量
blankObject: { // 空白对象
name: ''
},
searchMsg: { // 给搜索框子组件传递的信息
zheze_none: true,
searchLabelList: [{
id: 10,
name: this.$t('config.roles.name'),
type: 'input',
label: 'name',
disabled: false
}]
}
}
},
methods: {
edit (row) {
this.object = { ...row }
this.rightBox.show = true
}
}
}
</script>

View File

@@ -12,7 +12,6 @@
<template #top-tool-right>
<button
id="account-add"
v-has="'user_add'"
class="top-tool-btn margin-r-10"
type="button"
@click="add"
@@ -33,7 +32,6 @@
@orderBy="tableDataSort"
@reload="getTableData"
@selectionChange="selectionChange"
@showBottomBox="(targetTab, object) => { $refs.dataList.showBottomBox(targetTab, object) }"
/>
</template>
<template #pagination>
@@ -58,7 +56,7 @@ import cnDataList from '@/components/table/CnDataList'
import dataListMixin from '@/mixins/dataList'
import userTable from '@/components/table/settings/UserTable'
import userBox from '@/components/rightBox/settings/UserBox'
import { put } from '@/utils/http'
import { api } from '@/utils/api'
export default {
name: 'User',
@@ -70,7 +68,7 @@ export default {
},
data () {
return {
url: 'sys/user',
url: api.user,
blankObject: { // 空白对象
id: '',
name: '',
@@ -84,8 +82,6 @@ export default {
},
tableId: 'userTable'
}
},
methods: {
}
}
</script>