Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
FLIPPED-AURORA
gin-vue-admin
提交
26d48129
G
gin-vue-admin
项目概览
FLIPPED-AURORA
/
gin-vue-admin
9 个月 前同步成功
通知
324
Star
18154
Fork
5505
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gin-vue-admin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
26d48129
编写于
9月 18, 2021
作者:
P
piexlmax
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
样式美化
上级
983e3433
变更
21
隐藏空白更改
内联
并排
Showing
21 changed file
with
389 addition
and
303 deletion
+389
-303
server/resource/template/web/table.vue.tpl
server/resource/template/web/table.vue.tpl
+5
-5
web/package-lock.json
web/package-lock.json
+79
-81
web/package.json
web/package.json
+1
-0
web/src/components/warningBar/warningBar.vue
web/src/components/warningBar/warningBar.vue
+43
-0
web/src/store/module/user.js
web/src/store/module/user.js
+2
-28
web/src/style/base.scss
web/src/style/base.scss
+0
-14
web/src/style/main.scss
web/src/style/main.scss
+104
-3
web/src/view/example/customer/customer.vue
web/src/view/example/customer/customer.vue
+2
-2
web/src/view/example/excel/excel.vue
web/src/view/example/excel/excel.vue
+2
-2
web/src/view/layout/setting/index.vue
web/src/view/layout/setting/index.vue
+25
-37
web/src/view/person/person.vue
web/src/view/person/person.vue
+2
-2
web/src/view/superAdmin/api/api.vue
web/src/view/superAdmin/api/api.vue
+9
-5
web/src/view/superAdmin/authority/authority.vue
web/src/view/superAdmin/authority/authority.vue
+8
-5
web/src/view/superAdmin/dictionary/sysDictionary.vue
web/src/view/superAdmin/dictionary/sysDictionary.vue
+2
-2
web/src/view/superAdmin/dictionary/sysDictionaryDetail.vue
web/src/view/superAdmin/dictionary/sysDictionaryDetail.vue
+2
-2
web/src/view/superAdmin/menu/icon.vue
web/src/view/superAdmin/menu/icon.vue
+11
-20
web/src/view/superAdmin/menu/menu.vue
web/src/view/superAdmin/menu/menu.vue
+6
-4
web/src/view/superAdmin/user/user.vue
web/src/view/superAdmin/user/user.vue
+18
-16
web/src/view/systemTools/autoCode/component/fieldDialog.vue
web/src/view/systemTools/autoCode/component/fieldDialog.vue
+65
-72
web/src/view/systemTools/autoCode/index.vue
web/src/view/systemTools/autoCode/index.vue
+1
-1
web/src/view/systemTools/system/system.vue
web/src/view/systemTools/system/system.vue
+2
-2
未找到文件。
server/resource/template/web/table.vue.tpl
浏览文件 @
26d48129
...
...
@@ -96,7 +96,7 @@
{{- end }}
{{- if eq .FieldType "int" }}
{{- if .DictType}}
<el-select
v-model=
"formData.{{ .FieldJson }}"
placeholder=
"请选择"
clearable
>
<el-select
v-model=
"formData.{{ .FieldJson }}"
placeholder=
"请选择"
style=
"width:100%"
clearable
>
<el-option
v-for=
"(item,key) in {{ .DictType }}Options"
:key=
"key"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
{{- else }}
...
...
@@ -104,18 +104,18 @@
{{- end }}
{{- end }}
{{- if eq .FieldType "time.Time" }}
<el-date-picker
v-model=
"formData.{{ .FieldJson }}"
type=
"date"
placeholder=
"选择日期"
clearable
/>
<el-date-picker
v-model=
"formData.{{ .FieldJson }}"
type=
"date"
style=
"width:100%"
placeholder=
"选择日期"
clearable
/>
{{- end }}
{{- if eq .FieldType "float64" }}
<el-input-number
v-model=
"formData.{{ .FieldJson }}"
:precision=
"2"
clearable
/>
<el-input-number
v-model=
"formData.{{ .FieldJson }}"
style=
"width:100%"
:precision=
"2"
clearable
/>
{{- end }}
</el-form-item>
{{- end }}
</el-form>
<template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</template>
</el-dialog>
...
...
web/package-lock.json
浏览文件 @
26d48129
...
...
@@ -1799,12 +1799,69 @@
"integrity"
:
"sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo="
,
"dev"
:
true
},
"ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-convert"
:
"^2.0.1"
}
},
"chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
}
},
"color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-name"
:
"~1.1.4"
}
},
"color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
,
"optional"
:
true
},
"dotenv"
:
{
"version"
:
"8.6.0"
,
"resolved"
:
"https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz"
,
"integrity"
:
"sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g=="
,
"dev"
:
true
},
"has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"optional"
:
true
},
"loader-utils"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz"
,
"integrity"
:
"sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"big.js"
:
"^5.2.2"
,
"emojis-list"
:
"^3.0.0"
,
"json5"
:
"^2.1.2"
}
},
"ssri"
:
{
"version"
:
"8.0.1"
,
"resolved"
:
"https://registry.nlark.com/ssri/download/ssri-8.0.1.tgz"
,
...
...
@@ -1813,6 +1870,28 @@
"requires"
:
{
"minipass"
:
"^3.1.1"
}
},
"supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"has-flag"
:
"^4.0.0"
}
},
"vue-loader-v16"
:
{
"version"
:
"npm:vue-loader@16.5.0"
,
"resolved"
:
"https://registry.npmjs.org/vue-loader/-/vue-loader-16.5.0.tgz"
,
"integrity"
:
"sha512-WXh+7AgFxGTgb5QAkQtFeUcHNIEq3PGVQ8WskY5ZiFbWBkOwcCPRs4w/2tVyTbh2q6TVRlO3xfvIukUtjsu62A=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"chalk"
:
"^4.1.0"
,
"hash-sum"
:
"^2.0.0"
,
"loader-utils"
:
"^2.0.0"
}
}
}
},
...
...
@@ -11631,87 +11710,6 @@
}
}
},
"vue-loader-v16"
:
{
"version"
:
"npm:vue-loader@16.5.0"
,
"resolved"
:
"https://registry.npmjs.org/vue-loader/-/vue-loader-16.5.0.tgz"
,
"integrity"
:
"sha512-WXh+7AgFxGTgb5QAkQtFeUcHNIEq3PGVQ8WskY5ZiFbWBkOwcCPRs4w/2tVyTbh2q6TVRlO3xfvIukUtjsu62A=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"chalk"
:
"^4.1.0"
,
"hash-sum"
:
"^2.0.0"
,
"loader-utils"
:
"^2.0.0"
},
"dependencies"
:
{
"ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-convert"
:
"^2.0.1"
}
},
"chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
}
},
"color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-name"
:
"~1.1.4"
}
},
"color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
,
"optional"
:
true
},
"has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"optional"
:
true
},
"loader-utils"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz"
,
"integrity"
:
"sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"big.js"
:
"^5.2.2"
,
"emojis-list"
:
"^3.0.0"
,
"json5"
:
"^2.1.2"
}
},
"supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"has-flag"
:
"^4.0.0"
}
}
}
},
"vue-particle-line"
:
{
"version"
:
"0.1.4"
,
"resolved"
:
"https://registry.npmjs.org/vue-particle-line/-/vue-particle-line-0.1.4.tgz"
,
...
...
web/package.json
浏览文件 @
26d48129
...
...
@@ -8,6 +8,7 @@
"preview"
:
"vite preview"
},
"dependencies"
:
{
"@element-plus/icons"
:
"0.0.11"
,
"axios"
:
"^0.19.2"
,
"core-js"
:
"^3.6.5"
,
"echarts"
:
"4.9.0"
,
...
...
web/src/components/warningBar/warningBar.vue
0 → 100644
浏览文件 @
26d48129
<
template
>
<div
class=
"warning-bar"
>
<el-icon>
<warning-filled
/>
</el-icon>
<span>
{{
title
}}
</span>
</div>
</
template
>
<
script
>
import
{
WarningFilled
}
from
'
@element-plus/icons
'
export
default
{
components
:
{
[
WarningFilled
.
name
]:
WarningFilled
},
props
:
{
title
:
{
type
:
String
,
default
:
''
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.warning-bar
{
background-color
:
#FFF5ED
;
font-size
:
14px
;
padding
:
6px
14px
;
display
:
flex
;
align-items
:
center
;
.el-icon
{
color
:
#ED6A0C
;
}
margin-bottom
:
22px
;
span
{
color
:
#5D5D5E
;
margin-left
:
8px
;
line-height
:
18px
;
}
}
</
style
>
web/src/store/module/user.js
浏览文件 @
26d48129
...
...
@@ -13,7 +13,7 @@ export const user = {
headerImg
:
''
,
authority
:
{},
sideMode
:
'
dark
'
,
activeColor
:
'
#
1890
ff
'
,
activeColor
:
'
#
0d84
ff
'
,
baseColor
:
'
#fff
'
},
token
:
''
,
...
...
@@ -45,15 +45,9 @@ export const user = {
...
userInfo
}
},
ChangeActiveColor
:
async
(
state
,
val
)
=>
{
state
.
userInfo
.
activeColor
=
val
},
ChangeSideMode
:
async
(
state
,
val
)
=>
{
state
.
userInfo
.
sideMode
=
val
},
ChangeBaseColor
:
(
state
,
val
)
=>
{
state
.
userInfo
.
baseColor
=
val
}
},
actions
:
{
async
GetUserInfo
({
commit
})
{
...
...
@@ -89,16 +83,6 @@ export const user = {
commit
(
'
LoginOut
'
)
}
},
async
changeActiveColor
({
commit
,
state
},
data
)
{
const
res
=
await
setUserInfo
({
activeColor
:
data
,
ID
:
state
.
userInfo
.
ID
})
if
(
res
.
code
===
0
)
{
commit
(
'
ChangeActiveColor
'
,
data
)
ElMessage
({
type
:
'
success
'
,
message
:
'
设置成功
'
})
}
},
async
changeSideMode
({
commit
,
state
},
data
)
{
const
res
=
await
setUserInfo
({
sideMode
:
data
,
ID
:
state
.
userInfo
.
ID
})
if
(
res
.
code
===
0
)
{
...
...
@@ -109,16 +93,6 @@ export const user = {
})
}
},
async
changeBaseColor
({
commit
,
state
},
data
)
{
const
res
=
await
setUserInfo
({
baseColor
:
data
,
ID
:
state
.
userInfo
.
ID
})
if
(
res
.
code
===
0
)
{
commit
(
'
ChangeBaseColor
'
,
data
)
ElMessage
({
type
:
'
success
'
,
message
:
'
设置成功
'
})
}
}
},
getters
:
{
userInfo
(
state
)
{
...
...
@@ -150,7 +124,7 @@ export const user = {
},
activeColor
(
state
)
{
if
(
state
.
userInfo
.
sideMode
===
'
dark
'
||
state
.
userInfo
.
sideMode
===
'
light
'
)
{
return
'
#
1890
ff
'
return
'
#
0d84
ff
'
}
return
state
.
userInfo
.
activeColor
}
...
...
web/src/style/base.scss
浏览文件 @
26d48129
...
...
@@ -58,17 +58,3 @@
.title-3
{
text-align
:
center
;
}
.el-pager
li
.active
{
color
:
#409EFF
!
important
;
border
:
1px
solid
#409EFF
;
}
.el-pager
li
.active
+
li
{
border-left
:
1px
!
important
;
}
.el-pager
li
:hover
{
color
:
#409EFF
!
important
;
border
:
1px
solid
#409EFF
;
}
\ No newline at end of file
web/src/style/main.scss
浏览文件 @
26d48129
...
...
@@ -776,6 +776,18 @@ li {
.el-input__suffix
{
margin-top
:
-3px
;
}
&
.is-disabled
{
.el-input__suffix
{
margin-top
:
0px
;
}
}
}
.el-cascader
{
.el-input
{
.el-input__suffix
{
margin-top
:
0px
;
}
}
}
.el-input__inner
{
border-color
:
rgba
(
$color
:
#000000
,
$alpha
:
0
.15
);
...
...
@@ -1070,13 +1082,13 @@ li {
z-index
:
1
;
top
:
6px
!
important
;
width
:
42px
;
height
:
2
6
px
;
line-height
:
2
6
px
;
height
:
2
9
px
;
line-height
:
2
9
px
;
text-align
:
center
;
background
:
#F5F7FA
;
color
:
#606266
;
cursor
:
pointer
;
font-size
:
1
3
px
;
font-size
:
1
2
px
;
}
$headerHigh
:
52px
;
...
...
@@ -1417,6 +1429,64 @@ $mainHight: 100vh;
.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
{
...
...
@@ -1429,4 +1499,35 @@ $mainHight: 100vh;
&
.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
;
}
}
}
}
\ No newline at end of file
web/src/view/example/customer/customer.vue
浏览文件 @
26d48129
...
...
@@ -59,8 +59,8 @@
</el-form>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
web/src/view/example/excel/excel.vue
浏览文件 @
26d48129
...
...
@@ -17,8 +17,8 @@
</div>
<el-table
:data=
"tableData"
row-key=
"ID"
>
<el-table-column
label=
"ID"
min-width=
"100"
prop=
"ID"
/>
<el-table-column
label=
"路由Name"
min-width=
"160"
prop=
"name"
/>
<el-table-column
label=
"路由Path"
min-width=
"160"
prop=
"path"
/>
<el-table-column
show-overflow-tooltip
label=
"路由Name"
min-width=
"160"
prop=
"name"
/>
<el-table-column
show-overflow-tooltip
label=
"路由Path"
min-width=
"160"
prop=
"path"
/>
<el-table-column
label=
"是否隐藏"
min-width=
"100"
prop=
"hidden"
>
<template
#default
="
scope
"
>
...
...
web/src/view/layout/setting/index.vue
浏览文件 @
26d48129
...
...
@@ -9,30 +9,25 @@
>
<div
class=
"setting_body"
>
<div
class=
"setting_card"
>
<div
class=
"setting_title"
>
侧边栏主题 (注:自定义请先配置背景色)
</div>
<div
class=
"setting_content"
>
<div
class=
"theme-box"
>
<div
class=
"item"
@
click=
"changeMode('light')"
>
<i
v-if=
"mode === 'light'"
class=
"el-icon-check check"
/>
<img
src=
"https://gw.alipayobjects.com/zos/antfincdn/NQ%24zoisaD2/jpRkZQMyYRryryPNtyIC.svg"
>
<div
class=
"item-top"
>
<i
v-if=
"mode === 'light'"
class=
"el-icon-check check"
/>
<img
src=
"https://gw.alipayobjects.com/zos/antfincdn/NQ%24zoisaD2/jpRkZQMyYRryryPNtyIC.svg"
>
</div>
<p>
简约白
</p>
</div>
<div
class=
"item"
@
click=
"changeMode('dark')"
>
<i
v-if=
"mode === 'dark'"
class=
"el-icon-check check"
/>
<img
src=
"https://gw.alipayobjects.com/zos/antfincdn/XwFOFbLkSM/LCkqqYNmvBEbokSDscrm.svg"
>
</div>
</div>
<div
class=
"color-box"
>
<div>
<div
class=
"setting_title"
>
自定义背景色
</div>
<el-color-picker
:value=
"sideMode"
@
change=
"changeMode"
/>
</div>
<div>
<div
class=
"setting_title"
>
自定义基础色
</div>
<el-color-picker
:value=
"baseColor"
@
change=
"changeBaseColor"
/>
</div>
<div>
<div
class=
"setting_title"
>
活跃色
</div>
<el-color-picker
:value=
"activeColor"
@
change=
"activeColorChange"
/>
<div
class=
"item-top"
>
<i
v-if=
"mode === 'dark'"
class=
"el-icon-check check"
/>
<img
src=
"https://gw.alipayobjects.com/zos/antfincdn/XwFOFbLkSM/LCkqqYNmvBEbokSDscrm.svg"
>
</div>
<p>
商务黑
</p>
</div>
</div>
</div>
...
...
@@ -53,7 +48,7 @@ export default {
}
},
computed
:
{
...
mapGetters
(
'
user
'
,
[
'
sideMode
'
,
'
baseColor
'
,
'
activeColor
'
,
'
mode
'
])
...
mapGetters
(
'
user
'
,
[
'
mode
'
])
},
methods
:
{
handleClose
()
{
...
...
@@ -69,20 +64,6 @@ export default {
}
this
.
$store
.
dispatch
(
'
user/changeSideMode
'
,
e
)
},
changeBaseColor
(
e
)
{
if
(
e
===
null
)
{
this
.
$store
.
dispatch
(
'
user/changeBaseColor
'
,
'
#fff
'
)
return
}
this
.
$store
.
dispatch
(
'
user/changeBaseColor
'
,
e
)
},
activeColorChange
(
e
)
{
if
(
e
===
null
)
{
this
.
$store
.
dispatch
(
'
user/changeActiveColor
'
,
'
#1890ff
'
)
return
}
this
.
$store
.
dispatch
(
'
user/changeActiveColor
'
,
e
)
}
}
}
</
script
>
...
...
@@ -126,17 +107,24 @@ export default {
}
}
.item
{
position
:
relative
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
flex-direction
:
column
;
margin-right
:
20px
;
.item-top
{
position
:
relative
;
}
.check
{
position
:
absolute
;
font-size
:
20px
;
color
:
#00afff
;
right
:
10px
;
bottom
:
10px
;
}
img
{
margin-right
:
20px
;
p
{
text-align
:
center
;
font-size
:
12px
;
}
}
}
...
...
web/src/view/person/person.vue
浏览文件 @
26d48129
...
...
@@ -93,8 +93,8 @@
</el-form>
<template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"showPassword=false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"savePassword"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"showPassword=false"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"savePassword"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
web/src/view/superAdmin/api/api.vue
浏览文件 @
26d48129
...
...
@@ -84,12 +84,13 @@
</div>
<el-dialog
v-model=
"dialogFormVisible"
:before-close=
"closeDialog"
:title=
"dialogTitle"
>
<el-form
ref=
"apiForm"
:inline=
"true"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<warning-bar
title=
"新增API,需要在角色管理内篇日志权限才可使用"
/>
<el-form
ref=
"apiForm"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form-item
label=
"路径"
prop=
"path"
>
<el-input
v-model=
"form.path"
autocomplete=
"off"
/>
</el-form-item>
<el-form-item
label=
"请求"
prop=
"method"
>
<el-select
v-model=
"form.method"
placeholder=
"请选择"
>
<el-select
v-model=
"form.method"
placeholder=
"请选择"
style=
"width:100%"
>
<el-option
v-for=
"item in methodOptions"
:key=
"item.value"
...
...
@@ -105,11 +106,10 @@
<el-input
v-model=
"form.description"
autocomplete=
"off"
/>
</el-form-item>
</el-form>
<div
class=
"warning"
>
新增Api需要在角色管理内配置权限才可使用
</div>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
@@ -129,6 +129,7 @@ import {
}
from
'
@/api/api
'
import
infoList
from
'
@/mixins/infoList
'
import
{
toSQLLine
}
from
'
@/utils/stringFun
'
import
warningBar
from
'
@/components/warningBar/warningBar.vue
'
const
methodOptions
=
[
{
value
:
'
POST
'
,
...
...
@@ -154,6 +155,9 @@ const methodOptions = [
export
default
{
name
:
'
Api
'
,
components
:
{
warningBar
},
mixins
:
[
infoList
],
data
()
{
return
{
...
...
web/src/view/superAdmin/authority/authority.vue
浏览文件 @
26d48129
...
...
@@ -43,13 +43,14 @@
</el-table-column>
</el-table>
</div>
<
span
style=
"color: red;font-size: 12px"
>
注:右上角头像下拉可切换角色
</span
>
<
warning-bar
title=
"注:右上角头像下拉可切换角色"
style=
"margin-top:12px;"
/
>
<!-- 新增角色弹窗 -->
<el-dialog
v-model=
"dialogFormVisible"
:title=
"dialogTitle"
>
<el-form
ref=
"authorityForm"
:model=
"form"
:rules=
"rules"
>
<el-form
ref=
"authorityForm"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form-item
label=
"父级角色"
prop=
"parentId"
>
<el-cascader
v-model=
"form.parentId"
style=
"width:100%"
:disabled=
"dialogType=='add'"
:options=
"AuthorityOption"
:props=
"{ checkStrictly: true,label:'authorityName',value:'authorityId',disabled:'disabled',emitPath:false}"
...
...
@@ -66,8 +67,8 @@
</el-form>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
@@ -102,6 +103,7 @@ import {
import
Menus
from
'
@/view/superAdmin/authority/components/menus.vue
'
import
Apis
from
'
@/view/superAdmin/authority/components/apis.vue
'
import
Datas
from
'
@/view/superAdmin/authority/components/datas.vue
'
import
warningBar
from
'
@/components/warningBar/warningBar.vue
'
import
infoList
from
'
@/mixins/infoList
'
export
default
{
...
...
@@ -109,7 +111,8 @@ export default {
components
:
{
Menus
,
Apis
,
Datas
Datas
,
warningBar
},
mixins
:
[
infoList
],
data
()
{
...
...
web/src/view/superAdmin/dictionary/sysDictionary.vue
浏览文件 @
26d48129
...
...
@@ -104,8 +104,8 @@
</el-form>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
...
...
web/src/view/superAdmin/dictionary/sysDictionaryDetail.vue
浏览文件 @
26d48129
...
...
@@ -103,8 +103,8 @@
</el-form>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
web/src/view/superAdmin/menu/icon.vue
浏览文件 @
26d48129
<
template
>
<div>
<el-form
ref=
"menuForm"
:inline=
"true"
label-width=
"85px"
label-position=
"top"
>
<el-form-item
prop=
"icon"
style=
"width:100%"
>
<i
class=
"icon"
:class=
"'el-icon-'+ metaData.icon"
style=
"position: absolute; z-index: 9999; padding: 5px 10px; "
/>
<el-select
v-model=
"metaData.icon"
clearable
filterable
class=
"gva-select"
placeholder=
"请选择"
>
<el-option
v-for=
"item in options"
:key=
"item.key"
:label=
"item.key"
:value=
"item.key"
>
<span
class=
"icon"
:class=
"item.label"
/>
<span
style=
"float: left"
>
{{
item
.
key
}}
</span>
</el-option>
</el-select>
</el-form-item>
</el-form>
<i
class=
"icon"
:class=
"'el-icon-'+ metaData.icon"
style=
"position: absolute; z-index: 9999; padding: 5px 10px; "
/>
<el-select
v-model=
"metaData.icon"
clearable
filterable
class=
"gva-select"
placeholder=
"请选择"
>
<el-option
v-for=
"item in options"
:key=
"item.key"
:label=
"item.key"
:value=
"item.key"
>
<span
class=
"icon"
:class=
"item.label"
/>
<span
style=
"float: left"
>
{{
item
.
key
}}
</span>
</el-option>
</el-select>
</div>
</
template
>
...
...
web/src/view/superAdmin/menu/menu.vue
浏览文件 @
26d48129
...
...
@@ -54,6 +54,7 @@
</el-table>
</div>
<el-dialog
v-model=
"dialogFormVisible"
:before-close=
"handleClose"
:title=
"dialogTitle"
>
<warning-bar
title=
"新增菜单,需要在角色管理内篇日志权限才可使用"
/>
<el-form
v-if=
"dialogFormVisible"
ref=
"menuForm"
...
...
@@ -128,7 +129,6 @@
</el-select>
</el-form-item>
</el-form>
<div
class=
"warning"
>
新增菜单需要在角色管理内配置权限才可使用
</div>
<div>
<el-button
size=
"small"
...
...
@@ -175,8 +175,8 @@
</div>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
@@ -195,10 +195,12 @@ import {
}
from
'
@/api/menu
'
import
infoList
from
'
@/mixins/infoList
'
import
icon
from
'
@/view/superAdmin/menu/icon.vue
'
import
warningBar
from
'
@/components/warningBar/warningBar.vue
'
export
default
{
name
:
'
Menus
'
,
components
:
{
icon
icon
,
warningBar
},
mixins
:
[
infoList
],
data
()
{
...
...
web/src/view/superAdmin/user/user.vue
浏览文件 @
26d48129
...
...
@@ -44,7 +44,7 @@
</template>
</el-table-column>
</el-table>
<
span
style=
"color: red;font-size: 12px"
>
注:右上角头像下拉可切换角色
</span
>
<
warning-bar
title=
"注:右上角头像下拉可切换角色"
style=
"margin-top:12px;"
/
>
<div
class=
"gva-pagination"
>
<el-pagination
:current-page=
"page"
...
...
@@ -58,37 +58,38 @@
</div>
</div>
<el-dialog
v-model=
"addUserDialog"
custom-class=
"user-dialog"
title=
"新增用户"
>
<el-form
ref=
"userForm"
:rules=
"rules"
:model=
"userInfo"
>
<el-form-item
label=
"用户名"
label-width=
"80px"
prop=
"username"
>
<el-form
ref=
"userForm"
:rules=
"rules"
:model=
"userInfo"
label-width=
"80px"
>
<el-form-item
label=
"用户名"
prop=
"username"
>
<el-input
v-model=
"userInfo.username"
/>
</el-form-item>
<el-form-item
label=
"密码"
label-width=
"80px"
prop=
"password"
>
<el-form-item
label=
"密码"
prop=
"password"
>
<el-input
v-model=
"userInfo.password"
/>
</el-form-item>
<el-form-item
label=
"别名"
label-width=
"80px"
prop=
"nickName"
>
<el-form-item
label=
"别名"
prop=
"nickName"
>
<el-input
v-model=
"userInfo.nickName"
/>
</el-form-item>
<el-form-item
label=
"头像"
label-width=
"80px"
>
<div
style=
"display:inline-block"
@
click=
"openHeaderChange"
>
<img
v-if=
"userInfo.headerImg"
class=
"header-img-box"
:src=
"(userInfo.headerImg && userInfo.headerImg.slice(0, 4) !== 'http')?path+userInfo.headerImg:userInfo.headerImg"
>
<div
v-else
class=
"header-img-box"
>
从媒体库选择
</div>
</div>
</el-form-item>
<el-form-item
label=
"用户角色"
label-width=
"80px"
prop=
"authorityId"
>
<el-form-item
label=
"用户角色"
prop=
"authorityId"
>
<el-cascader
v-model=
"userInfo.authorityIds"
style=
"width:100%"
:options=
"authOptions"
:show-all-levels=
"false"
:props=
"{ multiple:true,checkStrictly: true,label:'authorityName',value:'authorityId',disabled:'disabled',emitPath:false}"
filterable
:clearable=
"false"
/>
</el-form-item>
<el-form-item
label=
"头像"
label-width=
"80px"
>
<div
style=
"display:inline-block"
@
click=
"openHeaderChange"
>
<img
v-if=
"userInfo.headerImg"
class=
"header-img-box"
:src=
"(userInfo.headerImg && userInfo.headerImg.slice(0, 4) !== 'http')?path+userInfo.headerImg:userInfo.headerImg"
>
<div
v-else
class=
"header-img-box"
>
从媒体库选择
</div>
</div>
</el-form-item>
</el-form>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
@
click=
"closeAddUserDialog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"enterAddUserDialog"
>
确 定
</el-button>
<el-button
size=
"small"
@
click=
"closeAddUserDialog"
>
取 消
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"enterAddUserDialog"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
@@ -110,9 +111,10 @@ import infoList from '@/mixins/infoList'
import
{
mapGetters
}
from
'
vuex
'
import
CustomPic
from
'
@/components/customPic/index.vue
'
import
ChooseImg
from
'
@/components/chooseImg/index.vue
'
import
warningBar
from
'
@/components/warningBar/warningBar.vue
'
export
default
{
name
:
'
Api
'
,
components
:
{
CustomPic
,
ChooseImg
},
components
:
{
CustomPic
,
ChooseImg
,
warningBar
},
mixins
:
[
infoList
],
data
()
{
return
{
...
...
web/src/view/systemTools/autoCode/component/fieldDialog.vue
浏览文件 @
26d48129
<
template
>
<div>
<
span
style=
"color:red"
>
搜索时如果条件为LIKE只支持字符串
</span
>
<
warning-bar
title=
"id , created_at , updated_at , deleted_at 会自动生成请勿重复创建。搜索时如果条件为LIKE只支持字符串"
/
>
<el-form
ref=
"fieldDialogFrom"
:model=
"middleDate"
...
...
@@ -9,97 +9,88 @@
:rules=
"rules"
>
<el-form-item
label=
"Field名称"
prop=
"fieldName"
>
<el-col
:span=
"6"
>
<el-input
v-model=
"middleDate.fieldName"
autocomplete=
"off"
/>
</el-col>
<el-col
:offset=
"1"
:span=
"2"
>
<el-button
size=
"mini"
@
click=
"autoFill"
>
自动填充
</el-button>
</el-col>
<el-input
v-model=
"middleDate.fieldName"
autocomplete=
"off"
style=
"width:80%"
/>
<el-button
size=
"mini"
style=
"width:18%;margin-left:2%"
@
click=
"autoFill"
>
自动填充
</el-button>
</el-form-item>
<el-form-item
label=
"Field中文名"
prop=
"fieldDesc"
>
<el-col
:span=
"6"
>
<el-input
v-model=
"middleDate.fieldDesc"
autocomplete=
"off"
/>
</el-col>
<el-input
v-model=
"middleDate.fieldDesc"
autocomplete=
"off"
/>
</el-form-item>
<el-form-item
label=
"FieldJSON"
prop=
"fieldJson"
>
<el-col
:span=
"6"
>
<el-input
v-model=
"middleDate.fieldJson"
autocomplete=
"off"
/>
</el-col>
<el-input
v-model=
"middleDate.fieldJson"
autocomplete=
"off"
/>
</el-form-item>
<el-form-item
label=
"数据库字段名"
prop=
"columnName"
>
<el-col
:span=
"6"
>
<el-input
v-model=
"middleDate.columnName"
autocomplete=
"off"
/>
</el-col>
<el-input
v-model=
"middleDate.columnName"
autocomplete=
"off"
/>
</el-form-item>
<el-form-item
label=
"数据库字段描述"
prop=
"comment"
>
<el-col
:span=
"6"
>
<el-input
v-model=
"middleDate.comment"
autocomplete=
"off"
/>
</el-col>
<el-input
v-model=
"middleDate.comment"
autocomplete=
"off"
/>
</el-form-item>
<el-form-item
label=
"Field数据类型"
prop=
"fieldType"
>
<el-col
:span=
"8"
>
<el-select
v-model=
"middleDate.fieldType"
placeholder=
"请选择field数据类型"
clearable
@
change=
"getDbfdOptions"
>
<el-option
v-for=
"item in typeOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-col>
<el-select
v-model=
"middleDate.fieldType"
style=
"width:100%"
placeholder=
"请选择field数据类型"
clearable
@
change=
"getDbfdOptions"
>
<el-option
v-for=
"item in typeOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"数据库字段类型"
prop=
"dataType"
>
<el-col
:span=
"8"
>
<el-select
v-model=
"middleDate.dataType"
:disabled=
"!middleDate.fieldType"
placeholder=
"请选择数据库字段类型"
clearable
>
<el-option
v-for=
"item in dbfdOptions"
:key=
"item.label"
:label=
"item.label"
:value=
"item.label"
/>
</el-select>
</el-col>
<el-select
v-model=
"middleDate.dataType"
style=
"width:100%"
:disabled=
"!middleDate.fieldType"
placeholder=
"请选择数据库字段类型"
clearable
>
<el-option
v-for=
"item in dbfdOptions"
:key=
"item.label"
:label=
"item.label"
:value=
"item.label"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"数据库字段长度"
prop=
"dataTypeLong"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"middleDate.dataTypeLong"
placeholder=
"自定义类型必须指定长度"
:disabled=
"!middleDate.dataType"
/>
</el-col>
<el-input
v-model=
"middleDate.dataTypeLong"
placeholder=
"自定义类型必须指定长度"
:disabled=
"!middleDate.dataType"
/>
</el-form-item>
<el-form-item
label=
"Field查询条件"
prop=
"fieldSearchType"
>
<el-col
:span=
"8"
>
<el-select
v-model=
"middleDate.fieldSearchType"
placeholder=
"请选择Field查询条件"
clearable
>
<el-option
v-for=
"item in typeSearchOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-col>
<el-select
v-model=
"middleDate.fieldSearchType"
style=
"width:100%"
placeholder=
"请选择Field查询条件"
clearable
>
<el-option
v-for=
"item in typeSearchOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"关联字典"
prop=
"dictType"
>
<el-col
:span=
"8"
>
<el-select
v-model=
"middleDate.dictType"
:disabled=
"middleDate.fieldType!=='int'"
placeholder=
"请选择字典"
clearable
>
<el-option
v-for=
"item in dictOptions"
:key=
"item.type"
:label=
"`$
{item.type}(${item.name})`"
:value="item.type"
/>
</el-select>
</el-col>
<el-select
v-model=
"middleDate.dictType"
style=
"width:100%"
:disabled=
"middleDate.fieldType!=='int'"
placeholder=
"请选择字典"
clearable
>
<el-option
v-for=
"item in dictOptions"
:key=
"item.type"
:label=
"`$
{item.type}(${item.name})`"
:value="item.type"
/>
</el-select>
</el-form-item>
</el-form>
</div>
...
...
@@ -109,9 +100,11 @@
import
{
getDict
}
from
'
@/utils/dictionary
'
import
{
toLowerCase
,
toSQLLine
}
from
'
@/utils/stringFun
'
import
{
getSysDictionaryList
}
from
'
@/api/sysDictionary
'
import
warningBar
from
'
@/components/warningBar/warningBar.vue
'
export
default
{
name
:
'
FieldDialog
'
,
components
:
{
warningBar
},
props
:
{
dialogMiddle
:
{
type
:
Object
,
...
...
web/src/view/systemTools/autoCode/index.vue
浏览文件 @
26d48129
...
...
@@ -149,7 +149,7 @@
<PreviewCodeDialog
v-if=
"previewFlag"
:preview-code=
"preViewCode"
/>
<
template
#footer
>
<div
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"previewFlag = false"
>
确 定
</el-button>
<el-button
size=
"small"
type=
"primary"
@
click=
"previewFlag = false"
>
确 定
</el-button>
</div>
</
template
>
</el-dialog>
...
...
web/src/view/systemTools/system/system.vue
浏览文件 @
26d48129
...
...
@@ -10,7 +10,7 @@
<el-input
v-model.number=
"config.system.addr"
/>
</el-form-item>
<el-form-item
label=
"数据库类型"
>
<el-select
v-model=
"config.system.dbType"
>
<el-select
v-model=
"config.system.dbType"
style=
"width:100%"
>
<el-option
value=
"mysql"
/>
<el-option
value=
"sqlite"
/>
<el-option
value=
"sqlserver"
/>
...
...
@@ -18,7 +18,7 @@
</el-select>
</el-form-item>
<el-form-item
label=
"Oss类型"
>
<el-select
v-model=
"config.system.ossType"
>
<el-select
v-model=
"config.system.ossType"
style=
"width:100%"
>
<el-option
value=
"local"
/>
<el-option
value=
"qiniu"
/>
<el-option
value=
"tencent-cos"
/>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录