From 98fa128eda0ebb8822fb2680fb7f3fd4f18aad5b Mon Sep 17 00:00:00 2001 From: zhengjie Date: Sat, 18 May 2019 12:22:50 +0800 Subject: [PATCH] =?UTF-8?q?v1.9=20=E5=8F=91=E5=B8=83=EF=BC=8C=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E6=9F=A5=E7=9C=8B=E5=8F=91=E8=A1=8C=E7=89=88=E8=AF=B4?= =?UTF-8?q?=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/api/picture.js | 8 + src/api/qiniu.js | 8 + src/api/role.js | 7 + src/components/permission/index.js | 13 ++ src/components/permission/permission.js | 22 +++ src/main.js | 2 + .../dashboard/admin/components/LineChart.vue | 4 +- .../dashboard/admin/components/PanelGroup.vue | 8 +- src/views/generator/module/generator.vue | 4 +- src/views/generator/module/header.vue | 4 +- src/views/layout/components/AppMain.vue | 2 +- src/views/layout/components/Navbar.vue | 23 ++- src/views/monitor/log/errorLog.vue | 2 +- src/views/monitor/log/module/header.vue | 2 +- src/views/monitor/redis/index.vue | 8 +- src/views/monitor/redis/module/edit.vue | 2 +- src/views/monitor/redis/module/header.vue | 8 +- src/views/system/dept/index.vue | 12 +- src/views/system/dept/module/edit.vue | 2 +- src/views/system/dept/module/header.vue | 19 +- src/views/system/dict/index.vue | 16 +- src/views/system/dict/module/edit.vue | 2 +- src/views/system/dict/module/header.vue | 2 +- src/views/system/dictDetail/index.vue | 13 +- src/views/system/dictDetail/module/edit.vue | 2 +- src/views/system/dictDetail/module/header.vue | 2 +- src/views/system/job/index.vue | 8 +- src/views/system/job/module/edit.vue | 2 +- src/views/system/job/module/header.vue | 6 +- src/views/system/menu/index.vue | 12 +- src/views/system/menu/module/edit.vue | 2 +- src/views/system/menu/module/header.vue | 19 +- src/views/system/permission/index.vue | 12 +- src/views/system/permission/module/edit.vue | 2 +- src/views/system/permission/module/header.vue | 19 +- src/views/system/role/index.vue | 175 +++++++++--------- src/views/system/role/module/edit.vue | 4 +- src/views/system/role/module/form.vue | 12 +- src/views/system/role/module/header.vue | 32 +--- src/views/system/timing/index.vue | 10 +- src/views/system/timing/module/header.vue | 6 +- src/views/system/timing/module/log.vue | 2 +- src/views/system/user/index.vue | 12 +- src/views/system/user/module/edit.vue | 3 +- src/views/system/user/module/form.vue | 13 +- src/views/system/user/module/header.vue | 11 +- src/views/tools/aliPay/module/config.vue | 4 +- src/views/tools/aliPay/module/toPay.vue | 4 +- src/views/tools/email/module/config.vue | 4 +- src/views/tools/email/module/send.vue | 2 +- src/views/tools/picture/index.vue | 13 +- src/views/tools/picture/module/header.vue | 60 +++++- src/views/tools/qiniu/module/config.vue | 2 +- src/views/tools/qiniu/module/list.vue | 13 +- .../tools/qiniu/module/module/header.vue | 49 ++++- 56 files changed, 454 insertions(+), 258 deletions(-) create mode 100644 src/components/permission/index.js create mode 100644 src/components/permission/permission.js diff --git a/package.json b/package.json index d40acfd..f23b4a5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eladmin", - "version": "1.8.0", + "version": "1.9.0", "license": "Apache-2.0", "description": "eladmin 前端代码", "author": "jie ", diff --git a/src/api/picture.js b/src/api/picture.js index 2cc5f78..e3ddd86 100644 --- a/src/api/picture.js +++ b/src/api/picture.js @@ -6,3 +6,11 @@ export function del(id) { method: 'delete' }) } + +export function delAll(ids) { + return request({ + url: 'api/pictures/', + method: 'delete', + data: ids + }) +} diff --git a/src/api/qiniu.js b/src/api/qiniu.js index 299ee97..d5b979b 100644 --- a/src/api/qiniu.js +++ b/src/api/qiniu.js @@ -35,3 +35,11 @@ export function sync() { method: 'post' }) } + +export function delAll(ids) { + return request({ + url: 'api/qiNiuContent/', + method: 'delete', + data: ids + }) +} diff --git a/src/api/role.js b/src/api/role.js index 034e84f..baf5124 100644 --- a/src/api/role.js +++ b/src/api/role.js @@ -23,6 +23,13 @@ export function get(id) { }) } +export function getLevel() { + return request({ + url: 'api/roles/level', + method: 'get' + }) +} + export function del(id) { return request({ url: 'api/roles/' + id, diff --git a/src/components/permission/index.js b/src/components/permission/index.js new file mode 100644 index 0000000..e5dadd3 --- /dev/null +++ b/src/components/permission/index.js @@ -0,0 +1,13 @@ +import permission from './permission' + +const install = function(Vue) { + Vue.directive('permission', permission) +} + +if (window.Vue) { + window['permission'] = permission + Vue.use(install); // eslint-disable-line +} + +permission.install = install +export default permission diff --git a/src/components/permission/permission.js b/src/components/permission/permission.js new file mode 100644 index 0000000..b27f24d --- /dev/null +++ b/src/components/permission/permission.js @@ -0,0 +1,22 @@ +import store from '@/store' + +export default { + inserted(el, binding, vnode) { + const { value } = binding + const roles = store.getters && store.getters.roles + + if (value && value instanceof Array && value.length > 0) { + const permissionRoles = value + + const hasPermission = roles.some(role => { + return permissionRoles.includes(role) + }) + + if (!hasPermission) { + el.parentNode && el.parentNode.removeChild(el) + } + } else { + throw new Error(`need roles! Like v-permission="['admin','editor']"`) + } + } +} diff --git a/src/main.js b/src/main.js index e373257..0440705 100644 --- a/src/main.js +++ b/src/main.js @@ -11,12 +11,14 @@ import '@/styles/index.scss' // global css import App from './App' import router from './router/routers' +import permission from './components/permission' import store from './store' import '@/icons' // icon import './router/index' // permission control Vue.use(mavonEditor) +Vue.use(permission) Vue.use(ElementUI, { locale }) Vue.config.productionTip = false require('babel-polyfill') diff --git a/src/views/dashboard/admin/components/LineChart.vue b/src/views/dashboard/admin/components/LineChart.vue index 2b4c676..1aa650f 100644 --- a/src/views/dashboard/admin/components/LineChart.vue +++ b/src/views/dashboard/admin/components/LineChart.vue @@ -106,10 +106,10 @@ export default { } }, legend: { - data: ['visits', 'ip'] + data: ['pv', 'ip'] }, series: [{ - name: 'visits', itemStyle: { + name: 'pv', itemStyle: { normal: { color: '#FF005A', lineStyle: { diff --git a/src/views/dashboard/admin/components/PanelGroup.vue b/src/views/dashboard/admin/components/PanelGroup.vue index 13a480b..75765c4 100644 --- a/src/views/dashboard/admin/components/PanelGroup.vue +++ b/src/views/dashboard/admin/components/PanelGroup.vue @@ -6,7 +6,7 @@
-
New Visits
+
Daily Pv
@@ -17,7 +17,7 @@
-
New Ip
+
Daily Ip
@@ -28,7 +28,7 @@
-
Recent Visits
+
Weekly Pv
@@ -39,7 +39,7 @@
-
Recent Ip
+
Weekly Ip
diff --git a/src/views/generator/module/generator.vue b/src/views/generator/module/generator.vue index f2ace28..c46566c 100644 --- a/src/views/generator/module/generator.vue +++ b/src/views/generator/module/generator.vue @@ -1,6 +1,6 @@ - diff --git a/src/views/system/role/module/header.vue b/src/views/system/role/module/header.vue index 4d1ef7a..d7baf43 100644 --- a/src/views/system/role/module/header.vue +++ b/src/views/system/role/module/header.vue @@ -2,11 +2,11 @@
- 搜索 + 搜索
新增
- - 导出