diff --git a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/UserRelateService.java b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/UserRelateService.java index 7886b1555..6e85f6276 100644 --- a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/UserRelateService.java +++ b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/UserRelateService.java @@ -26,8 +26,10 @@ public interface UserRelateService { void inserDeptRelate(Long user,Set deptIds); void inserRoleRelate(Long user,Set RoleIds); - void deleteDeptRelate(Set deptIds); - void deleteRoleRelate(Set RoleIds); + void deleteDeptRelate(Long user,Set deptIds); + void deleteRoleRelate(Long user,Set RoleIds); + void deleteDeptRelate(Set userIds); + void deleteRoleRelate(Set userIds); void updateDeptRelate(Long user,Set deptIds); void updateRoleRelate(Long user,Set RoleIds); } diff --git a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserRelateServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserRelateServiceImpl.java index 49e0c417a..6ff20051f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserRelateServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserRelateServiceImpl.java @@ -39,28 +39,50 @@ public class UserRelateServiceImpl implements UserRelateService { } @Override - public void deleteDeptRelate(Set deptIds) { + public void deleteDeptRelate(Long user,Set deptIds) { if (!CollectionUtils.isEmpty(deptIds)){ String collect = deptIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - String sql="dept_id in ('"+collect+"')"; + String sql="user_id = '"+user+"'"+" and dept_id in ('"+collect+"')"; WQLObject.getWQLObject("sys_user_dept").delete(sql); } } + @Override + public void deleteDeptRelate(Set userIds) { + if (!CollectionUtils.isEmpty(userIds)){ + String collect = userIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); + String sql="user_id in ('"+collect+"')"; + WQLObject.getWQLObject("sys_users_roles").delete(sql); + } + } @Override - public void deleteRoleRelate(Set RoleIds) { + public void deleteRoleRelate(Long user,Set RoleIds) { if (!CollectionUtils.isEmpty(RoleIds)){ String collect = RoleIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - String sql="dept_id in ('"+collect+"')"; - WQLObject.getWQLObject("sys_user_dept").delete(sql); + String sql="user_id = '"+user+"'"+" and role_id in ('"+collect+"')"; + WQLObject.getWQLObject("sys_users_roles").delete(sql); } } + @Override + public void deleteRoleRelate(Set userIds) { + if (!CollectionUtils.isEmpty(userIds)){ + String collect = userIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); + String sql="user_id in ('"+collect+"')"; + WQLObject.getWQLObject("sys_users_roles").delete(sql); + } + } + + + + + + @Override @Transactional public void updateDeptRelate(Long user, Set deptIds) { if (user !=null){ - this.deleteDeptRelate(deptIds); + this.deleteDeptRelate(user,deptIds); this.inserDeptRelate(user,deptIds); } } @@ -69,7 +91,7 @@ public class UserRelateServiceImpl implements UserRelateService { @Transactional public void updateRoleRelate(Long user, Set RoleIds) { if (user !=null){ - this.deleteRoleRelate(RoleIds); + this.deleteRoleRelate(user,RoleIds); this.inserRoleRelate(user,RoleIds); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserServiceImpl.java index e21b9b741..f956b7a8d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/sso/system/service/impl/UserServiceImpl.java @@ -213,12 +213,14 @@ public class UserServiceImpl implements UserService { // 清理缓存 User user = findById(id); delCaches(user.getUser_id(), user.getUsername()); + //删除用户部门,角色关系表 } String collectSql = ids.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); WQLObject.getWQLObject("sys_user").delete("user_id in ('"+collectSql+"')"); - //删除用户部门,角色关系表 + userRelateService.deleteDeptRelate(ids); userRelateService.deleteRoleRelate(ids); + } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEEXT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEEXT.wql index 24bcbf2b4..40b5d14b8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEEXT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEEXT.wql @@ -65,7 +65,7 @@ FROM md_pb_storagevehicleinfo info LEFT JOIN md_pb_storagevehicleext ext ON info.storagevehicle_id = ext.storagevehicle_id - LEFT JOIN sys_dict_detail d ON info.storagevehicle_type = d.value and d.name = 'storagevehicle_type' + LEFT JOIN sys_dict d ON info.storagevehicle_type = d.value and d.code = 'storagevehicle_type' LEFT JOIN MD_ME_MaterialBase mdb ON ext.material_id = mdb.material_id LEFT JOIN MD_ME_ProducMaterialExt mdp ON mdb.material_id = mdp.material_id LEFT JOIN sch_base_point point ON info.storagevehicle_code = point.vehicle_code @@ -102,9 +102,9 @@ dict.label, dict.value FROM - sys_dict_detail dict + sys_dict dict WHERE - dict.name = 'storagevehicle_type' + dict.code = 'storagevehicle_type' AND dict.value in (30,31,32,33) ENDSELECT ENDPAGEQUERY diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEINFO.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEINFO.wql index 4081d66bb..b948b75e7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEINFO.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEINFO.wql @@ -52,7 +52,7 @@ point.point_name FROM md_pb_storagevehicleinfo s - LEFT JOIN sys_dict_detail d ON s.storagevehicle_type = d.value and d.dict_id = '32' + LEFT JOIN sys_dict d ON s.storagevehicle_type = d.value and d.code = 'storagevehicle_type' LEFT JOIN sch_base_point point ON point.vehicle_code = s.storagevehicle_code LEFT JOIN ST_IVT_StructIvt ivt ON point.source_id = ivt.struct_id LEFT JOIN md_me_materialbase mater ON mater.material_id = ivt.material_id diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEPOINT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEPOINT.wql index a6009e248..9f2e6ee7c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEPOINT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEPOINT.wql @@ -52,7 +52,7 @@ FROM sch_base_point point LEFT JOIN md_pb_storagevehiclepoint svp ON point.point_id = svp.point_id and svp.set_type <>'02' - LEFT JOIN sys_dict_detail d ON svp.set_type = d.value and d.name = 'set_type' + LEFT JOIN sys_dict d ON svp.set_type = d.value and d.code = 'set_type' WHERE point.is_delete = '0' AND point.is_used = '1' @@ -77,9 +77,9 @@ dict.label, dict.value FROM - sys_dict_detail dict + sys_dict dict WHERE - dict.name = 'storagevehicle_type' + dict.code = 'storagevehicle_type' AND dict.value in (30,31,32,33) ENDSELECT ENDPAGEQUERY @@ -91,9 +91,9 @@ dict.label, dict.value FROM - sys_dict_detail dict + sys_dict dict WHERE - dict.name = 'sch_area_type' + dict.code = 'sch_area_type' AND dict.value in (25,26,32,28) ENDSELECT ENDQUERY diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_STORAGEVEHICLECLEANING.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_STORAGEVEHICLECLEANING.wql index 15c96e759..c853ba49f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_STORAGEVEHICLECLEANING.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_STORAGEVEHICLECLEANING.wql @@ -55,7 +55,7 @@ md_pb_storagevehicleinfo info LEFT JOIN md_pb_storagevehiclepoint svp ON info.storagevehicle_id = svp.storagevehicle_id and svp.set_type <>'01' LEFT JOIN sch_base_point point ON point.point_id = svp.point_id - LEFT JOIN sys_dict_detail d ON info.storagevehicle_type = d.value and d.name = 'storagevehicle_type' + LEFT JOIN sys_dict d ON info.storagevehicle_type = d.value and d.code = 'storagevehicle_type' WHERE info.is_delete = '0' AND info.is_used = '1' @@ -99,9 +99,9 @@ dict.label, dict.value FROM - sys_dict_detail dict + sys_dict dict WHERE - dict.name = 'storagevehicle_type' + dict.code = 'storagevehicle_type' AND dict.value in (30,31,32,33) ENDSELECT ENDPAGEQUERY diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMT_MATERIALPARAMETERS_001.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMT_MATERIALPARAMETERS_001.wql index e8709183a..7c2953b23 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMT_MATERIALPARAMETERS_001.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMT_MATERIALPARAMETERS_001.wql @@ -1,10 +1,10 @@ [交易说明] 交易名: 产品参数分页查询 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: [数据库] --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 @@ -21,26 +21,26 @@ [临时表] --这边列出来的临时表就会在运行期动态创建 - + [临时变量] --所有中间过程变量均可在此处定义 - + [业务过程] ########################################## # 1、输入输出检查 # ########################################## - + ########################################## # 2、主过程前处理 # ########################################## - - + + ########################################## # 3、业务主过程 # ########################################## - + IF 输入.flag = "1" PAGEQUERY SELECT @@ -94,13 +94,13 @@ LEFT JOIN md_me_stockmaterialext s ON m.material_id = s.material_id LEFT JOIN md_me_producmaterialext p ON m.material_id = p.material_id LEFT JOIN md_pb_classstandard b ON m.material_type_id = b.class_id - LEFT JOIN sys_dict_detail d1 ON d1.value = p.product_mode and d1.name = 'product_mode' - LEFT JOIN sys_dict_detail d2 ON d2.value = s.is_need_plan and d2.name = 'IS_OR_NOT' - LEFT JOIN sys_dict_detail d3 ON d3.value = s.is_report and d3.name = 'IS_OR_NOT' - LEFT JOIN sys_dict_detail d7 ON d7.value = p.is_report and d7.name = 'IS_OR_NOT' - LEFT JOIN sys_dict_detail d4 ON d4.value = p.is_auto_open and d4.name = 'IS_OR_NOT' - LEFT JOIN sys_dict_detail d5 ON d5.value = p.is_again_put and d5.name = 'IS_OR_NOT' - LEFT JOIN sys_dict_detail d6 ON d6.value = p.product_series and d6.name = 'product_series' + LEFT JOIN sys_dict d1 ON d1.value = p.product_mode and d1.code = 'product_mode' + LEFT JOIN sys_dict d2 ON d2.value = s.is_need_plan and d2.code = 'IS_OR_NOT' + LEFT JOIN sys_dict d3 ON d3.value = s.is_report and d3.code = 'IS_OR_NOT' + LEFT JOIN sys_dict d7 ON d7.value = p.is_report and d7.code = 'IS_OR_NOT' + LEFT JOIN sys_dict d4 ON d4.value = p.is_auto_open and d4.code = 'IS_OR_NOT' + LEFT JOIN sys_dict d5 ON d5.value = p.is_again_put and d5.code = 'IS_OR_NOT' + LEFT JOIN sys_dict d6 ON d6.value = p.product_series and d6.code = 'product_series' LEFT JOIN md_pb_measureunit u ON u.measure_unit_id = m.base_unit_id WHERE m.is_delete = '0' diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STOR_ATTR.wql b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STOR_ATTR.wql index c0c1c7389..7a87c3bea 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STOR_ATTR.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/basedata/st/wql/QST_STOR_ATTR.wql @@ -55,7 +55,7 @@ detail.label FROM st_ivt_bsrealstorattr stor - LEFT JOIN sys_dict_detail detail ON detail.value = stor.stor_type_scode AND detail.dict_id = '30' + LEFT JOIN sys_dict detail ON detail.value = stor.stor_type_scode AND detail.dict_id = '30' WHERE stor.is_delete = '0' OPTION 输入.search <> "" diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_RAWFOIL_01.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_RAWFOIL_01.wql index e58c87257..d99d165a9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_RAWFOIL_01.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_RAWFOIL_01.wql @@ -117,9 +117,9 @@ label AS text, value FROM - sys_dict_detail + sys_dict WHERE - name = 'product_area' + code = 'product_area' ENDSELECT ENDQUERY diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_COOLOUT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_COOLOUT.wql index b8ddec0c0..359cc8adf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_COOLOUT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_COOLOUT.wql @@ -87,9 +87,9 @@ value, label FROM - sys_dict_detail + sys_dict WHERE - name = 'product_area' + code = 'product_area' ENDSELECT ENDQUERY diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_VIRTUALOUT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_VIRTUALOUT.wql index b9a8c489a..b640fe776 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_VIRTUALOUT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/wql/PDA_VIRTUALOUT.wql @@ -148,10 +148,10 @@ label AS text, value FROM - sys_dict_detail + sys_dict WHERE - name = 'ST_INV_OUT_TYPE' + code = 'ST_INV_OUT_TYPE' ENDSELECT ENDQUERY - ENDIF \ No newline at end of file + ENDIF diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql index d4f4223a6..01f061771 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql @@ -53,7 +53,7 @@ FROM sch_base_point point LEFT JOIN SCH_BASE_Region region ON point.region_id = region.region_id - LEFT JOIN sys_dict_detail d3 ON point.lock_type = d3.value and d3.name='d_lock_type' + LEFT JOIN sys_dict d3 ON point.lock_type = d3.value and d3.code='d_lock_type' WHERE point.is_delete = '0' OPTION 输入.region_id <> "" diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_TASK_01.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_TASK_01.wql index 4725b6026..62e51d31b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_TASK_01.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_TASK_01.wql @@ -56,7 +56,7 @@ FROM sch_base_task task LEFT JOIN md_pb_classstandard md ON task.task_type = md.class_code - LEFT JOIN sys_dict_detail dict ON dict.`value` = task.task_status AND dict.`name` = 'task_status' + LEFT JOIN sys_dict dict ON dict.`value` = task.task_status AND dict.`code` = 'task_status' WHERE task.is_delete = '0' OPTION 输入.task_type <> "" diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/ST_PUB_QUERY_01.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/ST_PUB_QUERY_01.wql index c658d94a0..08836b828 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/ST_PUB_QUERY_01.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/ST_PUB_QUERY_01.wql @@ -115,11 +115,10 @@ max(detail.VALUE) AS CODE, max(detail.label) AS NAME FROM - sys_dict_detail detail - LEFT JOIN sys_dict dict ON dict.dict_id = detail.dict_id + sys_dict detail WHERE 1 = 1 - AND dict. NAME LIKE '%INV_TYPE%' + AND detail.code LIKE '%INV_TYPE%' group by detail.VALUE ENDSELECT ENDQUERY diff --git a/lms/nladmin-ui/src/views/system/user/index.vue b/lms/nladmin-ui/src/views/system/user/index.vue index f7ad60f10..6a1ea6446 100644 --- a/lms/nladmin-ui/src/views/system/user/index.vue +++ b/lms/nladmin-ui/src/views/system/user/index.vue @@ -173,11 +173,11 @@ 更多 + 重置密码 部门权限 数据权限 - 重置密码 {{ enabledTypeOptions.find(item => {return item.key !== scope.row.is_used}).display_name }}账号 分配角色 @@ -193,7 +193,7 @@
- - - - - - - - - - - + + + +
取 消 - 保存 + 保 存
@@ -297,13 +299,13 @@ export default { { min: 2, max: 20, message: '长度在 2 到 20 个字符', trigger: 'blur' } ] }, - deptDrawer: false, + syncDrawer: false, depChecked: [], depCheckedId: '', - drawerDatas: [], // ? + deptsDatas: [], + rolesDatas: [], drawerTitle: '', - drawerHint: '', - nodeKey: '', + nodeKey: 'dept_id', flag: true } }, @@ -535,32 +537,44 @@ export default { }, openDeptDrawer(row) { crudDept.getDeptTree().then(res => { - this.drawerDatas = res.content + this.deptsDatas = res.content }) - this.drawerTitle = '分配部门权限' - this.drawerHint = '请选择部门' this.nodeKey = 'dept_id' + this.openDrawer() + this.drawerTitle = '分配部门权限' this.flag = true - this.deptDrawer = true - this.depChecked = [] - this.depCheckedId = '' - console.log(row) + // 默认选中 this.depChecked = row.depts - this.depCheckedId = row.user_id + this.giveValue(row) }, openRoleDrawer(row) { + this.rolesDatas = [] getAll().then(res => { - this.drawerDatas = res + this.rolesDatas = res + // 回显默认选中 + console.log(res) + console.log(row.roles) + this.$nextTick(function() { + for (let i = 0; i < this.rolesDatas.length; i++) { + for (let j = 0; j < row.roles.length; j++) { + if (this.rolesDatas[i].role_id == row.roles[j]) { + this.$refs.roleTable.toggleRowSelection(this.rolesDatas[i], true) + } + } + } + }) }) - this.deptDrawer = true + this.openDrawer() this.drawerTitle = '分配角色权限' - this.drawerHint = '请选择角色' - this.nodeKey = 'role_id' this.flag = false - this.depChecked = [] + this.giveValue(row) + }, + openDrawer() { + this.syncDrawer = true this.depCheckedId = '' - console.log(row) - this.depChecked = row.roles + this.depChecked = [] + }, + giveValue(row) { this.depCheckedId = row.user_id }, clearCheck() { @@ -574,19 +588,21 @@ export default { .catch(_ => {}) }, cancelForm() { // 关闭 - this.deptDrawer = false + this.syncDrawer = false + if (this.flag) this.clearCheck() }, saveChecked() { - console.log(this.depCheckedId) - console.log(this.$refs.deptUser.getCheckedKeys()) const user = { - user_id: this.depCheckedId, + user_id: this.depCheckedId } if (this.flag) { user.depts = this.$refs.deptUser.getCheckedKeys() } else { - user.roles = this.$refs.deptUser.getCheckedKeys() + user.roles = this.crud.selections.map(item => (item.role_id)) } + console.log('user', user) + console.log(this.flag) + console.log(this.crud.selections) crudUser.edit(user).then(res => { this.cancelForm() this.crud.notify('保存成功', CRUD.NOTIFICATION_TYPE.SUCCESS)