From c007f0ca1785db093d48f4846cda82fe8e955765 Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期三, 27 五月 2020 09:59:29 +0800 Subject: [PATCH] merage --- src/main/java/com/highdatas/mdm/controller/MasterAuthorDetailController.java | 45 +++++++++++++++++++++++++++++++++++---------- 1 files changed, 35 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/controller/MasterAuthorDetailController.java b/src/main/java/com/highdatas/mdm/controller/MasterAuthorDetailController.java index 2c7e9c4..cd6c3d3 100644 --- a/src/main/java/com/highdatas/mdm/controller/MasterAuthorDetailController.java +++ b/src/main/java/com/highdatas/mdm/controller/MasterAuthorDetailController.java @@ -6,7 +6,6 @@ import com.highdatas.mdm.entity.MasterAuthor; import com.highdatas.mdm.entity.MasterAuthorDetail; import com.highdatas.mdm.entity.SysField; -import com.highdatas.mdm.entity.TUserRole; import com.highdatas.mdm.pojo.CodeMsg; import com.highdatas.mdm.pojo.MasterAuthorType; import com.highdatas.mdm.pojo.Result; @@ -20,6 +19,7 @@ import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /** @@ -43,9 +43,16 @@ IMaintainFieldService maintainFieldService; @Autowired IMenuMappingService menuMappingService; - @Autowired - ITUserRoleService userRoleService; + + /** + * + * @description: 鍒犻櫎涓�鏉℃潈闄愬瓧娈礽d + * @param id 鏉冮檺 瀛楁id + * @param field 瀛楁鍚嶇О + * @return 鍏蜂綋鏁版嵁 + * + */ @RequestMapping(value = "/delete/{id}", method = RequestMethod.GET) public Result addRole(@PathVariable String id,@RequestParam String field){ MasterAuthor masterAuthor = masterAuthorService.selectById(id); @@ -61,9 +68,17 @@ } } - + /** + * + * @description: 閫氳繃瀛楁鐗堟湰鑾峰彇瀛楁list + * @param id 瀛楁鐗堟湰 + * @param isGroup 鏄惁涓虹敤鎴风粍 + * @param type 鐢ㄦ埛绫诲瀷 + * @return 瀛楁list + * + */ @RequestMapping(value = "/getFieldByMaintainFieldId/{id}", method = RequestMethod.GET) - public Result getFieldByMaintainFieldId(@PathVariable String id, @RequestParam MasterAuthorType type, @RequestParam String characterId, HttpServletRequest request) { + public Result getFieldByMaintainFieldId(@PathVariable String id, @RequestParam boolean isGroup, @RequestParam MasterAuthorType type, @RequestParam String characterId, HttpServletRequest request) { List<SysField> result; String menuId = request.getParameter("menuId"); @@ -84,16 +99,25 @@ JSONObject resultObj = new JSONObject(); MasterAuthor masterAuthor = masterAuthorService.selectOne(new EntityWrapper<MasterAuthor>() .eq(Constant.TYPE, type) + .eq("user_group", isGroup) .eq("table_name", tableName) .eq("character_id", characterId) .eq("maintain_field_id", id)); if (masterAuthor == null && type.equals(MasterAuthorType.user)) { - List<TUserRole> tUserRoles = userRoleService.selectList(new EntityWrapper<TUserRole>().eq(Constant.USERID, characterId)); - List<String> roleIdList = tUserRoles.stream().map(tUserRole -> tUserRole.getRoleId()).collect(Collectors.toList()); - HashMap<String, MasterAuthor> tableMasterAuthor = masterAuthorService.merageRoleAuthor(roleIdList); - String key = DbUtils.getFieldRedisKey(tableName, id); - masterAuthor = tableMasterAuthor.get(key); + Set<String> roleIdSet; + if (isGroup) { + roleIdSet = DbUtils.getRoleByGroup(characterId); + } else { + roleIdSet = DbUtils.getRoleByUser(characterId); + } + if (roleIdSet == null || roleIdSet.isEmpty()) { + masterAuthor = null; + } else { + HashMap<String, MasterAuthor> tableMasterAuthor = masterAuthorService.merageRoleAuthor(roleIdSet); + String key = DbUtils.getFieldRedisKey(tableName, id); + masterAuthor = tableMasterAuthor.get(key); + } } if (masterAuthor == null) { @@ -106,6 +130,7 @@ List<String> checkedFieldStrList = fields.stream().map(masterAuthorDetail -> masterAuthorDetail.getField()).collect(Collectors.toList()); result = result.stream().filter(sysField -> !checkedFieldStrList.contains(sysField.getField())).collect(Collectors.toList()); } + resultObj.fluentPut("unchecked", result); resultObj.fluentPut("checked", fields); return Result.success(resultObj); -- Gitblit v1.8.0