From 7a08b39096b85715409d462176d2f86a53199976 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Mon, 22 Jul 2024 14:30:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/Common/dictcommons.js | 112 ++++++++- src/api/system/userManage/index.js | 4 +- src/layout/components/Navbar.vue | 9 +- src/views/login/login.vue | 60 ++--- .../purchaseOrder/purchaseOrderAdd.vue | 35 +-- .../purchaseOrder/purchaseOrderInfo.vue | 24 +- src/views/system/menuManage/menuManage.vue | 215 ++++++++++++++---- src/views/system/userManage/userManageAdd.vue | 4 +- .../system/userManage/userManageList.vue | 5 +- 9 files changed, 362 insertions(+), 106 deletions(-) diff --git a/src/api/Common/dictcommons.js b/src/api/Common/dictcommons.js index fa24a57..8a5a070 100644 --- a/src/api/Common/dictcommons.js +++ b/src/api/Common/dictcommons.js @@ -34,15 +34,87 @@ export function fetchBySid(sid) { }) } +// 根据当前登录用户sid获取本分公司下的销售部门和销售专员 +export function selectOrgList(data) { + return request({ + url: '/portal/v1/sysorganization/selectOrgList', + method: 'get', + params: data + }) +} + +// 当前用户创建申请时判断该用户是否有该菜单的操作权限 +export function selectHaveMessage(data) { + return request({ + url: '/portal/v1/sysuser/selectHaveMessage ', + method: 'post', + data: data, + headers: { + 'Content-Type': 'application/json' + } + }) +} + +// 根据当前登录用户的角色获取菜单分页列表页面右上角按钮的隐藏 +export function getButtonPermissions(data) { + return request({ + url: '/portal/v1/sysfunction/getButtonPermissions', + method: 'post', + data: data, + headers: { + 'Content-Type': 'application/json' + } + }) +} + // 根据当前登录用户的全路径查询相应部门下的所有人 export function selAllByOrgSidPath(data) { return request({ - url: '/portal/v1/sysstafforg/selAllByOrgSidPath', + url: '/oms/apiadmin/sysstafforg/selAllByOrgSidPath', + method: 'post', + params: data + }) +} + +// 分公司全路径sid获取工种 +export function getServiceType(data) { + return request({ + url: '/as/v1/AsServiceItem/getServiceType', + method: 'get', + params: data + }) +} + +// 分公司全路径sid获取科目 +export function selSubjectInfo(data) { + return request({ + url: '/as/v1/asservicepackage/selSubjectInfo', + method: 'get', + params: data + }) +} + +// 分公司全路径sid获取班组 +export function getGroupList(data) { + return request({ + url: '/as/v1/asservicegroup/getGroupList', method: 'post', params: data }) } +// 查询分页列表 -- 客户列表 +export function customerListPage(params) { + return request({ + url: '/yxtcrm/apiadmin/v1/crmcustomer/customerListPage', + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + // 获取省 export function getProvince() { return request({ @@ -67,10 +139,31 @@ export function getCounty(data) { }) } +// 获取供应商信息 +export function choiceSupplierInfo(data) { + return request({ + url: '/oms/apiadmin/supplierinfo/choiceSupplierInfo', + method: 'get', + params: data + }) +} + +// 查询分页列表 -- 商品列表 +export function chooseproducts(params) { + return request({ + url: '/yxtbase/apiadmin/base/basegoodssku/getGoodsListPage', + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} + // 查询所有仓库 -export function getWareHouse(params) { +export function getWarehouses(params) { return request({ - url: '/oms/apiadmin/warehouseinfo/getWareHouse', + url: '/oms/apiadmin/base/wmswarehouseinfo/listAll', method: 'post', data: params, headers: { @@ -78,3 +171,16 @@ export function getWareHouse(params) { } }) } + + +// 根据仓库查询库位 +export function getWarehouseareas(data) { + return request({ + url: '/oms/apiadmin/base/wmswarehousearea/selectAll', + method: 'get', + params: data, + headers: { + 'Content-Type': 'application/json' + } + }) +} \ No newline at end of file diff --git a/src/api/system/userManage/index.js b/src/api/system/userManage/index.js index a0a93cf..1b3109d 100644 --- a/src/api/system/userManage/index.js +++ b/src/api/system/userManage/index.js @@ -30,7 +30,7 @@ export function userAdd(data) { // 初始化 用户 export function initUserInfo(data) { return request({ - url: '/wms/apiadmin/sysstaffinfo/fetchBySid/' + data.sid, + url: '/oms/apiadmin/sysstaffinfo/fetchBySid/' + data.sid, method: 'get', data: data, headers: { @@ -128,7 +128,7 @@ export function roleList(data) { // 查询部门列表 export function orgList(data) { return request({ - url: '/oms/apiadmin/sysorganization/list', + url: '/oms/apiadmin/sysorganization/list/' + data, method: 'get', data: data, headers: { diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index ebdaddb..02d2ed6 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -6,7 +6,7 @@
-

{{Orgname}},欢迎您:{{pNameAndDepartmentNameAndPostName}} {{name}}

+

欢迎您:{{pNameAndDepartmentNameAndPostName}} - {{defaultRoleName}} - {{name}}

退出登录 @@ -23,6 +23,7 @@ Orgname: '', departmentName: '', name: '', + defaultRoleName: '', year: '', pNameAndDepartmentNameAndPostName: '' } @@ -30,8 +31,9 @@ mounted() { this.Orgname = window.sessionStorage.getItem('orgName') this.departmentName = window.sessionStorage.getItem('departmentName') - this.name = window.sessionStorage.getItem('userName') - this.pNameAndDepartmentNameAndPostName = window.sessionStorage.getItem('defaultOrgPathName') + this.name = window.sessionStorage.getItem('name') + this.defaultRoleName = window.sessionStorage.getItem('defaultRoleName') + this.pNameAndDepartmentNameAndPostName = window.sessionStorage.getItem('pNameAndDepartmentNameAndPostName') var nowDate = new Date() this.year = nowDate.getFullYear() }, @@ -43,7 +45,6 @@ type: 'warning' }).then(() => { window.sessionStorage.clear() - this.$router.push({ path: '/login' }) diff --git a/src/views/login/login.vue b/src/views/login/login.vue index fbf1af0..2bbdf68 100644 --- a/src/views/login/login.vue +++ b/src/views/login/login.vue @@ -15,9 +15,11 @@
-
+
密码登录
-
+
验证码登录
@@ -49,9 +51,9 @@
- 忘记密码 + 忘记密码
- 去注册 + 去注册
@@ -216,7 +218,8 @@ check: false, registerInfo: { mobile: '', - userSid: "" + userSid: "", + sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa44', // oms 资源sid }, loginForm: { userName: '', @@ -509,21 +512,23 @@ loading.close() - - window.sessionStorage.setItem('token', response.data.token) - window.sessionStorage.setItem('userSid', response.data.sid) - window.sessionStorage.setItem('staffSid', response.data.staffSid) - window.sessionStorage.setItem('userName', response.data.userName) - window.sessionStorage.setItem('orgName', response.data.orgName) - window.sessionStorage.setItem('mobile', response.data.mobile) - window.sessionStorage.setItem('orgSid', response.data.orgSid) - window.sessionStorage.setItem('departmentName', response.data.departmentName) - window.sessionStorage.setItem('departmentSid', response.data.departmentSid) - window.sessionStorage.setItem('defaultOrgPath', response.data.orgSid) - window.sessionStorage.setItem('orgNamePath', response.data.orgNamePath) - window.sessionStorage.setItem('orgSidPath', response.data.orgSidPath) - window.sessionStorage.setItem('pNameAndDepartmentNameAndPostName', response.data - .pNameAndDepartmentNameAndPostName) + window.sessionStorage.setItem('token', response.data.token) + window.sessionStorage.setItem('staffSid', response.data.staffSid) + window.sessionStorage.setItem('userSid', response.data.sid) + window.sessionStorage.setItem('name', response.data.name) + window.sessionStorage.setItem('userName', response.data.userName) + window.sessionStorage.setItem('mobile', response.data.mobile) + window.sessionStorage.setItem('orgName', response.data.orgName) + window.sessionStorage.setItem('orgSid', response.data.orgSid) + window.sessionStorage.setItem('defaultDeptName', response.data.defaultDeptName) + window.sessionStorage.setItem('defaultDeptSid', response.data.defaultDeptSid) + window.sessionStorage.setItem('defaultRoleName', response.data.defaultRoleName) + window.sessionStorage.setItem('defaultRoleSid', response.data.defaultRoleSid) + window.sessionStorage.setItem('orgSidPath', response.data.orgSidPath) + window.sessionStorage.setItem('defaultOrgPath', response.data.defaultOrgPath) + window.sessionStorage.setItem('defaultOrgPathName', response.data.defaultOrgPathName) + window.sessionStorage.setItem('pNameAndDepartmentNameAndPostName', response.data + .pNameAndDepartmentNameAndPostName) } }).catch(() => { @@ -557,17 +562,20 @@ loading.close() window.sessionStorage.setItem('token', response.data.token) - window.sessionStorage.setItem('userSid', response.data.sid) window.sessionStorage.setItem('staffSid', response.data.staffSid) + window.sessionStorage.setItem('userSid', response.data.sid) + window.sessionStorage.setItem('name', response.data.name) window.sessionStorage.setItem('userName', response.data.userName) - window.sessionStorage.setItem('orgName', response.data.orgName) window.sessionStorage.setItem('mobile', response.data.mobile) + window.sessionStorage.setItem('orgName', response.data.orgName) window.sessionStorage.setItem('orgSid', response.data.orgSid) - window.sessionStorage.setItem('departmentName', response.data.departmentName) - window.sessionStorage.setItem('departmentSid', response.data.departmentSid) - window.sessionStorage.setItem('defaultOrgPath', response.data.orgSid) - window.sessionStorage.setItem('orgNamePath', response.data.orgNamePath) + window.sessionStorage.setItem('defaultDeptName', response.data.defaultDeptName) + window.sessionStorage.setItem('defaultDeptSid', response.data.defaultDeptSid) + window.sessionStorage.setItem('defaultRoleName', response.data.defaultRoleName) + window.sessionStorage.setItem('defaultRoleSid', response.data.defaultRoleSid) window.sessionStorage.setItem('orgSidPath', response.data.orgSidPath) + window.sessionStorage.setItem('defaultOrgPath', response.data.defaultOrgPath) + window.sessionStorage.setItem('defaultOrgPathName', response.data.defaultOrgPathName) window.sessionStorage.setItem('pNameAndDepartmentNameAndPostName', response.data .pNameAndDepartmentNameAndPostName) } diff --git a/src/views/purchase/purchaseOrder/purchaseOrderAdd.vue b/src/views/purchase/purchaseOrder/purchaseOrderAdd.vue index 6d7544b..64daacb 100644 --- a/src/views/purchase/purchaseOrder/purchaseOrderAdd.vue +++ b/src/views/purchase/purchaseOrder/purchaseOrderAdd.vue @@ -43,7 +43,8 @@
* 供应商
- + @@ -52,7 +53,7 @@ - @@ -62,7 +63,7 @@ - + @@ -83,7 +84,7 @@ - @@ -103,7 +104,7 @@ - @@ -113,7 +114,7 @@ - @@ -136,7 +137,7 @@ - @@ -175,7 +176,7 @@ - + @@ -184,24 +185,24 @@ - + - + - + - + --> - - - + + + + + + +
@@ -77,16 +81,35 @@ - + + + + + + + - --> + - + @@ -96,36 +119,41 @@ - + - + + + + + - + - - + + - + @@ -158,7 +186,7 @@ - +
资源名称类型分类 - + + 目录 + 菜单 + 按钮 +
菜单路由路由路径
菜单图片路径路由名称 + +
菜单图片
前端页面名称组件路径
前端页面路径
权限标识 - +
类型分类是否手机端权限 - - 目录 - 菜单 - 按钮 + + +
@@ -174,6 +202,32 @@ + + + + + + + + - + + + + + - + - + - - + + - + @@ -251,7 +310,8 @@ saveMenusInfo, putMenusInfo, delMenus, - IsEnable + IsEnable, + sourceMenuTree, } from '@/api/system/menu/index.js' export default { @@ -263,7 +323,7 @@ dialogTitle: '', checked: '', form: { - pname: '顶级菜单', + pname: '', iconUrl: '', isShow: '1', menuName: '', @@ -275,10 +335,11 @@ psid: '', remarks: '', sortNo: 0, + cid: '', sourceName: 'wms', + phoneFunction: "0", sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa33' }, - formBackup: Object.assign({}, this.form), tableData: [], page: { current: 1, @@ -296,8 +357,18 @@ isadd: false, editShow: '1', addShow: '1', - addMenuType: '1', - editMenuType: '1', + addMenuType: '0', + editMenuType: '0', + addPhoneFunction: "0", + editPhoneFunction: "0", + // 树形 + loading: false, + defaultProps: { + children: 'children', + label: 'name' + }, + checkedId: [], // 菜单授权 已选中 + treedata: [], // 菜单授权 } }, mounted() { @@ -309,6 +380,31 @@ // }) }, methods: { + departmentClick(data) { + console.log("departmentClick", data); + this.form.psid = data.sid + this.form.pname = data.name + this.$refs.Tree.visible = false + }, + checkchange(data, checked) { + console.log("checkchange", data); + console.log("checkchange", checked); + if (checked) { + this.form.psid = data.sid + this.form.pname = data.name + + let arr = [] + arr = [data.sid]; + this.$refs.Tree.setCheckedKeys(arr); + + console.log("checkchange", this.form.pname); + console.log("checkchange", this.form.psid); + + return; + } + + }, + menuTypeChangeRadio(val) { console.log('menuTypeChangeRadio', val) this.form.menuType = val @@ -325,6 +421,14 @@ console.log('changeRadio2', val) this.form.isShow = val }, + changeRadio3(val) { + console.log('changeRadio', val) + this.form.phoneFunction = val + }, + changeRadio4(val) { + console.log('changeRadio2', val) + this.form.phoneFunction = val + }, pagination(val) { // 分页 this.page.current = val.pageNum this.page.size = val.pageSize @@ -341,6 +445,7 @@ const treedata = res.data console.log('菜单列表', res) this.tableData = treedata + this.treedata = treedata this.page.total = res.data.total }) }, @@ -355,14 +460,14 @@ handleClick(tab, event) { if (tab.name == 'addrole') { this.dialogTitle = '新增' - this.form = Object.assign({}, this.formBackup) this.form.isShow = '1' - this.form.menuType = '1' + this.form.menuType = '0' // this.form.psid = row.sid || 0 - this.form.pname = '顶级菜单' this.form.sourceName = 'wms' this.form.sourceSid = 'd936f1ba-03c3-11ec-bf08-48452053aa33' - this.form.psid = 0 + this.form.pname = '' + this.form.psid = '0' + // this.sourceMenus() } else { this.getPageList() } @@ -376,11 +481,11 @@ // } // this.dialogTitle = '新增' // this.editDialog = true - this.form = Object.assign({}, this.formBackup) this.form.isShow = '1' - this.form.menuType = '1' + this.form.menuType = '0' // this.form.psid = row.sid || 0 - this.form.pname = row.name || '顶级菜单' + this.form.pname = '' + this.form.psid = '' this.form.sourceName = row.sourceName this.form.sourceSid = row.sourceSid if (row.isSource == '1') { @@ -406,6 +511,7 @@ putMenusInfo(this.form).then(res => { this.editDialog = false this.getPageList() + this.rest() this.$message({ message: res.msg, type: 'success' @@ -415,12 +521,35 @@ saveMenusInfo(this.form).then(res => { this.activeName = 'roleList' this.getPageList() + this.rest() this.$message({ message: res.msg, type: 'success' }) }) } + + }, + + rest() { + this.form = { + pname: '', + iconUrl: '', + isShow: '1', + menuName: '', + menuUrl: '', + pageAliasName: '', + pageName: '', + pageUrl: '', + pageUrlRedirect: '', + psid: '', + remarks: '', + cid: '', + sortNo: 0, + sourceName: 'wms', + phoneFunction: "0", + sourceSid: 'd936f1ba-03c3-11ec-bf08-48452053aa33' + } }, deleteRow(row) { this.$confirm('确定要删除该菜单吗, 是否继续?', '提示', { diff --git a/src/views/system/userManage/userManageAdd.vue b/src/views/system/userManage/userManageAdd.vue index 07bc5e5..261b2ed 100644 --- a/src/views/system/userManage/userManageAdd.vue +++ b/src/views/system/userManage/userManageAdd.vue @@ -114,7 +114,9 @@ }, methods: { getRoleList() { - var param = {} + var param = { + orgSid: window.sessionStorage.getItem('orgSid') + } roleList(param).then(res => { if (res.code === '200') { this.roleListAll = res.data diff --git a/src/views/system/userManage/userManageList.vue b/src/views/system/userManage/userManageList.vue index 20c90c5..fd87af0 100644 --- a/src/views/system/userManage/userManageList.vue +++ b/src/views/system/userManage/userManageList.vue @@ -384,7 +384,9 @@ this.getOrgUserList() }, getRoleList() { - var param = {} + var param = { + orgSid: window.sessionStorage.getItem('orgSid') + } roleList(param).then(res => { if (res.code === '200') { this.roleListAll = res.data @@ -433,6 +435,7 @@ this.roleDialog = true this.roleForm.sid = row.sid this.roleForm.userSid = row.sid + this.roleForm.orgsid = window.sessionStorage.getItem('orgSid') setRole(this.roleForm).then(res => { this.roleList = res.data for (let i = 0; i < res.data.length; i++) {
上级菜单 + + + + + + + +
类型分类 + + 目录 + 菜单 + 按钮 + +
菜单名称 @@ -181,36 +235,41 @@
菜单路由路由路径 + +
路由名称
菜单图片路径菜单图片
前端页面名称组件路径
前端页面路径
权限标识 - +
类型分类是否手机端权限 - - 目录 - 菜单 - 按钮 + + +