@@ -1,5 +1,7 @@
|
||||
<template>
|
||||
<div class="warning-bar">
|
||||
<div
|
||||
class="warning-bar"
|
||||
>
|
||||
<el-icon>
|
||||
<warning-filled />
|
||||
</el-icon>
|
||||
@@ -19,7 +21,7 @@ export default {
|
||||
title: {
|
||||
type: String,
|
||||
default: ''
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -30,14 +32,16 @@ export default {
|
||||
padding: 6px 14px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-radius: 2px;
|
||||
.el-icon{
|
||||
color: #ED6A0C;
|
||||
font-size: 18px;
|
||||
color: #ED6A0C;
|
||||
}
|
||||
margin-bottom: 22px;
|
||||
margin-bottom: 12px;
|
||||
span{
|
||||
color:#5D5D5E;
|
||||
line-height: 22px;
|
||||
color:#F67207;
|
||||
margin-left: 8px;
|
||||
line-height: 18px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -5,14 +5,16 @@
|
||||
// 加载网站配置文件夹
|
||||
import { register } from './global'
|
||||
|
||||
export const run = function(app) {
|
||||
register(app)
|
||||
console.log(`
|
||||
欢迎使用 Gin-Vue-Admin
|
||||
当前版本:V2.4.5 beta.1
|
||||
加群方式:微信:shouzi_1994 QQ群:622360840
|
||||
默认自动化文档地址:http://127.0.0.1:${import.meta.env.VITE_SERVER_PORT}/swagger/index.html
|
||||
默认前端文件运行地址:http://127.0.0.1:${import.meta.env.VITE_CLI_PORT}
|
||||
如果项目让您获得了收益,希望您能请团队喝杯可乐:https://www.gin-vue-admin.com/docs/coffee
|
||||
`)
|
||||
export default {
|
||||
install: (app) => {
|
||||
register(app)
|
||||
console.log(`
|
||||
欢迎使用 Gin-Vue-Admin
|
||||
当前版本:V2.4.5 beta.1
|
||||
加群方式:微信:shouzi_1994 QQ群:622360840
|
||||
默认自动化文档地址:http://127.0.0.1:${import.meta.env.VITE_SERVER_PORT}/swagger/index.html
|
||||
默认前端文件运行地址:http://127.0.0.1:${import.meta.env.VITE_CLI_PORT}
|
||||
如果项目让您获得了收益,希望您能请团队喝杯可乐:https://www.gin-vue-admin.com/docs/coffee
|
||||
`)
|
||||
}
|
||||
}
|
||||
|
||||
+38
-35
@@ -1,39 +1,42 @@
|
||||
// 权限按钮展示指令
|
||||
import { store } from '@/store'
|
||||
export const auth = (app) => {
|
||||
app.directive('auth', {
|
||||
// 当被绑定的元素插入到 DOM 中时……
|
||||
mounted: function(el, binding) {
|
||||
const userInfo = store.getters['user/userInfo']
|
||||
let type = ''
|
||||
switch (Object.prototype.toString.call(binding.value)) {
|
||||
case '[object Array]':
|
||||
type = 'Array'
|
||||
break
|
||||
case '[object String]':
|
||||
type = 'String'
|
||||
break
|
||||
case '[object Number]':
|
||||
type = 'Number'
|
||||
break
|
||||
default:
|
||||
type = ''
|
||||
break
|
||||
export default {
|
||||
install: (app) => {
|
||||
app.directive('auth', {
|
||||
// 当被绑定的元素插入到 DOM 中时……
|
||||
mounted: function(el, binding) {
|
||||
const userInfo = store.getters['user/userInfo']
|
||||
let type = ''
|
||||
switch (Object.prototype.toString.call(binding.value)) {
|
||||
case '[object Array]':
|
||||
type = 'Array'
|
||||
break
|
||||
case '[object String]':
|
||||
type = 'String'
|
||||
break
|
||||
case '[object Number]':
|
||||
type = 'Number'
|
||||
break
|
||||
default:
|
||||
type = ''
|
||||
break
|
||||
}
|
||||
if (type === '') {
|
||||
/* eslint-disable */
|
||||
console.error("v-auth必须是Array,Number,String属性,暂不支持其他属性")
|
||||
/* eslint-enable */
|
||||
return
|
||||
}
|
||||
const waitUse = binding.value.toString().split(',')
|
||||
let flag = waitUse.some(item => item === userInfo.authorityId)
|
||||
if (binding.modifiers.not) {
|
||||
flag = !flag
|
||||
}
|
||||
if (!flag) {
|
||||
el.style.display = 'none'
|
||||
}
|
||||
}
|
||||
if (type === '') {
|
||||
/* eslint-disable */
|
||||
console.error("v-auth必须是Array,Number,String属性,暂不支持其他属性")
|
||||
/* eslint-enable */
|
||||
return
|
||||
}
|
||||
const waitUse = binding.value.toString().split(',')
|
||||
let flag = waitUse.some(item => item === userInfo.authorityId)
|
||||
if (binding.modifiers.not) {
|
||||
flag = !flag
|
||||
}
|
||||
if (!flag) {
|
||||
el.style.display = 'none'
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+9
-6
@@ -1,22 +1,25 @@
|
||||
import { createApp } from 'vue'
|
||||
import 'element-plus/dist/index.css'
|
||||
import './style/element_visiable.scss'
|
||||
import ElementPlus from 'element-plus'
|
||||
import zhCn from 'element-plus/es/locale/lang/zh-cn'
|
||||
// 引入gin-vue-admin前端初始化相关内容
|
||||
import './core/gin-vue-admin'
|
||||
// 引入封装的router
|
||||
import router from '@/router/index'
|
||||
import { run } from '@/core/gin-vue-admin.js'
|
||||
import run from '@/core/gin-vue-admin.js'
|
||||
import auth from '@/directive/auth'
|
||||
|
||||
import '@/permission'
|
||||
import { store } from '@/store/index'
|
||||
|
||||
import { auth } from '@/directive/auth'
|
||||
|
||||
import App from './App.vue'
|
||||
const app = createApp(App)
|
||||
run(app)
|
||||
auth(app)
|
||||
app.config.productionTip = false
|
||||
app.use(store).use(router).use(ElementPlus, { locale: zhCn }).mount('#app')
|
||||
app.use(run)
|
||||
.use(auth)
|
||||
.use(store)
|
||||
.use(router)
|
||||
.use(ElementPlus, { locale: zhCn }).mount('#app')
|
||||
|
||||
export default app
|
||||
|
||||
@@ -1,21 +1,192 @@
|
||||
/* 改变主题色变量 */
|
||||
$--color-primary: #1890ff;
|
||||
|
||||
#app{
|
||||
.el-button{
|
||||
font-weight: 400;
|
||||
border-radius: 4px;
|
||||
border-radius: 2px;
|
||||
}
|
||||
}
|
||||
///* 改变 icon 字体路径变量,必需 */
|
||||
//$--font-path: '~element-ui/lib/theme-chalk/fonts';
|
||||
//
|
||||
//
|
||||
//
|
||||
//@import "~element-ui/packages/theme-chalk/src/index";
|
||||
//
|
||||
|
||||
|
||||
:export {
|
||||
colorPrimary: $--color-primary
|
||||
.el-dialog{
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track-piece {
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar {
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
background-color: #dddddd;
|
||||
background-clip: padding-box;
|
||||
min-height: 28px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background-color: #bbb;
|
||||
}
|
||||
|
||||
.el-button--primary {
|
||||
--el-button-font-color: #ffffff;
|
||||
--el-button-background-color: #4D70FF;
|
||||
--el-button-border-color: #4D70FF;
|
||||
--el-button-hover-color: #0d84ff;
|
||||
--el-button-active-font-color: #e6e6e6;
|
||||
--el-button-active-background-color: #0d84ff;
|
||||
--el-button-active-border-color: #0d84ff;
|
||||
}
|
||||
|
||||
.el-button--primary {
|
||||
--el-button-font-color: #ffffff;
|
||||
--el-button-background-color: #4D70FF;
|
||||
--el-button-border-color: #4D70FF;
|
||||
--el-button-hover-color: #0d84ff;
|
||||
--el-button-active-font-color: #e6e6e6;
|
||||
--el-button-active-background-color: #0d84ff;
|
||||
--el-button-active-border-color: #0d84ff;
|
||||
}
|
||||
|
||||
:root {
|
||||
--el-color-primary: #4D70FF;
|
||||
}
|
||||
|
||||
.gva-search-box {
|
||||
.el-collapse {
|
||||
border: none;
|
||||
.el-collapse-item__header,
|
||||
.el-collapse-item__wrap {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
padding: 24px;
|
||||
padding-bottom: 2px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
margin-bottom: 12px;
|
||||
.el-form {
|
||||
.el-form-item {
|
||||
padding-right: 28px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gva-form-box {
|
||||
padding: 24px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.gva-table-box {
|
||||
padding: 24px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.gva-pagination {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
.el-pagination__editor {
|
||||
.el-input__inner {
|
||||
height: 32px;
|
||||
}
|
||||
}
|
||||
.el-pagination__total {
|
||||
line-height: 32px !important;
|
||||
}
|
||||
.btn-prev {
|
||||
padding-right: 6px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.number {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.btn-quicknext {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.btn-next {
|
||||
padding-left: 6px;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.active {
|
||||
background: #4D70FF;
|
||||
border-radius: 2px;
|
||||
color: #ffffff !important;
|
||||
}
|
||||
.el-pager li.active+li {
|
||||
border-left: 1px solid #ddd !important;
|
||||
}
|
||||
.el-pagination__sizes {
|
||||
.el-input {
|
||||
.el-input__suffix {
|
||||
margin-top: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.el-pagination__jump {
|
||||
.el-pagination__editor {}
|
||||
}
|
||||
}
|
||||
|
||||
.el-button--mini {
|
||||
min-height: 32px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
padding: 8px 16px;
|
||||
border-radius: 2px;
|
||||
&.el-button--text {
|
||||
padding: 8px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog {
|
||||
padding: 12px;
|
||||
.el-dialog__body {
|
||||
padding: 12px 6px;
|
||||
}
|
||||
.el-dialog__header {
|
||||
.el-dialog__title {
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
padding: 2px 20px 12px 20px;
|
||||
border-bottom: 1px solid #E4E4E4;
|
||||
}
|
||||
.el-dialog__headerbtn {
|
||||
top: 16px;
|
||||
}
|
||||
.el-dialog__footer {
|
||||
margin-top: -12px;
|
||||
padding: 0 0 16px 0;
|
||||
.dialog-footer {
|
||||
.el-button {
|
||||
padding-left: 24px;
|
||||
padding-right: 24px;
|
||||
}
|
||||
.el-button+.el-button {
|
||||
margin-left: 30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1368,183 +1368,3 @@ $mainHight: 100vh;
|
||||
.justify-content-flex-end {
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track-piece {
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar {
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
background-color: #dddddd;
|
||||
background-clip: padding-box;
|
||||
min-height: 28px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background-color: #bbb;
|
||||
}
|
||||
|
||||
.el-button--primary {
|
||||
--el-button-font-color: #ffffff;
|
||||
--el-button-background-color: #4D70FF;
|
||||
--el-button-border-color: #4D70FF;
|
||||
--el-button-hover-color: #0d84ff;
|
||||
--el-button-active-font-color: #e6e6e6;
|
||||
--el-button-active-background-color: #0d84ff;
|
||||
--el-button-active-border-color: #0d84ff;
|
||||
}
|
||||
|
||||
.el-button--primary {
|
||||
--el-button-font-color: #ffffff;
|
||||
--el-button-background-color: #4D70FF;
|
||||
--el-button-border-color: #4D70FF;
|
||||
--el-button-hover-color: #0d84ff;
|
||||
--el-button-active-font-color: #e6e6e6;
|
||||
--el-button-active-background-color: #0d84ff;
|
||||
--el-button-active-border-color: #0d84ff;
|
||||
}
|
||||
|
||||
:root {
|
||||
--el-color-primary: #4D70FF;
|
||||
}
|
||||
|
||||
.gva-search-box {
|
||||
.el-collapse {
|
||||
border: none;
|
||||
.el-collapse-item__header,
|
||||
.el-collapse-item__wrap {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
padding: 24px;
|
||||
padding-bottom: 2px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
margin-bottom: 12px;
|
||||
.el-form {
|
||||
.el-form-item {
|
||||
padding-right: 28px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gva-form-box {
|
||||
padding: 24px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.gva-table-box {
|
||||
padding: 24px;
|
||||
background-color: #fff;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.gva-pagination {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
.el-pagination__editor {
|
||||
.el-input__inner {
|
||||
height: 32px;
|
||||
}
|
||||
}
|
||||
.el-pagination__total {
|
||||
line-height: 32px !important;
|
||||
}
|
||||
.btn-prev {
|
||||
padding-right: 6px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.number {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.btn-quicknext {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.btn-next {
|
||||
padding-left: 6px;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.active {
|
||||
background: #4D70FF;
|
||||
border-radius: 2px;
|
||||
color: #ffffff !important;
|
||||
}
|
||||
.el-pager li.active+li {
|
||||
border-left: 1px solid #ddd !important;
|
||||
}
|
||||
.el-pagination__sizes {
|
||||
.el-input {
|
||||
.el-input__suffix {
|
||||
margin-top: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.el-pagination__jump {
|
||||
.el-pagination__editor {}
|
||||
}
|
||||
}
|
||||
|
||||
.el-button--mini {
|
||||
min-height: 32px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
padding: 8px 16px;
|
||||
border-radius: 2px;
|
||||
&.el-button--text {
|
||||
padding: 8px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog {
|
||||
padding: 12px;
|
||||
.el-dialog__body {
|
||||
padding: 12px 6px;
|
||||
}
|
||||
.el-dialog__header {
|
||||
.el-dialog__title {
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
padding: 2px 20px 12px 20px;
|
||||
border-bottom: 1px solid #E4E4E4;
|
||||
}
|
||||
.el-dialog__headerbtn {
|
||||
top: 16px;
|
||||
}
|
||||
.el-dialog__footer {
|
||||
margin-top: -12px;
|
||||
padding: 0 0 16px 0;
|
||||
.dialog-footer {
|
||||
.el-button {
|
||||
padding-left: 24px;
|
||||
padding-right: 24px;
|
||||
}
|
||||
.el-button+.el-button {
|
||||
margin-left: 30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<warning-bar title="在资源权限中将此角色的资源权限清空 或者不包含创建者的角色 即可屏蔽此客户资源的显示" />
|
||||
<div class="gva-table-box">
|
||||
<div class="gva-btn-list">
|
||||
<el-button size="mini" type="primary" icon="el-icon-plus" @click="openDialog">新增</el-button>
|
||||
@@ -12,15 +13,15 @@
|
||||
row-key="ID"
|
||||
>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column align="center" label="接入日期" width="180">
|
||||
<el-table-column align="left" label="接入日期" width="180">
|
||||
<template #default="scope">
|
||||
<span>{{ formatDate(scope.row.CreatedAt) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="姓名" prop="customerName" width="120" />
|
||||
<el-table-column align="center" label="电话" prop="customerPhoneData" width="120" />
|
||||
<el-table-column align="center" label="接入人ID" prop="sysUserId" width="120" />
|
||||
<el-table-column align="center" label="按钮组" min-width="160">
|
||||
<el-table-column align="left" label="姓名" prop="customerName" width="120" />
|
||||
<el-table-column align="left" label="电话" prop="customerPhoneData" width="120" />
|
||||
<el-table-column align="left" label="接入人ID" prop="sysUserId" width="120" />
|
||||
<el-table-column align="left" label="按钮组" min-width="160">
|
||||
<template #default="scope">
|
||||
<el-button size="small" type="text" icon="el-icon-edit" @click="updateCustomer(scope.row)">变更</el-button>
|
||||
<el-popover :visible="scope.row.visible" placement="top" width="160">
|
||||
@@ -36,7 +37,6 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<warning-bar style="margin-top:12px;" title="在资源权限中将此角色的资源权限清空 或者不包含创建者的角色 即可屏蔽此客户资源的显示" />
|
||||
<div class="gva-pagination">
|
||||
<el-pagination
|
||||
:current-page="page"
|
||||
|
||||
@@ -16,18 +16,18 @@
|
||||
<el-button class="excel-btn" size="mini" type="success" icon="el-icon-download" @click="downloadExcelTemplate()">下载模板</el-button>
|
||||
</div>
|
||||
<el-table :data="tableData" row-key="ID">
|
||||
<el-table-column align="center" label="ID" min-width="100" prop="ID" />
|
||||
<el-table-column align="center" show-overflow-tooltip label="路由Name" min-width="160" prop="name" />
|
||||
<el-table-column align="center" show-overflow-tooltip label="路由Path" min-width="160" prop="path" />
|
||||
<el-table-column align="center" label="是否隐藏" min-width="100" prop="hidden">
|
||||
<el-table-column align="left" label="ID" min-width="100" prop="ID" />
|
||||
<el-table-column align="left" show-overflow-tooltip label="路由Name" min-width="160" prop="name" />
|
||||
<el-table-column align="left" show-overflow-tooltip label="路由Path" min-width="160" prop="path" />
|
||||
<el-table-column align="left" label="是否隐藏" min-width="100" prop="hidden">
|
||||
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.hidden?"隐藏":"显示" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="父节点" min-width="90" prop="parentId" />
|
||||
<el-table-column align="center" label="排序" min-width="70" prop="sort" />
|
||||
<el-table-column align="center" label="文件路径" min-width="360" prop="component" />
|
||||
<el-table-column align="left" label="父节点" min-width="90" prop="parentId" />
|
||||
<el-table-column align="left" label="排序" min-width="70" prop="sort" />
|
||||
<el-table-column align="left" label="文件路径" min-width="360" prop="component" />
|
||||
</el-table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -23,19 +23,19 @@
|
||||
</div>
|
||||
|
||||
<el-table :data="tableData">
|
||||
<el-table-column align="center" label="预览" width="100">
|
||||
<el-table-column align="left" label="预览" width="100">
|
||||
<template #default="scope">
|
||||
<CustomPic pic-type="file" :pic-src="scope.row.url" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="日期" prop="UpdatedAt" width="180">
|
||||
<el-table-column align="left" label="日期" prop="UpdatedAt" width="180">
|
||||
<template #default="scope">
|
||||
<div>{{ formatDate(scope.row.UpdatedAt) }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="文件名" prop="name" width="180" />
|
||||
<el-table-column align="center" label="链接" prop="url" min-width="300" />
|
||||
<el-table-column align="center" label="标签" prop="tag" width="100">
|
||||
<el-table-column align="left" label="文件名" prop="name" width="180" />
|
||||
<el-table-column align="left" label="链接" prop="url" min-width="300" />
|
||||
<el-table-column align="left" label="标签" prop="tag" width="100">
|
||||
<template #default="scope">
|
||||
<el-tag
|
||||
:type="scope.row.tag === 'jpg' ? 'primary' : 'success'"
|
||||
@@ -43,7 +43,7 @@
|
||||
>{{ scope.row.tag }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="操作" width="160">
|
||||
<el-table-column align="left" label="操作" width="160">
|
||||
<template #default="scope">
|
||||
<el-button size="small" icon="el-icon-download" type="text" @click="downloadFile(scope.row)">下载</el-button>
|
||||
<el-button size="small" icon="el-icon-delete" type="text" @click="deleteFile(scope.row)">删除</el-button>
|
||||
|
||||
@@ -3,10 +3,19 @@
|
||||
<div class="login_panle">
|
||||
<div class="login_panle_form">
|
||||
<div class="login_panle_form_title">
|
||||
<img class="login_panle_form_title_logo" :src="$GIN_VUE_ADMIN.appLogo" alt>
|
||||
<img
|
||||
class="login_panle_form_title_logo"
|
||||
:src="$GIN_VUE_ADMIN.appLogo"
|
||||
alt
|
||||
/>
|
||||
<p class="login_panle_form_title_p">{{ $GIN_VUE_ADMIN.appName }}</p>
|
||||
</div>
|
||||
<el-form ref="loginForm" :model="loginForm" :rules="rules" @keyup.enter="submitForm">
|
||||
<el-form
|
||||
ref="loginForm"
|
||||
:model="loginForm"
|
||||
:rules="rules"
|
||||
@keyup.enter="submitForm"
|
||||
>
|
||||
<el-form-item prop="username">
|
||||
<el-input v-model="loginForm.username" placeholder="请输入用户名">
|
||||
<template #suffix>
|
||||
@@ -21,7 +30,10 @@
|
||||
placeholder="请输入密码"
|
||||
>
|
||||
<template #suffix>
|
||||
<i :class="'el-input__icon el-icon-' + lock" @click="changeLock" />
|
||||
<i
|
||||
:class="'el-input__icon el-icon-' + lock"
|
||||
@click="changeLock"
|
||||
/>
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -33,12 +45,24 @@
|
||||
style="width: 60%"
|
||||
/>
|
||||
<div class="vPic">
|
||||
<img v-if="picPath" :src="picPath" alt="请输入验证码" @click="loginVerify()">
|
||||
<img
|
||||
v-if="picPath"
|
||||
:src="picPath"
|
||||
alt="请输入验证码"
|
||||
@click="loginVerify()"
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" style="width: 46%" @click="checkInit">前往初始化</el-button>
|
||||
<el-button type="primary" style="width: 46%;margin-left:8%" @click="submitForm">登 录</el-button>
|
||||
<el-button type="primary" style="width: 46%" @click="checkInit"
|
||||
>前往初始化</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
style="width: 46%; margin-left: 8%"
|
||||
@click="submitForm"
|
||||
>登 录</el-button
|
||||
>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
@@ -46,24 +70,25 @@
|
||||
<div class="login_panle_foot">
|
||||
<div class="links">
|
||||
<a href="http://doc.henrongyi.top/">
|
||||
<img src="@/assets/docs.png" class="link-icon">
|
||||
<img src="@/assets/docs.png" class="link-icon" />
|
||||
</a>
|
||||
<a href="https://www.yuque.com/flipped-aurora/">
|
||||
<img src="@/assets/yuque.png" class="link-icon">
|
||||
<img src="@/assets/yuque.png" class="link-icon" />
|
||||
</a>
|
||||
<a href="https://github.com/flipped-aurora/gin-vue-admin">
|
||||
<img src="@/assets/github.png" class="link-icon">
|
||||
<img src="@/assets/github.png" class="link-icon" />
|
||||
</a>
|
||||
<a href="https://space.bilibili.com/322210472">
|
||||
<img src="@/assets/video.png" class="link-icon">
|
||||
<img src="@/assets/video.png" class="link-icon" />
|
||||
</a>
|
||||
</div>
|
||||
<div class="copyright">Copyright © {{ curYear }} 💖 flipped-aurora</div>
|
||||
<div class="copyright">
|
||||
Copyright © {{ curYear }} 💖 flipped-aurora
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapActions } from 'vuex'
|
||||
import { captcha } from '@/api/user'
|
||||
@@ -161,8 +186,12 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@/style/newLogin.scss";
|
||||
</style>
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
</div>
|
||||
<div class="gva-table-box">
|
||||
<div class="gva-btn-list">
|
||||
|
||||
<el-button size="mini" type="primary" icon="el-icon-plus" @click="openDialog('addApi')">新增</el-button>
|
||||
<el-popover v-model:visible="deleteVisible" placement="top" width="160">
|
||||
<p>确定要删除吗?</p>
|
||||
@@ -38,7 +37,7 @@
|
||||
<el-button size="mini" type="primary" @click="onDelete">确定</el-button>
|
||||
</div>
|
||||
<template #reference>
|
||||
<el-button icon="el-icon-delete" size="mini" style="margin-left: 10px;">删除</el-button>
|
||||
<el-button icon="el-icon-delete" size="mini" :disabled="!apis.length" style="margin-left: 10px;">删除</el-button>
|
||||
</template>
|
||||
</el-popover>
|
||||
</div>
|
||||
@@ -47,11 +46,11 @@
|
||||
type="selection"
|
||||
width="55"
|
||||
/>
|
||||
<el-table-column align="center" label="id" min-width="60" prop="ID" sortable="custom" />
|
||||
<el-table-column align="center" label="API路径" min-width="150" prop="path" sortable="custom" />
|
||||
<el-table-column align="center" label="API分组" min-width="150" prop="apiGroup" sortable="custom" />
|
||||
<el-table-column align="center" label="API简介" min-width="150" prop="description" sortable="custom" />
|
||||
<el-table-column align="center" label="请求" min-width="150" prop="method" sortable="custom">
|
||||
<el-table-column align="left" label="id" min-width="60" prop="ID" sortable="custom" />
|
||||
<el-table-column align="left" label="API路径" min-width="150" prop="path" sortable="custom" />
|
||||
<el-table-column align="left" label="API分组" min-width="150" prop="apiGroup" sortable="custom" />
|
||||
<el-table-column align="left" label="API简介" min-width="150" prop="description" sortable="custom" />
|
||||
<el-table-column align="left" label="请求" min-width="150" prop="method" sortable="custom">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
{{ scope.row.method }} / {{ methodFiletr(scope.row.method) }}
|
||||
@@ -59,7 +58,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" fixed="right" label="操作" width="200">
|
||||
<el-table-column align="left" fixed="right" label="操作" width="200">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
icon="el-icon-edit"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<template>
|
||||
<div class="authority">
|
||||
<warning-bar title="注:右上角头像下拉可切换角色" />
|
||||
<div class="gva-table-box">
|
||||
<div class="gva-btn-list">
|
||||
<el-button size="mini" type="primary" icon="el-icon-plus" @click="addAuthority('0')">新增角色</el-button>
|
||||
@@ -11,8 +12,8 @@
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-table-column label="角色ID" min-width="180" prop="authorityId" />
|
||||
<el-table-column align="center" label="角色名称" min-width="180" prop="authorityName" />
|
||||
<el-table-column align="center" label="操作" width="460">
|
||||
<el-table-column align="left" label="角色名称" min-width="180" prop="authorityName" />
|
||||
<el-table-column align="left" label="操作" width="460">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
icon="el-icon-setting"
|
||||
@@ -47,7 +48,6 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<warning-bar title="注:右上角头像下拉可切换角色" style="margin-top:12px;" />
|
||||
</div>
|
||||
<!-- 新增角色弹窗 -->
|
||||
<el-dialog v-model="dialogFormVisible" :title="dialogTitle">
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
<template>
|
||||
<div>
|
||||
<warning-bar
|
||||
title="获取字典且缓存方法已在前端utils/dictionary 已经封装完成 不必自己书写 使用方法查看文件内注释"
|
||||
/>
|
||||
<div class="gva-search-box">
|
||||
<el-form :inline="true" :model="searchInfo">
|
||||
<el-form-item label="字典名(中)">
|
||||
@@ -35,21 +38,21 @@
|
||||
row-key="ID"
|
||||
>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column align="center" label="日期" width="180">
|
||||
<el-table-column align="left" label="日期" width="180">
|
||||
<template #default="scope">{{ formatDate(scope.row.CreatedAt) }}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" label="字典名(中)" prop="name" width="160" />
|
||||
<el-table-column align="left" label="字典名(中)" prop="name" width="160" />
|
||||
|
||||
<el-table-column align="center" label="字典名(英)" prop="type" width="120" />
|
||||
<el-table-column align="left" label="字典名(英)" prop="type" width="120" />
|
||||
|
||||
<el-table-column align="center" label="状态" prop="status" width="120">
|
||||
<el-table-column align="left" label="状态" prop="status" width="120">
|
||||
<template #default="scope">{{ formatBoolean(scope.row.status) }}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" label="描述" prop="desc" width="280" />
|
||||
<el-table-column align="left" label="描述" prop="desc" width="280" />
|
||||
|
||||
<el-table-column align="center" label="按钮组">
|
||||
<el-table-column align="left" label="按钮组">
|
||||
<template #default="scope">
|
||||
<el-button size="mini" icon="el-icon-document" type="text" @click="toDetile(scope.row)">详情</el-button>
|
||||
<el-button size="mini" icon="el-icon-edit" type="text" @click="updateSysDictionary(scope.row)">变更</el-button>
|
||||
@@ -66,10 +69,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<warning-bar
|
||||
title="获取字典且缓存方法已在前端utils/dictionary 已经封装完成 不必自己书写 使用方法查看文件内注释"
|
||||
style="margin-top:12px"
|
||||
/>
|
||||
|
||||
<div class="gva-pagination">
|
||||
<el-pagination
|
||||
:current-page="page"
|
||||
|
||||
@@ -32,21 +32,21 @@
|
||||
row-key="ID"
|
||||
>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column align="center" label="日期" width="180">
|
||||
<el-table-column align="left" label="日期" width="180">
|
||||
<template #default="scope">{{ formatDate(scope.row.CreatedAt) }}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" label="展示值" prop="label" width="120" />
|
||||
<el-table-column align="left" label="展示值" prop="label" width="120" />
|
||||
|
||||
<el-table-column align="center" label="字典值" prop="value" width="120" />
|
||||
<el-table-column align="left" label="字典值" prop="value" width="120" />
|
||||
|
||||
<el-table-column align="center" label="启用状态" prop="status" width="120">
|
||||
<el-table-column align="left" label="启用状态" prop="status" width="120">
|
||||
<template #default="scope">{{ formatBoolean(scope.row.status) }}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" label="排序标记" prop="sort" width="120" />
|
||||
<el-table-column align="left" label="排序标记" prop="sort" width="120" />
|
||||
|
||||
<el-table-column align="center" label="按钮组">
|
||||
<el-table-column align="left" label="按钮组">
|
||||
<template #default="scope">
|
||||
<el-button size="small" type="text" icon="el-icon-edit" @click="updateSysDictionaryDetail(scope.row)">变更</el-button>
|
||||
<el-popover :visible="scope.row.visible" placement="top" width="160">
|
||||
|
||||
@@ -7,29 +7,29 @@
|
||||
|
||||
<!-- 由于此处菜单跟左侧列表一一对应所以不需要分页 pageSize默认999 -->
|
||||
<el-table :data="tableData" row-key="ID">
|
||||
<el-table-column align="center" label="ID" min-width="100" prop="ID" />
|
||||
<el-table-column align="center" label="路由Name" show-overflow-tooltip min-width="160" prop="name" />
|
||||
<el-table-column align="center" label="路由Path" show-overflow-tooltip min-width="160" prop="path" />
|
||||
<el-table-column align="center" label="是否隐藏" min-width="100" prop="hidden">
|
||||
<el-table-column align="left" label="ID" min-width="100" prop="ID" />
|
||||
<el-table-column align="left" label="路由Name" show-overflow-tooltip min-width="160" prop="name" />
|
||||
<el-table-column align="left" label="路由Path" show-overflow-tooltip min-width="160" prop="path" />
|
||||
<el-table-column align="left" label="是否隐藏" min-width="100" prop="hidden">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.hidden?"隐藏":"显示" }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="父节点" min-width="90" prop="parentId" />
|
||||
<el-table-column align="center" label="排序" min-width="70" prop="sort" />
|
||||
<el-table-column align="center" label="文件路径" min-width="360" prop="component" />
|
||||
<el-table-column align="center" label="展示名称" min-width="120" prop="authorityName">
|
||||
<el-table-column align="left" label="父节点" min-width="90" prop="parentId" />
|
||||
<el-table-column align="left" label="排序" min-width="70" prop="sort" />
|
||||
<el-table-column align="left" label="文件路径" min-width="360" prop="component" />
|
||||
<el-table-column align="left" label="展示名称" min-width="120" prop="authorityName">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.meta.title }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="图标" min-width="140" prop="authorityName">
|
||||
<el-table-column align="left" label="图标" min-width="140" prop="authorityName">
|
||||
<template #default="scope">
|
||||
<i :class="`el-icon-${scope.row.meta.icon}`" />
|
||||
<span>{{ scope.row.meta.icon }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" fixed="right" label="操作" width="300">
|
||||
<el-table-column align="left" fixed="right" label="操作" width="300">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
@@ -138,7 +138,7 @@
|
||||
@click="addParameter(form)"
|
||||
>新增菜单参数</el-button>
|
||||
<el-table :data="form.parameters" style="width: 100%">
|
||||
<el-table-column align="center" prop="type" label="参数类型" width="180">
|
||||
<el-table-column align="left" prop="type" label="参数类型" width="180">
|
||||
<template #default="scope">
|
||||
<el-select v-model="scope.row.type" placeholder="请选择">
|
||||
<el-option key="query" value="query" label="query" />
|
||||
@@ -146,21 +146,21 @@
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" prop="key" label="参数key" width="180">
|
||||
<el-table-column align="left" prop="key" label="参数key" width="180">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-input v-model="scope.row.key" />
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" prop="value" label="参数值">
|
||||
<el-table-column align="left" prop="value" label="参数值">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-input v-model="scope.row.value" />
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center">
|
||||
<el-table-column align="left">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-button
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
<el-button size="mini" type="primary" @click="onDelete">确定</el-button>
|
||||
</div>
|
||||
<template #reference>
|
||||
<el-button icon="el-icon-delete" size="mini" style="margin-left: 10px;">删除</el-button>
|
||||
<el-button icon="el-icon-delete" size="mini" style="margin-left: 10px;" :disabled="!multipleSelection.length">删除</el-button>
|
||||
</template>
|
||||
</el-popover>
|
||||
</div>
|
||||
@@ -39,26 +39,26 @@
|
||||
row-key="ID"
|
||||
@selection-change="handleSelectionChange"
|
||||
>
|
||||
<el-table-column align="center" type="selection" width="55" />
|
||||
<el-table-column align="center" label="操作人" width="140">
|
||||
<el-table-column align="left" type="selection" width="55" />
|
||||
<el-table-column align="left" label="操作人" width="140">
|
||||
<template #default="scope">
|
||||
<div>{{ scope.row.user.userName }}({{ scope.row.user.nickName }})</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="日期" width="180">
|
||||
<el-table-column align="left" label="日期" width="180">
|
||||
<template #default="scope">{{ formatDate(scope.row.CreatedAt) }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="状态码" prop="status" width="120">
|
||||
<el-table-column align="left" label="状态码" prop="status" width="120">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-tag type="success">{{ scope.row.status }}</el-tag>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="请求IP" prop="ip" width="120" />
|
||||
<el-table-column align="center" label="请求方法" prop="method" width="120" />
|
||||
<el-table-column align="center" label="请求路径" prop="path" width="240" />
|
||||
<el-table-column align="center" label="请求" prop="path" width="80">
|
||||
<el-table-column align="left" label="请求IP" prop="ip" width="120" />
|
||||
<el-table-column align="left" label="请求方法" prop="method" width="120" />
|
||||
<el-table-column align="left" label="请求路径" prop="path" width="240" />
|
||||
<el-table-column align="left" label="请求" prop="path" width="80">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-popover v-if="scope.row.body" placement="top-start" trigger="hover">
|
||||
@@ -74,7 +74,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="响应" prop="path" width="80">
|
||||
<el-table-column align="left" label="响应" prop="path" width="80">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-popover v-if="scope.row.resp" placement="top-start" trigger="hover">
|
||||
@@ -89,7 +89,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="按钮组">
|
||||
<el-table-column align="left" label="按钮组">
|
||||
<template #default="scope">
|
||||
<el-popover :visible="scope.row.visible" placement="top" width="160">
|
||||
<p>确定要删除吗?</p>
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
<template>
|
||||
<div>
|
||||
<warning-bar title="注:右上角头像下拉可切换角色" />
|
||||
<div class="gva-table-box">
|
||||
<div class="gva-btn-list">
|
||||
<el-button size="mini" type="primary" icon="el-icon-plus" @click="addUser">新增用户</el-button>
|
||||
</div>
|
||||
<el-table :data="tableData">
|
||||
<el-table-column align="center" label="头像" min-width="50">
|
||||
<el-table-column align="left" label="头像" min-width="50">
|
||||
<template #default="scope">
|
||||
<CustomPic style="margin-top:8px" :pic-src="scope.row.headerImg" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="UUID" min-width="250" prop="uuid" />
|
||||
<el-table-column align="center" label="用户名" min-width="150" prop="userName" />
|
||||
<el-table-column align="center" label="昵称" min-width="150" prop="nickName" />
|
||||
<el-table-column align="center" label="用户角色" min-width="150">
|
||||
<el-table-column align="left" label="UUID" min-width="250" prop="uuid" />
|
||||
<el-table-column align="left" label="用户名" min-width="150" prop="userName" />
|
||||
<el-table-column align="left" label="昵称" min-width="150" prop="nickName" />
|
||||
<el-table-column align="left" label="用户角色" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-cascader
|
||||
v-model="scope.row.authorityIds"
|
||||
@@ -27,7 +28,7 @@
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="操作" min-width="150">
|
||||
<el-table-column align="left" label="操作" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-popover :visible="scope.row.visible" placement="top" width="160">
|
||||
<p>确定要删除此用户吗</p>
|
||||
@@ -42,7 +43,6 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<warning-bar title="注:右上角头像下拉可切换角色" style="margin-top:12px;" />
|
||||
<div class="gva-pagination">
|
||||
<el-pagination
|
||||
:current-page="page"
|
||||
|
||||
@@ -85,18 +85,18 @@
|
||||
<el-button size="mini" type="primary" @click="editAndAddField()">新增Field</el-button>
|
||||
</div>
|
||||
<el-table :data="form.fields">
|
||||
<el-table-column align="center" type="index" label="序列" width="100" />
|
||||
<el-table-column align="center" prop="fieldName" label="Field名" />
|
||||
<el-table-column align="center" prop="fieldDesc" label="中文名" />
|
||||
<el-table-column align="center" prop="fieldJson" label="FieldJson" />
|
||||
<el-table-column align="center" prop="fieldType" label="Field数据类型" width="130" />
|
||||
<el-table-column align="center" prop="dataType" label="数据库字段类型" width="130" />
|
||||
<el-table-column align="center" prop="dataTypeLong" label="数据库字段长度" width="130" />
|
||||
<el-table-column align="center" prop="columnName" label="数据库字段" width="130" />
|
||||
<el-table-column align="center" prop="comment" label="数据库字段描述" width="130" />
|
||||
<el-table-column align="center" prop="fieldSearchType" label="搜索条件" width="130" />
|
||||
<el-table-column align="center" prop="dictType" label="字典" width="130" />
|
||||
<el-table-column align="center" label="操作" width="300">
|
||||
<el-table-column align="left" type="index" label="序列" width="100" />
|
||||
<el-table-column align="left" prop="fieldName" label="Field名" />
|
||||
<el-table-column align="left" prop="fieldDesc" label="中文名" />
|
||||
<el-table-column align="left" prop="fieldJson" label="FieldJson" />
|
||||
<el-table-column align="left" prop="fieldType" label="Field数据类型" width="130" />
|
||||
<el-table-column align="left" prop="dataType" label="数据库字段类型" width="130" />
|
||||
<el-table-column align="left" prop="dataTypeLong" label="数据库字段长度" width="130" />
|
||||
<el-table-column align="left" prop="columnName" label="数据库字段" width="130" />
|
||||
<el-table-column align="left" prop="comment" label="数据库字段描述" width="130" />
|
||||
<el-table-column align="left" prop="fieldSearchType" label="搜索条件" width="130" />
|
||||
<el-table-column align="left" prop="dictType" label="字典" width="130" />
|
||||
<el-table-column align="left" label="操作" width="300">
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
|
||||
@@ -9,14 +9,14 @@
|
||||
type="selection"
|
||||
width="55"
|
||||
/>
|
||||
<el-table-column align="center" label="id" width="60" prop="ID" />
|
||||
<el-table-column align="center" label="日期" width="180">
|
||||
<el-table-column align="left" label="id" width="60" prop="ID" />
|
||||
<el-table-column align="left" label="日期" width="180">
|
||||
<template #default="scope">{{ formatDate(scope.row.CreatedAt) }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="结构体名" min-width="150" prop="structName" />
|
||||
<el-table-column align="center" label="结构体描述" min-width="150" prop="structCNName" />
|
||||
<el-table-column align="center" label="表名称" min-width="150" prop="tableName" />
|
||||
<el-table-column align="center" label="回滚标记" min-width="150" prop="flag">
|
||||
<el-table-column align="left" label="结构体名" min-width="150" prop="structName" />
|
||||
<el-table-column align="left" label="结构体描述" min-width="150" prop="structCNName" />
|
||||
<el-table-column align="left" label="表名称" min-width="150" prop="tableName" />
|
||||
<el-table-column align="left" label="回滚标记" min-width="150" prop="flag">
|
||||
<template #default="scope">
|
||||
<el-tag
|
||||
v-if="scope.row.flag"
|
||||
@@ -36,7 +36,7 @@
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="操作" min-width="180">
|
||||
<el-table-column align="left" label="操作" min-width="180">
|
||||
<template #default="scope">
|
||||
<div>
|
||||
<el-button size="mini" type="text" :disabled="scope.row.flag === 1" @click="rollback(scope.row)">回滚</el-button>
|
||||
|
||||
+3
-3
@@ -1083,10 +1083,10 @@
|
||||
"@babel/helper-validator-identifier" "^7.14.9"
|
||||
to-fast-properties "^2.0.0"
|
||||
|
||||
"@element-plus/icons@^0.0.11":
|
||||
"@element-plus/icons@0.0.11", "@element-plus/icons@^0.0.11":
|
||||
version "0.0.11"
|
||||
resolved "https://registry.nlark.com/@element-plus/icons/download/@element-plus/icons-0.0.11.tgz#9b187c002774548b911850d17fa5fc2f9a515f57"
|
||||
integrity sha1-mxh8ACd0VIuRGFDRf6X8L5pRX1c=
|
||||
resolved "https://registry.yarnpkg.com/@element-plus/icons/-/icons-0.0.11.tgz#9b187c002774548b911850d17fa5fc2f9a515f57"
|
||||
integrity sha512-iKQXSxXu131Ai+I9Ymtcof9WId7kaXvB1+WRfAfpQCW7UiAMYgdNDqb/u0hgTo2Yq3MwC4MWJnNuTBEpG8r7+A==
|
||||
|
||||
"@hapi/address@2.x.x":
|
||||
version "2.1.4"
|
||||
|
||||
Reference in New Issue
Block a user