diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/api/area.js b/src/api/area.js
deleted file mode 100644
index 1207d91..0000000
--- a/src/api/area.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * 区域接口
- */
-import request from '@/utils/request'
-// 区域查询
-export function getAreaList(params) {
- return request({
- url: 'area/listPage',
- method: 'get',
- params
- })
-}
-// 区域查询,非分页,加载树用
-export function getAreaTree(params) {
- return request({
- url: 'area/list',
- method: 'get',
- params
- })
-}
-// 区域类型查询
-export function getAreaType() {
- return request({
- url: 'dict/code/levelType',
- method: 'get'
- })
-}
-
-// 添加区域
-export function addArea(params) {
- return request({
- url: 'area/add',
- method: 'post',
- params
- })
-}
-// 修改区域机构
-export function updateArea(params) {
- return request({
- url: 'area/update',
- method: 'post',
- params
- })
-}
-// 删除区域机构
-export function delArea(id) {
- return request({
- url: 'area/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dept.js b/src/api/dept.js
deleted file mode 100644
index ae3dd22..0000000
--- a/src/api/dept.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 组织机构接口
- */
-import request from '@/utils/request'
-// 组织查询
-export function getDeptList(params) {
- return request({
- url: 'dept/list',
- method: 'get',
- params
- })
-}
-// 组织机构树列表
-export function getDeptTreeList(params) {
- return request({
- url: 'dept/tree',
- method: 'get',
- params
- })
-}
-
-// 组织机构树列表
-export function getDeptTreeListByPid(pid) {
- return request({
- url: 'dept/listByPid',
- method: 'get',
- data: {
- pid: pid
- }
- })
-}
-// 根据角色获取组织机构树列表
-export function getDeptTreeByRole(roleId) {
- return request({
- url: 'role/treeByRoleId',
- method: 'get',
- params: {
- roleId
- }
- })
-}
-
-// 添加组织机构
-export function addDept(params) {
- return request({
- url: 'dept/add',
- method: 'post',
- params
- })
-}
-// 修改组织机构
-export function updateDept(params) {
- return request({
- url: 'dept/update',
- method: 'post',
- params
- })
-}
-// 删除组织机构
-export function delDept(id) {
- return request({
- url: 'dept/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/dict.js b/src/api/dict.js
deleted file mode 100644
index 3415b6d..0000000
--- a/src/api/dict.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 字典接口
- */
-import request from '@/utils/request'
-// 字典查询
-export function getDictList(params) {
- return request({
- url: 'dict/listPage',
- method: 'get',
- params
- })
-}
-
-// 添加字典
-export function addDict(params) {
- return request({
- url: 'dict/add',
- method: 'post',
- params
- })
-}
-// 修改字典机构
-export function updateDict(params) {
- return request({
- url: 'dict/update',
- method: 'post',
- params
- })
-}
-// 删除字典机构
-export function delDict(id) {
- return request({
- url: 'dict/delete',
- method: 'post',
- params: {
- dictId: id
- }
- })
-}
diff --git a/src/api/log.js b/src/api/log.js
deleted file mode 100644
index 1dbb3a3..0000000
--- a/src/api/log.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * 日志管理接口
- */
-import request from '@/utils/request'
-// 日志查询
-export function getLogList(params) {
- return request({
- url: 'log/list',
- method: 'post',
- params
- })
-}
-// 日志查询
-export function getLogDetail(id) {
- return request({
- url: 'log/detail/' + id,
- method: 'get'
- })
-}
-// 日志类型查询
-export function getLogType() {
- return request({
- url: 'dict/code/logType',
- method: 'get'
- })
-}
-
-// 删除日志
-export function delLog() {
- return request({
- url: 'log/delLog',
- method: 'post'
- })
-}
-
-// 登录日志查询
-export function getLoginLogList(params) {
- return request({
- url: 'loginLog/list',
- method: 'get',
- params
- })
-}
-// 删除日志
-export function delLoginLog() {
- return request({
- url: 'loginLog/delLoginLog',
- method: 'post'
- })
-}
diff --git a/src/api/resource.js b/src/api/resource.js
deleted file mode 100644
index bd57641..0000000
--- a/src/api/resource.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * 资源管理接口
- */
-import request from '@/utils/request'
-// 资源查询
-export function getResourceList(params) {
- return request({
- url: 'resource/list',
- method: 'get',
- params
- })
-}
-// 资源查询
-export function getResourceListByRole(roleId) {
- return request({
- url: 'resource/treeListByRoleId',
- method: 'get',
- params: {
- roleId: roleId
- }
- })
-}
-// 资源树列表
-export function getResourceTreeList() {
- return request({
- url: 'resource/tree',
- method: 'get'
- })
-}
-
-// 资源类型列表
-export function getResourceTypeList() {
- return request({
- url: 'dict/code/resourceType',
- method: 'get'
- })
-}
-
-// 添加资源
-export function addResource(params) {
- return request({
- url: 'resource/add',
- method: 'post',
- params
- })
-}
-// 修改资源
-export function updateResource(params) {
- return request({
- url: 'resource/update',
- method: 'post',
- params
- })
-}
-// 删除资源
-export function delResource(id) {
- return request({
- url: 'resource/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
diff --git a/src/api/role.js b/src/api/role.js
deleted file mode 100644
index 573f948..0000000
--- a/src/api/role.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import qs from 'qs'
-/**
- * 角色管理接口
- */
-import request from '@/utils/request'
-// 角色查询
-export function getRoleList(params) {
- return request({
- url: 'role/list',
- method: 'get',
- params
- })
-}
-// 角色机构树列表
-export function getRoleTreeList() {
- return request({
- url: 'role/tree',
- method: 'get'
- })
-}
-// 根据用户获取角色机构树列表
-export function getRoleTreeListByUser(userId) {
- return request({
- url: 'role/treeByUserId',
- method: 'get',
- params: {
- userId: userId
- }
- })
-}
-
-// 添加角色机构
-export function addRole(params) {
- return request({
- url: 'role/add',
- method: 'post',
- params
- })
-}
-// 修改角色机构
-export function updateRole(params) {
- return request({
- url: 'role/update',
- method: 'post',
- params
- })
-}
-// 删除角色机构
-export function delRole(id) {
- return request({
- url: 'role/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 功能授权, 改为body
-export function funcAuthor(roleId, ids) {
- return request({
- url: 'role/funcAuthorJson',
- method: 'post',
- data: {
- roleId: roleId,
- ids: ids
- }
- })
-}
-// 数据授权
-export function dataAuthor(roleId, ids) {
- return request({
- url: 'role/dataAuthor',
- method: 'post',
- params: {
- roleId: roleId,
- ids: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
diff --git a/src/api/system/area.js b/src/api/system/area.js
new file mode 100644
index 0000000..ee118ec
--- /dev/null
+++ b/src/api/system/area.js
@@ -0,0 +1,76 @@
+/**
+ * 区域管理接口
+ */
+import request from '@/utils/request'
+// 区域查询
+export function getAreaListPage(params) {
+ return request({
+ url: 'area/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 根据部门找其默认区域
+export function getAreaByDept(deptid) {
+ return request({
+ url: 'config/getAreaByDept',
+ method: 'get',
+ params: {
+ deptId: deptid
+ }
+ })
+}
+// 区域查询
+export function getAreaList(pid) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params: {
+ pid: pid
+ }
+ })
+}
+
+// 区域查询,非分页,加载树用
+export function getAreaTree(params) {
+ return request({
+ url: 'area/list',
+ method: 'get',
+ params
+ })
+}
+// 区域类型查询
+export function getAreaType() {
+ return request({
+ url: 'dict/code/levelType',
+ method: 'get'
+ })
+}
+
+// 添加区域
+export function addArea(params) {
+ return request({
+ url: 'area/add',
+ method: 'post',
+ params
+ })
+}
+// 修改区域机构
+export function updateArea(params) {
+ return request({
+ url: 'area/update',
+ method: 'post',
+ params
+ })
+}
+// 删除区域机构
+export function delArea(id) {
+ return request({
+ url: 'area/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..ae3dd22
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,68 @@
+/**
+ * 组织机构接口
+ */
+import request from '@/utils/request'
+// 组织查询
+export function getDeptList(params) {
+ return request({
+ url: 'dept/list',
+ method: 'get',
+ params
+ })
+}
+// 组织机构树列表
+export function getDeptTreeList(params) {
+ return request({
+ url: 'dept/tree',
+ method: 'get',
+ params
+ })
+}
+
+// 组织机构树列表
+export function getDeptTreeListByPid(pid) {
+ return request({
+ url: 'dept/listByPid',
+ method: 'get',
+ data: {
+ pid: pid
+ }
+ })
+}
+// 根据角色获取组织机构树列表
+export function getDeptTreeByRole(roleId) {
+ return request({
+ url: 'role/treeByRoleId',
+ method: 'get',
+ params: {
+ roleId
+ }
+ })
+}
+
+// 添加组织机构
+export function addDept(params) {
+ return request({
+ url: 'dept/add',
+ method: 'post',
+ params
+ })
+}
+// 修改组织机构
+export function updateDept(params) {
+ return request({
+ url: 'dept/update',
+ method: 'post',
+ params
+ })
+}
+// 删除组织机构
+export function delDept(id) {
+ return request({
+ url: 'dept/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/dict.js b/src/api/system/dict.js
new file mode 100644
index 0000000..3415b6d
--- /dev/null
+++ b/src/api/system/dict.js
@@ -0,0 +1,39 @@
+/**
+ * 字典接口
+ */
+import request from '@/utils/request'
+// 字典查询
+export function getDictList(params) {
+ return request({
+ url: 'dict/listPage',
+ method: 'get',
+ params
+ })
+}
+
+// 添加字典
+export function addDict(params) {
+ return request({
+ url: 'dict/add',
+ method: 'post',
+ params
+ })
+}
+// 修改字典机构
+export function updateDict(params) {
+ return request({
+ url: 'dict/update',
+ method: 'post',
+ params
+ })
+}
+// 删除字典机构
+export function delDict(id) {
+ return request({
+ url: 'dict/delete',
+ method: 'post',
+ params: {
+ dictId: id
+ }
+ })
+}
diff --git a/src/api/system/log.js b/src/api/system/log.js
new file mode 100644
index 0000000..1dbb3a3
--- /dev/null
+++ b/src/api/system/log.js
@@ -0,0 +1,50 @@
+/**
+ * 日志管理接口
+ */
+import request from '@/utils/request'
+// 日志查询
+export function getLogList(params) {
+ return request({
+ url: 'log/list',
+ method: 'post',
+ params
+ })
+}
+// 日志查询
+export function getLogDetail(id) {
+ return request({
+ url: 'log/detail/' + id,
+ method: 'get'
+ })
+}
+// 日志类型查询
+export function getLogType() {
+ return request({
+ url: 'dict/code/logType',
+ method: 'get'
+ })
+}
+
+// 删除日志
+export function delLog() {
+ return request({
+ url: 'log/delLog',
+ method: 'post'
+ })
+}
+
+// 登录日志查询
+export function getLoginLogList(params) {
+ return request({
+ url: 'loginLog/list',
+ method: 'get',
+ params
+ })
+}
+// 删除日志
+export function delLoginLog() {
+ return request({
+ url: 'loginLog/delLoginLog',
+ method: 'post'
+ })
+}
diff --git a/src/api/system/resource.js b/src/api/system/resource.js
new file mode 100644
index 0000000..bd57641
--- /dev/null
+++ b/src/api/system/resource.js
@@ -0,0 +1,64 @@
+/**
+ * 资源管理接口
+ */
+import request from '@/utils/request'
+// 资源查询
+export function getResourceList(params) {
+ return request({
+ url: 'resource/list',
+ method: 'get',
+ params
+ })
+}
+// 资源查询
+export function getResourceListByRole(roleId) {
+ return request({
+ url: 'resource/treeListByRoleId',
+ method: 'get',
+ params: {
+ roleId: roleId
+ }
+ })
+}
+// 资源树列表
+export function getResourceTreeList() {
+ return request({
+ url: 'resource/tree',
+ method: 'get'
+ })
+}
+
+// 资源类型列表
+export function getResourceTypeList() {
+ return request({
+ url: 'dict/code/resourceType',
+ method: 'get'
+ })
+}
+
+// 添加资源
+export function addResource(params) {
+ return request({
+ url: 'resource/add',
+ method: 'post',
+ params
+ })
+}
+// 修改资源
+export function updateResource(params) {
+ return request({
+ url: 'resource/update',
+ method: 'post',
+ params
+ })
+}
+// 删除资源
+export function delResource(id) {
+ return request({
+ url: 'resource/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..99ff16e
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,91 @@
+import qs from 'qs'
+/**
+ * 角色管理接口
+ */
+import request from '@/utils/request'
+// 角色查询
+export function getRoleList(params) {
+ return request({
+ url: 'role/list',
+ method: 'get',
+ params
+ })
+}
+// 角色机构树列表
+export function getRoleTreeList() {
+ return request({
+ url: 'role/tree',
+ method: 'get'
+ })
+}
+// 根据用户获取角色机构树列表
+export function getRoleTreeListByUser(userId) {
+ return request({
+ url: 'role/treeByUserId',
+ method: 'get',
+ params: {
+ userId: userId
+ }
+ })
+}
+
+// 添加角色机构
+export function addRole(params) {
+ return request({
+ url: 'role/add',
+ method: 'post',
+ params
+ })
+}
+// 修改角色机构
+export function updateRole(params) {
+ return request({
+ url: 'role/update',
+ method: 'post',
+ params
+ })
+}
+// 删除角色机构
+export function delRole(id) {
+ return request({
+ url: 'role/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 功能授权, 改为body
+export function funcAuthor(roleId, ids) {
+ return request({
+ url: 'role/funcAuthorJson',
+ method: 'post',
+ data: {
+ roleId: roleId,
+ ids: ids
+ }
+ })
+}
+// 数据授权
+export function dataAuthor(roleId, ids) {
+ return request({
+ url: 'role/dataAuthor',
+ method: 'post',
+ params: {
+ roleId: roleId,
+ ids: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
+
+// 角色类型列表
+export function getDataScopeTypeList() {
+ return request({
+ url: 'dict/code/dataScopeType',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..02a38d0
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,95 @@
+/**
+ * 用户管理接口
+ */
+import request from '@/utils/request'
+import qs from 'qs'
+
+// 用户查询
+export function getUserList(params) {
+ return request({
+ url: 'mgr/list',
+ method: 'post',
+ params
+ })
+}
+
+// 添加用户
+export function addUser(params) {
+ return request({
+ url: 'mgr/add',
+ method: 'post',
+ params
+ })
+}
+// 修改用户
+export function updateUser(params) {
+ return request({
+ url: 'mgr/update',
+ method: 'post',
+ params
+ })
+}
+// 删除用户
+export function delUser(id) {
+ return request({
+ url: 'mgr/delete',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 冻结用户
+export function freezeUser(id) {
+ return request({
+ url: 'mgr/freeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+// 冻结用户
+export function unfreezeUser(id) {
+ return request({
+ url: 'mgr/unfreeze',
+ method: 'post',
+ params: {
+ id: id
+ }
+ })
+}
+
+// 重置用户密码
+export function resetPwd(params) {
+ return request({
+ url: 'mgr/reset',
+ method: 'post',
+ params
+ })
+}
+
+// 修改密码
+export function changePwd(params) {
+ return request({
+ url: 'mgr/changePwd',
+ method: 'post',
+ params
+ })
+}
+
+// 分配角色
+export function roleAssign(userId, ids) {
+ return request({
+ url: 'mgr/roleAssign',
+ method: 'post',
+ params: {
+ userId: userId,
+ roleIds: ids
+ },
+ paramsSerializer: params => {
+ return qs.stringify(params, { indices: false })
+ }
+ })
+}
diff --git a/src/api/user.js b/src/api/user.js
deleted file mode 100644
index 3b67ef5..0000000
--- a/src/api/user.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * 用户管理接口
- */
-import request from '@/utils/request'
-import qs from 'qs'
-
-// 用户查询
-export function getUserList(params) {
- return request({
- url: 'mgr/list',
- method: 'post',
- params
- })
-}
-
-// 添加用户
-export function addUser(params) {
- return request({
- url: 'mgr/add',
- method: 'post',
- params
- })
-}
-// 修改用户
-export function updateUser(params) {
- return request({
- url: 'mgr/update',
- method: 'post',
- params
- })
-}
-// 删除用户
-export function delUser(id) {
- return request({
- url: 'mgr/delete',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 冻结用户
-export function freezeUser(id) {
- return request({
- url: 'mgr/freeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-// 冻结用户
-export function unfreezeUser(id) {
- return request({
- url: 'mgr/unfreeze',
- method: 'post',
- params: {
- id: id
- }
- })
-}
-
-// 重置用户密码
-export function resetPwd(params) {
- return request({
- url: 'mgr/reset',
- method: 'post',
- params
- })
-}
-
-// 修改密码
-export function changePwd(params) {
- return request({
- url: 'mgr/changePwd',
- method: 'post',
- params
- })
-}
-
-// 分配角色
-export function roleAssign(userId, ids) {
- return request({
- url: 'mgr/roleAssign',
- method: 'post',
- params: {
- userId: userId,
- roleIds: ids
- },
- paramsSerializer: params => {
- return qs.stringify(params, { indices: false })
- }
- })
-}
-
-// 在线用户查询
-export function getUserOnLine(params) {
- return request({
- url: '/userDevice/userDeviceOnLine',
- method: 'get',
- params
- })
-}
diff --git a/src/components/DeptSelect/index.vue b/src/components/DeptSelect/index.vue
index 7907f3c..6147dd7 100644
--- a/src/components/DeptSelect/index.vue
+++ b/src/components/DeptSelect/index.vue
@@ -14,7 +14,7 @@
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/views/system/role/listRole.vue b/src/views/system/role/listRole.vue
index 2ce6456..c567717 100644
--- a/src/views/system/role/listRole.vue
+++ b/src/views/system/role/listRole.vue
@@ -1,27 +1,27 @@
-
+
-
-
-
-
-
- 搜索
- 新增
-
-
+
+
+
+
+
+ 新增
+
+
-
-
-
- 修改
- 删除
- 功能权限
- 数据权限
-
-
-
-
+
+
+
+
+ 修改
+ 删除
+ 功能权限
+ 数据权限
+
+
+
+
@@ -29,7 +29,7 @@
-
+
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/views/system/role/listRole.vue b/src/views/system/role/listRole.vue
index 2ce6456..c567717 100644
--- a/src/views/system/role/listRole.vue
+++ b/src/views/system/role/listRole.vue
@@ -1,27 +1,27 @@
-
+
-
-
-
-
-
- 搜索
- 新增
-
-
+
+
+
+
+
+ 新增
+
+
-
-
-
- 修改
- 删除
- 功能权限
- 数据权限
-
-
-
-
+
+
+
+
+ 修改
+ 删除
+ 功能权限
+ 数据权限
+
+
+
+
@@ -29,7 +29,7 @@
-
+
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/views/system/role/listRole.vue b/src/views/system/role/listRole.vue
index 2ce6456..c567717 100644
--- a/src/views/system/role/listRole.vue
+++ b/src/views/system/role/listRole.vue
@@ -1,27 +1,27 @@
-
+
-
-
-
-
-
- 搜索
- 新增
-
-
+
+
+
+
+
+ 新增
+
+
-
-
-
- 修改
- 删除
- 功能权限
- 数据权限
-
-
-
-
+
+
+
+
+ 修改
+ 删除
+ 功能权限
+ 数据权限
+
+
+
+
@@ -29,7 +29,7 @@
-
+
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/views/system/role/listRole.vue b/src/views/system/role/listRole.vue
index 2ce6456..c567717 100644
--- a/src/views/system/role/listRole.vue
+++ b/src/views/system/role/listRole.vue
@@ -1,27 +1,27 @@
-
+
-
-
-
-
-
- 搜索
- 新增
-
-
+
+
+
+
+
+ 新增
+
+
-
-
-
- 修改
- 删除
- 功能权限
- 数据权限
-
-
-
-
+
+
+
+
+ 修改
+ 删除
+ 功能权限
+ 数据权限
+
+
+
+
@@ -29,7 +29,7 @@
-
+
+
+
+
diff --git a/src/components/RightPanel/index.vue b/src/components/RightPanel/index.vue
new file mode 100644
index 0000000..e911521
--- /dev/null
+++ b/src/components/RightPanel/index.vue
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchArea.vue b/src/components/SearchArea/SearchArea.vue
new file mode 100644
index 0000000..1175911
--- /dev/null
+++ b/src/components/SearchArea/SearchArea.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
搜索
+
高级检索
+
重置
+
+
+
+ 搜索
+ 高级检索
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/SearchArea/SearchItem.vue b/src/components/SearchArea/SearchItem.vue
new file mode 100644
index 0000000..84e0096
--- /dev/null
+++ b/src/components/SearchArea/SearchItem.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/layout/AppContainer.vue b/src/components/layout/AppContainer.vue
new file mode 100644
index 0000000..b3243ce
--- /dev/null
+++ b/src/components/layout/AppContainer.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/Layout.vue b/src/layout/Layout.vue
new file mode 100644
index 0000000..38c6f74
--- /dev/null
+++ b/src/layout/Layout.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppHeader.vue b/src/layout/components/AppHeader.vue
new file mode 100644
index 0000000..dbc4dbd
--- /dev/null
+++ b/src/layout/components/AppHeader.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
new file mode 100644
index 0000000..2ea268e
--- /dev/null
+++ b/src/layout/components/AppMain.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
new file mode 100644
index 0000000..24ea99b
--- /dev/null
+++ b/src/layout/components/Navbar.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
new file mode 100644
index 0000000..cf3023d
--- /dev/null
+++ b/src/layout/components/Settings/index.vue
@@ -0,0 +1,109 @@
+
+
+
+
Page style setting
+
+
+ Theme Color
+
+
+
+
+ Open Tags-View
+
+
+
+
+ Fixed Header
+
+
+
+
+ Sidebar Logo
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
new file mode 100644
index 0000000..4ed6b5f
--- /dev/null
+++ b/src/layout/components/Sidebar/Item.vue
@@ -0,0 +1,31 @@
+
diff --git a/src/layout/components/Sidebar/Link.vue b/src/layout/components/Sidebar/Link.vue
new file mode 100644
index 0000000..bff45cd
--- /dev/null
+++ b/src/layout/components/Sidebar/Link.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
new file mode 100644
index 0000000..988d662
--- /dev/null
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -0,0 +1,107 @@
+
+
+
+
+
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
new file mode 100644
index 0000000..2cf371d
--- /dev/null
+++ b/src/layout/components/Sidebar/index.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue
new file mode 100644
index 0000000..0ec76e7
--- /dev/null
+++ b/src/layout/components/TagsView/ScrollPane.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
new file mode 100644
index 0000000..1091fc0
--- /dev/null
+++ b/src/layout/components/TagsView/index.vue
@@ -0,0 +1,287 @@
+
+
+
+
+ {{ tag.title }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layout/components/index.js b/src/layout/components/index.js
new file mode 100644
index 0000000..52d35e3
--- /dev/null
+++ b/src/layout/components/index.js
@@ -0,0 +1,4 @@
+export { default as Navbar } from './Navbar'
+export { default as Sidebar } from './Sidebar'
+export { default as AppMain } from './AppMain'
+export { default as AppHeader } from './AppHeader'
diff --git a/src/layout/mixin/ResizeHandler.js b/src/layout/mixin/ResizeHandler.js
new file mode 100644
index 0000000..604fe3d
--- /dev/null
+++ b/src/layout/mixin/ResizeHandler.js
@@ -0,0 +1,40 @@
+import store from '@/store'
+
+const { body } = document
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+export default {
+ watch: {
+ $route(route) {
+ if (this.device === 'mobile' && this.sidebar.opened) {
+ store.dispatch('CloseSideBar', { withoutAnimation: false })
+ }
+ }
+ },
+ beforeMount() {
+ window.addEventListener('resize', this.resizeHandler)
+ },
+ mounted() {
+ const isMobile = this.isMobile()
+ if (isMobile) {
+ store.dispatch('ToggleDevice', 'mobile')
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ },
+ methods: {
+ isMobile() {
+ const rect = body.getBoundingClientRect()
+ return rect.width - 1 < WIDTH
+ },
+ resizeHandler() {
+ if (!document.hidden) {
+ const isMobile = this.isMobile()
+ store.dispatch('ToggleDevice', isMobile ? 'mobile' : 'desktop')
+
+ if (isMobile) {
+ store.dispatch('CloseSideBar', { withoutAnimation: true })
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.js b/src/main.js
index 043a276..01e8427 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,6 +56,15 @@
import VCharts from 'v-charts'
Vue.use(VCharts)
+// 注册全局自定义布局组件
+import NormalTable from '@/components/NomalTable/index'
+import SearchArea from '@/components/SearchArea/SearchArea'
+import AppContainer from '@/components/layout/AppContainer'
+
+Vue.use(AppContainer)
+Vue.use(NormalTable)
+Vue.use(SearchArea)
+
// 先加载配置文件后,new Vue
/* eslint-disable no-new */
import axios from 'axios'
diff --git a/src/router/index.js b/src/router/index.js
index 646647f..52dc869 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -7,7 +7,7 @@
Vue.use(Router)
/* Layout */
-import Layout from '../views/layout/Layout'
+import Layout from '../layout/Layout'
import { systemRouters } from './modules/system'
import { cooRouters } from './modules/coo'
import { commenetRouters } from './modules/comment'
diff --git a/src/router/modules/base.js b/src/router/modules/base.js
index 5812db4..c28e4b1 100644
--- a/src/router/modules/base.js
+++ b/src/router/modules/base.js
@@ -1,5 +1,5 @@
-import SupLayout from '../../views/layout/SupLayout'
+import Layout from '../../layout/Layout'
export const baseRouters = [
{
path: '/base',
@@ -14,7 +14,7 @@
},
{
path: '/baseSource',
- component: SupLayout,
+ component: Layout,
redirect: '/baseSourceMain',
name: 'BaseSource',
alwaysShow: true,
diff --git a/src/router/modules/comment.js b/src/router/modules/comment.js
index 31eb0df..4a6531b 100644
--- a/src/router/modules/comment.js
+++ b/src/router/modules/comment.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commenetRouters = [
{
path: '/comment',
diff --git a/src/router/modules/common.js b/src/router/modules/common.js
index 3e252fd..96fcc6d 100644
--- a/src/router/modules/common.js
+++ b/src/router/modules/common.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const commonRouters = [
{
path: '/common',
diff --git a/src/router/modules/coo.js b/src/router/modules/coo.js
index 14aa37e..5bd2ded 100644
--- a/src/router/modules/coo.js
+++ b/src/router/modules/coo.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const cooRouters = [
{
path: '/cooperate',
diff --git a/src/router/modules/suphandle.js b/src/router/modules/suphandle.js
index c9727c8..6d0f9c8 100644
--- a/src/router/modules/suphandle.js
+++ b/src/router/modules/suphandle.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const suphandleRouters = [
{
path: '/suphandle',
diff --git a/src/router/modules/system.js b/src/router/modules/system.js
index c80b732..2f77b38 100644
--- a/src/router/modules/system.js
+++ b/src/router/modules/system.js
@@ -1,5 +1,5 @@
/* Layout */
-import Layout from '../../views/layout/Layout'
+import Layout from '../../layout/Layout'
export const systemRouters = [
{
path: '/sys',
diff --git a/src/settings.js b/src/settings.js
new file mode 100644
index 0000000..b568ce0
--- /dev/null
+++ b/src/settings.js
@@ -0,0 +1,33 @@
+module.exports = {
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示设置按钮
+ */
+ showSettings: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否显示tagsView
+ */
+ tagsView: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否固定面包屑和tagsViews头
+ */
+ fixedHeader: true,
+
+ /**
+ * @type {boolean} true | false
+ * @description 是否要显示侧边栏logo
+ */
+ sidebarLogo: false,
+
+ /**
+ * @type {string | array} 'production' | ['production', 'development']
+ * @description Need show err logs component.
+ * The default is only used in the production env
+ * If you want to also use it in dev, you can pass ['production', 'development']
+ */
+ errorLog: 'production'
+}
diff --git a/src/store/index.js b/src/store/index.js
index c7e23ff..7747f6a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -4,6 +4,7 @@
import user from './modules/user'
import permission from './modules/permission'
import tagsView from './modules/tagsView'
+import settings from './modules/settings'
import getters from './getters'
Vue.use(Vuex)
@@ -13,7 +14,8 @@
app,
user,
permission,
- tagsView
+ tagsView,
+ settings
},
getters
})
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
new file mode 100644
index 0000000..bd06105
--- /dev/null
+++ b/src/store/modules/settings.js
@@ -0,0 +1,33 @@
+import variables from '@/styles/element-variables.scss'
+import defaultSettings from '@/settings'
+
+const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings
+const state = {
+ theme: variables.theme, // 主题
+ showSettings: showSettings, // 是否显示设置按钮
+ tagsView: tagsView, // 是否显示tagsView
+ fixedHeader: fixedHeader, // 是否固定面包屑
+ sidebarLogo: sidebarLogo // 是否显示logo
+}
+
+const mutations = {
+ CHANGE_SETTING: (state, { key, value }) => {
+ if (state.hasOwnProperty(key)) {
+ state[key] = value
+ }
+ }
+}
+
+const actions = {
+ changeSetting({ commit }, data) {
+ commit('CHANGE_SETTING', data)
+ }
+}
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
+
diff --git a/src/styles/element-variables.scss b/src/styles/element-variables.scss
new file mode 100644
index 0000000..f11a88b
--- /dev/null
+++ b/src/styles/element-variables.scss
@@ -0,0 +1,31 @@
+/**
+* I think element-ui's default theme color is too light for long-term use.
+* So I modified the default color and you can modify it to your liking.
+**/
+
+/* theme color */
+$--color-primary: #278df9;
+$--color-success: #13ce66;
+$--color-warning: #FFBA00;
+$--color-danger: #ff4949;
+// $--color-info: #1E1E1E;
+
+//$--button-font-weight: 400;
+
+// $--color-text-regular: #1f2d3d;
+//
+//$--border-color-light: #dfe4ed;
+//$--border-color-lighter: #e6ebf5;
+//
+//$--table-border:1px solid#dfe6ec;
+//
+///* icon font path, required */
+//$--font-path: '~element-ui/lib/theme-chalk/fonts';
+//
+//@import "~element-ui/packages/theme-chalk/src/index";
+
+// the :export directive is the magic sauce for webpack
+// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
+:export {
+ theme: $--color-primary;
+}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 96a98ed..781865d 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -2,6 +2,7 @@
@import './mixin.scss';
@import './transition.scss';
@import './element-ui.scss';
+@import './element-variables';
@import './sidebar.scss';
body {
@@ -57,6 +58,11 @@
text-decoration: none;
}
+// 去掉IE 的密码眼睛
+input::-ms-reveal {
+ display: none;
+}
+
.clearfix {
&:after {
visibility: hidden;
@@ -71,23 +77,84 @@
//main-container全局样式
.app-container {
- padding: 20px;
+ height:100%;
+ min-height: calc(100vh - 158px);
+ //border:10px solid #ebebeb;
}
+
.app-header{
- background-color:$themeColor;
+ height:$headerHeight !important;
+ background-color:$headerColor;
width: 100%;
position:fixed;
+ //box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
+ color:$headerText;
+ .dropdown-container{
+ height: $headerHeight;
+ .dropdown-wrapper{
+ color:$dropDownText;
+ }
+ }
}
+.navbar,.navbar .hamburger-container, .el-breadcrumb, .app-breadcrumb .el-breadcrumb {
+ height:$breadcrumbHeight !important;
+ line-height: $breadcrumbHeight !important;
+}
+
+.tags-view-container {
+ .tags-view-wrapper {
+ .tags-view-item{
+ &.active {
+ background-color: $tagsViewActiveBg !important;
+ color: #fff !important;
+ border-color: $tagsViewActiveBg !important;
+ }
+ }
+ }
+}
+.no-head-scrollbar, has-head-scrollbar{
+ .el-scrollbar__wrap{
+ overflow-x: hidden;
+ padding: 10px;
+ background-color: #ebebeb;
+ }
+}
+.no-head-scrollbar{
+ height: calc(100vh - 138px);
+}
+
.app-body{
width: 100%;
position:fixed;
- margin-top:60px;
+ margin-top:$headerHeight;
}
.el-main{
- height: calc(100vh - 50px);
+ padding:0px !important;
+ //height: calc(100vh - $headerHeight);
}
.imgBox img{
max-height: 400px !important;
max-width:700px !important;
margin: 0px auto;
}
+
+.table-container{
+ background-color: $tableTitleColor !important;
+ border-top: 12px solid #ebebeb !important;
+ .table-title{
+ background-color:#fff;
+ height: $tableTitleHeight;
+ .title-header{
+ line-height:$tableTitleHeight;
+ color: $tableTitleText;
+ i{
+ margin-left: 10px;
+ margin-right: 5px;
+ }
+ }
+ }
+}
+
+.el-table td{
+ padding: 4px 0px !important;
+}
diff --git a/src/styles/sidebar.scss b/src/styles/sidebar.scss
index 65abe46..dfa0193 100644
--- a/src/styles/sidebar.scss
+++ b/src/styles/sidebar.scss
@@ -15,7 +15,7 @@
width: $sideBarWidth !important;
height: 100%;
position: fixed;
- padding-top:60px;
+ margin-top:$headerHeight;
font-size: 0px;
top: 0;
bottom: 0;
@@ -58,12 +58,14 @@
border: none;
height: 100%;
width: 100% !important;
+ background-color: $menuBg !important;
}
// menu hover
.submenu-title-noDropdown,
.el-submenu__title {
&:hover {
+ color: $subMenuHoverText !important;
background-color: $menuHover !important;
}
}
@@ -83,6 +85,7 @@
background-color: $subMenuBg !important;
&:hover {
+ color: $menuHoverText !important;
background-color: $subMenuHover !important;
}
}
diff --git a/src/styles/variables.scss b/src/styles/variables.scss
index a19cece..d8e287e 100644
--- a/src/styles/variables.scss
+++ b/src/styles/variables.scss
@@ -1,35 +1,55 @@
+@import './element-variables';
+$themeColor:$--color-primary;
+// Header
+$headerColor:$themeColor;
+$headerText:#ffffff;
+$dropDownText: #fff;
+$headerHeight: 56px;
+// tagsView
+$breadcrumbHeight: 48px;
+$tagsViewHeight: 30px;
+$tagsViewActiveBg:#66b1ff;
//sidebar
-$menuText:#bfcbd9;
-$themeColor: rgb(40, 51, 86);
-$menuText:#000000;
-$subMenuText:#000000;
-$menuActiveText: rgb(98, 193, 255);
-//$menuActiveText:#ffffff;
-$subMenuActiveText:#f4f4f5; //https://github.com/ElemeFE/element/issues/12951
-//$subMenuActiveText:#000000; //https://github.com/ElemeFE/element/issues/12951
+$menuText:#333333;
+$subMenuText:#333333;
+$menuActiveText:$themeColor;
+$subMenuActiveText:$themeColor; //https://github.com/ElemeFE/element/issues/12951
-$menuBg: #2f3856;
-//$menuBg:#ffffff;
-$menuHover:#0c1f3c;
-//$menuHover:#6666cc;
+$menuBg:#f4f4f4;
+$menuHover:#f4f4f4;
+$menuHoverText:$themeColor;
-$subMenuBg:#2f3856;
-//$subMenuBg:#fcfcfc;
-$subMenuHover: #0c1f3c;
-//$subMenuHover:#6666cc;
+$subMenuBg:#f4f4f4;
+$subMenuHover:#f4f4f4;
+$subMenuHoverText:$themeColor;
+$sideBarWidth: 208px;
-$sideBarWidth: 180px;
+// table
+$tableTitleHeight:46px;
+$tableTitleColor:#fff;
+$tableTitleText:#606266;
// the :export directive is the magic sauce for webpack
:export {
themeColor: $themeColor;
+ headerColor: headerColor;
+ headerText: headerText;
+ dropDownText:$dropDownText;
+ headerHeight:$headerHeight;
+ breadcrumbHeight:$breadcrumbHeight;
+ tagsViewHeight:$tagsViewHeight;
menuText: $menuText;
subMenuText: $subMenuText;
menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText;
menuBg: $menuBg;
menuHover: $menuHover;
+ menuHoverText:$menuHoverText;
subMenuBg: $subMenuBg;
subMenuHover: $subMenuHover;
+ subMenuHoverText:$subMenuHoverText;
sideBarWidth: $sideBarWidth;
+ tableTitleHeight:$tableTitleHeight;
+ tableTitleColor:$tableTitleColor;
+ tabelTitleText:$tableTitleText;
}
diff --git a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
index d0ba37f..c2b1355 100644
--- a/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
+++ b/src/views/busAdmin/areaPersonliable/areaSelectTree.vue
@@ -18,7 +18,7 @@
diff --git a/src/views/system/role/listRole.vue b/src/views/system/role/listRole.vue
index 2ce6456..c567717 100644
--- a/src/views/system/role/listRole.vue
+++ b/src/views/system/role/listRole.vue
@@ -1,27 +1,27 @@
-
+
-
-
-
-
-
- 搜索
- 新增
-
-
+
+
+
+
+
+ 新增
+
+
-
-
-
- 修改
- 删除
- 功能权限
- 数据权限
-
-
-
-
+
+
+
+
+ 修改
+ 删除
+ 功能权限
+ 数据权限
+
+
+
+
@@ -29,7 +29,7 @@
-
+