| | |
| | | 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; |
| | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Set; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | IMaintainFieldService maintainFieldService; |
| | | @Autowired |
| | | IMenuMappingService menuMappingService; |
| | | @Autowired |
| | | ITUserRoleService userRoleService; |
| | | |
| | | |
| | | /** |
| | | * |
| | | * @description: 删除一条权限字段id |
| | | * @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); |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * |
| | | * @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"); |
| | |
| | | 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) { |
| | |
| | | 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); |