Commit e31102ca authored by 孙浩's avatar 孙浩

调整菜单、部门格式

parent d7e83ddb
import request from '@/utils/request'
import Qs from 'qs'
// 查询部门列表
export function listDept(query) {
/**
* 1.新增部门
* 2.删除部门
* 3.修改部门
* 4.修改部门状态
* 5.查询部门列表
* 6.查询部门列表(排除节点)
* 7.查询部门详细
* -----------------
* 10.查询部门下拉树结构
* 11.查询子部门
* 12.根据角色ID查询部门树结构
* 13.查询无部门人员
* 14.根据查询内容查询用户
* 15.查询该部门下的所有用户
* 16.转部门
* */
// 1.新增部门
export function addDept(data) {
data = Qs.stringify(data)
return request({
url: '/system/dept/list',
method: 'get',
params: query
url: '/system/dept/add',
method: 'post',
data,
headers: {}
})
}
// 查询部门列表
export function listAllDept() {
// 2.删除部门
export function delDept(deptId) {
return request({
url: '/system/dept/list',
method: 'get'
url: '/system/dept/deleteLogical/' + deptId,
method: 'delete'
})
}
// 查询部门列表(排除节点)
export function listDeptExcludeChild(deptId) {
// 3.修改部门
export function updateDept(data) {
const businessId = data.businessId
data = Qs.stringify(data)
return request({
url: '/system/dept/list/exclude/' + deptId,
method: 'get'
url: '/system/dept/update/' + businessId,
method: 'put',
data,
headers: {}
})
}
// 查询部门详细
export function getDept(deptId) {
// 4.修改部门状态
export function statusChange(data) {
const businessId = data.businessId
data = Qs.stringify(data)
return request({
url: '/system/dept/detail/' + deptId,
method: 'get'
url: '/system/dept/statusChange/' + businessId,
method: 'put',
data,
headers: {}
})
}
// 查询部门下拉树结构
export function treeselect() {
// 5.查询部门列表
export function listDept(query) {
return request({
url: '/system/dept/treeSelect',
method: 'get'
url: '/system/dept/list',
method: 'get',
params: query
})
}
// 查询部门下拉树结构
export function getChildrenDept(userId) {
// 6.查询部门列表(排除节点)
export function listDeptExcludeChild(deptId) {
return request({
url: '/system/dept/getChildren/' + userId,
url: '/system/dept/list/exclude/' + deptId,
method: 'get'
})
}
// 根据角色ID查询部门树结构
export function roleDeptTreeselect(roleId, menuId) {
// 7.查询部门详细
export function getDept(deptId) {
return request({
url: '/system/dept/roleDeptTreeSelect/' + roleId + '/' + menuId,
url: '/system/dept/detail/' + deptId,
method: 'get'
})
}
// 新增部门
export function addDept(data) {
// console.log(data)
data = Qs.stringify(data)
// console.log(11112311111111)
// console.log(data)
// 10.查询部门下拉树结构
export function treeSelect() {
return request({
url: '/system/dept/add',
method: 'post',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
url: '/system/dept/treeSelect',
method: 'get'
})
}
// 修改部门
export function updateDept(data) {
const businessId = data.businessId
data = Qs.stringify(data)
// 11.查询子部门
export function getChildrenDept(userId) {
return request({
url: '/system/dept/update/' + businessId,
method: 'put',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
url: '/system/dept/getChildren/' + userId,
method: 'get'
})
}
// 修改状态部门
export function statusChange(data) {
const businessId = data.businessId
data = Qs.stringify(data)
// 12.根据角色ID查询部门树结构
export function roleDeptTreeSelect(roleId, menuId) {
return request({
url: '/system/dept/statusChange/' + businessId,
method: 'put',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
url: '/system/dept/roleDeptTreeSelect/' + roleId + '/' + menuId,
method: 'get'
})
}
// 删除部门
export function delDept(deptId) {
return request({
url: '/system/dept/deleteLogical/' + deptId,
method: 'delete'
})
}
// 查询无部门人员
// 13.查询无部门人员
export function queryUserWithoutDept(params) {
return request({
url: '/system/dept/getAllUserWithoutDept',
......@@ -115,7 +119,8 @@ export function queryUserWithoutDept(params) {
params
})
}
// 根据查询内容查询用户
// 14.根据查询内容查询用户
export function queryUserByName(params) {
return request({
url: '/system/user/getListWithDept',
......@@ -123,7 +128,8 @@ export function queryUserByName(params) {
params
})
}
// 查询该部门下的所有用户
// 15.查询该部门下的所有用户
export function queryUserByDeptId(id, params) {
return request({
url: '/system/dept/getAllUserByDeptId/' + id,
......@@ -131,7 +137,8 @@ export function queryUserByDeptId(id, params) {
params
})
}
// 转部门
// 16.转部门
export function transformDept(data) {
return request({
url: '/system/dept/update/{businessId}',
......@@ -139,10 +146,4 @@ export function transformDept(data) {
data
})
}
// 查询部门详细
export function getDeptDetail(deptId) {
return request({
url: '/system/dept/detail/' + deptId,
method: 'get'
})
}
import request from '@/utils/request'
import Qs from 'qs'
// 查询菜单列表
export function listMenu(query) {
return request({
url: '/system/menu/list',
method: 'get',
params: query
})
}
// 查询菜单列表-全部
export function listAllMenu(query) {
return request({
url: '/system/menu/listAll',
method: 'get',
params: query
})
}
// 查询菜单列表
export function findAllMenu(query) {
return request({
url: '/system/menu/findAllMenu?menu_name=' + query,
method: 'get'
})
}
// 查询菜单详细
export function getMenu(menuId) {
return request({
url: '/system/menu/detail/' + menuId,
method: 'get'
})
}
// 查询工作流程
export function getWork() {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: 'wfprocesshi/queryWfProcessHis',
method: 'get'
})
}
/**
* 1.新增菜单
* 2.删除菜单
* 3.修改菜单
* 4.修改菜单状态
* 5.查询菜单列表
* 6.查询菜单详细
* -------------------
* 10.查询菜单下拉树结构
* 11.根据角色ID查询菜单下拉树结构
* 12.根据角色ID查询菜单下拉树结构 无按钮
* */
// 查询菜单下拉树结构
export function treeselect() {
return request({
url: '/system/menu/treeSelect',
method: 'get'
})
}
// 根据角色ID查询菜单下拉树结构
export function roleMenuTreeselect(roleId) {
return request({
url: '/system/menu/roleMenuTreeSelect/' + roleId,
method: 'get'
})
}
export function getAllMenu() {
return request({
url: '/getMenuTree',
method: 'get'
})
}
// 新增菜单
// 1.新增菜单
export function addMenu(data) {
data = Qs.stringify(data)
return request({
url: '/system/menu/add',
method: 'post',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
headers: {}
})
}
// 根据角色ID查询菜单下拉树结构 无按钮
export function roleMenuTreeselectMC(roleId) {
// 2.删除菜单
export function delMenu(menuId) {
return request({
url: '/system/menu/treeSelectMC/' + roleId,
method: 'get'
url: '/system/menu/deleteLogical/' + menuId,
method: 'delete'
})
}
// 修改菜单
// 3.修改菜单
export function updateMenu(data) {
const businessId = data.businessId
data = Qs.stringify(data)
......@@ -92,13 +41,11 @@ export function updateMenu(data) {
url: '/system/menu/update/' + businessId,
method: 'put',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
headers: {}
})
}
// 修改状态菜单
// 4.修改菜单状态
export function statusChange(data) {
const businessId = data.businessId
data = Qs.stringify(data)
......@@ -106,25 +53,48 @@ export function statusChange(data) {
url: '/system/menu/statusChange/' + businessId,
method: 'put',
data,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
headers: {}
})
}
// 删除菜单
export function delMenu(menuId) {
// 5.查询菜单列表
export function listMenu(query) {
return request({
url: '/system/menu/deleteLogical/' + menuId,
method: 'delete'
url: '/system/menu/list',
method: 'get',
params: query
})
}
// 6.查询菜单详细
export function getMenu(menuId) {
return request({
url: '/system/menu/detail/' + menuId,
method: 'get'
})
}
// 获取路由
export const getRouters = () => {
// 10.查询菜单下拉树结构
export function treeSelect() {
return request({
url: '/auth/getRouters',
url: '/system/menu/treeSelect',
method: 'get'
// params: { path: '/zhongtai' }
})
}
// 11.根据角色ID查询菜单下拉树结构
export function roleMenuTreeSelect(roleId) {
return request({
url: '/system/menu/roleMenuTreeSelect/' + roleId,
method: 'get'
})
}
// 12.根据角色ID查询菜单下拉树结构 无按钮
export function roleMenuTreeSelectMC(roleId) {
return request({
url: '/system/menu/treeSelectMC/' + roleId,
method: 'get'
})
}
......@@ -403,7 +403,7 @@ import customTranslate from './customTranslate/customTranslate'
import customControlsModule from './customControls'
/* import { listUser } from '@/api/system/user'
import { listRole } from '@/api/system/role'*/
import { treeselect } from '@/api/system/dept'
import { treeSelect } from '@/api/system/dept'
// import Template from '../../views/instance/Template'
// import item from '../formDesigner/fieldItem/fields/Group/item'
// import propertiesProviderModule from 'bpmn-js-properties-panel/lib/provider/camunda'
......@@ -802,7 +802,7 @@ export default {
},
/** 查询部门下拉树结构 */
getTreeselect() {
treeselect().then(response => {
treeSelect().then(response => {
this.deptOptions = []
this.deptOptions = this.deptOptions.concat(response.data)
})
......
......@@ -7,6 +7,7 @@ const commonField = {
resetPassword: '重置密码',
resetName: '重置',
addName: '新增',
queryName: '查询',
exportName: '导出',
updateName: '修改',
size: 'mini',
......@@ -14,6 +15,7 @@ const commonField = {
delIcon: 'el-icon-delete',
addIcon: 'el-icon-plus',
exportIcon: 'el-icon-download',
queryIcon: 'el-icon-search',
resetIcon: '',
deleteTypePrimary: 'danger',
deleteName: '删除',
......@@ -26,7 +28,7 @@ const commonField = {
miniSize: 'mini',
exportTypePrimary: 'success',
exportSize: 'small',
typeText: 'text',
typeText: 'text'
}
export default commonField
......@@ -70,9 +70,9 @@
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<coolbutton style="color: #49cec9" :type="typeParent" :name="updateName" :size="size" :haspermi="hasUpdateDeptPerm" @btn-click="handleUpdate(scope.row)" />
<coolbutton :type="typeParent" :name="addName" :size="size" :haspermi="hasAddDeptPerm" @btn-click="handleAdd(scope.row)" />
<coolbutton :type="typeParent" :name="nameParent" :size="size" :haspermi="hasDelDeptPerm" @btn-click="handleDelete(scope.row)" />
<coolbutton style="color: #49cec9" :type="commonField.typeParent" :name="commonField.updateName" :size="commonField.size" :haspermi="hasUpdateDeptPerm" @btn-click="handleUpdate(scope.row)" />
<coolbutton :type="commonField.typeParent" :name="commonField.addName" :size="commonField.size" :haspermi="hasAddDeptPerm" @btn-click="handleAdd(scope.row)" />
<coolbutton :type="commonField.typeParent" :name="commonField.nameParent" :size="commonField.size" :haspermi="hasDelDeptPerm" @btn-click="handleDelete(scope.row)" />
</template>
</el-table-column>
</el-table>
......@@ -83,7 +83,7 @@
<el-row>
<el-col v-if="form.parentId !== 0" :span="24">
<el-form-item label="上级部门" prop="parentId">
<treeselect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer" placeholder="选择上级部门" />
<treeSelect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer" placeholder="选择上级部门" />
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -131,37 +131,19 @@
<script>
import { addDept, delDept, getDept, listDept, listDeptExcludeChild, statusChange, updateDept } from '@/api/system/dept'
import Treeselect from '@riophae/vue-treeselect'
import TreeSelect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import Coolbutton from '@/components/coolbutton'
import { getDataCache, setDataCache } from '@/assets/js/filterData'
import commonField from '@/utils/commonField'
export default {
name: 'Dept',
components: { Treeselect, Coolbutton },
components: { TreeSelect, Coolbutton },
data() {
return {
typeParent: 'text',
typePrimary: 'primary',
typeSuccess: 'success',
nameParent: '删除',
resetName: '重置',
addName: '新增',
queryName: '查询',
exportName: '导出',
updateName: '修改',
size: 'mini',
smallSize: 'small',
delIcon: 'el-icon-delete',
addIcon: 'el-icon-plus',
exportIcon: 'el-icon-download',
queryIcon: 'el-icon-search',
resetIcon: '',
hasDelDeptPerm: ['sys:dept:delete'],
hasResetUserPerm: ['sys:user:resetPwd'],
hasUpdateDeptPerm: ['sys:dept:update'],
hasAddDeptPerm: ['sys:dept:add'],
hasExportRolePerm: ['sys:role:export'],
hasQueryMenuPerm: ['sys:menu:query'],
// 搜索条件
showSearch: true,
// 遮罩
......@@ -220,6 +202,11 @@ export default {
}
}
},
computed: {
commonField() {
return commonField
}
},
/** 路由离开前存储筛选条件*/
beforeRouteLeave(to, from, next) {
setDataCache(this.$route.path, this.queryParams)
......@@ -269,7 +256,7 @@ export default {
}
this.resetForm('form')
},
// 状态修改
/** 修改状态按钮操作 */
handleStatusChange(row) {
const text = row.flag === '0' ? '停用' : '启用'
this.$confirm(`“${row.deptName}”部门即将被${text},是否继续?`, '提示', {
......@@ -314,7 +301,7 @@ export default {
this.queryParams = {
deptName: '',
flag: ''
},
}
this.getList()
},
/** 修改按钮操作 */
......
......@@ -12,12 +12,12 @@
/>
</el-form-item>
<el-form-item>
<coolbutton :icon="queryIcon" :type="typePrimary" :name="queryName" :size="smallSize" :haspermi="hasQueryMenuPerm" @btn-click="handleQuery" />
<coolbutton :icon="commonField.queryIcon" :type="commonField.typePrimary" :name="commonField.queryName" :size="commonField.smallSize" :haspermi="hasQueryMenuPerm" @btn-click="handleQuery" />
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">重置</el-button>
</el-form-item>
<div style="float: right">
<el-form-item>
<coolbutton style="padding: 8px 7px;" :type="typePrimary" :name="addName" :size="smallSize" :icon="addIcon" :haspermi="hasAddMenuPerm" @btn-click="handleAdd" />
<coolbutton style="padding: 8px 7px;" :type="commonField.typePrimary" :name="commonField.addName" :size="commonField.smallSize" :icon="commonField.addIcon" :haspermi="hasAddMenuPerm" @btn-click="handleAdd" />
</el-form-item>
</div>
</el-form>
......@@ -58,9 +58,9 @@
<span>{{ scope.row.createDate | transformDateByFormat('YYYY-MM-DD HH:mm') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<coolbutton style="margin-right: 30px ;color: #49cec9" :type="typeParent" :name="updateName" :size="size" :haspermi="hasUpdateMenuPerm" @btn-click="handleUpdate(scope.row)" />
<coolbutton style="margin-right: 10px ;color: #49cec9" :type="commonField.typeParent" :name="commonField.updateName" :size="commonField.size" :haspermi="hasUpdateMenuPerm" @btn-click="handleUpdate(scope.row)" />
<el-switch
v-model="scope.row.flag"
active-value="1"
......@@ -73,10 +73,10 @@
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>
<coolbutton :type="typeParent" :name="nameParent" :size="size" :haspermi="hasDelMenuPerm" @btn-click="handleDelete(scope.row)" />
<coolbutton :type="commonField.typeParent" :name="commonField.nameParent" :size="commonField.size" :haspermi="hasDelMenuPerm" @btn-click="handleDelete(scope.row)" />
</el-dropdown-item>
<el-dropdown-item>
<coolbutton :type="typeParent" :name="addName" :size="size" :haspermi="hasAddMenuPerm" @btn-click="handleAdd(scope.row)" />
<coolbutton :type="commonField.typeParent" :name="commonField.addName" :size="commonField.size" :haspermi="hasAddMenuPerm" @btn-click="handleAdd(scope.row)" />
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
......@@ -90,7 +90,7 @@
<el-row>
<el-col :span="24">
<el-form-item label="上级菜单" prop="parentId">
<treeselect
<treeSelect
v-model="form.parentId"
:no-options-text="'暂无数据'"
......@@ -215,15 +215,15 @@
<script>
import { addMenu, delMenu, getMenu, listMenu, statusChange, updateMenu } from '@/api/system/menu'
import Treeselect from '@riophae/vue-treeselect'
import TreeSelect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import IconSelect from '@/components/IconSelect'
import dictCons from '@/utils/dictCons'
import Coolbutton from '@/components/coolbutton'
import { getDataCache, setDataCache } from '@/assets/js/filterData'
import commonField from '@/utils/commonField'
export default {
name: 'Menu',
components: { Treeselect, IconSelect, Coolbutton },
components: { TreeSelect, IconSelect, Coolbutton },
data() {
const trueGroupName = (rule, value, callback) => {
if (!value.trim()) {
......@@ -232,27 +232,9 @@ export default {
callback()
}
return {
typeParent: 'text',
typePrimary: 'primary',
typeSuccess: 'success',
nameParent: '删除',
resetName: '重置',
addName: '新增',
queryName: '查询',
exportName: '导出',
updateName: '修改',
size: 'mini',
smallSize: 'small',
delIcon: 'el-icon-delete',
addIcon: 'el-icon-plus',
exportIcon: 'el-icon-download',
queryIcon: 'el-icon-search',
resetIcon: '',
hasDelMenuPerm: ['sys:menu:delete'],
hasResetUserPerm: ['sys:user:resetPwd'],
hasUpdateMenuPerm: ['sys:menu:update'],
hasAddMenuPerm: ['sys:menu:add'],
hasExportRolePerm: ['sys:role:export'],
hasQueryMenuPerm: ['sys:menu:query'],
isWorkFlow: '0',
workFlow: '',
......@@ -310,6 +292,11 @@ export default {
}
}
},
computed: {
commonField() {
return commonField
}
},
watch: {
'form.isProcess': function() {
if (this.form.isProcess === '0') {
......@@ -326,12 +313,6 @@ export default {
// 分页参数初始化为{"page":1,"rows":10},如需自定义分页参数,自行修改
this.queryParams = JSON.parse(getDataCache(this.$route.path))
this.getList()
// this.getDicts(dictCons['SHOW_HIDE']).then(response => {
// this.visibleOptions = response.data
// })
// this.getDicts(dictCons['NORMAL_DISABLE']).then(response => {
// this.statusOptions = response.data
// })
},
methods: {
// 选择图标
......@@ -450,6 +431,7 @@ export default {
this.title = '修改'
})
},
/** 修改状态按钮操作 */
handleStatusChange(row) {
const text = row.flag === '0' ? '停用' : '启用'
this.$confirm(`“${row.menuName}”菜单即将被${text},是否继续?`, '提示', {
......
......@@ -130,7 +130,7 @@
</section>
</template>
<script>
import { treeselect, queryUserByDeptId, queryUserWithoutDept, transformDept, queryUserByName } from '../../../api/system/dept'
import { treeSelect, queryUserByDeptId, queryUserWithoutDept, transformDept, queryUserByName } from '../../../api/system/dept'
import { getDataCache } from '@/assets/js/filterData'
export default {
name: 'Otree',
......@@ -166,7 +166,7 @@ export default {
}
},
beforeMount() {
treeselect().then(res => {
treeSelect().then(res => {
if (res.data && res.data.length > 0) {
this.transformDeptTree = JSON.parse(JSON.stringify(res.data))
this.treeExpandSave = [res.data[0].id]
......
......@@ -233,8 +233,8 @@
<script>
import { listRole, getRole, delRole, addRole, updateRole, exportRole, dataScope, changeRoleStatus } from '@/api/system/role'
import { roleMenuTreeselectMC, treeselect as menuTreeselect, roleMenuTreeselect } from '@/api/system/menu'
import { roleDeptTreeselect } from '@/api/system/dept'
import { roleMenuTreeSelectMC, treeSelect as menuTreeSelect, roleMenuTreeSelect } from '@/api/system/menu'
import { roleDeptTreeSelect } from '@/api/system/dept'
import Coolbutton from '@/components/coolbutton'
import { getDataCache, setDataCache } from '@/assets/js/filterData'
import commonField from '@/utils/commonField'
......@@ -409,14 +409,14 @@ export default {
},
/** 查询菜单树结构 */
getMenuTreeSelect() {
menuTreeselect().then(response => {
menuTreeSelect().then(response => {
this.menuOptions = response.data
this.updateMenu.push(this.menuOptions[0].id)
})
},
/** 查询菜单列表 */
getMenuList(roleId) {
roleMenuTreeselectMC(roleId).then(response => {
roleMenuTreeSelectMC(roleId).then(response => {
this.menuList = this.handleTree(response.data, 'businessId')
this.loading = false
})
......@@ -479,14 +479,14 @@ export default {
},
/** 根据角色ID查询菜单树结构 */
getRoleMenuTreeSelect(roleId) {
return roleMenuTreeselect(roleId).then(response => {
return roleMenuTreeSelect(roleId).then(response => {
this.menuOptions = response.data.menus
return response
})
},
/** 根据角色ID和菜单ID查询部门树结构 */
getRoleDeptTreeSelect(roleId, menuId) {
return roleDeptTreeselect(roleId, menuId).then(response => {
return roleDeptTreeSelect(roleId, menuId).then(response => {
this.form.deptCheckStrictly = response.data.deptCheckStrictly
this.deptOptions = response.data.depts
for (let i = 0; i < this.deptOptions[0].children.length; i++) {
......
......@@ -335,7 +335,7 @@ import {
// userLoginManage
} from '@/api/system/user'
import { getToken } from '@/utils/auth'
import { treeselect } from '@/api/system/dept'
import { treeSelect } from '@/api/system/dept'
import TreeSelect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import { getListRole } from '@/api/system/role'
......@@ -567,7 +567,7 @@ export default {
},
/** 查询部门下拉树结构 */
getTreeSelect() {
treeselect().then(response => {
treeSelect().then(response => {
this.deptOptionsTree = response.data.concat({
id: -1,
label: '无部门人员',
......@@ -580,7 +580,7 @@ export default {
},
/** 查询子部门 */
getChildrenDept(userId) {
treeselect().then(response => {
treeSelect().then(response => {
this.deptChildren = response.data
// this.form.postId = response.data.checkedKeys
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment