样式细节调整 (#726)

增加健康检查

样式细节调整

规范化插件js模式

增加k8s yaml文件 (#734)
This commit is contained in:
奇淼(piexlmax
2021-09-24 14:15:16 +08:00
committed by GitHub
parent 98a257b7e3
commit 338664452b
30 changed files with 748 additions and 369 deletions
+10 -6
View File
@@ -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>
+12 -10
View File
@@ -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
View File
@@ -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
View File
@@ -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
+183 -12
View File
@@ -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;
}
}
}
}
-180
View File
@@ -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;
}
}
}
}
+6 -6
View File
@@ -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"
+7 -7
View File
@@ -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>
+6 -6
View File
@@ -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>
+41 -12
View File
@@ -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 &copy; {{ curYear }} 💖 flipped-aurora</div>
<div class="copyright">
Copyright &copy; {{ 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>
+7 -8
View File
@@ -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">
+14 -14
View File
@@ -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>
+7 -7
View File
@@ -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"
+12 -12
View File
@@ -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>